[EflSharp] Introduce EflSharp project (#749)
authorjaehyun0cho <jaehyun0cho@gmail.com>
Wed, 13 Mar 2019 06:46:40 +0000 (15:46 +0900)
committerWonYoung Choi <wy80.choi@samsung.com>
Wed, 13 Mar 2019 06:46:40 +0000 (15:46 +0900)
EflSharp project is newly introduced.
EflSharp project provides C# language bindings for new interface.

381 files changed:
internals/src/EflSharp/EflSharp.csproj [new file with mode: 0644]
internals/src/EflSharp/EflSharp.sln [new file with mode: 0644]
internals/src/EflSharp/EflSharp/CircleColorPart.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleDatePicker.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleGenlist.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleProgressBar.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleScroller.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleSlider.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleSpinner.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleTimePicker.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/CircleUIManager.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/ExtensionEventManager.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/FunctionWrapper.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/FunctionWrapper_Unix.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/ICircleWidget.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleDateTime.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleGenlist.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleObject.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleProgressBar.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleScroller.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleSlider.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleSpinner.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.CircleSurface.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.EflExtensionEvent.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.MoreOption.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.Rotary.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Eext.RotarySelector.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/Interop.Evas.SmartCallback.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/MoreOption.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/MoreOptionItem.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/NativeModule.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/NativeModule_Unix.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/RotaryEventManager.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/RotarySelector.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/RotarySelectorItem.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/edje_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_accelerate_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_action.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_component.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_editable_text.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_object.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_selection.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_text.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_value.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_widget_action.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_access_window.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_all.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_app.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_appthread.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_boolean_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_bounce_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_cached_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_alpha.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_group.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_group_parallel.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_group_sequential.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_player.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_rotate.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_scale.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_translate.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_animation_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_event_grabber.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_filter_internal.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_group.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_image.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_image_internal.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_layout.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_layout_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_layout_part_box.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_layout_part_external.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_layout_part_swallow.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_layout_part_table.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_layout_part_text.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_object.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_pointer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_polygon.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_proxy.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_rectangle.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_scene.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_snapshot.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_surface.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_surface_tbm.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_surface_wayland.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_surface_x11.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_text_factory.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_vg_container.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient_linear.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient_radial.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_vg_node.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_canvas_vg_shape.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_class.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_composite_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_config.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_config_global.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_container.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_container_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_content.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_control.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_core_command_line.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_core_env.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_core_proc_env.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_csharp_application.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_cubic_bezier_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_decelerate_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_divisor_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_duplicate.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_exe.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_file.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_file_save.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_generic_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_blur.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_buffer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_color.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_color_class.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_entity.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_fill.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_filter.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_frame_controller.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_gradient.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_gradient_linear.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_gradient_radial.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_hint.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_image.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_image_load_controller.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_mapping.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_path.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_shape.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_size_class.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_stack.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_text_class.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_gfx_view.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_device.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_event.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_focus.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_hold.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_interface.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_key.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_pointer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_state.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_input_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_io_buffer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_io_closer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_io_positioner.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_io_queue.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_io_reader.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_io_sizer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_io_writer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_layout_calc.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_layout_group.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_layout_signal.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_libs.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_linear_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_consumer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_fd.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_handler.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_message.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_message_future.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_message_future_handler.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_message_handler.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_loop_timer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_object.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_observable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_observer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_orientation.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_pack.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_pack_layout.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_pack_linear.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_pack_table.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_page_indicator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_page_indicator_icon.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_page_transition.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_page_transition_scroll.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_playable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_player.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_screen.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_select_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_sinusoidal_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_spring_interpolator.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_task.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_annotate.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_cursor.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_font.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_format.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_interactive.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_markup.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_markup_interactive.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_markup_util.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_style.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_text_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_thread.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_threadio.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_alert_popup.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_alert_popup_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_anchor_popup.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_autorepeat.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_bg.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_box.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_box_flow.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_box_stack.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_button.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_button_legacy_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_caching_factory.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_calendar.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_calendar_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_check.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_check_legacy_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_clickable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_clock.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_datepicker.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_direction.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_direction_readonly.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_dnd.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_dnd_container.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_dnd_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_drag.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_draggable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_factory.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_factory_bind.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_flip.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_flip_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_composition.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_layer.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_manager.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_manager_calc.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_manager_root_focus.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_manager_sub.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_manager_window_root.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_object.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_focus_util.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_format.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_frame.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_grid.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_grid_default_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_grid_default_item_part_end.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_grid_default_item_part_icon.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_grid_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_i18n.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_image.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_image_factory.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_image_zoomable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_image_zoomable_pan.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_l10n.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_base.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_factory.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_part_bg.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_part_box.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_part_content.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_part_legacy.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_part_table.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_layout_part_text.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_legacy.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_default_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_default_item_part_end.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_default_item_part_icon.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_empty_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_view.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_view_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_view_pan.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_list_view_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_multi_selectable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_navigation_bar.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_navigation_bar_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_navigation_bar_part_back_button.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_navigation_layout.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_nstate.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_pager.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_pan.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_panel.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_panes.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_panes_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_popup.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_popup_part_backwall.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_progressbar.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_progressbar_legacy_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_progressbar_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_property_bind.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_radio.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_radio_legacy_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_range_display.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_range_interactive.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_relative_layout.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_scroll_alert_popup.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_scroll_alert_popup_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_scroll_manager.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_scrollable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_scrollable_interactive.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_scrollbar.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_scroller.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_selectable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_selection.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_selection_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_slider.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_slider_interval.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_spin.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_spin_button.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_stack.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_tab_bar.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_tab_page.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_tab_page_part_tab.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_tab_pager.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_table.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_table_static.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_tags.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_alert_popup.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_alert_popup_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_async.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_editable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_factory_emoticons.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_factory_fallback.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_factory_images.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_text_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_textpath.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_textpath_legacy.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_textpath_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_theme.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_timepicker.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_video.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_view.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_widget.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_widget_factory.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_widget_focus_manager.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_widget_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_widget_part_bg.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_widget_part_shadow.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_win.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_win_inlined.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_win_part.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_win_socket.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_ui_zoom.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/efl_view_model.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_accessor.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_array.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_binbuf.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_common.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_config.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_container_common.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_error.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_hash.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_inarray.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_inlist.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_iterator.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_list.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_log.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_promises.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_slice.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_strbuf.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_stringshare.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_types.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eina_value.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_common.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_config.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_connection.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_message.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_object.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_pending.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_proxy.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/eldbus_service.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/elm_general.eot.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/elm_interface_scrollable.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/elm_widget_item.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/elm_widget_item_container.eo.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/iwrapper.cs [new file with mode: 0755]
internals/src/EflSharp/EflSharp/workaround.cs [new file with mode: 0755]

diff --git a/internals/src/EflSharp/EflSharp.csproj b/internals/src/EflSharp/EflSharp.csproj
new file mode 100644 (file)
index 0000000..30cd5a4
--- /dev/null
@@ -0,0 +1,8 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netstandard2.0</TargetFramework>
+  </PropertyGroup>
+
+
+</Project>
diff --git a/internals/src/EflSharp/EflSharp.sln b/internals/src/EflSharp/EflSharp.sln
new file mode 100644 (file)
index 0000000..58e79de
--- /dev/null
@@ -0,0 +1,34 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.26124.0
+MinimumVisualStudioVersion = 15.0.26124.0
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EflSharp", "EflSharp.csproj", "{249F8F3E-5091-4195-844B-24B097BC4466}"
+EndProject
+Global
+       GlobalSection(SolutionConfigurationPlatforms) = preSolution
+               Debug|Any CPU = Debug|Any CPU
+               Debug|x64 = Debug|x64
+               Debug|x86 = Debug|x86
+               Release|Any CPU = Release|Any CPU
+               Release|x64 = Release|x64
+               Release|x86 = Release|x86
+       EndGlobalSection
+       GlobalSection(SolutionProperties) = preSolution
+               HideSolutionNode = FALSE
+       EndGlobalSection
+       GlobalSection(ProjectConfigurationPlatforms) = postSolution
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Debug|Any CPU.Build.0 = Debug|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Debug|x64.ActiveCfg = Debug|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Debug|x64.Build.0 = Debug|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Debug|x86.ActiveCfg = Debug|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Debug|x86.Build.0 = Debug|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Release|Any CPU.ActiveCfg = Release|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Release|Any CPU.Build.0 = Release|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Release|x64.ActiveCfg = Release|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Release|x64.Build.0 = Release|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Release|x86.ActiveCfg = Release|Any CPU
+               {249F8F3E-5091-4195-844B-24B097BC4466}.Release|x86.Build.0 = Release|Any CPU
+       EndGlobalSection
+EndGlobal
diff --git a/internals/src/EflSharp/EflSharp/CircleColorPart.cs b/internals/src/EflSharp/EflSharp/CircleColorPart.cs
new file mode 100755 (executable)
index 0000000..0112b88
--- /dev/null
@@ -0,0 +1,63 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleColorPart : Efl.Object, Efl.Gfx.Color
+            {
+                protected IntPtr _handle;
+                public CircleColorPart(IntPtr CircleHandle)
+                {
+                    _handle = CircleHandle;
+                }
+
+                public virtual void SetColor(int r, int g, int b, int a)
+                {
+                    //Not Implemented
+                }
+
+                public virtual void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    //Not Implemented
+                    r = g = b = a = -1;
+                }
+
+                public void SetColorCode(System.String colorcode)
+                {
+                    //Not Implemented
+                    return;
+                }
+
+                public System.String GetColorCode()
+                {
+                    //Not Implemented
+                    return null;
+                }
+
+                public System.String GetColorClassCode(System.String color_class, Efl.Gfx.ColorClassLayer layer)
+                {
+                    //Not Implemented
+                    return null;
+                }
+
+                public void SetColorClassCode(System.String color_class, Efl.Gfx.ColorClassLayer layer, System.String colorcode)
+                {
+                    //Not Implemented
+                    return;
+                }
+
+                public System.String ColorCode
+                {
+                    //Not Implemented
+                    get { return null; }
+                    set { }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleDatePicker.cs b/internals/src/EflSharp/EflSharp/CircleDatePicker.cs
new file mode 100755 (executable)
index 0000000..e3c8b76
--- /dev/null
@@ -0,0 +1,89 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleDatePickerMarker : CircleColorPart
+            {
+                public CircleDatePickerMarker(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "default", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "default", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleDatePicker : Efl.Ui.Datepicker, ICircleWidget
+            {
+                IntPtr _handle;
+                public virtual IntPtr CircleHandle => _handle;
+
+                public CircleDatePickerMarker Marker;
+
+                public CircleDatePicker(Efl.Ui.Widget parent) : base(parent)
+                {
+                    _handle = Interop.Eext.eext_circle_object_datetime_add(this.NativeHandle, IntPtr.Zero);
+                    Marker = new CircleDatePickerMarker(_handle);
+                    elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
+                }
+
+                [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
+                internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
+
+                public bool Disable
+                {
+                    get => !Enable;
+                    set => Enable = !value;
+                }
+
+                public bool Enable
+                {
+                    get
+                    {
+                        return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
+                    }
+                }
+
+                public int MarkerLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "default", value);
+                    }
+                }
+
+                public double MarkerRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "default", value);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleGenlist.cs b/internals/src/EflSharp/EflSharp/CircleGenlist.cs
new file mode 100755 (executable)
index 0000000..a02fe0a
--- /dev/null
@@ -0,0 +1,150 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleGenlistVerticalBar : CircleColorPart
+            {
+                public CircleGenlistVerticalBar(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "default", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "default", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleGenlistVerticalBarBackground : CircleColorPart
+            {
+                public CircleGenlistVerticalBarBackground(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "vertical,scroll,bg", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "vertical,scroll,bg", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleGenlist : Efl.Ui.List, ICircleWidget
+            {
+                IntPtr _handle;
+                public virtual IntPtr CircleHandle => _handle;
+
+                public CircleGenlistVerticalBar VerticalBar;
+                public CircleGenlistVerticalBarBackground VerticalBarBackgournd;
+
+                public CircleGenlist(Efl.Ui.Widget parent) : base(parent)
+                {
+                    _handle = Interop.Eext.eext_circle_object_genlist_add(this.NativeHandle, IntPtr.Zero);
+
+                    VerticalBar = new CircleGenlistVerticalBar(_handle);
+                    VerticalBarBackgournd = new CircleGenlistVerticalBarBackground(_handle);
+
+                    elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
+                }
+
+                [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
+                internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
+
+                public bool Disable
+                {
+                    get => !Enable;
+                    set => Enable = !value;
+                }
+
+                public bool Enable
+                {
+                    get
+                    {
+                        return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
+                    }
+                }
+
+                public int VerticalScrollBackgroundLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "vertical,scroll,bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "vertical,scroll,bg", value);
+                    }
+                }
+
+                public double VerticalScrollBackgroundRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "vertical,scroll,bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "vertical,scroll,bg", value);
+                    }
+                }
+
+                public int VerticalScrollBarLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "default", value);
+                    }
+                }
+
+                public double VerticalScrollBarRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "default", value);
+                    }
+                }
+
+                public ScrollbarMode VerticalScrollBarVisiblePolicy
+                {
+                    get
+                    {
+                        int policy;
+                        Interop.Eext.eext_circle_object_genlist_scroller_policy_get(CircleHandle, IntPtr.Zero, out policy);
+                        return (ScrollbarMode)policy;
+                    }
+                    set
+                    {
+                        int h;
+                        Interop.Eext.eext_circle_object_genlist_scroller_policy_get(CircleHandle, out h, IntPtr.Zero);
+                        Interop.Eext.eext_circle_object_genlist_scroller_policy_set(CircleHandle, (int)h, (int)value);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleProgressBar.cs b/internals/src/EflSharp/EflSharp/CircleProgressBar.cs
new file mode 100755 (executable)
index 0000000..4927356
--- /dev/null
@@ -0,0 +1,264 @@
+using System;
+using System.ComponentModel;
+using System.Diagnostics;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleProgressBarBar : CircleColorPart
+            {
+                public CircleProgressBarBar(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_color_set(_handle, r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_color_get(_handle, out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleProgressBarBarBackground : CircleColorPart
+            {
+                public CircleProgressBarBarBackground(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "bg", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "bg", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleProgressBar : Efl.Ui.Layout, ICircleWidget
+            {
+                IntPtr _handle;
+                public virtual IntPtr CircleHandle => _handle;
+
+                public CircleProgressBarBar Bar;
+                public CircleProgressBarBarBackground BarBackground;
+
+                public CircleProgressBar(Efl.Ui.Widget parent) : base(parent)
+                {
+                    _handle = Interop.Eext.eext_circle_object_progressbar_add(parent.NativeHandle, IntPtr.Zero);
+
+                    Bar = new CircleProgressBarBar(_handle);
+                    BarBackground = new CircleProgressBarBarBackground(handle);
+
+                    elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
+                }
+
+                [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
+                internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
+
+                public override Efl.Object FinalizeAdd()
+                {
+                    this.SetTheme("circle_progressbar", null, null);
+                    return this;
+                }
+
+                public bool Disable
+                {
+                    get => !IsEnable;
+                    set => IsEnable = !value;
+                }
+
+                public bool IsEnable
+                {
+                    get
+                    {
+                        return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
+                    }
+                }
+
+                public double Value
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_value_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_value_set(CircleHandle, value);
+                    }
+                }
+
+                public double Maximum
+                {
+                    get
+                    {
+                        double max = 0;
+                        double min = 0;
+                        Interop.Eext.eext_circle_object_value_min_max_get(CircleHandle, out min, out max);
+                        return max;
+                    }
+                    set
+                    {
+                        double min = Minimum;
+                        Interop.Eext.eext_circle_object_value_min_max_set(CircleHandle, min, value);
+                    }
+                }
+
+                public double Minimum
+                {
+                    get
+                    {
+                        double max = 0;
+                        double min = 0;
+                        Interop.Eext.eext_circle_object_value_min_max_get(CircleHandle, out min, out max);
+                        return min;
+                    }
+                    set
+                    {
+                        double max = Maximum;
+                        Interop.Eext.eext_circle_object_value_min_max_set(CircleHandle, value, max);
+                    }
+                }
+
+                public double BarAngle
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_angle_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_angle_set(CircleHandle, value);
+                    }
+                }
+
+                public double BackgroundAngle
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_angle_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_angle_set(CircleHandle, "bg", value);
+                    }
+                }
+
+                public double BarAngleOffset
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_angle_offset_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_angle_offset_set(CircleHandle, value);
+                    }
+                }
+
+                public double BackgroundAngleOffset
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_angle_offset_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_angle_offset_set(CircleHandle, "bg", value);
+                    }
+                }
+
+                public double BarAngleMaximum
+                {
+                    get
+                    {
+                        double max = 0;
+                        double min = 0;
+                        Interop.Eext.eext_circle_object_angle_min_max_get(CircleHandle, out min, out max);
+                        return max;
+                    }
+                    set
+                    {
+                        double min = BarAngleMinimum;
+                        Interop.Eext.eext_circle_object_angle_min_max_set(CircleHandle, min, value);
+                    }
+                }
+
+                public double BarAngleMinimum
+                {
+                    get
+                    {
+                        double max = 0;
+                        double min = 0;
+                        Interop.Eext.eext_circle_object_angle_min_max_get(CircleHandle, out min, out max);
+                        return min;
+                    }
+                    set
+                    {
+                        double max = BarAngleMaximum;
+                        Interop.Eext.eext_circle_object_angle_min_max_set(CircleHandle, value, max);
+                    }
+                }
+
+                public int BarLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_line_width_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_line_width_set(CircleHandle, value);
+                    }
+                }
+
+                public int BackgroundLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "bg", value);
+                    }
+                }
+
+                public double BarRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_radius_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_radius_set(CircleHandle, value);
+                    }
+                }
+
+                public double BackgroundRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "bg", value);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleScroller.cs b/internals/src/EflSharp/EflSharp/CircleScroller.cs
new file mode 100755 (executable)
index 0000000..7d4e847
--- /dev/null
@@ -0,0 +1,250 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleScrollerVerticalBar : CircleColorPart
+            {
+                public CircleScrollerVerticalBar(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_color_set(_handle, r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_color_get(_handle, out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleScrollerVerticalBarBackground : CircleColorPart
+            {
+                public CircleScrollerVerticalBarBackground(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "vertical,scroll,bg", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "vertical,scroll,bg", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleScrollerHorizontalBar : CircleColorPart
+            {
+                public CircleScrollerHorizontalBar(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "horizontal,scroll,bar", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "horizontal,scroll,bar", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleScrollerHorizontalBarBackground : CircleColorPart
+            {
+                public CircleScrollerHorizontalBarBackground(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "horizontal,scroll,bg", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "horizontal,scroll,bg", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleScroller : Efl.Ui.Scroller, ICircleWidget
+            {
+                IntPtr _handle;
+                public virtual IntPtr CircleHandle => _handle;
+
+                public CircleScrollerVerticalBar VerticalBar;
+                public CircleScrollerVerticalBarBackground VerticalBarBackground;
+                public CircleScrollerHorizontalBar HorizontalBar;
+                public CircleScrollerHorizontalBarBackground HorizontalBarBackground;
+
+                public CircleScroller(Efl.Ui.Widget parent) : base(parent)
+                {
+                    _handle = Interop.Eext.eext_circle_object_scroller_add(this.NativeHandle, IntPtr.Zero);
+
+                    VerticalBar = new CircleScrollerVerticalBar(_handle);
+                    VerticalBarBackground = new CircleScrollerVerticalBarBackground(_handle);
+                    HorizontalBar = new CircleScrollerHorizontalBar(_handle);
+                    HorizontalBarBackground = new CircleScrollerHorizontalBarBackground(_handle);
+
+                    elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
+                }
+
+                [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
+                internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
+
+                public bool Disable
+                {
+                    get => !Enable;
+                    set => Enable = !value;
+                }
+
+                public bool Enable
+                {
+                    get
+                    {
+                        return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
+                    }
+                }
+
+                public ScrollbarMode HorizontalScrollBarVisiblePolicy
+                {
+                    get
+                    {
+                        int policy;
+                        Interop.Eext.eext_circle_object_scroller_policy_get(CircleHandle, out policy, IntPtr.Zero);
+                        return (ScrollbarMode)policy;
+                    }
+                    set
+                    {
+                        ScrollbarMode v = VerticalScrollBarVisiblePolicy;
+                        Interop.Eext.eext_circle_object_scroller_policy_set(CircleHandle, (int)value, (int)v);
+                    }
+                }
+
+                public ScrollbarMode VerticalScrollBarVisiblePolicy
+                {
+                    get
+                    {
+                        int policy;
+                        Interop.Eext.eext_circle_object_scroller_policy_get(CircleHandle, IntPtr.Zero, out policy);
+                        return (ScrollbarMode)policy;
+                    }
+                    set
+                    {
+                        ScrollbarMode h = HorizontalScrollBarVisiblePolicy;
+                        Interop.Eext.eext_circle_object_scroller_policy_set(CircleHandle, (int)h, (int)value);
+                    }
+                }
+
+                public int VerticalScrollBarLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_line_width_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_line_width_set(CircleHandle, value);
+                    }
+                }
+
+                public int HorizontalScrollBarLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "horizontal,scroll,bar");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "horizontal,scroll,bar", value);
+                    }
+                }
+
+                public int VerticalScrollBackgroundLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "vertical,scroll,bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "vertical,scroll,bg", value);
+                    }
+                }
+
+                public int HorizontalScrollBackgroundLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "horizontal,scroll,bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "horizontal,scroll,bg", value);
+                    }
+                }
+
+                public double VerticalScrollBarRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_radius_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_radius_set(CircleHandle, value);
+                    }
+                }
+
+                public double HorizontalScrollBarRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "horizontal,scroll,bar");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "horizontal,scroll,bar", value);
+                    }
+                }
+
+                public double VerticalScrollBackgroundRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "vertical,scroll,bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "vertical,scroll,bg", value);
+                    }
+                }
+
+                public double HorizontalScrollBackgroundRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "horizontal,scroll,bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "horizontal,scroll,bg", value);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleSlider.cs b/internals/src/EflSharp/EflSharp/CircleSlider.cs
new file mode 100755 (executable)
index 0000000..164af7a
--- /dev/null
@@ -0,0 +1,286 @@
+using System;
+using System.ComponentModel;
+using System.Diagnostics;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleSliderBar : CircleColorPart
+            {
+                public CircleSliderBar(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_color_set(_handle, r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_color_get(_handle, out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleSliderBarBackground : CircleColorPart
+            {
+                public CircleSliderBarBackground(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "bg", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "bg", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleSlider : Efl.Ui.Layout, ICircleWidget
+            {
+                IntPtr _handle;
+                public virtual IntPtr CircleHandle => _handle;
+
+                public event EventHandler Changed;
+                const string ChangedEventName = "value,changed";
+
+                public CircleSliderBar Bar;
+                public CircleSliderBarBackground BarBackground;
+
+                public CircleSlider(Efl.Ui.Widget parent) : base(parent)
+                {
+                    _handle = Interop.Eext.eext_circle_object_slider_add(parent.NativeHandle, IntPtr.Zero);
+
+                    Bar = new Efl.Ui.Wearable.CircleSliderBar(_handle);
+                    BarBackground = new Efl.Ui.Wearable.CircleSliderBarBackground(_handle);
+
+                    Interop.Evas.SmartCallback _smartChanged = new Interop.Evas.SmartCallback((d, o, e) =>
+                    {
+                        Changed?.Invoke(this, EventArgs.Empty);
+                    });
+
+                    Interop.Evas.evas_object_smart_callback_add(_handle, ChangedEventName, _smartChanged, IntPtr.Zero);
+
+                    elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
+                }
+
+                [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
+                internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
+
+                public override Efl.Object FinalizeAdd()
+                {
+                    this.SetTheme("circle_slider", null, null);
+                    return this;
+                }
+
+                public double Step
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_slider_step_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_slider_step_set(CircleHandle, (double)value);
+                    }
+                }
+
+                public bool Disable
+                {
+                    get => !Enable;
+                    set => Enable = !value;
+                }
+
+                public bool Enable
+                {
+                    get
+                    {
+                        return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
+                    }
+                }
+
+                public int BarLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_line_width_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_line_width_set(CircleHandle, value);
+                    }
+                }
+
+                public int BackgroundLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "bg", value);
+                    }
+                }
+
+                public double BarAngle
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_angle_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_angle_set(CircleHandle, value);
+                    }
+                }
+
+                public double BackgroundAngle
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_angle_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_angle_set(CircleHandle, "bg", value);
+                    }
+                }
+
+                public double BarAngleOffset
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_angle_offset_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_angle_offset_set(CircleHandle, value);
+                    }
+                }
+
+                public double BackgroundAngleOffset
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_angle_offset_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_angle_offset_set(CircleHandle, "bg", value);
+                    }
+                }
+
+                public double BarAngleMinimum
+                {
+                    get
+                    {
+                        double min;
+                        double max;
+                        Interop.Eext.eext_circle_object_angle_min_max_get(CircleHandle, out min, out max);
+                        return min;
+                    }
+                    set
+                    {
+                        double max = BarAngleMaximum;
+                        Interop.Eext.eext_circle_object_angle_min_max_set(CircleHandle, (double)value, max);
+                    }
+                }
+
+                public double BarAngleMaximum
+                {
+                    get
+                    {
+                        double min;
+                        double max;
+                        Interop.Eext.eext_circle_object_angle_min_max_get(CircleHandle, out min, out max);
+                        return max;
+                    }
+                    set
+                    {
+                        double min = BarAngleMinimum;
+                        Interop.Eext.eext_circle_object_angle_min_max_set(CircleHandle, min, (double)value);
+                    }
+                }
+
+                public double Minimum
+                {
+                    get
+                    {
+                        double min;
+                        double max;
+                        Interop.Eext.eext_circle_object_value_min_max_get(CircleHandle, out min, out max);
+                        return min;
+                    }
+                    set
+                    {
+                        double max = Maximum;
+                        Interop.Eext.eext_circle_object_value_min_max_set(CircleHandle, (double)value, max);
+                    }
+                }
+
+                public double Maximum
+                {
+                    get
+                    {
+                        double min;
+                        double max;
+                        Interop.Eext.eext_circle_object_value_min_max_get(CircleHandle, out min, out max);
+                        return max;
+                    }
+                    set
+                    {
+                        double min = Minimum;
+                        Interop.Eext.eext_circle_object_value_min_max_set(CircleHandle, min, (double)value);
+                    }
+                }
+
+                public double Value
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_value_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_value_set(CircleHandle, (double)value);
+                    }
+                }
+
+                public double BarRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_radius_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_radius_set(CircleHandle, (double)value);
+                    }
+                }
+
+                public double BackgroundRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "bg");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "bg", value);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleSpinner.cs b/internals/src/EflSharp/EflSharp/CircleSpinner.cs
new file mode 100755 (executable)
index 0000000..21b9b45
--- /dev/null
@@ -0,0 +1,127 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleSpinnerMarker : CircleColorPart
+            {
+                public CircleSpinnerMarker(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "default", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "default", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleSpinner : Efl.Ui.Spin, ICircleWidget
+            {
+                double _angleRatio = -1.0;
+
+                IntPtr _handle;
+                public virtual IntPtr CircleHandle => _handle;
+
+                public CircleSpinnerMarker Marker;
+
+                public CircleSpinner(Efl.Ui.Widget parent) : base(parent)
+                {
+                    _handle = Interop.Eext.eext_circle_object_spinner_add(this.NativeHandle, IntPtr.Zero);
+
+                    Marker = new CircleSpinnerMarker(_handle);
+
+                    elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
+                }
+
+                [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
+                internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
+
+                public double AngleRatio
+                {
+                    get
+                    {
+                        if (_angleRatio <= 0)
+                        {
+                            double Minimum, Maximum;
+
+                            GetRangeMinMax(out Minimum, out Maximum);
+                            if (Maximum == Minimum)
+                            {
+                                return 0.0;
+                            }
+                            else
+                            {
+                                return 360 / (Maximum - Minimum);
+                            }
+                        }
+
+                        return _angleRatio;
+                    }
+                    set
+                    {
+                        if (value > 0)
+                        {
+                            if (_angleRatio == value) return;
+
+                            _angleRatio = value;
+
+                            Interop.Eext.eext_circle_object_spinner_angle_set(CircleHandle, _angleRatio);
+                        }
+                    }
+                }
+
+                public bool Disable
+                {
+                    get => !Enable;
+                    set => Enable = !value;
+                }
+
+                public bool Enable
+                {
+                    get
+                    {
+                        return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
+                    }
+                }
+
+                public int MarkerLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "default", value);
+                    }
+                }
+
+                public double MarkerRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "default", value);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleTimePicker.cs b/internals/src/EflSharp/EflSharp/CircleTimePicker.cs
new file mode 100755 (executable)
index 0000000..9458263
--- /dev/null
@@ -0,0 +1,89 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleTimePickerMarker : CircleColorPart
+            {
+                public CircleTimePickerMarker(IntPtr CircleHandle) : base(CircleHandle) { }
+                public override void SetColor(int r, int g, int b, int a)
+                {
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_set(_handle, "default", r, g, b, a);
+                }
+
+                public override void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    r = g = b = a = -1;
+                    if (_handle != null)
+                        Interop.Eext.eext_circle_object_item_color_get(_handle, "default", out r, out g, out b, out a);
+                }
+            }
+
+            public class CircleTimePicker : Efl.Ui.Timepicker, ICircleWidget
+            {
+                IntPtr _handle;
+                public virtual IntPtr CircleHandle => _handle;
+
+                public CircleTimePickerMarker Marker;
+
+                public CircleTimePicker(Efl.Ui.Widget parent) : base(parent)
+                {
+                    _handle = Interop.Eext.eext_circle_object_datetime_add(this.NativeHandle, IntPtr.Zero);
+                    Marker = new CircleTimePickerMarker(_handle);
+                    elm_layout_content_set(this.NativeHandle, "efl.swallow.vg", CircleHandle);
+                }
+
+                [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)]
+                internal static extern bool elm_layout_content_set(IntPtr obj, string swallow, IntPtr content);
+
+                public bool Disable
+                {
+                    get => !Enable;
+                    set => Enable = !value;
+                }
+
+                public bool Enable
+                {
+                    get
+                    {
+                        return !Interop.Eext.eext_circle_object_disabled_get(CircleHandle);
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_disabled_set(CircleHandle, !value);
+                    }
+                }
+
+                public int MarkerLineWidth
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_line_width_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_line_width_set(CircleHandle, "default", value);
+                    }
+                }
+
+                public double MarkerRadius
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_circle_object_item_radius_get(CircleHandle, "default");
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_circle_object_item_radius_set(CircleHandle, "default", value);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/CircleUIManager.cs b/internals/src/EflSharp/EflSharp/CircleUIManager.cs
new file mode 100755 (executable)
index 0000000..512a567
--- /dev/null
@@ -0,0 +1,60 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+using System.Runtime.InteropServices;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class CircleUIManager
+            {
+                IntPtr _handle;
+                public IntPtr NativeHandle => _handle;
+
+                public CircleUIManager(Efl.Ui.Win conformant)
+                {
+                    _handle = Interop.Eext.eext_circle_surface_conformant_add(conformant.NativeHandle);
+                }
+
+                public CircleUIManager(Efl.Object layout)
+                {
+                    _handle = Interop.Eext.eext_circle_surface_layout_add(layout.NativeHandle);
+                }
+
+                public CircleUIManager(Efl.Ui.Stack naviframe)
+                {
+                    _handle = Interop.Eext.eext_circle_surface_naviframe_add(naviframe.NativeHandle);
+                }
+
+                public CircleUIManager()
+                {
+                    _handle = IntPtr.Zero;
+                }
+
+                public void RegisterCircleObject(ICircleWidget circleObject)
+                {
+                    if (NativeHandle != IntPtr.Zero)
+                        Interop.Eext.eext_circle_object_connect(NativeHandle, circleObject.CircleHandle);
+                }
+
+                public void UnRegisterCircleObject(ICircleWidget circleObject)
+                {
+                    if (NativeHandle != IntPtr.Zero)
+                        Interop.Eext.eext_circle_object_disconnect(NativeHandle, circleObject.CircleHandle);
+                }
+
+                public void Delete()
+                {
+                    if (NativeHandle != IntPtr.Zero)
+                    {
+                        Interop.Eext.eext_circle_surface_del(NativeHandle);
+                        _handle = IntPtr.Zero;
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/ExtensionEventManager.cs b/internals/src/EflSharp/EflSharp/ExtensionEventManager.cs
new file mode 100755 (executable)
index 0000000..453e9c2
--- /dev/null
@@ -0,0 +1,140 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        public static class ExtensionEventManager
+        {
+            static Dictionary<Efl.Object, EventHandler> _backButtonEventHandlers = new Dictionary<Efl.Object, EventHandler>();
+            static Dictionary<Efl.Object, Interop.Eext.EextEventCallback> _backButtonEventMap = new Dictionary<Efl.Object, Interop.Eext.EextEventCallback>();
+            static Dictionary<Efl.Object, EventHandler> _moreButtonEventHandlers = new Dictionary<Efl.Object, EventHandler>();
+            static Dictionary<Efl.Object, Interop.Eext.EextEventCallback> _moreButtonEventMap = new Dictionary<Efl.Object, Interop.Eext.EextEventCallback>();
+
+            static void EnableButtonEventHandler(Efl.Object obj, Interop.Eext.EextCallbackType type)
+            {
+                if (type == Interop.Eext.EextCallbackType.EEXT_CALLBACK_BACK)
+                {
+                    if (!_backButtonEventMap.ContainsKey(obj))
+                    {
+                        Interop.Eext.EextEventCallback cb = (d, o, i) =>
+                        {
+                            EventHandler events;
+                            if (_backButtonEventHandlers.TryGetValue(obj, out events))
+                            {
+                                events?.Invoke(obj, EventArgs.Empty);
+                            }
+                        };
+
+                        Interop.Eext.eext_object_event_callback_add(obj.NativeHandle, type, cb, IntPtr.Zero);
+                        _backButtonEventMap[obj] = cb;
+                        obj.DelEvt += (s, e) => DisableButtonEventHandler(obj, type, true);
+                    }
+                }
+                else if(type == Interop.Eext.EextCallbackType.EEXT_CALLBACK_MORE)
+                {
+                    if (!_moreButtonEventMap.ContainsKey(obj))
+                    {
+                        Interop.Eext.EextEventCallback cb = (d, o, i) =>
+                        {
+                            EventHandler events;
+                            if (_moreButtonEventHandlers.TryGetValue(obj, out events))
+                            {
+                                events?.Invoke(obj, EventArgs.Empty);
+                            }
+                        };
+
+                        Interop.Eext.eext_object_event_callback_add(obj.NativeHandle, type, cb, IntPtr.Zero);
+                        _moreButtonEventMap[obj] = cb;
+                    }
+                }
+            }
+
+            static void DisableButtonEventHandler(Efl.Object obj, Interop.Eext.EextCallbackType type, bool removeHandler)
+            {
+                Interop.Eext.EextEventCallback cb;
+
+                if (type == Interop.Eext.EextCallbackType.EEXT_CALLBACK_BACK)
+                {
+                    if (_backButtonEventMap.TryGetValue(obj, out cb))
+                    {
+                        Interop.Eext.eext_object_event_callback_del(obj.NativeHandle, type, cb);
+                        _backButtonEventMap.Remove(obj);
+                    }
+                    if (removeHandler && _backButtonEventHandlers.ContainsKey(obj))
+                    {
+                        _backButtonEventHandlers.Remove(obj);
+                    }
+                }
+                else if(type == Interop.Eext.EextCallbackType.EEXT_CALLBACK_MORE)
+                {
+                    if (_moreButtonEventMap.TryGetValue(obj, out cb))
+                    {
+                        Interop.Eext.eext_object_event_callback_del(obj.NativeHandle, type, cb);
+                        _moreButtonEventMap.Remove(obj);
+                    }
+                    if (removeHandler && _moreButtonEventHandlers.ContainsKey(obj))
+                    {
+                        _moreButtonEventHandlers.Remove(obj);
+                    }
+                }
+            }
+
+            public static void AddBackButtonEventHandler(this Efl.Object obj, EventHandler handler)
+            {
+                EnableButtonEventHandler(obj, Interop.Eext.EextCallbackType.EEXT_CALLBACK_BACK);
+
+                if (_backButtonEventHandlers.ContainsKey(obj))
+                {
+                    _backButtonEventHandlers[obj] += handler;
+                }
+                else
+                {
+                    _backButtonEventHandlers[obj] = handler;
+                }                
+            }
+
+            public static void RemoveBackButtonEventHandler(this Efl.Object obj, EventHandler handler)
+            {
+                if (_backButtonEventHandlers.ContainsKey(obj))
+                {
+                    _backButtonEventHandlers[obj] -= handler;
+                    if (_backButtonEventHandlers[obj] == null)
+                    {
+                        DisableButtonEventHandler(obj, Interop.Eext.EextCallbackType.EEXT_CALLBACK_BACK, false);
+                        _backButtonEventHandlers.Remove(obj);
+                    }
+                }
+            }
+
+            public static void AddMoreButtonEventHandler(this Efl.Object obj, EventHandler handler)
+            {
+                EnableButtonEventHandler(obj, Interop.Eext.EextCallbackType.EEXT_CALLBACK_MORE);
+
+                if (_moreButtonEventHandlers.ContainsKey(obj))
+                {
+                    _moreButtonEventHandlers[obj] += handler;
+                }
+                else
+                {
+                    _moreButtonEventHandlers[obj] = handler;
+                }
+            }
+
+            public static void RemoveMoreButtonEventHandler(this Efl.Object obj, EventHandler handler)
+            {
+                if (_moreButtonEventHandlers.ContainsKey(obj))
+                {
+                    _moreButtonEventHandlers[obj] -= handler;
+                    if (_moreButtonEventHandlers[obj] == null)
+                    {
+                        DisableButtonEventHandler(obj, Interop.Eext.EextCallbackType.EEXT_CALLBACK_MORE, false);
+                        _moreButtonEventHandlers.Remove(obj);
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/FunctionWrapper.cs b/internals/src/EflSharp/EflSharp/FunctionWrapper.cs
new file mode 100755 (executable)
index 0000000..448403a
--- /dev/null
@@ -0,0 +1,95 @@
+using System;
+using System.Runtime.InteropServices;
+
+namespace Efl { namespace Eo {
+
+public partial class FunctionInterop
+{
+    public static IntPtr LoadFunctionPointer(string moduleName, string functionName)
+    {
+        NativeModule module = new NativeModule(moduleName);
+        Eina.Log.Debug($"searching {module.Module} for {functionName}");
+        var s = FunctionInterop.dlsym(module.Module, functionName);
+        Eina.Log.Debug($"searching {module.Module} for{functionName}, result {s}");
+        return s;
+    }
+    public static IntPtr LoadFunctionPointer(string functionName)
+    {
+        Eina.Log.Debug($"searching {null} for {functionName}");
+        var s = FunctionInterop.dlsym(IntPtr.Zero, functionName);
+        Eina.Log.Debug($"searching {null} for {functionName}, result {s}");
+        return s;
+    }
+}
+        
+public class FunctionWrapper<T>
+{
+    private Lazy<FunctionLoadResult<T>> loadResult;
+    private NativeModule module; // so it doesn't get unloaded
+
+    private static FunctionLoadResult<T> LazyInitialization(NativeModule module, string functionName)
+    {
+        if (module.Module == IntPtr.Zero)
+            return new FunctionLoadResult<T>(FunctionLoadResultKind.LibraryNotFound);
+        else
+        {
+            IntPtr funcptr = FunctionInterop.LoadFunctionPointer(module.Module, functionName);
+            if (funcptr == IntPtr.Zero)
+                return new FunctionLoadResult<T>(FunctionLoadResultKind.FunctionNotFound);
+            else
+                return new FunctionLoadResult<T>(Marshal.GetDelegateForFunctionPointer<T>(funcptr));
+        }
+    }
+    
+    public FunctionWrapper(string moduleName, string functionName)
+        : this (new NativeModule(moduleName), functionName)
+    {
+    }
+    
+    public FunctionWrapper(NativeModule module, string functionName)
+    {
+        this.module = module;
+        loadResult = new Lazy<FunctionLoadResult<T>>
+            (() =>
+            {
+                return LazyInitialization(module, functionName);
+            });
+    }
+
+    public FunctionLoadResult<T> Value
+    {
+        get
+        {
+            return loadResult.Value;
+        }
+    }
+}
+
+public enum FunctionLoadResultKind { Success, LibraryNotFound, FunctionNotFound }
+    
+public class FunctionLoadResult<T>
+{
+    public FunctionLoadResultKind Kind;
+    public T _Delegate;
+    public T Delegate
+    {
+        get {
+            if (_Delegate == null)
+                throw new InvalidOperationException($"Trying to get Delegate while not loaded. Load result: {Kind}");
+            return _Delegate;
+        }
+    }
+
+    public FunctionLoadResult(FunctionLoadResultKind kind)
+    {
+        this.Kind = kind;
+    }
+    public FunctionLoadResult(T Delegate)
+    {
+        this._Delegate = Delegate;
+        this.Kind = FunctionLoadResultKind.Success;
+    }
+}
+
+
+} }
diff --git a/internals/src/EflSharp/EflSharp/FunctionWrapper_Unix.cs b/internals/src/EflSharp/EflSharp/FunctionWrapper_Unix.cs
new file mode 100755 (executable)
index 0000000..76ee489
--- /dev/null
@@ -0,0 +1,21 @@
+using System;
+using System.Runtime.InteropServices;
+
+namespace Efl { namespace Eo {
+
+public partial class FunctionInterop
+{
+    [DllImport(efl.Libs.Libdl)]
+    public static extern IntPtr dlsym(IntPtr handle, string symbol);
+        
+    public static IntPtr LoadFunctionPointer(IntPtr nativeLibraryHandle, string functionName)
+    {
+        Eina.Log.Debug("searching {nativeLibraryHandle} for {functionName}");
+        var s = FunctionInterop.dlsym(nativeLibraryHandle, functionName);
+        Eina.Log.Debug("searching {nativeLibraryHandle} for {functionName}, result {s}");
+        return s;
+    }
+}
+
+
+} }
diff --git a/internals/src/EflSharp/EflSharp/ICircleWidget.cs b/internals/src/EflSharp/EflSharp/ICircleWidget.cs
new file mode 100755 (executable)
index 0000000..5adb616
--- /dev/null
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public interface ICircleWidget
+            {
+                IntPtr CircleHandle { get; }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleDateTime.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleDateTime.cs
new file mode 100755 (executable)
index 0000000..f56bc2f
--- /dev/null
@@ -0,0 +1,11 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_datetime_add(IntPtr datetime, IntPtr surface);
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleGenlist.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleGenlist.cs
new file mode 100755 (executable)
index 0000000..06c1bdf
--- /dev/null
@@ -0,0 +1,24 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_genlist_add(IntPtr genlist, IntPtr surface);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_genlist_scroller_policy_set(IntPtr circleGenlist, int policyHorisontal, int policyVertical);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_genlist_scroller_policy_get(IntPtr circleGenlist, out int policyHorisontal, out int policyVertical);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_genlist_scroller_policy_get(IntPtr circleGenlist, out int policyHorisontal, IntPtr policyVertical);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_genlist_scroller_policy_get(IntPtr circleGenlist, IntPtr policyHorisontal, out int policyVertical);
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleObject.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleObject.cs
new file mode 100755 (executable)
index 0000000..df625ba
--- /dev/null
@@ -0,0 +1,131 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_add(IntPtr obj, IntPtr surface);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_disabled_set(IntPtr obj, bool disabled);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern bool eext_circle_object_disabled_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_line_width_set(IntPtr obj, int lineWidth);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern int eext_circle_object_line_width_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_angle_set(IntPtr obj, double angle);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_angle_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_angle_offset_set(IntPtr obj, double offset);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_angle_offset_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_angle_min_max_set(IntPtr obj, double min, double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_angle_min_max_get(IntPtr obj, out double min, out double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_value_min_max_set(IntPtr obj, double min, double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_value_min_max_get(IntPtr obj, out double min, out double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_value_set(IntPtr obj, double value);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_value_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_color_set(IntPtr obj, int r, int g, int b, int a);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_color_get(IntPtr obj, out int r, out int g, out int b, out int a);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_radius_set(IntPtr obj, double radius);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_radius_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_line_width_set(IntPtr obj, string item, int lineWidth);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern int eext_circle_object_item_line_width_get(IntPtr obj, string item);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_angle_set(IntPtr obj, string item, double angle);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_item_angle_get(IntPtr obj, string item);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_angle_offset_set(IntPtr obj, string item, double offset);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_item_angle_offset_get(IntPtr obj, string item);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_angle_min_max_set(IntPtr obj, string item, double min, double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_angle_min_max_get(IntPtr obj, string item, out double min, out double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_angle_min_max_get(IntPtr obj, string item, out double min, IntPtr max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_angle_min_max_get(IntPtr obj, string item, IntPtr min, out double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_value_min_max_set(IntPtr obj, string item, double min, double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_value_min_max_get(IntPtr obj, string item, out double min, out double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_value_min_max_get(IntPtr obj, string item, out double min, IntPtr max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_value_min_max_get(IntPtr obj, string item, IntPtr min, out double max);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_value_set(IntPtr obj, string item, double value);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_item_value_get(IntPtr obj, string item);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_color_set(IntPtr obj, string item, int r, int g, int b, int a);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_color_get(IntPtr obj, string item, out int r, out int g, out int b, out int a);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_item_radius_set(IntPtr obj, string item, double radius);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_item_radius_get(IntPtr obj, string item);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_connect(IntPtr surface, IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_disconnect(IntPtr surface, IntPtr obj);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleProgressBar.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleProgressBar.cs
new file mode 100755 (executable)
index 0000000..f37ca6b
--- /dev/null
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Licensed under the Apache License, Version 2.0 (the License);
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_progressbar_add(IntPtr parent, IntPtr surface);
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleScroller.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleScroller.cs
new file mode 100755 (executable)
index 0000000..d6e801d
--- /dev/null
@@ -0,0 +1,23 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_scroller_add(IntPtr scroller, IntPtr surface);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_scroller_policy_set(IntPtr obj, int policy_h, int policy_v);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_scroller_policy_get(IntPtr obj, IntPtr policy_h, IntPtr policy_v);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_scroller_policy_get(IntPtr obj, out int policy_h, IntPtr policy_v);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_scroller_policy_get(IntPtr obj, IntPtr policy_h, out int policy_v);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleSlider.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleSlider.cs
new file mode 100755 (executable)
index 0000000..c546c5a
--- /dev/null
@@ -0,0 +1,17 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_slider_add(IntPtr parent, IntPtr surface);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_circle_object_slider_step_set(IntPtr obj, double value);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern double eext_circle_object_slider_step_get(IntPtr obj);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleSpinner.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleSpinner.cs
new file mode 100755 (executable)
index 0000000..2e3067b
--- /dev/null
@@ -0,0 +1,14 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_spinner_add(IntPtr spinner, IntPtr surface);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_object_spinner_angle_set(IntPtr spinner, double angle);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.CircleSurface.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.CircleSurface.cs
new file mode 100755 (executable)
index 0000000..18ced08
--- /dev/null
@@ -0,0 +1,21 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_surface_conformant_add(IntPtr conformant);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_surface_layout_add(IntPtr layout);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_surface_naviframe_add(IntPtr naviframe);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_circle_surface_del(IntPtr surface);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.EflExtensionEvent.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.EflExtensionEvent.cs
new file mode 100755 (executable)
index 0000000..c57c90c
--- /dev/null
@@ -0,0 +1,21 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        public enum EextCallbackType
+        {
+            EEXT_CALLBACK_BACK, // H/W Back Key Event
+            EEXT_CALLBACK_MORE,  // H/W More Key Event
+        }
+        internal delegate void EextEventCallback(IntPtr data, IntPtr obj, IntPtr info);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_object_event_callback_add(IntPtr obj, EextCallbackType type, EextEventCallback callback, IntPtr data);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_object_event_callback_del(IntPtr obj, EextCallbackType type, EextEventCallback callback);
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.MoreOption.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.MoreOption.cs
new file mode 100755 (executable)
index 0000000..ee0932e
--- /dev/null
@@ -0,0 +1,65 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_more_option_add(IntPtr parent);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_more_option_item_append(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_more_option_item_prepend(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_more_option_item_insert_after(IntPtr obj, IntPtr after);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_more_option_item_insert_before(IntPtr obj, IntPtr before);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_more_option_items_clear(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_more_option_items_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_more_option_direction_set(IntPtr obj, int direction);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern int eext_more_option_direction_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern bool eext_more_option_opened_get(IntPtr obj);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_more_option_opened_set(IntPtr obj, bool opened);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_more_option_item_del(IntPtr item);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_more_option_item_domain_translatable_part_text_set(IntPtr item, string part_name, string domain, string text);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_more_option_item_part_content_get(IntPtr item, string part_name);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_more_option_item_part_content_set(IntPtr item, string part_name, IntPtr content);
+
+        [DllImport(efl.Libs.Eext, EntryPoint = "eext_more_option_item_part_text_get")]
+        static extern IntPtr _eext_more_option_item_part_text_get(IntPtr item, string part_name);
+
+        internal static string eext_more_option_item_part_text_get(IntPtr item, string part_name)
+        {
+            var ptr = _eext_more_option_item_part_text_get(item, part_name);
+            return Marshal.PtrToStringAnsi(ptr);
+        }
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_more_option_item_part_text_set(IntPtr item, string part_name, string text);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.Rotary.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.Rotary.cs
new file mode 100755 (executable)
index 0000000..63dbf2a
--- /dev/null
@@ -0,0 +1,52 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        const short EEXT_CALLBACK_PRIORITY_AFTER = 100;
+        const short EEXT_CALLBACK_PRIORITY_BEFORE = -100;
+        const short EEXT_CALLBACK_PRIORITY_DEFAULT = 0;
+
+        internal delegate bool Eext_Rotary_Event_Cb(IntPtr data, IntPtr obj, IntPtr info);
+        internal delegate bool Eext_Rotary_Handler_Cb(IntPtr data, IntPtr info);
+
+        internal enum Eext_Rotary_Event_Direction
+        {
+            Clockwise,
+            CounterClockwise
+        }
+
+        [StructLayout(LayoutKind.Sequential)]
+        internal struct Eext_Rotary_Event_Info
+        {
+            public Eext_Rotary_Event_Direction Direction;
+            public uint TimeStamp;
+        }
+
+        internal static Eext_Rotary_Event_Info FromIntPtr(IntPtr infoPtr)
+        {
+            var info = Marshal.PtrToStructure<Eext_Rotary_Event_Info>(infoPtr);
+            return info;
+        }
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_object_event_activated_set(IntPtr circleObject, bool activated);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern bool eext_rotary_object_event_callback_add(IntPtr obj, Eext_Rotary_Event_Cb func, IntPtr data);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern bool eext_rotary_object_event_callback_priority_add(IntPtr obj, short priority, Eext_Rotary_Event_Cb func, IntPtr data);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_object_event_callback_del(IntPtr obj, Eext_Rotary_Event_Cb func);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern bool eext_rotary_event_handler_add(Eext_Rotary_Handler_Cb func, IntPtr data);
+
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_event_handler_del(Eext_Rotary_Handler_Cb func);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Eext.RotarySelector.cs b/internals/src/EflSharp/EflSharp/Interop.Eext.RotarySelector.cs
new file mode 100755 (executable)
index 0000000..3450cbd
--- /dev/null
@@ -0,0 +1,49 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Eext
+    {
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_add(IntPtr parent);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_item_append(IntPtr obj);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_item_prepend(IntPtr obj);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_item_insert_after(IntPtr obj, IntPtr after);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_item_insert_before(IntPtr obj, IntPtr before);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_items_clear(IntPtr obj);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_part_color_set(IntPtr obj, string part_name, int state, int r, int g, int b, int a);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_part_color_get(IntPtr obj, string part_name, int state, out int r, out int g, out int b, out int a);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_selected_item_set(IntPtr obj, IntPtr item);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_selected_item_get(IntPtr obj);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_part_content_set(IntPtr obj, string part_name, int state, IntPtr content);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_part_content_get(IntPtr obj, string part_name, int state);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_item_del(IntPtr item);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_item_part_text_set(IntPtr item, string part_name, string text);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern string eext_rotary_selector_item_part_text_get(IntPtr item, string part_name);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_item_domain_translatable_part_text_set(IntPtr item, string part_name, string domain, string text);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_item_part_content_set(IntPtr item, string part_name, int state, IntPtr content);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern IntPtr eext_rotary_selector_item_part_content_get(IntPtr item, string part_name, int state);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_item_part_color_set(IntPtr item, string part_name, int state, int r, int g, int b, int a);
+        [DllImport(efl.Libs.Eext)]
+        internal static extern void eext_rotary_selector_item_part_color_get(IntPtr item, string part_name, int state, out int r, out int g, out int b, out int a);
+    }
+}
\ No newline at end of file
diff --git a/internals/src/EflSharp/EflSharp/Interop.Evas.SmartCallback.cs b/internals/src/EflSharp/EflSharp/Interop.Evas.SmartCallback.cs
new file mode 100755 (executable)
index 0000000..389e3ff
--- /dev/null
@@ -0,0 +1,16 @@
+using System;
+using System.Runtime.InteropServices;
+
+internal static partial class Interop
+{
+    internal static partial class Evas
+    {
+        public delegate void SmartCallback(IntPtr data, IntPtr obj, IntPtr info);
+
+        [DllImport(efl.Libs.Evas)]
+        internal static extern void evas_object_smart_callback_add(IntPtr obj, string eventName, SmartCallback func, IntPtr data);
+
+        [DllImport(efl.Libs.Evas)]
+        internal static extern void evas_object_smart_callback_del(IntPtr obj, string eventName, SmartCallback func);
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/MoreOption.cs b/internals/src/EflSharp/EflSharp/MoreOption.cs
new file mode 100755 (executable)
index 0000000..16fe026
--- /dev/null
@@ -0,0 +1,121 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class MoreOptionItemEventArgs : EventArgs
+            {
+                public MoreOptionItem item { get; set; }
+            }
+
+            public class MoreOption : Efl.Ui.Layout
+            {
+                const string IconPartName = "selector,icon";
+                const string ContentPartName = "selector,content";
+                const string BgPartName = "selector,bg_image";
+
+                const string ItemSelectedEventName = "item,selected";
+                const string ItemClickedEventName = "item,clicked";
+
+                public event EventHandler<MoreOptionItemEventArgs> Clicked;
+                public event EventHandler<MoreOptionItemEventArgs> Selected;
+
+                public MoreOption(Efl.Ui.Widget parent) : base(Interop.Eext.eext_more_option_add(parent.NativeHandle))
+                {
+                    Interop.Evas.SmartCallback _smartClicked = new Interop.Evas.SmartCallback((d, o, e) =>
+                    {
+                        MoreOptionItem clickedItem = new MoreOptionItem();
+                        clickedItem._handle = e;
+                        Clicked?.Invoke(this, new MoreOptionItemEventArgs { item = clickedItem });
+                    });
+
+                    Interop.Evas.SmartCallback _smartSelected = new Interop.Evas.SmartCallback((d, o, e) =>
+                    {
+                        MoreOptionItem selectedItem = new MoreOptionItem();
+                        selectedItem._handle = e;
+                        Selected?.Invoke(this, new MoreOptionItemEventArgs { item = selectedItem });
+                    });
+
+                    Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemClickedEventName, _smartClicked, IntPtr.Zero);
+                    Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemSelectedEventName, _smartSelected, IntPtr.Zero);
+                }
+
+                public void Append(MoreOptionItem item)
+                {
+                    if (item.NativeHandle != null)
+                      item.NativeHandle = Interop.Eext.eext_more_option_item_append(this.NativeHandle);
+                }
+
+                public void PrependItem(MoreOptionItem item)
+                {
+                    if (item.NativeHandle != null)
+                      item.NativeHandle = Interop.Eext.eext_more_option_item_prepend(this.NativeHandle);
+                }
+
+                public void InsertAfter(MoreOptionItem targetItem, MoreOptionItem item)
+                {
+                    if (item.NativeHandle != null)
+                      item.NativeHandle = Interop.Eext.eext_more_option_item_insert_after(this.NativeHandle, targetItem.NativeHandle);
+                }
+
+                public void InsertBefore(MoreOptionItem targetItem, MoreOptionItem item)
+                {
+                    if (item.NativeHandle != null)
+                      item.NativeHandle = Interop.Eext.eext_more_option_item_insert_before(this.NativeHandle, targetItem.NativeHandle);
+                }
+
+                public void DeleteItem(MoreOptionItem item)
+                {
+                    if (item.NativeHandle != null)
+                      Interop.Eext.eext_more_option_item_del(item.NativeHandle);
+                }
+
+                public void ClearItems()
+                {
+                    if (this.NativeHandle != null)
+                      Interop.Eext.eext_more_option_items_clear(this.NativeHandle);
+                }
+
+                public MoreOptionDirection Direction
+                {
+                    get
+                    {
+                        int dir = Interop.Eext.eext_more_option_direction_get(this.NativeHandle);
+                        return (MoreOptionDirection)dir;
+                    }
+
+                    set
+                    {
+                        Interop.Eext.eext_more_option_direction_set(this.NativeHandle, (int)value);
+                    }
+                }
+
+                public bool IsOpened
+                {
+                    get
+                    {
+                        return Interop.Eext.eext_more_option_opened_get(this.NativeHandle);
+                    }
+
+                    set
+                    {
+                        Interop.Eext.eext_more_option_opened_set(this.NativeHandle, value);
+                    }
+                }
+
+                public enum MoreOptionDirection
+                {
+                    Top,
+                    Bottom,
+                    Left,
+                    Right
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/MoreOptionItem.cs b/internals/src/EflSharp/EflSharp/MoreOptionItem.cs
new file mode 100755 (executable)
index 0000000..e90cd7d
--- /dev/null
@@ -0,0 +1,98 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class MoreOptionItem
+            {
+                const string MainTextPartName = "selector,main_text";
+                const string SubTextPartName = "selector,sub_text";
+                const string IconPartName = "item,icon";
+
+                string _mainText;
+                string _subText;
+                Image _icon;
+
+                public IntPtr _handle;
+                public IntPtr NativeHandle
+                {
+                    set
+                    {
+                        if (_handle == value) return;
+                        _handle = value;
+
+                        if (_handle == null) return;
+
+                        if (_mainText != null)
+                            Interop.Eext.eext_more_option_item_part_text_set(NativeHandle, MainTextPartName, _mainText);
+                        if (_subText != null)
+                            Interop.Eext.eext_more_option_item_part_text_set(NativeHandle, SubTextPartName, _subText);
+                        if (_icon != null)
+                            Interop.Eext.eext_more_option_item_part_content_set(NativeHandle, IconPartName, _icon.NativeHandle);
+                    }
+                    get
+                    {
+                        return _handle;
+                    }
+                }
+                public string MainText
+                {
+                    set
+                    {
+                        if (_mainText == value) return;
+                        _mainText = value;
+                        if (NativeHandle != IntPtr.Zero)
+                        {
+                            Interop.Eext.eext_more_option_item_part_text_set(NativeHandle, MainTextPartName, _mainText);
+                        }
+                    }
+
+                    get
+                    {
+                        return _mainText;
+                    }
+                }
+
+                public string SubText
+                {
+                    set
+                    {
+                        if (_subText == value) return;
+                        _subText = value;
+                        if (NativeHandle != IntPtr.Zero)
+                        {
+                            Interop.Eext.eext_more_option_item_part_text_set(NativeHandle, SubTextPartName, _subText);
+                        }
+                    }
+
+                    get
+                    {
+                        return _subText;
+                    }
+                }
+
+                public Image Icon
+                {
+                    set
+                    {
+                        if (_icon == value) return;
+                        _icon = value;
+                        if (NativeHandle != IntPtr.Zero)
+                        {
+                            Interop.Eext.eext_more_option_item_part_content_set(NativeHandle, IconPartName, _icon.NativeHandle);
+                        }
+                    }
+                    get
+                    {
+                        return _icon;
+                    }
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/NativeModule.cs b/internals/src/EflSharp/EflSharp/NativeModule.cs
new file mode 100755 (executable)
index 0000000..324a933
--- /dev/null
@@ -0,0 +1,33 @@
+using System;
+
+namespace Efl { namespace Eo {
+
+public partial class NativeModule : IDisposable
+{
+    private Lazy<IntPtr> module;
+
+    public NativeModule(string libName)
+    {
+        module = new Lazy<IntPtr>
+            (() =>
+             {
+                 return LoadLibrary(libName);
+             });
+    }
+
+    public IntPtr Module
+    {
+        get
+        {
+            return module.Value;
+        }
+    }
+
+    public void Dispose()
+    {
+        UnloadLibrary(module.Value);
+        module = null;
+    }
+}
+
+} }
diff --git a/internals/src/EflSharp/EflSharp/NativeModule_Unix.cs b/internals/src/EflSharp/EflSharp/NativeModule_Unix.cs
new file mode 100755 (executable)
index 0000000..6f69395
--- /dev/null
@@ -0,0 +1,46 @@
+using System;
+using System.Runtime.InteropServices;
+
+namespace Efl { namespace Eo {
+
+public partial class NativeModule
+{
+    public const int RTLD_NOW = 0x002;
+    // Currently we are using GLOBAL due to issues
+    // with the way evas modules are built.
+    public const int RTLD_GLOBAL = 0x100;
+
+    [DllImport(efl.Libs.Libdl)]
+    public static extern IntPtr dlopen(string fileName, int flag);
+    [DllImport(efl.Libs.Libdl)]
+    public static extern int dlclose(IntPtr handle);
+
+    public static void UnloadLibrary(IntPtr handle)
+    {
+        dlclose(handle);
+    }
+
+    public static IntPtr LoadLibrary(string filename)
+    {
+        Eina.Log.Debug($"Loading library {filename}");
+        var r = dlopen(filename, RTLD_NOW | RTLD_GLOBAL);
+        if (r == IntPtr.Zero)
+        {
+            r = dlopen("lib" + filename, RTLD_NOW | RTLD_GLOBAL);
+            if (r == IntPtr.Zero)
+            {
+                r = dlopen(filename + ".so", RTLD_NOW | RTLD_GLOBAL);
+                if (r == IntPtr.Zero)
+                {
+                    r = dlopen("lib" + filename + ".so", RTLD_NOW | RTLD_GLOBAL);
+                }
+            }
+        }
+        return r;
+    }
+}
+
+
+
+
+} }
diff --git a/internals/src/EflSharp/EflSharp/RotaryEventManager.cs b/internals/src/EflSharp/EflSharp/RotaryEventManager.cs
new file mode 100755 (executable)
index 0000000..72f0c64
--- /dev/null
@@ -0,0 +1,165 @@
+using System;
+using System.Collections.Generic;
+using System.Runtime.InteropServices;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public static class CircleWidgetList
+            {
+                private static HashSet<string> _circleWidgetList = new HashSet<string>();
+                static CircleWidgetList()
+                {
+                    _circleWidgetList.Add("Efl.Ui.Wearable.CircleSlider");
+                    _circleWidgetList.Add("Efl.Ui.Wearable.CircleGenlist");
+                    _circleWidgetList.Add("Efl.Ui.Wearable.CircleProgressBar");
+                    _circleWidgetList.Add("Efl.Ui.Wearable.CircleScroller");
+                    _circleWidgetList.Add("Efl.Ui.Wearable.CircleSpinner");
+                    _circleWidgetList.Add("Efl.Ui.Wearable.CircleDatePicker");
+                    _circleWidgetList.Add("Efl.Ui.Wearable.CircleTimePicker");
+                }
+
+                public static bool Contains(string target)
+                {
+                    return _circleWidgetList.Contains(target);
+                }
+            }
+
+            public static class RotaryEventManager
+            {
+                static Dictionary<RotaryEventHandler, Interop.Eext.Eext_Rotary_Handler_Cb> s_rotaryEventHandlers = new Dictionary<RotaryEventHandler, Interop.Eext.Eext_Rotary_Handler_Cb>();
+
+                public static event RotaryEventHandler Rotated
+                {
+                    add
+                    {
+                        if (s_rotaryEventHandlers.ContainsKey(value)) return;
+
+                        Interop.Eext.Eext_Rotary_Handler_Cb cb = (data, infoPtr) =>
+                        {
+                            var info = Interop.Eext.FromIntPtr(infoPtr);
+                            value.Invoke(new RotaryEventArgs
+                            {
+                                IsClockwise = info.Direction == Interop.Eext.Eext_Rotary_Event_Direction.Clockwise,
+                                Timestamp = info.TimeStamp
+                            });
+                            return true;
+                        };
+                        Interop.Eext.eext_rotary_event_handler_add(cb, IntPtr.Zero);
+                        s_rotaryEventHandlers[value] = cb;
+                    }
+
+                    remove
+                    {
+                        Interop.Eext.Eext_Rotary_Handler_Cb cb;
+                        if (s_rotaryEventHandlers.TryGetValue(value, out cb))
+                        {
+                            Interop.Eext.eext_rotary_event_handler_del(cb);
+                            s_rotaryEventHandlers.Remove(value);
+                        }
+                    }
+                }
+
+                static Dictionary<Efl.Object, RotaryEventHandler> s_rotaryObjectEventHandlers = new Dictionary<Efl.Object, RotaryEventHandler>();
+                static Dictionary<Efl.Object, Interop.Eext.Eext_Rotary_Event_Cb> s_rotaryObjectEventMap = new Dictionary<Efl.Object, Interop.Eext.Eext_Rotary_Event_Cb>();
+
+                public static void AddRotaryEventHandler(this Efl.Object obj, RotaryEventHandler handler)
+                {
+                    EnableRotaryEventHandler(obj);
+
+                    if (s_rotaryObjectEventHandlers.ContainsKey(obj))
+                    {
+                        s_rotaryObjectEventHandlers[obj] += handler;
+                    }
+                    else
+                    {
+                        s_rotaryObjectEventHandlers[obj] = handler;
+                    }
+                }
+
+                public static void RemoveRotaryEventHandler(this Efl.Object obj, RotaryEventHandler handler)
+                {
+                    if (s_rotaryObjectEventHandlers.ContainsKey(obj))
+                    {
+                        s_rotaryObjectEventHandlers[obj] -= handler;
+                        if (s_rotaryObjectEventHandlers[obj] == null)
+                        {
+                            DisableRotaryEventHandler(obj, false);
+                            s_rotaryObjectEventHandlers.Remove(obj);
+                        }
+                    }
+                }
+
+                public static void RotaryEventActivate(this Efl.Object widget)
+                {
+                    string type = widget.GetType().ToString();
+
+                    if (CircleWidgetList.Contains(type))
+                        Interop.Eext.eext_rotary_object_event_activated_set(((ICircleWidget)widget).CircleHandle, true);
+                    else
+                        Interop.Eext.eext_rotary_object_event_activated_set(widget.NativeHandle, true);
+                }
+
+                public static void RotaryEventDeactivate(this Efl.Object widget)
+                {
+                    string type = widget.GetType().ToString();
+
+                    if (CircleWidgetList.Contains(type))
+                        Interop.Eext.eext_rotary_object_event_activated_set(((ICircleWidget)widget).CircleHandle, false);
+                    else
+                        Interop.Eext.eext_rotary_object_event_activated_set(widget.NativeHandle, false);
+                }
+
+                static void EnableRotaryEventHandler(Efl.Object obj)
+                {
+                    if (!s_rotaryObjectEventMap.ContainsKey(obj))
+                    {
+                        Interop.Eext.Eext_Rotary_Event_Cb cb = (d, o, i) =>
+                        {
+                            RotaryEventHandler events;
+                            if (s_rotaryObjectEventHandlers.TryGetValue(obj, out events))
+                            {
+                                var info = Interop.Eext.FromIntPtr(i);
+                                events?.Invoke(new RotaryEventArgs
+                                {
+                                    IsClockwise = info.Direction == Interop.Eext.Eext_Rotary_Event_Direction.Clockwise,
+                                    Timestamp = info.TimeStamp
+                                });
+                            }
+                            return true;
+                        };
+                        Interop.Eext.eext_rotary_object_event_callback_add(obj.NativeHandle, cb, IntPtr.Zero);
+                        s_rotaryObjectEventMap[obj] = cb;
+                        obj.DelEvt += (s, e) => DisableRotaryEventHandler(obj, true);
+                    }
+                }
+
+                static void DisableRotaryEventHandler(Efl.Object obj, bool removeHandler)
+                {
+                    Interop.Eext.Eext_Rotary_Event_Cb cb;
+                    if (s_rotaryObjectEventMap.TryGetValue(obj, out cb))
+                    {
+                        Interop.Eext.eext_rotary_object_event_callback_del(obj.NativeHandle, cb);
+                        s_rotaryObjectEventMap.Remove(obj);
+                    }
+                    if (removeHandler && s_rotaryObjectEventHandlers.ContainsKey(obj))
+                    {
+                        s_rotaryObjectEventHandlers.Remove(obj);
+                    }
+                }
+            }
+
+            public delegate void RotaryEventHandler(RotaryEventArgs args);
+
+            public class RotaryEventArgs : EventArgs
+            {
+                public bool IsClockwise { get; set; }
+                public uint Timestamp { get; set; }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/RotarySelector.cs b/internals/src/EflSharp/EflSharp/RotarySelector.cs
new file mode 100755 (executable)
index 0000000..7f317b6
--- /dev/null
@@ -0,0 +1,125 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class RotarySelectorItemEventArgs : EventArgs
+            {
+                public RotarySelectorItem item { get; set; }
+            }
+
+            public class RotarySelector : Efl.Ui.Layout
+            {
+                const string IconPartName = "selector,icon";
+                const string ContentPartName = "selector,content";
+                const string BgPartName = "selector,bg_image";
+
+                const string ItemSelectedEventName = "item,selected";
+                const string ItemClickedEventName = "item,clicked";
+
+                Image _normalBgImage;
+
+                public event EventHandler<RotarySelectorItemEventArgs> Clicked;
+                public event EventHandler<RotarySelectorItemEventArgs> Selected;
+
+                public RotarySelector(Efl.Ui.Widget parent) : base(Interop.Eext.eext_rotary_selector_add(parent.NativeHandle))
+                {
+                    Interop.Evas.SmartCallback _smartClicked = new Interop.Evas.SmartCallback((d, o, e) =>
+                    {
+                        RotarySelectorItem clickedItem = new RotarySelectorItem();
+                        clickedItem._handle = e;
+                        Clicked?.Invoke(this, new RotarySelectorItemEventArgs { item = clickedItem});
+                    });
+
+                    Interop.Evas.SmartCallback _smartSelected = new Interop.Evas.SmartCallback((d, o, e) =>
+                    {
+                        Selected?.Invoke(this, new RotarySelectorItemEventArgs { item = this.SelectedItem });
+                    });
+
+                    Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemClickedEventName, _smartClicked, IntPtr.Zero);
+                    Interop.Evas.evas_object_smart_callback_add(this.NativeHandle, ItemSelectedEventName, _smartSelected, IntPtr.Zero);
+                }
+
+                public void Append(RotarySelectorItem item)
+                {
+                    if (item.NativeHandle != null)
+                      item.NativeHandle = Interop.Eext.eext_rotary_selector_item_append(this.NativeHandle);
+                }
+
+                public void Prepend(RotarySelectorItem item)
+                {
+                    if (item.NativeHandle != null)
+                      item.NativeHandle = Interop.Eext.eext_rotary_selector_item_prepend(this.NativeHandle);
+                }
+
+                public void InsertAfter(RotarySelectorItem targetItem, RotarySelectorItem item)
+                {
+                    if (item.NativeHandle != null)
+                    item.NativeHandle = Interop.Eext.eext_rotary_selector_item_insert_after(this.NativeHandle, targetItem.NativeHandle);
+                }
+
+                public void InsertBefore(RotarySelectorItem targetItem, RotarySelectorItem item)
+                {
+                    if (item.NativeHandle != null)
+                      item.NativeHandle = Interop.Eext.eext_rotary_selector_item_insert_before(this.NativeHandle, targetItem.NativeHandle);
+                }
+
+                public void DeleteItem(RotarySelectorItem item)
+                {
+                    if (item.NativeHandle != null)
+                      Interop.Eext.eext_rotary_selector_item_del(item.NativeHandle);
+                }
+
+                public void ClearItems()
+                {
+                    if (this.NativeHandle != null)
+                      Interop.Eext.eext_rotary_selector_items_clear(this.NativeHandle);
+                }
+
+                public RotarySelectorItem SelectedItem
+                {
+                    get
+                    {
+                        RotarySelectorItem item = new RotarySelectorItem();
+                        item.NativeHandle = Interop.Eext.eext_rotary_selector_selected_item_get(this.NativeHandle);
+                        return item;
+                    }
+                    set
+                    {
+                        Interop.Eext.eext_rotary_selector_selected_item_set(this.NativeHandle, value.NativeHandle);
+                    }
+                }
+
+                void SetPart(string partName, State state, Image img)
+                {
+                    if (img != null)
+                        Interop.Eext.eext_rotary_selector_part_content_set(this.NativeHandle, partName, (int)state, img.NativeHandle);
+                }
+
+                public Image BackgroundImage
+                {
+                    get
+                    {
+                        return _normalBgImage;
+                    }
+                    set
+                    {
+                        _normalBgImage = value;
+                        SetPart(BgPartName, State.Normal, value);
+                    }
+                }
+
+                internal enum State
+                {
+                    Normal,
+                    Pressed
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/RotarySelectorItem.cs b/internals/src/EflSharp/EflSharp/RotarySelectorItem.cs
new file mode 100755 (executable)
index 0000000..b4a318f
--- /dev/null
@@ -0,0 +1,280 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Efl
+{
+    namespace Ui
+    {
+        namespace Wearable
+        {
+            public class RotaryColorPart : Efl.Object, Efl.Gfx.Color
+            {
+                int _r, _g, _b, _a;
+
+                public RotaryColorPart() { _r = _g = _b = _a = -1; }
+
+                public void SetColor(int r, int g, int b, int a)
+                {
+                    _r = r;
+                    _g = g;
+                    _b = b;
+                    _a = a;
+                }
+
+                public virtual void GetColor(out int r, out int g, out int b, out int a)
+                {
+                    //Not Implemented
+                    r = _r;
+                    g = _g;
+                    b = _b;
+                    a = _a;
+                }
+
+                public void SetColorCode(System.String colorcode)
+                {
+                    //Not Implemented
+                    return;
+                }
+
+                public System.String GetColorCode()
+                {
+                    //Not Implemented
+                    return null;
+                }
+
+                public System.String GetColorClassCode(System.String color_class, Efl.Gfx.ColorClassLayer layer)
+                {
+                    //Not Implemented
+                    return null;
+                }
+                public void SetColorClassCode(System.String color_class, Efl.Gfx.ColorClassLayer layer, System.String colorcode)
+                {
+                    //This function will be removed after interface work is done
+                    return;
+                }
+
+                public System.String ColorCode
+                {
+                    //This function will be removed afater interface work is done
+                    get { return null; }
+                    set { }
+                }
+            }
+
+            public class RotarySelectorItem
+            {
+                const string MainTextPartName = "selector,main_text";
+                const string SubTextPartName = "selector,sub_text";
+                const string IconPartName = "item,icon";
+                const string BgPartName = "item,bg_image";
+                const string SelectorIconPartName = "selector,icon";
+
+                string _mainText;
+                string _subText;
+                Image _normalIconImage;
+                Image _pressedIconImage;
+                Image _disabledIconImage;
+                Image _selectedIconImage;
+                Image _normalBgImage;
+                Image _pressedBgImage;
+                Image _disabledBgImage;
+                Image _selectedBgImage;
+                Image _selectorIconImage;
+
+                public RotaryColorPart MainTextColor;
+                public RotaryColorPart SubTextColor;
+                public RotaryColorPart NormalBgColor;
+                public RotaryColorPart PressedBgColor;
+                public RotaryColorPart DisabledBgColor;
+                public RotaryColorPart SelectedBgColor;
+
+                public IntPtr _handle;
+                public IntPtr NativeHandle
+                {
+                    set
+                    {
+                        if (_handle == value) return;
+                        _handle = value;
+
+                        if (_handle == null) return;
+
+                        
+                        SetPart(MainTextPartName, _mainText);
+                        SetPart(SubTextPartName, _subText);
+
+                        SetPart(MainTextPartName, ItemState.Normal, MainTextColor);
+                        SetPart(SubTextPartName, ItemState.Normal, SubTextColor);
+
+                        SetPart(IconPartName, ItemState.Normal, _normalIconImage);
+                        SetPart(IconPartName, ItemState.Pressed, _pressedIconImage);
+                        SetPart(IconPartName, ItemState.Disabled, _disabledIconImage);
+                        SetPart(IconPartName, ItemState.Selected, _selectedIconImage);
+                        
+                        SetPart(BgPartName, ItemState.Normal, _normalBgImage);
+                        SetPart(BgPartName, ItemState.Pressed, _pressedBgImage);
+                        SetPart(BgPartName, ItemState.Disabled, _disabledBgImage);
+                        SetPart(BgPartName, ItemState.Selected, _selectedBgImage);
+
+                        SetPart(BgPartName, ItemState.Normal, NormalBgColor);
+                        SetPart(BgPartName, ItemState.Normal, PressedBgColor);
+                        SetPart(BgPartName, ItemState.Normal, DisabledBgColor);
+                        SetPart(BgPartName, ItemState.Normal, SelectedBgColor);
+
+                        SetPart(SelectorIconPartName, ItemState.Normal, _selectorIconImage);
+                    }
+                    get
+                    {
+                        return _handle;
+                    }
+                }
+
+                void SetPart(string partName, ItemState state, Image img)
+                {
+                    if (NativeHandle != null && partName != null && img != null)
+                    {
+                        Interop.Eext.eext_rotary_selector_item_part_content_set(NativeHandle, partName, (int)state, img.NativeHandle);
+                    }
+                }
+
+                void SetPart(string partName, string text)
+                {
+                    if (NativeHandle != null && text != null)
+                    {
+                        Interop.Eext.eext_rotary_selector_item_part_text_set(NativeHandle, partName, text);
+                    }
+                }
+
+                void SetPart(string partName, ItemState state, RotaryColorPart color)
+                {
+                    if (NativeHandle != null && partName != null && color != null)
+                    {
+                        int r, g, b, a;
+                        color.GetColor(out r, out g, out b, out a);
+
+                        if (r != -1 || g != -1 || b != -1 || a != -1)
+                          Interop.Eext.eext_rotary_selector_item_part_color_set(NativeHandle, partName, (int)state, r, g, b, a);
+                    }
+                }
+
+                public string MainText
+                {
+                    get { return _mainText; }
+                    set
+                    {
+                        _mainText = value;
+                        SetPart(MainTextPartName, value);
+                    }
+                }
+
+                public string SubText
+                {
+                    get { return _subText; }
+                    set
+                    {
+                        _subText = value;
+                        SetPart(SubTextPartName, value);
+                    }
+                }
+
+                public Image NormalIconImage
+                {
+                    get { return _normalIconImage; }
+                    set
+                    {
+                        _normalIconImage = value;
+                        SetPart(IconPartName, ItemState.Normal, value);
+                    }
+                }
+
+                public Image PressedIconImage
+                {
+                    get { return _pressedIconImage; }
+                    set
+                    {
+                        _pressedIconImage = value;
+                        SetPart(IconPartName, ItemState.Pressed, value);
+                    }
+                }
+
+                public Image DisabledIconImage
+                {
+                    get { return _disabledIconImage; }
+                    set
+                    {
+                        _disabledIconImage = value;
+                        SetPart(IconPartName, ItemState.Disabled, value);
+                    }
+                }
+
+                public Image SelectedIconImage
+                {
+                    get { return _selectedIconImage; }
+                    set
+                    {
+                        _selectedIconImage = value;
+                        SetPart(IconPartName, ItemState.Selected, value);
+                    }
+                }
+
+                public Image NormalBackgroundImage
+                {
+                    get { return _normalBgImage; }
+                    set
+                    {
+                        _normalBgImage = value;
+                        SetPart(BgPartName, ItemState.Normal, value);
+                    }
+                }
+
+                public Image PressedBackgroundImage
+                {
+                    get { return _pressedBgImage; }
+                    set
+                    {
+                        _pressedBgImage = value;
+                        SetPart(BgPartName, ItemState.Pressed, value);
+                    }
+                }
+
+                public Image DisabledBackgroundImage
+                {
+                    get { return _disabledBgImage; }
+                    set
+                    {
+                        _disabledBgImage = value;
+                        SetPart(BgPartName, ItemState.Disabled, value);
+                    }
+                }
+
+                public Image SelectedBackgroundImage
+                {
+                    get { return _selectedBgImage; }
+                    set
+                    {
+                        _selectedBgImage = value;
+                        SetPart(BgPartName, ItemState.Selected, value);
+                    }
+                }
+
+                public Image SelectorIconImage
+                {
+                    get { return _selectorIconImage; }
+                    set
+                    {
+                        _selectorIconImage = value;
+                        SetPart(SelectorIconPartName, ItemState.Normal, value);
+                    }
+                }
+
+                internal enum ItemState
+                {
+                    Normal,
+                    Pressed,
+                    Disabled,
+                    Selected
+                }
+            }
+        }
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/edje_types.eot.cs b/internals/src/EflSharp/EflSharp/edje_types.eot.cs
new file mode 100755 (executable)
index 0000000..0ebec7a
--- /dev/null
@@ -0,0 +1,239 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Type of a part in an Efl.Canvas.Layout object (edje object).</summary>
+public enum LayoutPartType
+{
+/// <summary>None type value, indicates invalid parts.</summary>
+None = 0,
+/// <summary>Rectangle type value.</summary>
+Rectangle = 1,
+/// <summary>Text type value.</summary>
+Text = 2,
+/// <summary>Image type value.</summary>
+Image = 3,
+/// <summary>Swallow  type value.</summary>
+Swallow = 4,
+/// <summary>Text block type value.</summary>
+Textblock = 5,
+/// <summary>Gradient type value.</summary>
+Gradient = 6,
+/// <summary>Group type value.</summary>
+Group = 7,
+/// <summary>Box type value.</summary>
+Box = 8,
+/// <summary>Table type value.</summary>
+Table = 9,
+/// <summary>External type value.</summary>
+External = 10,
+/// <summary>Proxy type value.</summary>
+Proxy = 11,
+/// <summary>Spacer type value
+/// 1.7.</summary>
+Spacer = 12,
+/// <summary>Canvas 3D type: mesh node.</summary>
+MeshNode = 13,
+/// <summary>Canvas 3D type: light.</summary>
+Light = 14,
+/// <summary>Canvas 3D type: camera.</summary>
+Camera = 15,
+/// <summary>Snapshot
+/// 1.16.</summary>
+Snapshot = 16,
+/// <summary>Vector
+/// 1.18.</summary>
+Vector = 17,
+/// <summary>Last type value.</summary>
+Last = 18,
+}
+} } 
+namespace Edje { 
+/// <summary>All available cursor states</summary>
+public enum Cursor
+{
+/// <summary>Main cursor state</summary>
+Main = 0,
+/// <summary>Selection begin cursor state</summary>
+SelectionBegin = 1,
+/// <summary>Selection end cursor state</summary>
+SelectionEnd = 2,
+/// <summary>Pre-edit start cursor state</summary>
+PreeditStart = 3,
+/// <summary>Pre-edit end cursor state</summary>
+PreeditEnd = 4,
+/// <summary>User cursor state</summary>
+User = 5,
+/// <summary>User extra cursor state</summary>
+UserExtra = 6,
+}
+} 
+namespace Edje { namespace Text { 
+/// <summary>All Text auto capital mode type values</summary>
+public enum AutocapitalType
+{
+/// <summary>None mode value</summary>
+None = 0,
+/// <summary>Word mode value</summary>
+Word = 1,
+/// <summary>Sentence mode value</summary>
+Sentence = 2,
+/// <summary>All characters mode value</summary>
+Allcharacter = 3,
+}
+} } 
+namespace Edje { 
+/// <summary>Input hints</summary>
+public enum InputHints
+{
+/// <summary>No active hints
+/// 1.12</summary>
+None = 0,
+/// <summary>Suggest word auto completion
+/// 1.12</summary>
+AutoComplete = 1,
+/// <summary>Typed text should not be stored.
+/// 1.12</summary>
+SensitiveData = 2,
+}
+} 
+namespace Edje { namespace InputPanel { 
+/// <summary>Input panel language</summary>
+public enum Lang
+{
+/// <summary>Automatic
+/// 1.2</summary>
+Automatic = 0,
+/// <summary>Alphabet
+/// 1.2</summary>
+Alphabet = 1,
+}
+} } 
+namespace Edje { namespace InputPanel { 
+/// <summary>Input panel return key types</summary>
+public enum ReturnKeyType
+{
+/// <summary>Default
+/// 1.2</summary>
+Default = 0,
+/// <summary>Done
+/// 1.2</summary>
+Done = 1,
+/// <summary>Go
+/// 1.2</summary>
+Go = 2,
+/// <summary>Join
+/// 1.2</summary>
+Join = 3,
+/// <summary>Login
+/// 1.2</summary>
+Login = 4,
+/// <summary>Next
+/// 1.2</summary>
+Next = 5,
+/// <summary>Search or magnifier icon
+/// 1.2</summary>
+Search = 6,
+/// <summary>Send
+/// 1.2</summary>
+Send = 7,
+/// <summary>Sign-in
+/// 1.8</summary>
+Signin = 8,
+}
+} } 
+namespace Edje { namespace InputPanel { 
+/// <summary>Input panel layout</summary>
+public enum Layout
+{
+/// <summary>Default layout</summary>
+Normal = 0,
+/// <summary>Number layout</summary>
+Number = 1,
+/// <summary>Email layout</summary>
+Email = 2,
+/// <summary>URL layout</summary>
+Url = 3,
+/// <summary>Phone Number layout</summary>
+Phonenumber = 4,
+/// <summary>IP layout</summary>
+Ip = 5,
+/// <summary>Month layout</summary>
+Month = 6,
+/// <summary>Number Only layout</summary>
+Numberonly = 7,
+/// <summary>Never use this</summary>
+Invalid = 8,
+/// <summary>Hexadecimal layout
+/// 1.2</summary>
+Hex = 9,
+/// <summary>Command-line terminal layout including esc, alt, ctrl key, so on (no auto-correct, no auto-capitalization)
+/// 1.2</summary>
+Terminal = 10,
+/// <summary>Like normal, but no auto-correct, no auto-capitalization etc.
+/// 1.2</summary>
+Password = 11,
+/// <summary>Date and time layout
+/// 1.8</summary>
+Datetime = 12,
+/// <summary>Emoticon layout
+/// 1.10</summary>
+Emoticon = 13,
+/// <summary>Voice layout, but if the IME does not support voice layout, then normal layout will be shown.
+/// 1.19</summary>
+Voice = 14,
+}
+} } 
+namespace Edje { 
+/// <summary>Perspective info for maps inside edje objects</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Perspective
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator Perspective(IntPtr ptr)
+   {
+      var tmp = (Perspective_StructInternal)Marshal.PtrToStructure(ptr, typeof(Perspective_StructInternal));
+      return Perspective_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Perspective.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Perspective_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Perspective(Perspective_StructInternal struct_)
+   {
+      return Perspective_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Perspective_StructInternal(Perspective struct_)
+   {
+      return Perspective_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Perspective</summary>
+public static class Perspective_StructConversion
+{
+   internal static Perspective_StructInternal ToInternal(Perspective _external_struct)
+   {
+      var _internal_struct = new Perspective_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static Perspective ToManaged(Perspective_StructInternal _internal_struct)
+   {
+      var _external_struct = new Perspective();
+
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_accelerate_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_accelerate_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..8027ab1
--- /dev/null
@@ -0,0 +1,203 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl accelerate interpolator class
+/// output = 1 - sin(Pi / 2 + input * Pi / 2);</summary>
+[AccelerateInterpolatorNativeInherit]
+public class AccelerateInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.AccelerateInterpolatorNativeInherit nativeInherit = new Efl.AccelerateInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AccelerateInterpolator))
+            return Efl.AccelerateInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_accelerate_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AccelerateInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_accelerate_interpolator_class_get(), typeof(AccelerateInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AccelerateInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AccelerateInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AccelerateInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AccelerateInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Factor property</summary>
+   /// <returns>Factor of the interpolation function.</returns>
+   virtual public double GetFactor() {
+       var _ret_var = Efl.AccelerateInterpolatorNativeInherit.efl_accelerate_interpolator_factor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Factor property</summary>
+   /// <param name="factor">Factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void SetFactor( double factor) {
+                         Efl.AccelerateInterpolatorNativeInherit.efl_accelerate_interpolator_factor_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factor);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Factor property</summary>
+/// <value>Factor of the interpolation function.</value>
+   public double Factor {
+      get { return GetFactor(); }
+      set { SetFactor( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.AccelerateInterpolator.efl_accelerate_interpolator_class_get();
+   }
+}
+public class AccelerateInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_accelerate_interpolator_factor_get_static_delegate == null)
+      efl_accelerate_interpolator_factor_get_static_delegate = new efl_accelerate_interpolator_factor_get_delegate(factor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_accelerate_interpolator_factor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_accelerate_interpolator_factor_get_static_delegate)});
+      if (efl_accelerate_interpolator_factor_set_static_delegate == null)
+      efl_accelerate_interpolator_factor_set_static_delegate = new efl_accelerate_interpolator_factor_set_delegate(factor_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_accelerate_interpolator_factor_set"), func = Marshal.GetFunctionPointerForDelegate(efl_accelerate_interpolator_factor_set_static_delegate)});
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.AccelerateInterpolator.efl_accelerate_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.AccelerateInterpolator.efl_accelerate_interpolator_class_get();
+   }
+
+
+    private delegate double efl_accelerate_interpolator_factor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_accelerate_interpolator_factor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_accelerate_interpolator_factor_get_api_delegate> efl_accelerate_interpolator_factor_get_ptr = new Efl.Eo.FunctionWrapper<efl_accelerate_interpolator_factor_get_api_delegate>(_Module, "efl_accelerate_interpolator_factor_get");
+    private static double factor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_accelerate_interpolator_factor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((AccelerateInterpolator)wrapper).GetFactor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_accelerate_interpolator_factor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_accelerate_interpolator_factor_get_delegate efl_accelerate_interpolator_factor_get_static_delegate;
+
+
+    private delegate  void efl_accelerate_interpolator_factor_set_delegate(System.IntPtr obj, System.IntPtr pd,   double factor);
+
+
+    public delegate  void efl_accelerate_interpolator_factor_set_api_delegate(System.IntPtr obj,   double factor);
+    public static Efl.Eo.FunctionWrapper<efl_accelerate_interpolator_factor_set_api_delegate> efl_accelerate_interpolator_factor_set_ptr = new Efl.Eo.FunctionWrapper<efl_accelerate_interpolator_factor_set_api_delegate>(_Module, "efl_accelerate_interpolator_factor_set");
+    private static  void factor_set(System.IntPtr obj, System.IntPtr pd,  double factor)
+   {
+      Eina.Log.Debug("function efl_accelerate_interpolator_factor_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AccelerateInterpolator)wrapper).SetFactor( factor);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_accelerate_interpolator_factor_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factor);
+      }
+   }
+   private static efl_accelerate_interpolator_factor_set_delegate efl_accelerate_interpolator_factor_set_static_delegate;
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((AccelerateInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_action.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_action.eo.cs
new file mode 100755 (executable)
index 0000000..c4b68a2
--- /dev/null
@@ -0,0 +1,314 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { 
+/// <summary>Accessible action mixin</summary>
+[ActionNativeInherit]
+public interface Action : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets action name for given id</summary>
+/// <param name="id">ID to get action name for</param>
+/// <returns>Action name</returns>
+ System.String GetActionName(  int id);
+   /// <summary>Gets localized action name for given id</summary>
+/// <param name="id">ID to get localized name for</param>
+/// <returns>Localized name</returns>
+ System.String GetActionLocalizedName(  int id);
+         /// <summary>Get list of available widget actions</summary>
+/// <returns>Contains statically allocated strings.</returns>
+Eina.List<Efl.Access.ActionData> GetActions();
+   /// <summary>Performs action on given widget.</summary>
+/// <param name="id">ID for widget</param>
+/// <returns><c>true</c> if action was performed, <c>false</c> otherwise</returns>
+bool ActionDo(  int id);
+   /// <summary>Gets configured keybinding for specific action and widget.</summary>
+/// <param name="id">ID for widget</param>
+/// <returns>Should be freed by the user.</returns>
+ System.String GetActionKeybinding(  int id);
+                        /// <summary>Get list of available widget actions</summary>
+/// <value>Contains statically allocated strings.</value>
+   Eina.List<Efl.Access.ActionData> Actions {
+      get ;
+   }
+}
+/// <summary>Accessible action mixin</summary>
+sealed public class ActionConcrete : 
+
+Action
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ActionConcrete))
+            return Efl.Access.ActionNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_action_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ActionConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ActionConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ActionConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ActionConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Gets action name for given id</summary>
+   /// <param name="id">ID to get action name for</param>
+   /// <returns>Action name</returns>
+   public  System.String GetActionName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_name_get_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets localized action name for given id</summary>
+   /// <param name="id">ID to get localized name for</param>
+   /// <returns>Localized name</returns>
+   public  System.String GetActionLocalizedName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_localized_name_get_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get list of available widget actions</summary>
+   /// <returns>Contains statically allocated strings.</returns>
+   public Eina.List<Efl.Access.ActionData> GetActions() {
+       var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_actions_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.ActionData>(_ret_var, false, false);
+ }
+   /// <summary>Performs action on given widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns><c>true</c> if action was performed, <c>false</c> otherwise</returns>
+   public bool ActionDo(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_do_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets configured keybinding for specific action and widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns>Should be freed by the user.</returns>
+   public  System.String GetActionKeybinding(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_keybinding_get_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get list of available widget actions</summary>
+/// <value>Contains statically allocated strings.</value>
+   public Eina.List<Efl.Access.ActionData> Actions {
+      get { return GetActions(); }
+   }
+}
+public class ActionNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_action_name_get_static_delegate == null)
+      efl_access_action_name_get_static_delegate = new efl_access_action_name_get_delegate(action_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_name_get_static_delegate)});
+      if (efl_access_action_localized_name_get_static_delegate == null)
+      efl_access_action_localized_name_get_static_delegate = new efl_access_action_localized_name_get_delegate(action_localized_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_localized_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_localized_name_get_static_delegate)});
+      if (efl_access_action_actions_get_static_delegate == null)
+      efl_access_action_actions_get_static_delegate = new efl_access_action_actions_get_delegate(actions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_actions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_actions_get_static_delegate)});
+      if (efl_access_action_do_static_delegate == null)
+      efl_access_action_do_static_delegate = new efl_access_action_do_delegate(action_do);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_do"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_do_static_delegate)});
+      if (efl_access_action_keybinding_get_static_delegate == null)
+      efl_access_action_keybinding_get_static_delegate = new efl_access_action_keybinding_get_delegate(action_keybinding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_keybinding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_keybinding_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.ActionConcrete.efl_access_action_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.ActionConcrete.efl_access_action_mixin_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate> efl_access_action_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate>(_Module, "efl_access_action_name_get");
+    private static  System.String action_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActionName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_name_get_delegate efl_access_action_name_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_localized_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_localized_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate> efl_access_action_localized_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate>(_Module, "efl_access_action_localized_name_get");
+    private static  System.String action_localized_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_localized_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActionLocalizedName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_localized_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_localized_name_get_delegate efl_access_action_localized_name_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_action_actions_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_action_actions_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate> efl_access_action_actions_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate>(_Module, "efl_access_action_actions_get");
+    private static  System.IntPtr actions_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_action_actions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.ActionData> _ret_var = default(Eina.List<Efl.Access.ActionData>);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActions();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_access_action_actions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_action_actions_get_delegate efl_access_action_actions_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_action_do_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_action_do_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate> efl_access_action_do_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate>(_Module, "efl_access_action_do");
+    private static bool action_do(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_do was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).ActionDo( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_do_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_do_delegate efl_access_action_do_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_action_keybinding_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_action_keybinding_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate> efl_access_action_keybinding_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate>(_Module, "efl_access_action_keybinding_get");
+    private static  System.String action_keybinding_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_keybinding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActionKeybinding( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_keybinding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_keybinding_get_delegate efl_access_action_keybinding_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_component.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_component.eo.cs
new file mode 100755 (executable)
index 0000000..07f3ef3
--- /dev/null
@@ -0,0 +1,1560 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { 
+/// <summary>AT-SPI component mixin</summary>
+[ComponentNativeInherit]
+public interface Component : 
+   Efl.Gfx.Entity ,
+   Efl.Gfx.Stack ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+/// <returns>Z order of component</returns>
+ int GetZOrder();
+   /// <summary>Geometry of accessible widget.</summary>
+/// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <returns>The geometry.</returns>
+Eina.Rect GetExtents( bool screen_coords);
+   /// <summary>Geometry of accessible widget.</summary>
+/// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <param name="rect">The geometry.</param>
+/// <returns><c>true</c> if geometry was set, <c>false</c> otherwise</returns>
+bool SetExtents( bool screen_coords,  Eina.Rect rect);
+   /// <summary>Position of accessible widget.</summary>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns></returns>
+ void GetScreenPosition( out  int x,  out  int y);
+   /// <summary>Position of accessible widget.</summary>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns><c>true</c> if position was set, <c>false</c> otherwise</returns>
+bool SetScreenPosition(  int x,   int y);
+   /// <summary>Gets position of socket offset.</summary>
+/// <param name="x"></param>
+/// <param name="y"></param>
+/// <returns></returns>
+ void GetSocketOffset( out  int x,  out  int y);
+   /// <summary>Sets position of socket offset.</summary>
+/// <param name="x"></param>
+/// <param name="y"></param>
+/// <returns></returns>
+ void SetSocketOffset(  int x,   int y);
+   /// <summary>Contains accessible widget</summary>
+/// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns><c>true</c> if params have been set, <c>false</c> otherwise</returns>
+bool Contains( bool screen_coords,   int x,   int y);
+   /// <summary>Focuses accessible widget.</summary>
+/// <returns><c>true</c> if focus grab focus succeed, <c>false</c> otherwise.</returns>
+bool GrabFocus();
+   /// <summary>Gets top component object occupying space at given coordinates.</summary>
+/// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns>Top component object at given coordinate</returns>
+Efl.Object GetAccessibleAtPoint( bool screen_coords,   int x,   int y);
+   /// <summary>Highlights accessible widget. returns true if highlight grab has successed, false otherwise.
+/// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+/// <returns></returns>
+bool GrabHighlight();
+   /// <summary>Clears highlight of accessible widget. returns true if clear has successed, false otherwise.
+/// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+/// <returns></returns>
+bool ClearHighlight();
+                                       /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+/// <value>Z order of component</value>
+    int ZOrder {
+      get ;
+   }
+}
+/// <summary>AT-SPI component mixin</summary>
+sealed public class ComponentConcrete : 
+
+Component
+   , Efl.Gfx.Entity, Efl.Gfx.Stack
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ComponentConcrete))
+            return Efl.Access.ComponentNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_component_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ComponentConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ComponentConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ComponentConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ComponentConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object VisibilityChangedEvtKey = new object();
+   /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   public event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_VisibilityChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibilityChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibilityChangedEvt.</summary>
+   public void On_VisibilityChangedEvt(Efl.Gfx.EntityVisibilityChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args>)eventHandlers[VisibilityChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibilityChangedEvt_delegate;
+   private void on_VisibilityChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityVisibilityChangedEvt_Args args = new Efl.Gfx.EntityVisibilityChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_VisibilityChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(Efl.Gfx.EntityPositionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args>)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityPositionChangedEvt_Args args = new Efl.Gfx.EntityPositionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(Efl.Gfx.EntitySizeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args>)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntitySizeChangedEvt_Args args = new Efl.Gfx.EntitySizeChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StackingChangedEvtKey = new object();
+   /// <summary>Object stacking was changed.</summary>
+   public event EventHandler StackingChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_StackingChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StackingChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StackingChangedEvt.</summary>
+   public void On_StackingChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StackingChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StackingChangedEvt_delegate;
+   private void on_StackingChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StackingChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_VisibilityChangedEvt_delegate = new Efl.EventCb(on_VisibilityChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+      evt_StackingChangedEvt_delegate = new Efl.EventCb(on_StackingChangedEvt_NativeCallback);
+   }
+   /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+   /// <returns>Z order of component</returns>
+   public  int GetZOrder() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_z_order_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Geometry of accessible widget.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <returns>The geometry.</returns>
+   public Eina.Rect GetExtents( bool screen_coords) {
+                         var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_extents_get_ptr.Value.Delegate(this.NativeHandle, screen_coords);
+      Eina.Error.RaiseIfUnhandledException();
+                  return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Geometry of accessible widget.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="rect">The geometry.</param>
+   /// <returns><c>true</c> if geometry was set, <c>false</c> otherwise</returns>
+   public bool SetExtents( bool screen_coords,  Eina.Rect rect) {
+             var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                              var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_extents_set_ptr.Value.Delegate(this.NativeHandle, screen_coords,  _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Position of accessible widget.</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   public  void GetScreenPosition( out  int x,  out  int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_screen_position_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Position of accessible widget.</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns><c>true</c> if position was set, <c>false</c> otherwise</returns>
+   public bool SetScreenPosition(  int x,   int y) {
+                                           var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_screen_position_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets position of socket offset.</summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   public  void GetSocketOffset( out  int x,  out  int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_socket_offset_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets position of socket offset.</summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   public  void SetSocketOffset(  int x,   int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_socket_offset_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Contains accessible widget</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns><c>true</c> if params have been set, <c>false</c> otherwise</returns>
+   public bool Contains( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_contains_ptr.Value.Delegate(this.NativeHandle, screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Focuses accessible widget.</summary>
+   /// <returns><c>true</c> if focus grab focus succeed, <c>false</c> otherwise.</returns>
+   public bool GrabFocus() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_focus_grab_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets top component object occupying space at given coordinates.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns>Top component object at given coordinate</returns>
+   public Efl.Object GetAccessibleAtPoint( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_accessible_at_point_get_ptr.Value.Delegate(this.NativeHandle, screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Highlights accessible widget. returns true if highlight grab has successed, false otherwise.
+   /// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns></returns>
+   public bool GrabHighlight() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_highlight_grab_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Clears highlight of accessible widget. returns true if clear has successed, false otherwise.
+   /// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns></returns>
+   public bool ClearHighlight() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_highlight_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+   /// <returns>A 2D coordinate in pixel units.</returns>
+   public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+   /// <param name="pos">A 2D coordinate in pixel units.</param>
+   /// <returns></returns>
+   public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_set_ptr.Value.Delegate(this.NativeHandle, _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+   /// <returns>A 2D size in pixel units.</returns>
+   public Eina.Size2D GetSize() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Changes the size of the given object.
+   /// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+   /// <param name="size">A 2D size in pixel units.</param>
+   /// <returns></returns>
+   public  void SetSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_set_ptr.Value.Delegate(this.NativeHandle, _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <returns>The X,Y position and W,H size, in pixels.</returns>
+   public Eina.Rect GetGeometry() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+   /// <returns></returns>
+   public  void SetGeometry( Eina.Rect rect) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_set_ptr.Value.Delegate(this.NativeHandle, _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+   /// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+   public bool GetVisible() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Shows or hides this object.</summary>
+   /// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetVisible( bool v) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_set_ptr.Value.Delegate(this.NativeHandle, v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+   /// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+   public double GetScale() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scaling factor of an object.</summary>
+   /// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+   /// <returns></returns>
+   public  void SetScale( double scale) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_set_ptr.Value.Delegate(this.NativeHandle, scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+   /// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+   /// <returns>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</returns>
+   public  short GetLayer() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the layer of its canvas that the given object will be part of.
+   /// If you don&apos;t use this function, you&apos;ll be dealing with an unique layer of objects (the default one). Additional layers are handy when you don&apos;t want a set of objects to interfere with another set with regard to stacking. Two layers are completely disjoint in that matter.
+   /// 
+   /// This is a low-level function, which you&apos;d be using when something should be always on top, for example.
+   /// 
+   /// Warning: Don&apos;t change the layer of smart objects&apos; children. Smart objects have a layer of their own, which should contain all their child objects.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/></summary>
+   /// <param name="l">The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</param>
+   /// <returns></returns>
+   public  void SetLayer(  short l) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_set_ptr.Value.Delegate(this.NativeHandle, l);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   public Efl.Gfx.Stack GetBelow() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   public Efl.Gfx.Stack GetAbove() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stack <c>obj</c> immediately <c>below</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>below</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>below</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="below">The object below which to stack</param>
+   /// <returns></returns>
+   public  void StackBelow( Efl.Gfx.Stack below) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_ptr.Value.Delegate(this.NativeHandle, below);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Raise <c>obj</c> to the top of its layer.
+   /// <c>obj</c> will, then, be the highest one in the layer it belongs to. Object on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.LowerToBottom"/></summary>
+   /// <returns></returns>
+   public  void RaiseToTop() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_raise_to_top_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stack <c>obj</c> immediately <c>above</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>above</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>above</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="above">The object above which to stack</param>
+   /// <returns></returns>
+   public  void StackAbove( Efl.Gfx.Stack above) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_ptr.Value.Delegate(this.NativeHandle, above);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Lower <c>obj</c> to the bottom of its layer.
+   /// <c>obj</c> will, then, be the lowest one in the layer it belongs to. Objects on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.RaiseToTop"/></summary>
+   /// <returns></returns>
+   public  void LowerToBottom() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+/// <value>Z order of component</value>
+   public  int ZOrder {
+      get { return GetZOrder(); }
+   }
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   public Eina.Size2D Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   public Eina.Rect Geometry {
+      get { return GetGeometry(); }
+      set { SetGeometry( value); }
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   public bool Visible {
+      get { return GetVisible(); }
+      set { SetVisible( value); }
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   public double Scale {
+      get { return GetScale(); }
+      set { SetScale( value); }
+   }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+/// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+/// <value>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</value>
+   public  short Layer {
+      get { return GetLayer(); }
+      set { SetLayer( value); }
+   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Below {
+      get { return GetBelow(); }
+   }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Above {
+      get { return GetAbove(); }
+   }
+}
+public class ComponentNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_component_z_order_get_static_delegate == null)
+      efl_access_component_z_order_get_static_delegate = new efl_access_component_z_order_get_delegate(z_order_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_z_order_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_z_order_get_static_delegate)});
+      if (efl_access_component_extents_get_static_delegate == null)
+      efl_access_component_extents_get_static_delegate = new efl_access_component_extents_get_delegate(extents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_extents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_extents_get_static_delegate)});
+      if (efl_access_component_extents_set_static_delegate == null)
+      efl_access_component_extents_set_static_delegate = new efl_access_component_extents_set_delegate(extents_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_extents_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_extents_set_static_delegate)});
+      if (efl_access_component_screen_position_get_static_delegate == null)
+      efl_access_component_screen_position_get_static_delegate = new efl_access_component_screen_position_get_delegate(screen_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_screen_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_screen_position_get_static_delegate)});
+      if (efl_access_component_screen_position_set_static_delegate == null)
+      efl_access_component_screen_position_set_static_delegate = new efl_access_component_screen_position_set_delegate(screen_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_screen_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_screen_position_set_static_delegate)});
+      if (efl_access_component_socket_offset_get_static_delegate == null)
+      efl_access_component_socket_offset_get_static_delegate = new efl_access_component_socket_offset_get_delegate(socket_offset_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_socket_offset_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_socket_offset_get_static_delegate)});
+      if (efl_access_component_socket_offset_set_static_delegate == null)
+      efl_access_component_socket_offset_set_static_delegate = new efl_access_component_socket_offset_set_delegate(socket_offset_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_socket_offset_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_socket_offset_set_static_delegate)});
+      if (efl_access_component_contains_static_delegate == null)
+      efl_access_component_contains_static_delegate = new efl_access_component_contains_delegate(contains);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_contains"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_contains_static_delegate)});
+      if (efl_access_component_focus_grab_static_delegate == null)
+      efl_access_component_focus_grab_static_delegate = new efl_access_component_focus_grab_delegate(focus_grab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_focus_grab"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_focus_grab_static_delegate)});
+      if (efl_access_component_accessible_at_point_get_static_delegate == null)
+      efl_access_component_accessible_at_point_get_static_delegate = new efl_access_component_accessible_at_point_get_delegate(accessible_at_point_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_accessible_at_point_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_accessible_at_point_get_static_delegate)});
+      if (efl_access_component_highlight_grab_static_delegate == null)
+      efl_access_component_highlight_grab_static_delegate = new efl_access_component_highlight_grab_delegate(highlight_grab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_highlight_grab"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_highlight_grab_static_delegate)});
+      if (efl_access_component_highlight_clear_static_delegate == null)
+      efl_access_component_highlight_clear_static_delegate = new efl_access_component_highlight_clear_delegate(highlight_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_highlight_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_highlight_clear_static_delegate)});
+      if (efl_gfx_entity_position_get_static_delegate == null)
+      efl_gfx_entity_position_get_static_delegate = new efl_gfx_entity_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_get_static_delegate)});
+      if (efl_gfx_entity_position_set_static_delegate == null)
+      efl_gfx_entity_position_set_static_delegate = new efl_gfx_entity_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_set_static_delegate)});
+      if (efl_gfx_entity_size_get_static_delegate == null)
+      efl_gfx_entity_size_get_static_delegate = new efl_gfx_entity_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_get_static_delegate)});
+      if (efl_gfx_entity_size_set_static_delegate == null)
+      efl_gfx_entity_size_set_static_delegate = new efl_gfx_entity_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_set_static_delegate)});
+      if (efl_gfx_entity_geometry_get_static_delegate == null)
+      efl_gfx_entity_geometry_get_static_delegate = new efl_gfx_entity_geometry_get_delegate(geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_get_static_delegate)});
+      if (efl_gfx_entity_geometry_set_static_delegate == null)
+      efl_gfx_entity_geometry_set_static_delegate = new efl_gfx_entity_geometry_set_delegate(geometry_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_set_static_delegate)});
+      if (efl_gfx_entity_visible_get_static_delegate == null)
+      efl_gfx_entity_visible_get_static_delegate = new efl_gfx_entity_visible_get_delegate(visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_get_static_delegate)});
+      if (efl_gfx_entity_visible_set_static_delegate == null)
+      efl_gfx_entity_visible_set_static_delegate = new efl_gfx_entity_visible_set_delegate(visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_set_static_delegate)});
+      if (efl_gfx_entity_scale_get_static_delegate == null)
+      efl_gfx_entity_scale_get_static_delegate = new efl_gfx_entity_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_get_static_delegate)});
+      if (efl_gfx_entity_scale_set_static_delegate == null)
+      efl_gfx_entity_scale_set_static_delegate = new efl_gfx_entity_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_set_static_delegate)});
+      if (efl_gfx_stack_layer_get_static_delegate == null)
+      efl_gfx_stack_layer_get_static_delegate = new efl_gfx_stack_layer_get_delegate(layer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_get_static_delegate)});
+      if (efl_gfx_stack_layer_set_static_delegate == null)
+      efl_gfx_stack_layer_set_static_delegate = new efl_gfx_stack_layer_set_delegate(layer_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_set_static_delegate)});
+      if (efl_gfx_stack_below_get_static_delegate == null)
+      efl_gfx_stack_below_get_static_delegate = new efl_gfx_stack_below_get_delegate(below_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_get_static_delegate)});
+      if (efl_gfx_stack_above_get_static_delegate == null)
+      efl_gfx_stack_above_get_static_delegate = new efl_gfx_stack_above_get_delegate(above_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_get_static_delegate)});
+      if (efl_gfx_stack_below_static_delegate == null)
+      efl_gfx_stack_below_static_delegate = new efl_gfx_stack_below_delegate(stack_below);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_static_delegate)});
+      if (efl_gfx_stack_raise_to_top_static_delegate == null)
+      efl_gfx_stack_raise_to_top_static_delegate = new efl_gfx_stack_raise_to_top_delegate(raise_to_top);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_raise_to_top"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_raise_to_top_static_delegate)});
+      if (efl_gfx_stack_above_static_delegate == null)
+      efl_gfx_stack_above_static_delegate = new efl_gfx_stack_above_delegate(stack_above);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_static_delegate)});
+      if (efl_gfx_stack_lower_to_bottom_static_delegate == null)
+      efl_gfx_stack_lower_to_bottom_static_delegate = new efl_gfx_stack_lower_to_bottom_delegate(lower_to_bottom);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_lower_to_bottom"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_lower_to_bottom_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.ComponentConcrete.efl_access_component_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.ComponentConcrete.efl_access_component_mixin_get();
+   }
+
+
+    private delegate  int efl_access_component_z_order_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_component_z_order_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_z_order_get_api_delegate> efl_access_component_z_order_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_z_order_get_api_delegate>(_Module, "efl_access_component_z_order_get");
+    private static  int z_order_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_z_order_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetZOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_z_order_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_z_order_get_delegate efl_access_component_z_order_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_access_component_extents_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords);
+
+
+    public delegate Eina.Rect_StructInternal efl_access_component_extents_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_extents_get_api_delegate> efl_access_component_extents_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_extents_get_api_delegate>(_Module, "efl_access_component_extents_get");
+    private static Eina.Rect_StructInternal extents_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords)
+   {
+      Eina.Log.Debug("function efl_access_component_extents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetExtents( screen_coords);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_access_component_extents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords);
+      }
+   }
+   private static efl_access_component_extents_get_delegate efl_access_component_extents_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_extents_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_extents_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_extents_set_api_delegate> efl_access_component_extents_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_extents_set_api_delegate>(_Module, "efl_access_component_extents_set");
+    private static bool extents_set(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_access_component_extents_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).SetExtents( screen_coords,  _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_component_extents_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  rect);
+      }
+   }
+   private static efl_access_component_extents_set_delegate efl_access_component_extents_set_static_delegate;
+
+
+    private delegate  void efl_access_component_screen_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void efl_access_component_screen_position_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_screen_position_get_api_delegate> efl_access_component_screen_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_screen_position_get_api_delegate>(_Module, "efl_access_component_screen_position_get");
+    private static  void screen_position_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function efl_access_component_screen_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((ComponentConcrete)wrapper).GetScreenPosition( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_screen_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_access_component_screen_position_get_delegate efl_access_component_screen_position_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_screen_position_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_screen_position_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_screen_position_set_api_delegate> efl_access_component_screen_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_screen_position_set_api_delegate>(_Module, "efl_access_component_screen_position_set");
+    private static bool screen_position_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_screen_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).SetScreenPosition( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_component_screen_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_access_component_screen_position_set_delegate efl_access_component_screen_position_set_static_delegate;
+
+
+    private delegate  void efl_access_component_socket_offset_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void efl_access_component_socket_offset_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_get_api_delegate> efl_access_component_socket_offset_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_get_api_delegate>(_Module, "efl_access_component_socket_offset_get");
+    private static  void socket_offset_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function efl_access_component_socket_offset_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((ComponentConcrete)wrapper).GetSocketOffset( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_socket_offset_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_access_component_socket_offset_get_delegate efl_access_component_socket_offset_get_static_delegate;
+
+
+    private delegate  void efl_access_component_socket_offset_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void efl_access_component_socket_offset_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_set_api_delegate> efl_access_component_socket_offset_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_set_api_delegate>(_Module, "efl_access_component_socket_offset_set");
+    private static  void socket_offset_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_socket_offset_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ComponentConcrete)wrapper).SetSocketOffset( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_socket_offset_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_access_component_socket_offset_set_delegate efl_access_component_socket_offset_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_contains_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_contains_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_contains_api_delegate> efl_access_component_contains_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_contains_api_delegate>(_Module, "efl_access_component_contains");
+    private static bool contains(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_contains was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).Contains( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_component_contains_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_component_contains_delegate efl_access_component_contains_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_focus_grab_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_focus_grab_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_focus_grab_api_delegate> efl_access_component_focus_grab_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_focus_grab_api_delegate>(_Module, "efl_access_component_focus_grab");
+    private static bool focus_grab(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_focus_grab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GrabFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_focus_grab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_focus_grab_delegate efl_access_component_focus_grab_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_component_accessible_at_point_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_component_accessible_at_point_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_accessible_at_point_get_api_delegate> efl_access_component_accessible_at_point_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_accessible_at_point_get_api_delegate>(_Module, "efl_access_component_accessible_at_point_get");
+    private static Efl.Object accessible_at_point_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_accessible_at_point_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetAccessibleAtPoint( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_component_accessible_at_point_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_component_accessible_at_point_get_delegate efl_access_component_accessible_at_point_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_highlight_grab_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_highlight_grab_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_highlight_grab_api_delegate> efl_access_component_highlight_grab_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_highlight_grab_api_delegate>(_Module, "efl_access_component_highlight_grab");
+    private static bool highlight_grab(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_highlight_grab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GrabHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_highlight_grab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_highlight_grab_delegate efl_access_component_highlight_grab_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_highlight_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_highlight_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_highlight_clear_api_delegate> efl_access_component_highlight_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_highlight_clear_api_delegate>(_Module, "efl_access_component_highlight_clear");
+    private static bool highlight_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_highlight_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).ClearHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_highlight_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_highlight_clear_delegate efl_access_component_highlight_clear_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate> efl_gfx_entity_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate>(_Module, "efl_gfx_entity_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_position_get_delegate efl_gfx_entity_position_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_gfx_entity_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate> efl_gfx_entity_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate>(_Module, "efl_gfx_entity_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((ComponentConcrete)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_gfx_entity_position_set_delegate efl_gfx_entity_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate> efl_gfx_entity_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate>(_Module, "efl_gfx_entity_size_get");
+    private static Eina.Size2D_StructInternal size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_size_get_delegate efl_gfx_entity_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_entity_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate> efl_gfx_entity_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate>(_Module, "efl_gfx_entity_size_set");
+    private static  void size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((ComponentConcrete)wrapper).SetSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_entity_size_set_delegate efl_gfx_entity_size_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate> efl_gfx_entity_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate>(_Module, "efl_gfx_entity_geometry_get");
+    private static Eina.Rect_StructInternal geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_geometry_get_delegate efl_gfx_entity_geometry_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_geometry_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect);
+
+
+    public delegate  void efl_gfx_entity_geometry_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate> efl_gfx_entity_geometry_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate>(_Module, "efl_gfx_entity_geometry_set");
+    private static  void geometry_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                     
+         try {
+            ((ComponentConcrete)wrapper).SetGeometry( _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_geometry_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect);
+      }
+   }
+   private static efl_gfx_entity_geometry_set_delegate efl_gfx_entity_geometry_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_entity_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_entity_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate> efl_gfx_entity_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate>(_Module, "efl_gfx_entity_visible_get");
+    private static bool visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_visible_get_delegate efl_gfx_entity_visible_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_gfx_entity_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate> efl_gfx_entity_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate>(_Module, "efl_gfx_entity_visible_set");
+    private static  void visible_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ComponentConcrete)wrapper).SetVisible( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_gfx_entity_visible_set_delegate efl_gfx_entity_visible_set_static_delegate;
+
+
+    private delegate double efl_gfx_entity_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_entity_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate> efl_gfx_entity_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate>(_Module, "efl_gfx_entity_scale_get");
+    private static double scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_scale_get_delegate efl_gfx_entity_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_entity_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate> efl_gfx_entity_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate>(_Module, "efl_gfx_entity_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ComponentConcrete)wrapper).SetScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_entity_scale_set_delegate efl_gfx_entity_scale_set_static_delegate;
+
+
+    private delegate  short efl_gfx_stack_layer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  short efl_gfx_stack_layer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate> efl_gfx_stack_layer_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate>(_Module, "efl_gfx_stack_layer_get");
+    private static  short layer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   short _ret_var = default( short);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetLayer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_layer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_layer_get_delegate efl_gfx_stack_layer_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_layer_set_delegate(System.IntPtr obj, System.IntPtr pd,    short l);
+
+
+    public delegate  void efl_gfx_stack_layer_set_api_delegate(System.IntPtr obj,    short l);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate> efl_gfx_stack_layer_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate>(_Module, "efl_gfx_stack_layer_set");
+    private static  void layer_set(System.IntPtr obj, System.IntPtr pd,   short l)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ComponentConcrete)wrapper).SetLayer( l);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_layer_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l);
+      }
+   }
+   private static efl_gfx_stack_layer_set_delegate efl_gfx_stack_layer_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_below_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_below_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate> efl_gfx_stack_below_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate>(_Module, "efl_gfx_stack_below_get");
+    private static Efl.Gfx.Stack below_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetBelow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_below_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_below_get_delegate efl_gfx_stack_below_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_above_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_above_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate> efl_gfx_stack_above_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate>(_Module, "efl_gfx_stack_above_get");
+    private static Efl.Gfx.Stack above_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((ComponentConcrete)wrapper).GetAbove();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_above_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_above_get_delegate efl_gfx_stack_above_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_below_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+
+
+    public delegate  void efl_gfx_stack_below_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate> efl_gfx_stack_below_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate>(_Module, "efl_gfx_stack_below");
+    private static  void stack_below(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack below)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ComponentConcrete)wrapper).StackBelow( below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_below_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  below);
+      }
+   }
+   private static efl_gfx_stack_below_delegate efl_gfx_stack_below_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_raise_to_top_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_raise_to_top_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate> efl_gfx_stack_raise_to_top_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate>(_Module, "efl_gfx_stack_raise_to_top");
+    private static  void raise_to_top(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_raise_to_top was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ComponentConcrete)wrapper).RaiseToTop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_raise_to_top_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_raise_to_top_delegate efl_gfx_stack_raise_to_top_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_above_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+
+
+    public delegate  void efl_gfx_stack_above_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate> efl_gfx_stack_above_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate>(_Module, "efl_gfx_stack_above");
+    private static  void stack_above(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack above)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ComponentConcrete)wrapper).StackAbove( above);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_above_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  above);
+      }
+   }
+   private static efl_gfx_stack_above_delegate efl_gfx_stack_above_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_lower_to_bottom_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_lower_to_bottom_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate> efl_gfx_stack_lower_to_bottom_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate>(_Module, "efl_gfx_stack_lower_to_bottom");
+    private static  void lower_to_bottom(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_lower_to_bottom was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ComponentConcrete)wrapper).LowerToBottom();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_lower_to_bottom_delegate efl_gfx_stack_lower_to_bottom_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_editable_text.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_editable_text.eo.cs
new file mode 100755 (executable)
index 0000000..8418ddd
--- /dev/null
@@ -0,0 +1,364 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { namespace Editable { 
+/// <summary>Elementary editable text interface</summary>
+[TextNativeInherit]
+public interface Text : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Editable content property</summary>
+/// <param name="kw_string">Content</param>
+/// <returns><c>true</c> if setting the value succeeded, <c>false</c> otherwise</returns>
+bool SetTextContent(  System.String kw_string);
+   /// <summary>Insert text at given position</summary>
+/// <param name="kw_string">String to be inserted</param>
+/// <param name="position">Position to insert string</param>
+/// <returns><c>true</c> if insert succeeded, <c>false</c> otherwise</returns>
+bool Insert(  System.String kw_string,   int position);
+   /// <summary>Copy text between start and end parameter</summary>
+/// <param name="start">Start position to copy</param>
+/// <param name="end">End position to copy</param>
+/// <returns><c>true</c> if copy succeeded, <c>false</c> otherwise</returns>
+bool Copy(  int start,   int end);
+   /// <summary>Cut text between start and end parameter</summary>
+/// <param name="start">Start position to cut</param>
+/// <param name="end">End position to cut</param>
+/// <returns><c>true</c> if cut succeeded, <c>false</c> otherwise</returns>
+bool Cut(  int start,   int end);
+   /// <summary>Delete text between start and end parameter</summary>
+/// <param name="start">Start position to delete</param>
+/// <param name="end">End position to delete</param>
+/// <returns><c>true</c> if delete succeeded, <c>false</c> otherwise</returns>
+bool Delete(  int start,   int end);
+   /// <summary>Paste text at given position</summary>
+/// <param name="position">Position to insert text</param>
+/// <returns><c>true</c> if paste succeeded, <c>false</c> otherwise</returns>
+bool Paste(  int position);
+                     /// <summary>Editable content property</summary>
+/// <value>Content</value>
+    System.String TextContent {
+      set ;
+   }
+}
+/// <summary>Elementary editable text interface</summary>
+sealed public class TextConcrete : 
+
+Text
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextConcrete))
+            return Efl.Access.Editable.TextNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_editable_text_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Editable content property</summary>
+   /// <param name="kw_string">Content</param>
+   /// <returns><c>true</c> if setting the value succeeded, <c>false</c> otherwise</returns>
+   public bool SetTextContent(  System.String kw_string) {
+                         var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_content_set_ptr.Value.Delegate(this.NativeHandle, kw_string);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Insert text at given position</summary>
+   /// <param name="kw_string">String to be inserted</param>
+   /// <param name="position">Position to insert string</param>
+   /// <returns><c>true</c> if insert succeeded, <c>false</c> otherwise</returns>
+   public bool Insert(  System.String kw_string,   int position) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_insert_ptr.Value.Delegate(this.NativeHandle, kw_string,  position);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Copy text between start and end parameter</summary>
+   /// <param name="start">Start position to copy</param>
+   /// <param name="end">End position to copy</param>
+   /// <returns><c>true</c> if copy succeeded, <c>false</c> otherwise</returns>
+   public bool Copy(  int start,   int end) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_copy_ptr.Value.Delegate(this.NativeHandle, start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Cut text between start and end parameter</summary>
+   /// <param name="start">Start position to cut</param>
+   /// <param name="end">End position to cut</param>
+   /// <returns><c>true</c> if cut succeeded, <c>false</c> otherwise</returns>
+   public bool Cut(  int start,   int end) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_cut_ptr.Value.Delegate(this.NativeHandle, start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Delete text between start and end parameter</summary>
+   /// <param name="start">Start position to delete</param>
+   /// <param name="end">End position to delete</param>
+   /// <returns><c>true</c> if delete succeeded, <c>false</c> otherwise</returns>
+   public bool Delete(  int start,   int end) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_delete_ptr.Value.Delegate(this.NativeHandle, start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Paste text at given position</summary>
+   /// <param name="position">Position to insert text</param>
+   /// <returns><c>true</c> if paste succeeded, <c>false</c> otherwise</returns>
+   public bool Paste(  int position) {
+                         var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_paste_ptr.Value.Delegate(this.NativeHandle, position);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Editable content property</summary>
+/// <value>Content</value>
+   public  System.String TextContent {
+      set { SetTextContent( value); }
+   }
+}
+public class TextNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_editable_text_content_set_static_delegate == null)
+      efl_access_editable_text_content_set_static_delegate = new efl_access_editable_text_content_set_delegate(text_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_content_set_static_delegate)});
+      if (efl_access_editable_text_insert_static_delegate == null)
+      efl_access_editable_text_insert_static_delegate = new efl_access_editable_text_insert_delegate(insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_insert_static_delegate)});
+      if (efl_access_editable_text_copy_static_delegate == null)
+      efl_access_editable_text_copy_static_delegate = new efl_access_editable_text_copy_delegate(copy);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_copy"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_copy_static_delegate)});
+      if (efl_access_editable_text_cut_static_delegate == null)
+      efl_access_editable_text_cut_static_delegate = new efl_access_editable_text_cut_delegate(cut);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_cut"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_cut_static_delegate)});
+      if (efl_access_editable_text_delete_static_delegate == null)
+      efl_access_editable_text_delete_static_delegate = new efl_access_editable_text_delete_delegate(kw_delete);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_delete"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_delete_static_delegate)});
+      if (efl_access_editable_text_paste_static_delegate == null)
+      efl_access_editable_text_paste_static_delegate = new efl_access_editable_text_paste_delegate(paste);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_paste"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_paste_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.Editable.TextConcrete.efl_access_editable_text_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.Editable.TextConcrete.efl_access_editable_text_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_content_set_api_delegate> efl_access_editable_text_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_content_set_api_delegate>(_Module, "efl_access_editable_text_content_set");
+    private static bool text_content_set(System.IntPtr obj, System.IntPtr pd,   System.String kw_string)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SetTextContent( kw_string);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_editable_text_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_string);
+      }
+   }
+   private static efl_access_editable_text_content_set_delegate efl_access_editable_text_content_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_insert_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string,    int position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_insert_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string,    int position);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_insert_api_delegate> efl_access_editable_text_insert_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_insert_api_delegate>(_Module, "efl_access_editable_text_insert");
+    private static bool insert(System.IntPtr obj, System.IntPtr pd,   System.String kw_string,   int position)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Insert( kw_string,  position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_string,  position);
+      }
+   }
+   private static efl_access_editable_text_insert_delegate efl_access_editable_text_insert_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_copy_delegate(System.IntPtr obj, System.IntPtr pd,    int start,    int end);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_copy_api_delegate(System.IntPtr obj,    int start,    int end);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_copy_api_delegate> efl_access_editable_text_copy_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_copy_api_delegate>(_Module, "efl_access_editable_text_copy");
+    private static bool copy(System.IntPtr obj, System.IntPtr pd,   int start,   int end)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_copy was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Copy( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_copy_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_access_editable_text_copy_delegate efl_access_editable_text_copy_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_cut_delegate(System.IntPtr obj, System.IntPtr pd,    int start,    int end);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_cut_api_delegate(System.IntPtr obj,    int start,    int end);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_cut_api_delegate> efl_access_editable_text_cut_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_cut_api_delegate>(_Module, "efl_access_editable_text_cut");
+    private static bool cut(System.IntPtr obj, System.IntPtr pd,   int start,   int end)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_cut was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Cut( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_cut_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_access_editable_text_cut_delegate efl_access_editable_text_cut_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_delete_delegate(System.IntPtr obj, System.IntPtr pd,    int start,    int end);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_delete_api_delegate(System.IntPtr obj,    int start,    int end);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_delete_api_delegate> efl_access_editable_text_delete_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_delete_api_delegate>(_Module, "efl_access_editable_text_delete");
+    private static bool kw_delete(System.IntPtr obj, System.IntPtr pd,   int start,   int end)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_delete was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Delete( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_delete_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_access_editable_text_delete_delegate efl_access_editable_text_delete_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_paste_delegate(System.IntPtr obj, System.IntPtr pd,    int position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_paste_api_delegate(System.IntPtr obj,    int position);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_paste_api_delegate> efl_access_editable_text_paste_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_paste_api_delegate>(_Module, "efl_access_editable_text_paste");
+    private static bool paste(System.IntPtr obj, System.IntPtr pd,   int position)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_paste was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Paste( position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_editable_text_paste_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  position);
+      }
+   }
+   private static efl_access_editable_text_paste_delegate efl_access_editable_text_paste_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_object.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_object.eo.cs
new file mode 100755 (executable)
index 0000000..42ba7c8
--- /dev/null
@@ -0,0 +1,3173 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { 
+public struct StateSet {
+   private  ulong payload;
+   public static implicit operator StateSet( ulong x)
+   {
+      return new StateSet{payload=x};
+   }
+   public static implicit operator  ulong(StateSet x)
+   {
+      return x.payload;
+   }
+}
+} } 
+namespace Efl { namespace Access { 
+public struct RelationSet {
+   private Eina.List<Efl.Access.Relation> payload;
+   public static implicit operator RelationSet(Eina.List<Efl.Access.Relation> x)
+   {
+      return new RelationSet{payload=x};
+   }
+   public static implicit operator Eina.List<Efl.Access.Relation>(RelationSet x)
+   {
+      return x.payload;
+   }
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Accessibility accessible mixin</summary>
+[ObjectNativeInherit]
+public interface Object : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+/// <returns>Localized accessible object role name</returns>
+ System.String GetLocalizedRoleName();
+   /// <summary>Accessible name of the object.</summary>
+/// <returns>Accessible name</returns>
+ System.String GetI18nName();
+   /// <summary>Accessible name of the object.</summary>
+/// <param name="i18n_name">Accessible name</param>
+/// <returns></returns>
+ void SetI18nName(  System.String i18n_name);
+   /// <summary>Sets name information callback about widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <param name="name_cb">reading information callback</param>
+/// <param name="data"></param>
+/// <returns></returns>
+ void SetNameCb( Efl.Access.ReadingInfoCb name_cb,   System.IntPtr data);
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+/// <returns>Accessible relation set</returns>
+Efl.Access.RelationSet GetRelationSet();
+   /// <summary>The role of the object in accessibility domain.</summary>
+/// <returns>Accessible role</returns>
+Efl.Access.Role GetRole();
+   /// <summary>Sets the role of the object in accessibility domain.</summary>
+/// <param name="role">Accessible role</param>
+/// <returns></returns>
+ void SetRole( Efl.Access.Role role);
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+/// <returns>Accessible parent</returns>
+Efl.Access.Object GetAccessParent();
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+/// <param name="parent">Accessible parent</param>
+/// <returns></returns>
+ void SetAccessParent( Efl.Access.Object parent);
+   /// <summary>Sets contextual information callback about widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <param name="description_cb">The function called to provide the accessible description.</param>
+/// <param name="data">The data passed to @c description_cb.</param>
+/// <returns></returns>
+ void SetDescriptionCb( Efl.Access.ReadingInfoCb description_cb,   System.IntPtr data);
+   /// <summary>Sets gesture callback to give widget.
+/// Warning: Please do not abuse this API. The purpose of this API is to support special application such as screen-reader guidance. Before using this API, please check if there is another way.
+/// 
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <param name="gesture_cb"></param>
+/// <param name="data"></param>
+/// <returns></returns>
+ void SetGestureCb( Efl.Access.GestureCb gesture_cb,   System.IntPtr data);
+   /// <summary>Gets object&apos;s accessible children.</summary>
+/// <returns>List of widget&apos;s children</returns>
+Eina.List<Efl.Access.Object> GetAccessChildren();
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+/// <returns>Accessible role name</returns>
+ System.String GetRoleName();
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+/// <returns>List of object attributes, Must be freed by the user</returns>
+Eina.List<Efl.Access.Attribute> GetAttributes();
+   /// <summary>Gets reading information types of an accessible object.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <returns>Reading information types</returns>
+Efl.Access.ReadingInfoTypeMask GetReadingInfoType();
+   /// <summary>Sets reading information of an accessible object.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <param name="reading_info">Reading information types</param>
+/// <returns></returns>
+ void SetReadingInfoType( Efl.Access.ReadingInfoTypeMask reading_info);
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+/// <returns>Index in children list</returns>
+ int GetIndexInParent();
+   /// <summary>Gets contextual information about object.</summary>
+/// <returns>Accessible contextual information</returns>
+ System.String GetDescription();
+   /// <summary>Sets widget contextual information.</summary>
+/// <param name="description">Accessible contextual information</param>
+/// <returns></returns>
+ void SetDescription(  System.String description);
+   /// <summary>Gets set describing object accessible states.</summary>
+/// <returns>Accessible state set</returns>
+Efl.Access.StateSet GetStateSet();
+   /// <summary>Gets highlightable of given widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <returns>If @c true, the object is highlightable.</returns>
+bool GetCanHighlight();
+   /// <summary>Sets highlightable to given widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <param name="can_highlight">If @c true, the object is highlightable.</param>
+/// <returns></returns>
+ void SetCanHighlight( bool can_highlight);
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+/// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+/// 
+/// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+/// 
+/// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+/// <returns>Translation domain</returns>
+ System.String GetTranslationDomain();
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+/// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+/// 
+/// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+/// 
+/// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+/// <param name="domain">Translation domain</param>
+/// <returns></returns>
+ void SetTranslationDomain(  System.String domain);
+      /// <summary>Handles gesture on given widget.</summary>
+/// <param name="gesture_info"></param>
+/// <returns></returns>
+bool GestureDo( Efl.Access.GestureInfo gesture_info);
+   /// <summary>Add key-value pair identifying object extra attribute
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <param name="key">The string key to give extra information</param>
+/// <param name="value">The string value to give extra information</param>
+/// <returns></returns>
+ void AppendAttribute(  System.String key,   System.String value);
+   /// <summary>Removes all attributes in accessible object.</summary>
+/// <returns></returns>
+ void ClearAttributes();
+            /// <summary>Defines the relationship between two accessible objects.
+/// Adds a unique relationship between source object and relation_object of a given type.
+/// 
+/// Relationships can be queried by Assistive Technology clients to provide customized feedback, improving overall user experience.
+/// 
+/// Relationship_append API is asymmetric, which means that appending, for example, relation EFL_ACCESS_RELATION_FLOWS_TO from object A to B, do NOT append relation EFL_ACCESS_RELATION_FLOWS_FROM from object B to object A.</summary>
+/// <param name="type">Relation type</param>
+/// <param name="relation_object">Object to relate to</param>
+/// <returns><c>true</c> if relationship was successfully appended, <c>false</c> otherwise</returns>
+bool AppendRelationship( Efl.Access.RelationType type,  Efl.Access.Object relation_object);
+   /// <summary>Removes the relationship between two accessible objects.
+/// If relation_object is NULL function removes all relations of the given type.</summary>
+/// <param name="type">Relation type</param>
+/// <param name="relation_object">Object to remove relation from</param>
+/// <returns></returns>
+ void RelationshipRemove( Efl.Access.RelationType type,  Efl.Access.Object relation_object);
+   /// <summary>Removes all relationships in accessible object.</summary>
+/// <returns></returns>
+ void ClearRelationships();
+   /// <summary>Notifies accessibility clients about current state of the accessible object.
+/// Function limits information broadcast to clients to types specified by state_types_mask parameter.
+/// 
+/// if recursive parameter is set, function will traverse all accessible children and call state_notify function on them.</summary>
+/// <param name="state_types_mask"></param>
+/// <param name="recursive"></param>
+/// <returns></returns>
+ void StateNotify( Efl.Access.StateSet state_types_mask,  bool recursive);
+                                                                                                            /// <summary>Called when property has changed</summary>
+   event EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args> PropertyChangedEvt;
+   /// <summary>Called when children have changed</summary>
+   event EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args> ChildrenChangedEvt;
+   /// <summary>Called when state has changed</summary>
+   event EventHandler<Efl.Access.ObjectStateChangedEvt_Args> StateChangedEvt;
+   /// <summary>Called when boundaries have changed</summary>
+   event EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args> BoundsChangedEvt;
+   /// <summary>Called when visibility has changed</summary>
+   event EventHandler VisibleDataChangedEvt;
+   /// <summary>Called when active state of descendant has changed</summary>
+   event EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args> ActiveDescendantChangedEvt;
+   /// <summary>Called when item is added</summary>
+   event EventHandler AddedEvt;
+   /// <summary>Called when item is removed</summary>
+   event EventHandler RemovedEvt;
+   /// <summary></summary>
+   event EventHandler MoveOutedEvt;
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+/// <value>Localized accessible object role name</value>
+    System.String LocalizedRoleName {
+      get ;
+   }
+   /// <summary>Accessible name of the object.</summary>
+/// <value>Accessible name</value>
+    System.String I18nName {
+      get ;
+      set ;
+   }
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+/// <value>Accessible relation set</value>
+   Efl.Access.RelationSet RelationSet {
+      get ;
+   }
+   /// <summary>The role of the object in accessibility domain.</summary>
+/// <value>Accessible role</value>
+   Efl.Access.Role Role {
+      get ;
+      set ;
+   }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+/// <value>Accessible parent</value>
+   Efl.Access.Object AccessParent {
+      get ;
+      set ;
+   }
+   /// <summary>Gets object&apos;s accessible children.</summary>
+/// <value>List of widget&apos;s children</value>
+   Eina.List<Efl.Access.Object> AccessChildren {
+      get ;
+   }
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+/// <value>Accessible role name</value>
+    System.String RoleName {
+      get ;
+   }
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+/// <value>List of object attributes, Must be freed by the user</value>
+   Eina.List<Efl.Access.Attribute> Attributes {
+      get ;
+   }
+   /// <summary>Gets reading information types of an accessible object.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>Reading information types</value>
+   Efl.Access.ReadingInfoTypeMask ReadingInfoType {
+      get ;
+      set ;
+   }
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+/// <value>Index in children list</value>
+    int IndexInParent {
+      get ;
+   }
+   /// <summary>Gets contextual information about object.</summary>
+/// <value>Accessible contextual information</value>
+    System.String Description {
+      get ;
+      set ;
+   }
+   /// <summary>Gets set describing object accessible states.</summary>
+/// <value>Accessible state set</value>
+   Efl.Access.StateSet StateSet {
+      get ;
+   }
+   /// <summary>Gets highlightable of given widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>If @c true, the object is highlightable.</value>
+   bool CanHighlight {
+      get ;
+      set ;
+   }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+/// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+/// 
+/// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+/// 
+/// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+/// <value>Translation domain</value>
+    System.String TranslationDomain {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Access.Object.PropertyChangedEvt"/>.</summary>
+public class ObjectPropertyChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Access.Object.ChildrenChangedEvt"/>.</summary>
+public class ObjectChildrenChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Access.Event.ChildrenChanged.Data arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Access.Object.StateChangedEvt"/>.</summary>
+public class ObjectStateChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Access.Event.StateChanged.Data arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Access.Object.BoundsChangedEvt"/>.</summary>
+public class ObjectBoundsChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Access.Event.GeometryChanged.Data arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Access.Object.ActiveDescendantChangedEvt"/>.</summary>
+public class ObjectActiveDescendantChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+/// <summary>Accessibility accessible mixin</summary>
+sealed public class ObjectConcrete : 
+
+Object
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ObjectConcrete))
+            return Efl.Access.ObjectNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_object_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ObjectConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ObjectConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ObjectConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ObjectConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object PropertyChangedEvtKey = new object();
+   /// <summary>Called when property has changed</summary>
+   public event EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args> PropertyChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_PROPERTY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PropertyChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PropertyChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_PROPERTY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PropertyChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PropertyChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PropertyChangedEvt.</summary>
+   public void On_PropertyChangedEvt(Efl.Access.ObjectPropertyChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args>)eventHandlers[PropertyChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PropertyChangedEvt_delegate;
+   private void on_PropertyChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectPropertyChangedEvt_Args args = new Efl.Access.ObjectPropertyChangedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_PropertyChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildrenChangedEvtKey = new object();
+   /// <summary>Called when children have changed</summary>
+   public event EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args> ChildrenChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_CHILDREN_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChildrenChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildrenChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_CHILDREN_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChildrenChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildrenChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildrenChangedEvt.</summary>
+   public void On_ChildrenChangedEvt(Efl.Access.ObjectChildrenChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args>)eventHandlers[ChildrenChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildrenChangedEvt_delegate;
+   private void on_ChildrenChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectChildrenChangedEvt_Args args = new Efl.Access.ObjectChildrenChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChildrenChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StateChangedEvtKey = new object();
+   /// <summary>Called when state has changed</summary>
+   public event EventHandler<Efl.Access.ObjectStateChangedEvt_Args> StateChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_STATE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_StateChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_STATE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StateChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StateChangedEvt.</summary>
+   public void On_StateChangedEvt(Efl.Access.ObjectStateChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectStateChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectStateChangedEvt_Args>)eventHandlers[StateChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StateChangedEvt_delegate;
+   private void on_StateChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectStateChangedEvt_Args args = new Efl.Access.ObjectStateChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_StateChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BoundsChangedEvtKey = new object();
+   /// <summary>Called when boundaries have changed</summary>
+   public event EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args> BoundsChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_BOUNDS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_BoundsChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BoundsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_BOUNDS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BoundsChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BoundsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BoundsChangedEvt.</summary>
+   public void On_BoundsChangedEvt(Efl.Access.ObjectBoundsChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args>)eventHandlers[BoundsChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BoundsChangedEvt_delegate;
+   private void on_BoundsChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectBoundsChangedEvt_Args args = new Efl.Access.ObjectBoundsChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_BoundsChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object VisibleDataChangedEvtKey = new object();
+   /// <summary>Called when visibility has changed</summary>
+   public event EventHandler VisibleDataChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_VISIBLE_DATA_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_VisibleDataChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibleDataChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_VISIBLE_DATA_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibleDataChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibleDataChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibleDataChangedEvt.</summary>
+   public void On_VisibleDataChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[VisibleDataChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibleDataChangedEvt_delegate;
+   private void on_VisibleDataChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_VisibleDataChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ActiveDescendantChangedEvtKey = new object();
+   /// <summary>Called when active state of descendant has changed</summary>
+   public event EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args> ActiveDescendantChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ACTIVE_DESCENDANT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ActiveDescendantChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ActiveDescendantChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ACTIVE_DESCENDANT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ActiveDescendantChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ActiveDescendantChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ActiveDescendantChangedEvt.</summary>
+   public void On_ActiveDescendantChangedEvt(Efl.Access.ObjectActiveDescendantChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args>)eventHandlers[ActiveDescendantChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ActiveDescendantChangedEvt_delegate;
+   private void on_ActiveDescendantChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectActiveDescendantChangedEvt_Args args = new Efl.Access.ObjectActiveDescendantChangedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ActiveDescendantChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AddedEvtKey = new object();
+   /// <summary>Called when item is added</summary>
+   public event EventHandler AddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AddedEvt_delegate)) {
+               eventHandlers.AddHandler(AddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_AddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AddedEvt.</summary>
+   public void On_AddedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AddedEvt_delegate;
+   private void on_AddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RemovedEvtKey = new object();
+   /// <summary>Called when item is removed</summary>
+   public event EventHandler RemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RemovedEvt_delegate)) {
+               eventHandlers.AddHandler(RemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_RemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RemovedEvt.</summary>
+   public void On_RemovedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RemovedEvt_delegate;
+   private void on_RemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MoveOutedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler MoveOutedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_MOVE_OUTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_MoveOutedEvt_delegate)) {
+               eventHandlers.AddHandler(MoveOutedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_MOVE_OUTED";
+            if (remove_cpp_event_handler(key, this.evt_MoveOutedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MoveOutedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MoveOutedEvt.</summary>
+   public void On_MoveOutedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[MoveOutedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MoveOutedEvt_delegate;
+   private void on_MoveOutedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_MoveOutedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_PropertyChangedEvt_delegate = new Efl.EventCb(on_PropertyChangedEvt_NativeCallback);
+      evt_ChildrenChangedEvt_delegate = new Efl.EventCb(on_ChildrenChangedEvt_NativeCallback);
+      evt_StateChangedEvt_delegate = new Efl.EventCb(on_StateChangedEvt_NativeCallback);
+      evt_BoundsChangedEvt_delegate = new Efl.EventCb(on_BoundsChangedEvt_NativeCallback);
+      evt_VisibleDataChangedEvt_delegate = new Efl.EventCb(on_VisibleDataChangedEvt_NativeCallback);
+      evt_ActiveDescendantChangedEvt_delegate = new Efl.EventCb(on_ActiveDescendantChangedEvt_NativeCallback);
+      evt_AddedEvt_delegate = new Efl.EventCb(on_AddedEvt_NativeCallback);
+      evt_RemovedEvt_delegate = new Efl.EventCb(on_RemovedEvt_NativeCallback);
+      evt_MoveOutedEvt_delegate = new Efl.EventCb(on_MoveOutedEvt_NativeCallback);
+   }
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+   /// <returns>Localized accessible object role name</returns>
+   public  System.String GetLocalizedRoleName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_localized_role_name_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessible name of the object.</summary>
+   /// <returns>Accessible name</returns>
+   public  System.String GetI18nName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_i18n_name_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessible name of the object.</summary>
+   /// <param name="i18n_name">Accessible name</param>
+   /// <returns></returns>
+   public  void SetI18nName(  System.String i18n_name) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_i18n_name_set_ptr.Value.Delegate(this.NativeHandle, i18n_name);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Sets name information callback about widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="name_cb">reading information callback</param>
+   /// <param name="data"></param>
+   /// <returns></returns>
+   public  void SetNameCb( Efl.Access.ReadingInfoCb name_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_name_cb_set_ptr.Value.Delegate(this.NativeHandle, name_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+   /// <returns>Accessible relation set</returns>
+   public Efl.Access.RelationSet GetRelationSet() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_relation_set_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The role of the object in accessibility domain.</summary>
+   /// <returns>Accessible role</returns>
+   public Efl.Access.Role GetRole() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_role_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the role of the object in accessibility domain.</summary>
+   /// <param name="role">Accessible role</param>
+   /// <returns></returns>
+   public  void SetRole( Efl.Access.Role role) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_role_set_ptr.Value.Delegate(this.NativeHandle, role);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+   /// <returns>Accessible parent</returns>
+   public Efl.Access.Object GetAccessParent() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_parent_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+   /// <param name="parent">Accessible parent</param>
+   /// <returns></returns>
+   public  void SetAccessParent( Efl.Access.Object parent) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_access_parent_set_ptr.Value.Delegate(this.NativeHandle, parent);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Sets contextual information callback about widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="description_cb">The function called to provide the accessible description.</param>
+   /// <param name="data">The data passed to @c description_cb.</param>
+   /// <returns></returns>
+   public  void SetDescriptionCb( Efl.Access.ReadingInfoCb description_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_description_cb_set_ptr.Value.Delegate(this.NativeHandle, description_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets gesture callback to give widget.
+   /// Warning: Please do not abuse this API. The purpose of this API is to support special application such as screen-reader guidance. Before using this API, please check if there is another way.
+   /// 
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="gesture_cb"></param>
+   /// <param name="data"></param>
+   /// <returns></returns>
+   public  void SetGestureCb( Efl.Access.GestureCb gesture_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_gesture_cb_set_ptr.Value.Delegate(this.NativeHandle, gesture_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets object&apos;s accessible children.</summary>
+   /// <returns>List of widget&apos;s children</returns>
+   public Eina.List<Efl.Access.Object> GetAccessChildren() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_children_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.Object>(_ret_var, true, false);
+ }
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+   /// <returns>Accessible role name</returns>
+   public  System.String GetRoleName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_role_name_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+   /// <returns>List of object attributes, Must be freed by the user</returns>
+   public Eina.List<Efl.Access.Attribute> GetAttributes() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_attributes_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.Attribute>(_ret_var, true, true);
+ }
+   /// <summary>Gets reading information types of an accessible object.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns>Reading information types</returns>
+   public Efl.Access.ReadingInfoTypeMask GetReadingInfoType() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_reading_info_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets reading information of an accessible object.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="reading_info">Reading information types</param>
+   /// <returns></returns>
+   public  void SetReadingInfoType( Efl.Access.ReadingInfoTypeMask reading_info) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_reading_info_type_set_ptr.Value.Delegate(this.NativeHandle, reading_info);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+   /// <returns>Index in children list</returns>
+   public  int GetIndexInParent() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_index_in_parent_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets contextual information about object.</summary>
+   /// <returns>Accessible contextual information</returns>
+   public  System.String GetDescription() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_description_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets widget contextual information.</summary>
+   /// <param name="description">Accessible contextual information</param>
+   /// <returns></returns>
+   public  void SetDescription(  System.String description) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_description_set_ptr.Value.Delegate(this.NativeHandle, description);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets set describing object accessible states.</summary>
+   /// <returns>Accessible state set</returns>
+   public Efl.Access.StateSet GetStateSet() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_state_set_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets highlightable of given widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns>If @c true, the object is highlightable.</returns>
+   public bool GetCanHighlight() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_can_highlight_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets highlightable to given widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="can_highlight">If @c true, the object is highlightable.</param>
+   /// <returns></returns>
+   public  void SetCanHighlight( bool can_highlight) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_can_highlight_set_ptr.Value.Delegate(this.NativeHandle, can_highlight);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+   /// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+   /// 
+   /// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+   /// 
+   /// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+   /// <returns>Translation domain</returns>
+   public  System.String GetTranslationDomain() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_translation_domain_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+   /// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+   /// 
+   /// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+   /// 
+   /// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+   /// <param name="domain">Translation domain</param>
+   /// <returns></returns>
+   public  void SetTranslationDomain(  System.String domain) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_translation_domain_set_ptr.Value.Delegate(this.NativeHandle, domain);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get root object of accessible object hierarchy</summary>
+   /// <returns>Root object</returns>
+   public static Efl.Object GetAccessRoot() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_root_get_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Handles gesture on given widget.</summary>
+   /// <param name="gesture_info"></param>
+   /// <returns></returns>
+   public bool GestureDo( Efl.Access.GestureInfo gesture_info) {
+       var _in_gesture_info = Efl.Access.GestureInfo_StructConversion.ToInternal(gesture_info);
+                  var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_gesture_do_ptr.Value.Delegate(this.NativeHandle, _in_gesture_info);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Add key-value pair identifying object extra attribute
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="key">The string key to give extra information</param>
+   /// <param name="value">The string value to give extra information</param>
+   /// <returns></returns>
+   public  void AppendAttribute(  System.String key,   System.String value) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_attribute_append_ptr.Value.Delegate(this.NativeHandle, key,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Removes all attributes in accessible object.</summary>
+   /// <returns></returns>
+   public  void ClearAttributes() {
+       Efl.Access.ObjectNativeInherit.efl_access_object_attributes_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Register accessibility event listener</summary>
+   /// <param name="cb">Callback</param>
+   /// <param name="data">Data</param>
+   /// <returns>Event handler</returns>
+   public static Efl.Access.Event.Handler AddEventHandler( Efl.EventCb cb,   System.IntPtr data) {
+                                           var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_event_handler_add_ptr.Value.Delegate( cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Deregister accessibility event listener</summary>
+   /// <param name="handler">Event handler</param>
+   /// <returns></returns>
+   public static  void DelEventHandler( Efl.Access.Event.Handler handler) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_event_handler_del_ptr.Value.Delegate( handler);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Emit event</summary>
+   /// <param name="accessible">Accessibility object.</param>
+   /// <param name="kw_event">Accessibility event type.</param>
+   /// <param name="event_info">Accessibility event details.</param>
+   /// <returns></returns>
+   public static  void EmitEvent( Efl.Access.Object accessible,  Efl.EventDescription kw_event,   System.IntPtr event_info) {
+             var _in_kw_event = Eina.PrimitiveConversion.ManagedToPointerAlloc(kw_event);
+                                                Efl.Access.ObjectNativeInherit.efl_access_object_event_emit_ptr.Value.Delegate( accessible,  _in_kw_event,  event_info);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Defines the relationship between two accessible objects.
+   /// Adds a unique relationship between source object and relation_object of a given type.
+   /// 
+   /// Relationships can be queried by Assistive Technology clients to provide customized feedback, improving overall user experience.
+   /// 
+   /// Relationship_append API is asymmetric, which means that appending, for example, relation EFL_ACCESS_RELATION_FLOWS_TO from object A to B, do NOT append relation EFL_ACCESS_RELATION_FLOWS_FROM from object B to object A.</summary>
+   /// <param name="type">Relation type</param>
+   /// <param name="relation_object">Object to relate to</param>
+   /// <returns><c>true</c> if relationship was successfully appended, <c>false</c> otherwise</returns>
+   public bool AppendRelationship( Efl.Access.RelationType type,  Efl.Access.Object relation_object) {
+                                           var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_relationship_append_ptr.Value.Delegate(this.NativeHandle, type,  relation_object);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Removes the relationship between two accessible objects.
+   /// If relation_object is NULL function removes all relations of the given type.</summary>
+   /// <param name="type">Relation type</param>
+   /// <param name="relation_object">Object to remove relation from</param>
+   /// <returns></returns>
+   public  void RelationshipRemove( Efl.Access.RelationType type,  Efl.Access.Object relation_object) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_relationship_remove_ptr.Value.Delegate(this.NativeHandle, type,  relation_object);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Removes all relationships in accessible object.</summary>
+   /// <returns></returns>
+   public  void ClearRelationships() {
+       Efl.Access.ObjectNativeInherit.efl_access_object_relationships_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Notifies accessibility clients about current state of the accessible object.
+   /// Function limits information broadcast to clients to types specified by state_types_mask parameter.
+   /// 
+   /// if recursive parameter is set, function will traverse all accessible children and call state_notify function on them.</summary>
+   /// <param name="state_types_mask"></param>
+   /// <param name="recursive"></param>
+   /// <returns></returns>
+   public  void StateNotify( Efl.Access.StateSet state_types_mask,  bool recursive) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_state_notify_ptr.Value.Delegate(this.NativeHandle, state_types_mask,  recursive);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+/// <value>Localized accessible object role name</value>
+   public  System.String LocalizedRoleName {
+      get { return GetLocalizedRoleName(); }
+   }
+   /// <summary>Accessible name of the object.</summary>
+/// <value>Accessible name</value>
+   public  System.String I18nName {
+      get { return GetI18nName(); }
+      set { SetI18nName( value); }
+   }
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+/// <value>Accessible relation set</value>
+   public Efl.Access.RelationSet RelationSet {
+      get { return GetRelationSet(); }
+   }
+   /// <summary>The role of the object in accessibility domain.</summary>
+/// <value>Accessible role</value>
+   public Efl.Access.Role Role {
+      get { return GetRole(); }
+      set { SetRole( value); }
+   }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+/// <value>Accessible parent</value>
+   public Efl.Access.Object AccessParent {
+      get { return GetAccessParent(); }
+      set { SetAccessParent( value); }
+   }
+   /// <summary>Gets object&apos;s accessible children.</summary>
+/// <value>List of widget&apos;s children</value>
+   public Eina.List<Efl.Access.Object> AccessChildren {
+      get { return GetAccessChildren(); }
+   }
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+/// <value>Accessible role name</value>
+   public  System.String RoleName {
+      get { return GetRoleName(); }
+   }
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+/// <value>List of object attributes, Must be freed by the user</value>
+   public Eina.List<Efl.Access.Attribute> Attributes {
+      get { return GetAttributes(); }
+   }
+   /// <summary>Gets reading information types of an accessible object.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>Reading information types</value>
+   public Efl.Access.ReadingInfoTypeMask ReadingInfoType {
+      get { return GetReadingInfoType(); }
+      set { SetReadingInfoType( value); }
+   }
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+/// <value>Index in children list</value>
+   public  int IndexInParent {
+      get { return GetIndexInParent(); }
+   }
+   /// <summary>Gets contextual information about object.</summary>
+/// <value>Accessible contextual information</value>
+   public  System.String Description {
+      get { return GetDescription(); }
+      set { SetDescription( value); }
+   }
+   /// <summary>Gets set describing object accessible states.</summary>
+/// <value>Accessible state set</value>
+   public Efl.Access.StateSet StateSet {
+      get { return GetStateSet(); }
+   }
+   /// <summary>Gets highlightable of given widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>If @c true, the object is highlightable.</value>
+   public bool CanHighlight {
+      get { return GetCanHighlight(); }
+      set { SetCanHighlight( value); }
+   }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+/// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+/// 
+/// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+/// 
+/// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+/// <value>Translation domain</value>
+   public  System.String TranslationDomain {
+      get { return GetTranslationDomain(); }
+      set { SetTranslationDomain( value); }
+   }
+   /// <summary>Get root object of accessible object hierarchy</summary>
+/// <value>Root object</value>
+   public static Efl.Object AccessRoot {
+      get { return GetAccessRoot(); }
+   }
+}
+public class ObjectNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_object_localized_role_name_get_static_delegate == null)
+      efl_access_object_localized_role_name_get_static_delegate = new efl_access_object_localized_role_name_get_delegate(localized_role_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_localized_role_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_localized_role_name_get_static_delegate)});
+      if (efl_access_object_i18n_name_get_static_delegate == null)
+      efl_access_object_i18n_name_get_static_delegate = new efl_access_object_i18n_name_get_delegate(i18n_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_i18n_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_i18n_name_get_static_delegate)});
+      if (efl_access_object_i18n_name_set_static_delegate == null)
+      efl_access_object_i18n_name_set_static_delegate = new efl_access_object_i18n_name_set_delegate(i18n_name_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_i18n_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_i18n_name_set_static_delegate)});
+      if (efl_access_object_name_cb_set_static_delegate == null)
+      efl_access_object_name_cb_set_static_delegate = new efl_access_object_name_cb_set_delegate(name_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_name_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_name_cb_set_static_delegate)});
+      if (efl_access_object_relation_set_get_static_delegate == null)
+      efl_access_object_relation_set_get_static_delegate = new efl_access_object_relation_set_get_delegate(relation_set_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relation_set_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relation_set_get_static_delegate)});
+      if (efl_access_object_role_get_static_delegate == null)
+      efl_access_object_role_get_static_delegate = new efl_access_object_role_get_delegate(role_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_get_static_delegate)});
+      if (efl_access_object_role_set_static_delegate == null)
+      efl_access_object_role_set_static_delegate = new efl_access_object_role_set_delegate(role_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_set_static_delegate)});
+      if (efl_access_object_access_parent_get_static_delegate == null)
+      efl_access_object_access_parent_get_static_delegate = new efl_access_object_access_parent_get_delegate(access_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_parent_get_static_delegate)});
+      if (efl_access_object_access_parent_set_static_delegate == null)
+      efl_access_object_access_parent_set_static_delegate = new efl_access_object_access_parent_set_delegate(access_parent_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_parent_set_static_delegate)});
+      if (efl_access_object_description_cb_set_static_delegate == null)
+      efl_access_object_description_cb_set_static_delegate = new efl_access_object_description_cb_set_delegate(description_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_cb_set_static_delegate)});
+      if (efl_access_object_gesture_cb_set_static_delegate == null)
+      efl_access_object_gesture_cb_set_static_delegate = new efl_access_object_gesture_cb_set_delegate(gesture_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_gesture_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_gesture_cb_set_static_delegate)});
+      if (efl_access_object_access_children_get_static_delegate == null)
+      efl_access_object_access_children_get_static_delegate = new efl_access_object_access_children_get_delegate(access_children_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_children_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_children_get_static_delegate)});
+      if (efl_access_object_role_name_get_static_delegate == null)
+      efl_access_object_role_name_get_static_delegate = new efl_access_object_role_name_get_delegate(role_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_name_get_static_delegate)});
+      if (efl_access_object_attributes_get_static_delegate == null)
+      efl_access_object_attributes_get_static_delegate = new efl_access_object_attributes_get_delegate(attributes_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attributes_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attributes_get_static_delegate)});
+      if (efl_access_object_reading_info_type_get_static_delegate == null)
+      efl_access_object_reading_info_type_get_static_delegate = new efl_access_object_reading_info_type_get_delegate(reading_info_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_reading_info_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_reading_info_type_get_static_delegate)});
+      if (efl_access_object_reading_info_type_set_static_delegate == null)
+      efl_access_object_reading_info_type_set_static_delegate = new efl_access_object_reading_info_type_set_delegate(reading_info_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_reading_info_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_reading_info_type_set_static_delegate)});
+      if (efl_access_object_index_in_parent_get_static_delegate == null)
+      efl_access_object_index_in_parent_get_static_delegate = new efl_access_object_index_in_parent_get_delegate(index_in_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_index_in_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_index_in_parent_get_static_delegate)});
+      if (efl_access_object_description_get_static_delegate == null)
+      efl_access_object_description_get_static_delegate = new efl_access_object_description_get_delegate(description_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_get_static_delegate)});
+      if (efl_access_object_description_set_static_delegate == null)
+      efl_access_object_description_set_static_delegate = new efl_access_object_description_set_delegate(description_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_set_static_delegate)});
+      if (efl_access_object_state_set_get_static_delegate == null)
+      efl_access_object_state_set_get_static_delegate = new efl_access_object_state_set_get_delegate(state_set_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_state_set_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_state_set_get_static_delegate)});
+      if (efl_access_object_can_highlight_get_static_delegate == null)
+      efl_access_object_can_highlight_get_static_delegate = new efl_access_object_can_highlight_get_delegate(can_highlight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_can_highlight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_can_highlight_get_static_delegate)});
+      if (efl_access_object_can_highlight_set_static_delegate == null)
+      efl_access_object_can_highlight_set_static_delegate = new efl_access_object_can_highlight_set_delegate(can_highlight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_can_highlight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_can_highlight_set_static_delegate)});
+      if (efl_access_object_translation_domain_get_static_delegate == null)
+      efl_access_object_translation_domain_get_static_delegate = new efl_access_object_translation_domain_get_delegate(translation_domain_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_translation_domain_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_translation_domain_get_static_delegate)});
+      if (efl_access_object_translation_domain_set_static_delegate == null)
+      efl_access_object_translation_domain_set_static_delegate = new efl_access_object_translation_domain_set_delegate(translation_domain_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_translation_domain_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_translation_domain_set_static_delegate)});
+      if (efl_access_object_gesture_do_static_delegate == null)
+      efl_access_object_gesture_do_static_delegate = new efl_access_object_gesture_do_delegate(gesture_do);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_gesture_do"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_gesture_do_static_delegate)});
+      if (efl_access_object_attribute_append_static_delegate == null)
+      efl_access_object_attribute_append_static_delegate = new efl_access_object_attribute_append_delegate(attribute_append);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attribute_append"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attribute_append_static_delegate)});
+      if (efl_access_object_attributes_clear_static_delegate == null)
+      efl_access_object_attributes_clear_static_delegate = new efl_access_object_attributes_clear_delegate(attributes_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attributes_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attributes_clear_static_delegate)});
+      if (efl_access_object_relationship_append_static_delegate == null)
+      efl_access_object_relationship_append_static_delegate = new efl_access_object_relationship_append_delegate(relationship_append);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationship_append"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationship_append_static_delegate)});
+      if (efl_access_object_relationship_remove_static_delegate == null)
+      efl_access_object_relationship_remove_static_delegate = new efl_access_object_relationship_remove_delegate(relationship_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationship_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationship_remove_static_delegate)});
+      if (efl_access_object_relationships_clear_static_delegate == null)
+      efl_access_object_relationships_clear_static_delegate = new efl_access_object_relationships_clear_delegate(relationships_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationships_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationships_clear_static_delegate)});
+      if (efl_access_object_state_notify_static_delegate == null)
+      efl_access_object_state_notify_static_delegate = new efl_access_object_state_notify_delegate(state_notify);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_state_notify"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_state_notify_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.ObjectConcrete.efl_access_object_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.ObjectConcrete.efl_access_object_mixin_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_localized_role_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_localized_role_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_localized_role_name_get_api_delegate> efl_access_object_localized_role_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_localized_role_name_get_api_delegate>(_Module, "efl_access_object_localized_role_name_get");
+    private static  System.String localized_role_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_localized_role_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetLocalizedRoleName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_localized_role_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_localized_role_name_get_delegate efl_access_object_localized_role_name_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_i18n_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_i18n_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_get_api_delegate> efl_access_object_i18n_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_get_api_delegate>(_Module, "efl_access_object_i18n_name_get");
+    private static  System.String i18n_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_i18n_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetI18nName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_i18n_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_i18n_name_get_delegate efl_access_object_i18n_name_get_static_delegate;
+
+
+    private delegate  void efl_access_object_i18n_name_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String i18n_name);
+
+
+    public delegate  void efl_access_object_i18n_name_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String i18n_name);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_set_api_delegate> efl_access_object_i18n_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_set_api_delegate>(_Module, "efl_access_object_i18n_name_set");
+    private static  void i18n_name_set(System.IntPtr obj, System.IntPtr pd,   System.String i18n_name)
+   {
+      Eina.Log.Debug("function efl_access_object_i18n_name_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetI18nName( i18n_name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_i18n_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  i18n_name);
+      }
+   }
+   private static efl_access_object_i18n_name_set_delegate efl_access_object_i18n_name_set_static_delegate;
+
+
+    private delegate  void efl_access_object_name_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoCb name_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_name_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoCb name_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_name_cb_set_api_delegate> efl_access_object_name_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_name_cb_set_api_delegate>(_Module, "efl_access_object_name_cb_set");
+    private static  void name_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoCb name_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_name_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ObjectConcrete)wrapper).SetNameCb( name_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_name_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name_cb,  data);
+      }
+   }
+   private static efl_access_object_name_cb_set_delegate efl_access_object_name_cb_set_static_delegate;
+
+
+    private delegate Efl.Access.RelationSet efl_access_object_relation_set_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.RelationSet efl_access_object_relation_set_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relation_set_get_api_delegate> efl_access_object_relation_set_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relation_set_get_api_delegate>(_Module, "efl_access_object_relation_set_get");
+    private static Efl.Access.RelationSet relation_set_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_relation_set_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.RelationSet _ret_var = default(Efl.Access.RelationSet);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetRelationSet();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_relation_set_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_relation_set_get_delegate efl_access_object_relation_set_get_static_delegate;
+
+
+    private delegate Efl.Access.Role efl_access_object_role_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.Role efl_access_object_role_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_get_api_delegate> efl_access_object_role_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_get_api_delegate>(_Module, "efl_access_object_role_get");
+    private static Efl.Access.Role role_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_role_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.Role _ret_var = default(Efl.Access.Role);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetRole();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_role_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_role_get_delegate efl_access_object_role_get_static_delegate;
+
+
+    private delegate  void efl_access_object_role_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.Role role);
+
+
+    public delegate  void efl_access_object_role_set_api_delegate(System.IntPtr obj,   Efl.Access.Role role);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_set_api_delegate> efl_access_object_role_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_set_api_delegate>(_Module, "efl_access_object_role_set");
+    private static  void role_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Role role)
+   {
+      Eina.Log.Debug("function efl_access_object_role_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetRole( role);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_role_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  role);
+      }
+   }
+   private static efl_access_object_role_set_delegate efl_access_object_role_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Access.Object efl_access_object_access_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Access.Object efl_access_object_access_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_parent_get_api_delegate> efl_access_object_access_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_parent_get_api_delegate>(_Module, "efl_access_object_access_parent_get");
+    private static Efl.Access.Object access_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.Object _ret_var = default(Efl.Access.Object);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetAccessParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_access_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_access_parent_get_delegate efl_access_object_access_parent_get_static_delegate;
+
+
+    private delegate  void efl_access_object_access_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object parent);
+
+
+    public delegate  void efl_access_object_access_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object parent);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_parent_set_api_delegate> efl_access_object_access_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_parent_set_api_delegate>(_Module, "efl_access_object_access_parent_set");
+    private static  void access_parent_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Object parent)
+   {
+      Eina.Log.Debug("function efl_access_object_access_parent_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetAccessParent( parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_access_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent);
+      }
+   }
+   private static efl_access_object_access_parent_set_delegate efl_access_object_access_parent_set_static_delegate;
+
+
+    private delegate  void efl_access_object_description_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoCb description_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_description_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoCb description_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_cb_set_api_delegate> efl_access_object_description_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_cb_set_api_delegate>(_Module, "efl_access_object_description_cb_set");
+    private static  void description_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoCb description_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_description_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ObjectConcrete)wrapper).SetDescriptionCb( description_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_description_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  description_cb,  data);
+      }
+   }
+   private static efl_access_object_description_cb_set_delegate efl_access_object_description_cb_set_static_delegate;
+
+
+    private delegate  void efl_access_object_gesture_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.GestureCb gesture_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_gesture_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.GestureCb gesture_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_gesture_cb_set_api_delegate> efl_access_object_gesture_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_gesture_cb_set_api_delegate>(_Module, "efl_access_object_gesture_cb_set");
+    private static  void gesture_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.GestureCb gesture_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_gesture_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ObjectConcrete)wrapper).SetGestureCb( gesture_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_gesture_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gesture_cb,  data);
+      }
+   }
+   private static efl_access_object_gesture_cb_set_delegate efl_access_object_gesture_cb_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_object_access_children_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_object_access_children_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_children_get_api_delegate> efl_access_object_access_children_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_children_get_api_delegate>(_Module, "efl_access_object_access_children_get");
+    private static  System.IntPtr access_children_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_children_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.Object> _ret_var = default(Eina.List<Efl.Access.Object>);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetAccessChildren();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_access_object_access_children_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_access_children_get_delegate efl_access_object_access_children_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_role_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_role_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_name_get_api_delegate> efl_access_object_role_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_name_get_api_delegate>(_Module, "efl_access_object_role_name_get");
+    private static  System.String role_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_role_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetRoleName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_role_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_role_name_get_delegate efl_access_object_role_name_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_object_attributes_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_object_attributes_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attributes_get_api_delegate> efl_access_object_attributes_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attributes_get_api_delegate>(_Module, "efl_access_object_attributes_get");
+    private static  System.IntPtr attributes_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_attributes_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.Attribute> _ret_var = default(Eina.List<Efl.Access.Attribute>);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_object_attributes_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_attributes_get_delegate efl_access_object_attributes_get_static_delegate;
+
+
+    private delegate Efl.Access.ReadingInfoTypeMask efl_access_object_reading_info_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.ReadingInfoTypeMask efl_access_object_reading_info_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_get_api_delegate> efl_access_object_reading_info_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_get_api_delegate>(_Module, "efl_access_object_reading_info_type_get");
+    private static Efl.Access.ReadingInfoTypeMask reading_info_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_reading_info_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.ReadingInfoTypeMask _ret_var = default(Efl.Access.ReadingInfoTypeMask);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetReadingInfoType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_reading_info_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_reading_info_type_get_delegate efl_access_object_reading_info_type_get_static_delegate;
+
+
+    private delegate  void efl_access_object_reading_info_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoTypeMask reading_info);
+
+
+    public delegate  void efl_access_object_reading_info_type_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoTypeMask reading_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_set_api_delegate> efl_access_object_reading_info_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_set_api_delegate>(_Module, "efl_access_object_reading_info_type_set");
+    private static  void reading_info_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoTypeMask reading_info)
+   {
+      Eina.Log.Debug("function efl_access_object_reading_info_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetReadingInfoType( reading_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_reading_info_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  reading_info);
+      }
+   }
+   private static efl_access_object_reading_info_type_set_delegate efl_access_object_reading_info_type_set_static_delegate;
+
+
+    private delegate  int efl_access_object_index_in_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_object_index_in_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_index_in_parent_get_api_delegate> efl_access_object_index_in_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_index_in_parent_get_api_delegate>(_Module, "efl_access_object_index_in_parent_get");
+    private static  int index_in_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_index_in_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetIndexInParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_index_in_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_index_in_parent_get_delegate efl_access_object_index_in_parent_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_description_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_description_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_get_api_delegate> efl_access_object_description_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_get_api_delegate>(_Module, "efl_access_object_description_get");
+    private static  System.String description_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_description_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetDescription();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_description_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_description_get_delegate efl_access_object_description_get_static_delegate;
+
+
+    private delegate  void efl_access_object_description_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String description);
+
+
+    public delegate  void efl_access_object_description_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String description);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_set_api_delegate> efl_access_object_description_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_set_api_delegate>(_Module, "efl_access_object_description_set");
+    private static  void description_set(System.IntPtr obj, System.IntPtr pd,   System.String description)
+   {
+      Eina.Log.Debug("function efl_access_object_description_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetDescription( description);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_description_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  description);
+      }
+   }
+   private static efl_access_object_description_set_delegate efl_access_object_description_set_static_delegate;
+
+
+    private delegate Efl.Access.StateSet efl_access_object_state_set_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.StateSet efl_access_object_state_set_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_state_set_get_api_delegate> efl_access_object_state_set_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_state_set_get_api_delegate>(_Module, "efl_access_object_state_set_get");
+    private static Efl.Access.StateSet state_set_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_state_set_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.StateSet _ret_var = default(Efl.Access.StateSet);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetStateSet();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_state_set_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_state_set_get_delegate efl_access_object_state_set_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_can_highlight_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_can_highlight_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_get_api_delegate> efl_access_object_can_highlight_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_get_api_delegate>(_Module, "efl_access_object_can_highlight_get");
+    private static bool can_highlight_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_can_highlight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetCanHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_can_highlight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_can_highlight_get_delegate efl_access_object_can_highlight_get_static_delegate;
+
+
+    private delegate  void efl_access_object_can_highlight_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_highlight);
+
+
+    public delegate  void efl_access_object_can_highlight_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_highlight);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_set_api_delegate> efl_access_object_can_highlight_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_set_api_delegate>(_Module, "efl_access_object_can_highlight_set");
+    private static  void can_highlight_set(System.IntPtr obj, System.IntPtr pd,  bool can_highlight)
+   {
+      Eina.Log.Debug("function efl_access_object_can_highlight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetCanHighlight( can_highlight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_can_highlight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_highlight);
+      }
+   }
+   private static efl_access_object_can_highlight_set_delegate efl_access_object_can_highlight_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_translation_domain_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_translation_domain_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_get_api_delegate> efl_access_object_translation_domain_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_get_api_delegate>(_Module, "efl_access_object_translation_domain_get");
+    private static  System.String translation_domain_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_translation_domain_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetTranslationDomain();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_translation_domain_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_translation_domain_get_delegate efl_access_object_translation_domain_get_static_delegate;
+
+
+    private delegate  void efl_access_object_translation_domain_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+
+
+    public delegate  void efl_access_object_translation_domain_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_set_api_delegate> efl_access_object_translation_domain_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_set_api_delegate>(_Module, "efl_access_object_translation_domain_set");
+    private static  void translation_domain_set(System.IntPtr obj, System.IntPtr pd,   System.String domain)
+   {
+      Eina.Log.Debug("function efl_access_object_translation_domain_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetTranslationDomain( domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_translation_domain_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  domain);
+      }
+   }
+   private static efl_access_object_translation_domain_set_delegate efl_access_object_translation_domain_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_object_access_root_get_delegate();
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_object_access_root_get_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_root_get_api_delegate> efl_access_object_access_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_root_get_api_delegate>(_Module, "efl_access_object_access_root_get");
+    private static Efl.Object access_root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ObjectConcrete.GetAccessRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_access_root_get_ptr.Value.Delegate();
+      }
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_gesture_do_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.GestureInfo_StructInternal gesture_info);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_gesture_do_api_delegate(System.IntPtr obj,   Efl.Access.GestureInfo_StructInternal gesture_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_gesture_do_api_delegate> efl_access_object_gesture_do_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_gesture_do_api_delegate>(_Module, "efl_access_object_gesture_do");
+    private static bool gesture_do(System.IntPtr obj, System.IntPtr pd,  Efl.Access.GestureInfo_StructInternal gesture_info)
+   {
+      Eina.Log.Debug("function efl_access_object_gesture_do was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_gesture_info = Efl.Access.GestureInfo_StructConversion.ToManaged(gesture_info);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GestureDo( _in_gesture_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_object_gesture_do_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gesture_info);
+      }
+   }
+   private static efl_access_object_gesture_do_delegate efl_access_object_gesture_do_static_delegate;
+
+
+    private delegate  void efl_access_object_attribute_append_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+
+
+    public delegate  void efl_access_object_attribute_append_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attribute_append_api_delegate> efl_access_object_attribute_append_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attribute_append_api_delegate>(_Module, "efl_access_object_attribute_append");
+    private static  void attribute_append(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String value)
+   {
+      Eina.Log.Debug("function efl_access_object_attribute_append was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ObjectConcrete)wrapper).AppendAttribute( key,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_attribute_append_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  value);
+      }
+   }
+   private static efl_access_object_attribute_append_delegate efl_access_object_attribute_append_static_delegate;
+
+
+    private delegate  void efl_access_object_attributes_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_access_object_attributes_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attributes_clear_api_delegate> efl_access_object_attributes_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attributes_clear_api_delegate>(_Module, "efl_access_object_attributes_clear");
+    private static  void attributes_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_attributes_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ObjectConcrete)wrapper).ClearAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_access_object_attributes_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_attributes_clear_delegate efl_access_object_attributes_clear_static_delegate;
+
+
+    private delegate Efl.Access.Event.Handler efl_access_object_event_handler_add_delegate(  Efl.EventCb cb,    System.IntPtr data);
+
+
+    public delegate Efl.Access.Event.Handler efl_access_object_event_handler_add_api_delegate(  Efl.EventCb cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_handler_add_api_delegate> efl_access_object_event_handler_add_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_handler_add_api_delegate>(_Module, "efl_access_object_event_handler_add");
+    private static Efl.Access.Event.Handler event_handler_add(System.IntPtr obj, System.IntPtr pd,  Efl.EventCb cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_event_handler_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Access.Event.Handler _ret_var = default(Efl.Access.Event.Handler);
+         try {
+            _ret_var = ObjectConcrete.AddEventHandler( cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_object_event_handler_add_ptr.Value.Delegate( cb,  data);
+      }
+   }
+
+
+    private delegate  void efl_access_object_event_handler_del_delegate(  Efl.Access.Event.Handler handler);
+
+
+    public delegate  void efl_access_object_event_handler_del_api_delegate(  Efl.Access.Event.Handler handler);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_handler_del_api_delegate> efl_access_object_event_handler_del_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_handler_del_api_delegate>(_Module, "efl_access_object_event_handler_del");
+    private static  void event_handler_del(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Event.Handler handler)
+   {
+      Eina.Log.Debug("function efl_access_object_event_handler_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ObjectConcrete.DelEventHandler( handler);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_event_handler_del_ptr.Value.Delegate( handler);
+      }
+   }
+
+
+    private delegate  void efl_access_object_event_emit_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object accessible,    System.IntPtr kw_event,    System.IntPtr event_info);
+
+
+    public delegate  void efl_access_object_event_emit_api_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object accessible,    System.IntPtr kw_event,    System.IntPtr event_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_emit_api_delegate> efl_access_object_event_emit_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_emit_api_delegate>(_Module, "efl_access_object_event_emit");
+    private static  void event_emit(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Object accessible,   System.IntPtr kw_event,   System.IntPtr event_info)
+   {
+      Eina.Log.Debug("function efl_access_object_event_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_kw_event = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(kw_event);
+                                                   
+         try {
+            ObjectConcrete.EmitEvent( accessible,  _in_kw_event,  event_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_access_object_event_emit_ptr.Value.Delegate( accessible,  kw_event,  event_info);
+      }
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_relationship_append_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_relationship_append_api_delegate(System.IntPtr obj,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationship_append_api_delegate> efl_access_object_relationship_append_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationship_append_api_delegate>(_Module, "efl_access_object_relationship_append");
+    private static bool relationship_append(System.IntPtr obj, System.IntPtr pd,  Efl.Access.RelationType type,  Efl.Access.Object relation_object)
+   {
+      Eina.Log.Debug("function efl_access_object_relationship_append was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).AppendRelationship( type,  relation_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_object_relationship_append_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  relation_object);
+      }
+   }
+   private static efl_access_object_relationship_append_delegate efl_access_object_relationship_append_static_delegate;
+
+
+    private delegate  void efl_access_object_relationship_remove_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+
+
+    public delegate  void efl_access_object_relationship_remove_api_delegate(System.IntPtr obj,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationship_remove_api_delegate> efl_access_object_relationship_remove_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationship_remove_api_delegate>(_Module, "efl_access_object_relationship_remove");
+    private static  void relationship_remove(System.IntPtr obj, System.IntPtr pd,  Efl.Access.RelationType type,  Efl.Access.Object relation_object)
+   {
+      Eina.Log.Debug("function efl_access_object_relationship_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ObjectConcrete)wrapper).RelationshipRemove( type,  relation_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_relationship_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  relation_object);
+      }
+   }
+   private static efl_access_object_relationship_remove_delegate efl_access_object_relationship_remove_static_delegate;
+
+
+    private delegate  void efl_access_object_relationships_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_access_object_relationships_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationships_clear_api_delegate> efl_access_object_relationships_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationships_clear_api_delegate>(_Module, "efl_access_object_relationships_clear");
+    private static  void relationships_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_relationships_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ObjectConcrete)wrapper).ClearRelationships();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_access_object_relationships_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_relationships_clear_delegate efl_access_object_relationships_clear_static_delegate;
+
+
+    private delegate  void efl_access_object_state_notify_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.StateSet state_types_mask,  [MarshalAs(UnmanagedType.U1)]  bool recursive);
+
+
+    public delegate  void efl_access_object_state_notify_api_delegate(System.IntPtr obj,   Efl.Access.StateSet state_types_mask,  [MarshalAs(UnmanagedType.U1)]  bool recursive);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_state_notify_api_delegate> efl_access_object_state_notify_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_state_notify_api_delegate>(_Module, "efl_access_object_state_notify");
+    private static  void state_notify(System.IntPtr obj, System.IntPtr pd,  Efl.Access.StateSet state_types_mask,  bool recursive)
+   {
+      Eina.Log.Debug("function efl_access_object_state_notify was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ObjectConcrete)wrapper).StateNotify( state_types_mask,  recursive);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_state_notify_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  state_types_mask,  recursive);
+      }
+   }
+   private static efl_access_object_state_notify_delegate efl_access_object_state_notify_static_delegate;
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Type of accessibility object</summary>
+public enum Type
+{
+/// <summary>default accessible object</summary>
+Regular = 0,
+/// <summary>skip object and its children in accessibility hierarchy</summary>
+Disabled = 1,
+/// <summary>skip object in accessibility hierarchy</summary>
+Skipped = 2,
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Describes the role of an object visible to Accessibility Clients.</summary>
+public enum Role
+{
+/// <summary>Role: invalid</summary>
+Invalid = 0,
+/// <summary>Role: accelerator label</summary>
+AcceleratorLabel = 1,
+/// <summary>Role: alert</summary>
+Alert = 2,
+/// <summary>Role: animation</summary>
+Animation = 3,
+/// <summary>Role: arrow</summary>
+Arrow = 4,
+/// <summary>Role: calendar</summary>
+Calendar = 5,
+/// <summary>Role: canvas</summary>
+Canvas = 6,
+/// <summary>Role: check box</summary>
+CheckBox = 7,
+/// <summary>Role: check menu item</summary>
+CheckMenuItem = 8,
+/// <summary>Role: color chooser</summary>
+ColorChooser = 9,
+/// <summary>Role: column header</summary>
+ColumnHeader = 10,
+/// <summary>Role: combo box</summary>
+ComboBox = 11,
+/// <summary>Role: data editor</summary>
+DateEditor = 12,
+/// <summary>Role: desktop icon</summary>
+DesktopIcon = 13,
+/// <summary>Role: desktop frame</summary>
+DesktopFrame = 14,
+/// <summary>Role: dial</summary>
+Dial = 15,
+/// <summary>Role: dialog</summary>
+Dialog = 16,
+/// <summary>Role: directory pane</summary>
+DirectoryPane = 17,
+/// <summary>Role: drawing area</summary>
+DrawingArea = 18,
+/// <summary>Role: file chooser</summary>
+FileChooser = 19,
+/// <summary>Role: filler</summary>
+Filler = 20,
+/// <summary>Role: focus traversable</summary>
+FocusTraversable = 21,
+/// <summary>Role: font chooser</summary>
+FontChooser = 22,
+/// <summary>Role: frame</summary>
+Frame = 23,
+/// <summary>Role: glass pane</summary>
+GlassPane = 24,
+/// <summary>Role: HTML container</summary>
+HtmlContainer = 25,
+/// <summary>Role: icon</summary>
+Icon = 26,
+/// <summary>Role: image</summary>
+Image = 27,
+/// <summary>Role: internal frame</summary>
+InternalFrame = 28,
+/// <summary>Role: label</summary>
+Label = 29,
+/// <summary>Role: layered pane</summary>
+LayeredPane = 30,
+/// <summary>Role: list</summary>
+List = 31,
+/// <summary>Role: list item</summary>
+ListItem = 32,
+/// <summary>Role: menu</summary>
+Menu = 33,
+/// <summary>Role: menu bar</summary>
+MenuBar = 34,
+/// <summary>Role: menu item</summary>
+MenuItem = 35,
+/// <summary>Role: option pane</summary>
+OptionPane = 36,
+/// <summary>Role: page tab</summary>
+PageTab = 37,
+/// <summary>Role: page tab list</summary>
+PageTabList = 38,
+/// <summary>Role: panel</summary>
+Panel = 39,
+/// <summary>Role: password text</summary>
+PasswordText = 40,
+/// <summary>Role: popup menu</summary>
+PopupMenu = 41,
+/// <summary>Role: progress bar</summary>
+ProgressBar = 42,
+/// <summary>Role: push button</summary>
+PushButton = 43,
+/// <summary>Role: radio button</summary>
+RadioButton = 44,
+/// <summary>Role: radio menu item</summary>
+RadioMenuItem = 45,
+/// <summary>Role: root pane</summary>
+RootPane = 46,
+/// <summary>Role: row header</summary>
+RowHeader = 47,
+/// <summary>Role: scroll bar</summary>
+ScrollBar = 48,
+/// <summary>Role: scroll pane</summary>
+ScrollPane = 49,
+/// <summary>Role: separator</summary>
+Separator = 50,
+/// <summary>Role: slider</summary>
+Slider = 51,
+/// <summary>Role: spin button</summary>
+SpinButton = 52,
+/// <summary>Role: split pane</summary>
+SplitPane = 53,
+/// <summary>Role: status bar</summary>
+StatusBar = 54,
+/// <summary>Role: table</summary>
+Table = 55,
+/// <summary>Role: table cell</summary>
+TableCell = 56,
+/// <summary>Role: table column header</summary>
+TableColumnHeader = 57,
+/// <summary>Role: table row header</summary>
+TableRowHeader = 58,
+/// <summary>Role: tearoff menu item</summary>
+TearoffMenuItem = 59,
+/// <summary>Role: terminal</summary>
+Terminal = 60,
+/// <summary>Role: text</summary>
+Text = 61,
+/// <summary>Role: toggle button</summary>
+ToggleButton = 62,
+/// <summary>Role: too bar</summary>
+ToolBar = 63,
+/// <summary>Role: tool tip</summary>
+ToolTip = 64,
+/// <summary>Role: tree</summary>
+Tree = 65,
+/// <summary>Role: tree table</summary>
+TreeTable = 66,
+/// <summary>Role: unknown</summary>
+Unknown = 67,
+/// <summary>Role: viewport</summary>
+Viewport = 68,
+/// <summary>Role: window</summary>
+Window = 69,
+/// <summary>Role: extended</summary>
+Extended = 70,
+/// <summary>Role: header</summary>
+Header = 71,
+/// <summary>Role: footer</summary>
+Footer = 72,
+/// <summary>Role: paragraph</summary>
+Paragraph = 73,
+/// <summary>Role: ruler</summary>
+Ruler = 74,
+/// <summary>Role: application</summary>
+Application = 75,
+/// <summary>Role: autocomplete</summary>
+Autocomplete = 76,
+/// <summary>Role: editbar</summary>
+Editbar = 77,
+/// <summary>Role: embedded</summary>
+Embedded = 78,
+/// <summary>Role: entry</summary>
+Entry = 79,
+/// <summary>Role: chart</summary>
+Chart = 80,
+/// <summary>Role: caption</summary>
+Caption = 81,
+/// <summary>Role: document frame</summary>
+DocumentFrame = 82,
+/// <summary>Role: heading</summary>
+Heading = 83,
+/// <summary>Role: page</summary>
+Page = 84,
+/// <summary>Role: section</summary>
+Section = 85,
+/// <summary>Role: redundant object</summary>
+RedundantObject = 86,
+/// <summary>Role: form</summary>
+Form = 87,
+/// <summary>Role: link</summary>
+Link = 88,
+/// <summary>Role: input method window</summary>
+InputMethodWindow = 89,
+/// <summary>Role: table row</summary>
+TableRow = 90,
+/// <summary>Role: table item</summary>
+TreeItem = 91,
+/// <summary>Role: document spreadsheet</summary>
+DocumentSpreadsheet = 92,
+/// <summary>Role: document presentation</summary>
+DocumentPresentation = 93,
+/// <summary>Role: document text</summary>
+DocumentText = 94,
+/// <summary>Role: document web</summary>
+DocumentWeb = 95,
+/// <summary>Role: document email</summary>
+DocumentEmail = 96,
+/// <summary>Role: comment</summary>
+Comment = 97,
+/// <summary>Role: list box</summary>
+ListBox = 98,
+/// <summary>Role: grouping</summary>
+Grouping = 99,
+/// <summary>Role: image map</summary>
+ImageMap = 100,
+/// <summary>Role: notification</summary>
+Notification = 101,
+/// <summary>Role: info bar</summary>
+InfoBar = 102,
+/// <summary>Last enum entry sentinel</summary>
+LastDefined = 103,
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Describes the possible states for an object visible to accessibility clients.</summary>
+public enum StateType
+{
+/// <summary>State: invalid</summary>
+Invalid = 0,
+/// <summary>State: active</summary>
+Active = 1,
+/// <summary>State: armed</summary>
+Armed = 2,
+/// <summary>State: busy</summary>
+Busy = 3,
+/// <summary>State: checked</summary>
+Checked = 4,
+/// <summary>State: collapsed</summary>
+Collapsed = 5,
+/// <summary>State: defunct</summary>
+Defunct = 6,
+/// <summary>State: editable</summary>
+Editable = 7,
+/// <summary>State: enabled</summary>
+Enabled = 8,
+/// <summary>State: expandable</summary>
+Expandable = 9,
+/// <summary>State: expanded</summary>
+Expanded = 10,
+/// <summary>State: focusable</summary>
+Focusable = 11,
+/// <summary>State: focused</summary>
+Focused = 12,
+/// <summary>State: has a tooltip</summary>
+HasTooltip = 13,
+/// <summary>State: horizontal</summary>
+Horizontal = 14,
+/// <summary>State: minimized</summary>
+Minimized = 15,
+/// <summary>State: modal</summary>
+Modal = 16,
+/// <summary>State: multi line</summary>
+MultiLine = 17,
+/// <summary>State: multiselectable</summary>
+Multiselectable = 18,
+/// <summary>State: opaque</summary>
+Opaque = 19,
+/// <summary>State: pressed</summary>
+Pressed = 20,
+/// <summary>State: resizable</summary>
+Resizable = 21,
+/// <summary>State: selectable</summary>
+Selectable = 22,
+/// <summary>State: selected</summary>
+Selected = 23,
+/// <summary>State: sensitive</summary>
+Sensitive = 24,
+/// <summary>State: showing</summary>
+Showing = 25,
+/// <summary>State: single line</summary>
+SingleLine = 26,
+/// <summary>State: stale</summary>
+Stale = 27,
+/// <summary>State: transient</summary>
+Transient = 28,
+/// <summary>State: vertical</summary>
+Vertical = 29,
+/// <summary>State: visible</summary>
+Visible = 30,
+/// <summary>State: manage descendants</summary>
+ManagesDescendants = 31,
+/// <summary>State: indeterminate</summary>
+Indeterminate = 32,
+/// <summary>State: required</summary>
+Required = 33,
+/// <summary>State: truncated</summary>
+Truncated = 34,
+/// <summary>State: animated</summary>
+Animated = 35,
+/// <summary>State: invalid entry</summary>
+InvalidEntry = 36,
+/// <summary>State: supports autocompletion</summary>
+SupportsAutocompletion = 37,
+/// <summary>State: selectable text</summary>
+SelectableText = 38,
+/// <summary>State: is default</summary>
+IsDefault = 39,
+/// <summary>State: visited</summary>
+Visited = 40,
+/// <summary>State: checkable</summary>
+Checkable = 41,
+/// <summary>State: has popup</summary>
+HasPopup = 42,
+/// <summary>State: read only</summary>
+ReadOnly = 43,
+/// <summary>State: highlighted</summary>
+Highlighted = 44,
+/// <summary>State: highlightable</summary>
+Highlightable = 45,
+/// <summary>Last enum entry sentinel</summary>
+LastDefined = 46,
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Describes the relationship between two objects.</summary>
+public enum RelationType
+{
+/// <summary>No relation</summary>
+Null = 0,
+/// <summary>Label for relation</summary>
+LabelFor = 1,
+/// <summary>Labelled by relation</summary>
+LabelledBy = 2,
+/// <summary>Controller for relation</summary>
+ControllerFor = 3,
+/// <summary>Controlled by relation</summary>
+ControlledBy = 4,
+/// <summary>Member of relation</summary>
+MemberOf = 5,
+/// <summary>Tooltip for relation</summary>
+TooltipFor = 6,
+/// <summary>Node child of relation</summary>
+NodeChildOf = 7,
+/// <summary>Node parent of relation</summary>
+NodeParentOf = 8,
+/// <summary>Extended relation</summary>
+Extended = 9,
+/// <summary>Flows to relation</summary>
+FlowsTo = 10,
+/// <summary>Flows from relation</summary>
+FlowsFrom = 11,
+/// <summary>Subwindow of relation</summary>
+SubwindowOf = 12,
+/// <summary>Embeds relation</summary>
+Embeds = 13,
+/// <summary>Embedded by relation</summary>
+EmbeddedBy = 14,
+/// <summary>Popup for relation</summary>
+PopupFor = 15,
+/// <summary>Parent window of relation</summary>
+ParentWindowOf = 16,
+/// <summary>Description for relation</summary>
+DescriptionFor = 17,
+/// <summary>Described by relation</summary>
+DescribedBy = 18,
+/// <summary>Last enum entry sentinel</summary>
+LastDefined = 19,
+}
+} } 
+namespace Efl { namespace Access { namespace Reading { namespace Info { 
+/// <summary>The accessible Reading information type that can be read.</summary>
+public enum Type
+{
+/// <summary>Name should be read</summary>
+Name = 1,
+/// <summary>Role should be read</summary>
+Role = 2,
+/// <summary>description should be read.</summary>
+Description = 4,
+/// <summary>State should be read.</summary>
+State = 8,
+}
+} } } } 
+namespace Efl { namespace Access { 
+/// <summary></summary>
+public enum Gesture
+{
+/// <summary></summary>
+OneFingerHover = 0,
+/// <summary></summary>
+TwoFingersHover = 1,
+/// <summary></summary>
+ThreeFingersHover = 2,
+/// <summary></summary>
+OneFingerFlickLeft = 3,
+/// <summary></summary>
+OneFingerFlickRight = 4,
+/// <summary></summary>
+OneFingerFlickUp = 5,
+/// <summary></summary>
+OneFingerFlickDown = 6,
+/// <summary></summary>
+TwoFingersFlickLeft = 7,
+/// <summary></summary>
+TwoFingersFlickRight = 8,
+/// <summary></summary>
+TwoFingersFlickUp = 9,
+/// <summary></summary>
+TwoFingersFlickDown = 10,
+/// <summary></summary>
+ThreeFingersFlickLeft = 11,
+/// <summary></summary>
+ThreeFingersFlickRight = 12,
+/// <summary></summary>
+ThreeFingersFlickUp = 13,
+/// <summary></summary>
+ThreeFingersFlickDown = 14,
+/// <summary></summary>
+OneFingerSingleTap = 15,
+/// <summary></summary>
+OneFingerDoubleTap = 16,
+/// <summary></summary>
+OneFingerTripleTap = 17,
+/// <summary></summary>
+TwoFingersSingleTap = 18,
+/// <summary></summary>
+TwoFingersDoubleTap = 19,
+/// <summary></summary>
+TwoFingersTripleTap = 20,
+/// <summary></summary>
+ThreeFingersSingleTap = 21,
+/// <summary></summary>
+ThreeFingersDoubleTap = 22,
+/// <summary></summary>
+ThreeFingersTripleTap = 23,
+/// <summary></summary>
+OneFingerFlickLeftReturn = 24,
+/// <summary></summary>
+OneFingerFlickRightReturn = 25,
+/// <summary></summary>
+OneFingerFlickUpReturn = 26,
+/// <summary></summary>
+OneFingerFlickDownReturn = 27,
+/// <summary></summary>
+TwoFingersFlickLeftReturn = 28,
+/// <summary></summary>
+TwoFingersFlickRightReturn = 29,
+/// <summary></summary>
+TwoFingersFlickUpReturn = 30,
+/// <summary></summary>
+TwoFingersFlickDownReturn = 31,
+/// <summary></summary>
+ThreeFingersFlickLeftReturn = 32,
+/// <summary></summary>
+ThreeFingersFlickRightReturn = 33,
+/// <summary></summary>
+ThreeFingersFlickUpReturn = 34,
+/// <summary></summary>
+ThreeFingersFlickDownReturn = 35,
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary></summary>
+public enum GestureState
+{
+/// <summary></summary>
+Start = 0,
+/// <summary></summary>
+Move = 1,
+/// <summary></summary>
+End = 2,
+/// <summary></summary>
+Abort = 3,
+}
+} } 
+namespace Efl { namespace Access { namespace Event { 
+/// <summary>Accessibility event listener</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Handler
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator Handler(IntPtr ptr)
+   {
+      var tmp = (Handler_StructInternal)Marshal.PtrToStructure(ptr, typeof(Handler_StructInternal));
+      return Handler_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Handler.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Handler_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Handler(Handler_StructInternal struct_)
+   {
+      return Handler_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Handler_StructInternal(Handler struct_)
+   {
+      return Handler_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Handler</summary>
+public static class Handler_StructConversion
+{
+   internal static Handler_StructInternal ToInternal(Handler _external_struct)
+   {
+      var _internal_struct = new Handler_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static Handler ToManaged(Handler_StructInternal _internal_struct)
+   {
+      var _external_struct = new Handler();
+
+
+      return _external_struct;
+   }
+
+}
+} } } 
+namespace Efl { namespace Access { namespace Event { namespace StateChanged { 
+/// <summary>Accessibility state changed event data</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Data
+{
+   /// <summary>Type of the state changed event</summary>
+   public Efl.Access.StateType Type;
+   /// <summary>New value</summary>
+   public bool New_value;
+   ///<summary>Constructor for Data.</summary>
+   public Data(
+      Efl.Access.StateType Type=default(Efl.Access.StateType),
+      bool New_value=default(bool)   )
+   {
+      this.Type = Type;
+      this.New_value = New_value;
+   }
+public static implicit operator Data(IntPtr ptr)
+   {
+      var tmp = (Data_StructInternal)Marshal.PtrToStructure(ptr, typeof(Data_StructInternal));
+      return Data_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Data.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Data_StructInternal
+{
+   
+   public Efl.Access.StateType Type;
+///<summary>Internal wrapper for field New_value</summary>
+public System.Byte New_value;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Data(Data_StructInternal struct_)
+   {
+      return Data_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Data_StructInternal(Data struct_)
+   {
+      return Data_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Data</summary>
+public static class Data_StructConversion
+{
+   internal static Data_StructInternal ToInternal(Data _external_struct)
+   {
+      var _internal_struct = new Data_StructInternal();
+
+      _internal_struct.Type = _external_struct.Type;
+      _internal_struct.New_value = _external_struct.New_value ? (byte)1 : (byte)0;
+
+      return _internal_struct;
+   }
+
+   internal static Data ToManaged(Data_StructInternal _internal_struct)
+   {
+      var _external_struct = new Data();
+
+      _external_struct.Type = _internal_struct.Type;
+      _external_struct.New_value = _internal_struct.New_value != 0;
+
+      return _external_struct;
+   }
+
+}
+} } } } 
+namespace Efl { namespace Access { namespace Event { namespace GeometryChanged { 
+/// <summary>Accessibility geometry changed event data</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Data
+{
+   /// <summary>X coordinate</summary>
+   public  int X;
+   /// <summary>Y coordinate</summary>
+   public  int Y;
+   /// <summary>Width</summary>
+   public  int Width;
+   /// <summary>Height</summary>
+   public  int Height;
+   ///<summary>Constructor for Data.</summary>
+   public Data(
+       int X=default( int),
+       int Y=default( int),
+       int Width=default( int),
+       int Height=default( int)   )
+   {
+      this.X = X;
+      this.Y = Y;
+      this.Width = Width;
+      this.Height = Height;
+   }
+public static implicit operator Data(IntPtr ptr)
+   {
+      var tmp = (Data_StructInternal)Marshal.PtrToStructure(ptr, typeof(Data_StructInternal));
+      return Data_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Data.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Data_StructInternal
+{
+   
+   public  int X;
+   
+   public  int Y;
+   
+   public  int Width;
+   
+   public  int Height;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Data(Data_StructInternal struct_)
+   {
+      return Data_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Data_StructInternal(Data struct_)
+   {
+      return Data_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Data</summary>
+public static class Data_StructConversion
+{
+   internal static Data_StructInternal ToInternal(Data _external_struct)
+   {
+      var _internal_struct = new Data_StructInternal();
+
+      _internal_struct.X = _external_struct.X;
+      _internal_struct.Y = _external_struct.Y;
+      _internal_struct.Width = _external_struct.Width;
+      _internal_struct.Height = _external_struct.Height;
+
+      return _internal_struct;
+   }
+
+   internal static Data ToManaged(Data_StructInternal _internal_struct)
+   {
+      var _external_struct = new Data();
+
+      _external_struct.X = _internal_struct.X;
+      _external_struct.Y = _internal_struct.Y;
+      _external_struct.Width = _internal_struct.Width;
+      _external_struct.Height = _internal_struct.Height;
+
+      return _external_struct;
+   }
+
+}
+} } } } 
+namespace Efl { namespace Access { namespace Event { namespace ChildrenChanged { 
+/// <summary>Accessibility children changed event data</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Data
+{
+   /// <summary>Child is added or not</summary>
+   public bool Is_added;
+   /// <summary>Child object</summary>
+   public Efl.Object Child;
+   ///<summary>Constructor for Data.</summary>
+   public Data(
+      bool Is_added=default(bool),
+      Efl.Object Child=default(Efl.Object)   )
+   {
+      this.Is_added = Is_added;
+      this.Child = Child;
+   }
+public static implicit operator Data(IntPtr ptr)
+   {
+      var tmp = (Data_StructInternal)Marshal.PtrToStructure(ptr, typeof(Data_StructInternal));
+      return Data_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Data.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Data_StructInternal
+{
+///<summary>Internal wrapper for field Is_added</summary>
+public System.Byte Is_added;
+///<summary>Internal wrapper for field Child</summary>
+public System.IntPtr Child;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Data(Data_StructInternal struct_)
+   {
+      return Data_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Data_StructInternal(Data struct_)
+   {
+      return Data_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Data</summary>
+public static class Data_StructConversion
+{
+   internal static Data_StructInternal ToInternal(Data _external_struct)
+   {
+      var _internal_struct = new Data_StructInternal();
+
+      _internal_struct.Is_added = _external_struct.Is_added ? (byte)1 : (byte)0;
+      _internal_struct.Child = _external_struct.Child.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static Data ToManaged(Data_StructInternal _internal_struct)
+   {
+      var _external_struct = new Data();
+
+      _external_struct.Is_added = _internal_struct.Is_added != 0;
+
+      _external_struct.Child = (Efl.Object) System.Activator.CreateInstance(typeof(Efl.Object), new System.Object[] {_internal_struct.Child});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Child);
+
+
+      return _external_struct;
+   }
+
+}
+} } } } 
+namespace Efl { namespace Access { 
+/// <summary>Accessibility Attribute</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Attribute
+{
+   /// <summary>Attribute key</summary>
+   public  System.String Key;
+   /// <summary>Attribute value</summary>
+   public  System.String Value;
+   ///<summary>Constructor for Attribute.</summary>
+   public Attribute(
+       System.String Key=default( System.String),
+       System.String Value=default( System.String)   )
+   {
+      this.Key = Key;
+      this.Value = Value;
+   }
+public static implicit operator Attribute(IntPtr ptr)
+   {
+      var tmp = (Attribute_StructInternal)Marshal.PtrToStructure(ptr, typeof(Attribute_StructInternal));
+      return Attribute_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Attribute.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Attribute_StructInternal
+{
+///<summary>Internal wrapper for field Key</summary>
+public System.IntPtr Key;
+///<summary>Internal wrapper for field Value</summary>
+public System.IntPtr Value;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Attribute(Attribute_StructInternal struct_)
+   {
+      return Attribute_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Attribute_StructInternal(Attribute struct_)
+   {
+      return Attribute_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Attribute</summary>
+public static class Attribute_StructConversion
+{
+   internal static Attribute_StructInternal ToInternal(Attribute _external_struct)
+   {
+      var _internal_struct = new Attribute_StructInternal();
+
+      _internal_struct.Key = Eina.MemoryNative.StrDup(_external_struct.Key);
+      _internal_struct.Value = Eina.MemoryNative.StrDup(_external_struct.Value);
+
+      return _internal_struct;
+   }
+
+   internal static Attribute ToManaged(Attribute_StructInternal _internal_struct)
+   {
+      var _external_struct = new Attribute();
+
+      _external_struct.Key = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Key);
+      _external_struct.Value = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Value);
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Accessibility Relation</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Relation
+{
+   /// <summary>Relation type</summary>
+   public Efl.Access.RelationType Type;
+   /// <summary>List with relation objects</summary>
+   public Eina.List<Efl.Object> Objects;
+   ///<summary>Constructor for Relation.</summary>
+   public Relation(
+      Efl.Access.RelationType Type=default(Efl.Access.RelationType),
+      Eina.List<Efl.Object> Objects=default(Eina.List<Efl.Object>)   )
+   {
+      this.Type = Type;
+      this.Objects = Objects;
+   }
+public static implicit operator Relation(IntPtr ptr)
+   {
+      var tmp = (Relation_StructInternal)Marshal.PtrToStructure(ptr, typeof(Relation_StructInternal));
+      return Relation_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Relation.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Relation_StructInternal
+{
+   
+   public Efl.Access.RelationType Type;
+   
+   public  System.IntPtr Objects;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Relation(Relation_StructInternal struct_)
+   {
+      return Relation_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Relation_StructInternal(Relation struct_)
+   {
+      return Relation_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Relation</summary>
+public static class Relation_StructConversion
+{
+   internal static Relation_StructInternal ToInternal(Relation _external_struct)
+   {
+      var _internal_struct = new Relation_StructInternal();
+
+      _internal_struct.Type = _external_struct.Type;
+      _internal_struct.Objects = _external_struct.Objects.Handle;
+
+      return _internal_struct;
+   }
+
+   internal static Relation ToManaged(Relation_StructInternal _internal_struct)
+   {
+      var _external_struct = new Relation();
+
+      _external_struct.Type = _internal_struct.Type;
+      _external_struct.Objects = new Eina.List<Efl.Object>(_internal_struct.Objects, false, false);
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct GestureInfo
+{
+   /// <summary>Gesture type</summary>
+   public Efl.Access.Gesture Type;
+   /// <summary>start gesture x co-ordinate</summary>
+   public  int X_beg;
+   /// <summary>start gesture y co-ordinate</summary>
+   public  int Y_beg;
+   /// <summary>end gesture x co-ordinate</summary>
+   public  int X_end;
+   /// <summary>end gesture y co-ordinate</summary>
+   public  int Y_end;
+   /// <summary>state of gesture</summary>
+   public Efl.Access.GestureState State;
+   /// <summary>gesture occurance time</summary>
+   public  uint Event_time;
+   ///<summary>Constructor for GestureInfo.</summary>
+   public GestureInfo(
+      Efl.Access.Gesture Type=default(Efl.Access.Gesture),
+       int X_beg=default( int),
+       int Y_beg=default( int),
+       int X_end=default( int),
+       int Y_end=default( int),
+      Efl.Access.GestureState State=default(Efl.Access.GestureState),
+       uint Event_time=default( uint)   )
+   {
+      this.Type = Type;
+      this.X_beg = X_beg;
+      this.Y_beg = Y_beg;
+      this.X_end = X_end;
+      this.Y_end = Y_end;
+      this.State = State;
+      this.Event_time = Event_time;
+   }
+public static implicit operator GestureInfo(IntPtr ptr)
+   {
+      var tmp = (GestureInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(GestureInfo_StructInternal));
+      return GestureInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct GestureInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct GestureInfo_StructInternal
+{
+   
+   public Efl.Access.Gesture Type;
+   
+   public  int X_beg;
+   
+   public  int Y_beg;
+   
+   public  int X_end;
+   
+   public  int Y_end;
+   
+   public Efl.Access.GestureState State;
+   
+   public  uint Event_time;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator GestureInfo(GestureInfo_StructInternal struct_)
+   {
+      return GestureInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator GestureInfo_StructInternal(GestureInfo struct_)
+   {
+      return GestureInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct GestureInfo</summary>
+public static class GestureInfo_StructConversion
+{
+   internal static GestureInfo_StructInternal ToInternal(GestureInfo _external_struct)
+   {
+      var _internal_struct = new GestureInfo_StructInternal();
+
+      _internal_struct.Type = _external_struct.Type;
+      _internal_struct.X_beg = _external_struct.X_beg;
+      _internal_struct.Y_beg = _external_struct.Y_beg;
+      _internal_struct.X_end = _external_struct.X_end;
+      _internal_struct.Y_end = _external_struct.Y_end;
+      _internal_struct.State = _external_struct.State;
+      _internal_struct.Event_time = _external_struct.Event_time;
+
+      return _internal_struct;
+   }
+
+   internal static GestureInfo ToManaged(GestureInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new GestureInfo();
+
+      _external_struct.Type = _internal_struct.Type;
+      _external_struct.X_beg = _internal_struct.X_beg;
+      _external_struct.Y_beg = _internal_struct.Y_beg;
+      _external_struct.X_end = _internal_struct.X_end;
+      _external_struct.Y_end = _internal_struct.Y_end;
+      _external_struct.State = _internal_struct.State;
+      _external_struct.Event_time = _internal_struct.Event_time;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_selection.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_selection.eo.cs
new file mode 100755 (executable)
index 0000000..e5b8972
--- /dev/null
@@ -0,0 +1,523 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { 
+/// <summary>Elementary access selection interface</summary>
+[SelectionNativeInherit]
+public interface Selection : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets the number of currently selected children</summary>
+/// <returns>Number of currently selected children</returns>
+ int GetSelectedChildrenCount();
+   /// <summary>Gets child for given child index</summary>
+/// <param name="selected_child_index">Index of child</param>
+/// <returns>Child object</returns>
+Efl.Object GetSelectedChild(  int selected_child_index);
+   /// <summary>Adds selection for given child index</summary>
+/// <param name="child_index">Index of child</param>
+/// <returns><c>true</c> if selection was added, <c>false</c> otherwise</returns>
+bool ChildSelect(  int child_index);
+   /// <summary>Removes selection for given child index</summary>
+/// <param name="child_index">Index of child</param>
+/// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+bool SelectedChildDeselect(  int child_index);
+   /// <summary>Determines if child specified by index is selected</summary>
+/// <param name="child_index">Index of child</param>
+/// <returns><c>true</c> if child is selected, <c>false</c> otherwise</returns>
+bool IsChildSelected(  int child_index);
+   /// <summary>Adds selection for all children</summary>
+/// <returns><c>true</c> if selection was added to all children, <c>false</c> otherwise</returns>
+bool AllChildrenSelect();
+   /// <summary>Clears the current selection</summary>
+/// <returns><c>true</c> if selection was cleared, <c>false</c> otherwise</returns>
+bool ClearAccessSelection();
+   /// <summary>Removes selection for given child index</summary>
+/// <param name="child_index">Index of child</param>
+/// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+bool ChildDeselect(  int child_index);
+                           /// <summary>Called when selection has been changed.</summary>
+   event EventHandler SelectionChangedEvt;
+   /// <summary>Gets the number of currently selected children</summary>
+/// <value>Number of currently selected children</value>
+    int SelectedChildrenCount {
+      get ;
+   }
+}
+/// <summary>Elementary access selection interface</summary>
+sealed public class SelectionConcrete : 
+
+Selection
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SelectionConcrete))
+            return Efl.Access.SelectionNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_selection_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SelectionConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~SelectionConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static SelectionConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SelectionConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection has been changed.</summary>
+   public event EventHandler SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionChangedEvt.</summary>
+   public void On_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionChangedEvt_delegate;
+   private void on_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_SelectionChangedEvt_delegate = new Efl.EventCb(on_SelectionChangedEvt_NativeCallback);
+   }
+   /// <summary>Gets the number of currently selected children</summary>
+   /// <returns>Number of currently selected children</returns>
+   public  int GetSelectedChildrenCount() {
+       var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_selected_children_count_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets child for given child index</summary>
+   /// <param name="selected_child_index">Index of child</param>
+   /// <returns>Child object</returns>
+   public Efl.Object GetSelectedChild(  int selected_child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_selected_child_get_ptr.Value.Delegate(this.NativeHandle, selected_child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds selection for given child index</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if selection was added, <c>false</c> otherwise</returns>
+   public bool ChildSelect(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_child_select_ptr.Value.Delegate(this.NativeHandle, child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Removes selection for given child index</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+   public bool SelectedChildDeselect(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_selected_child_deselect_ptr.Value.Delegate(this.NativeHandle, child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Determines if child specified by index is selected</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if child is selected, <c>false</c> otherwise</returns>
+   public bool IsChildSelected(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_is_child_selected_ptr.Value.Delegate(this.NativeHandle, child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds selection for all children</summary>
+   /// <returns><c>true</c> if selection was added to all children, <c>false</c> otherwise</returns>
+   public bool AllChildrenSelect() {
+       var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_all_children_select_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Clears the current selection</summary>
+   /// <returns><c>true</c> if selection was cleared, <c>false</c> otherwise</returns>
+   public bool ClearAccessSelection() {
+       var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes selection for given child index</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+   public bool ChildDeselect(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_child_deselect_ptr.Value.Delegate(this.NativeHandle, child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the number of currently selected children</summary>
+/// <value>Number of currently selected children</value>
+   public  int SelectedChildrenCount {
+      get { return GetSelectedChildrenCount(); }
+   }
+}
+public class SelectionNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_selection_selected_children_count_get_static_delegate == null)
+      efl_access_selection_selected_children_count_get_static_delegate = new efl_access_selection_selected_children_count_get_delegate(selected_children_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_selected_children_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_selected_children_count_get_static_delegate)});
+      if (efl_access_selection_selected_child_get_static_delegate == null)
+      efl_access_selection_selected_child_get_static_delegate = new efl_access_selection_selected_child_get_delegate(selected_child_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_selected_child_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_selected_child_get_static_delegate)});
+      if (efl_access_selection_child_select_static_delegate == null)
+      efl_access_selection_child_select_static_delegate = new efl_access_selection_child_select_delegate(child_select);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_child_select"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_child_select_static_delegate)});
+      if (efl_access_selection_selected_child_deselect_static_delegate == null)
+      efl_access_selection_selected_child_deselect_static_delegate = new efl_access_selection_selected_child_deselect_delegate(selected_child_deselect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_selected_child_deselect"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_selected_child_deselect_static_delegate)});
+      if (efl_access_selection_is_child_selected_static_delegate == null)
+      efl_access_selection_is_child_selected_static_delegate = new efl_access_selection_is_child_selected_delegate(is_child_selected);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_is_child_selected"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_is_child_selected_static_delegate)});
+      if (efl_access_selection_all_children_select_static_delegate == null)
+      efl_access_selection_all_children_select_static_delegate = new efl_access_selection_all_children_select_delegate(all_children_select);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_all_children_select"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_all_children_select_static_delegate)});
+      if (efl_access_selection_clear_static_delegate == null)
+      efl_access_selection_clear_static_delegate = new efl_access_selection_clear_delegate(access_selection_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_clear_static_delegate)});
+      if (efl_access_selection_child_deselect_static_delegate == null)
+      efl_access_selection_child_deselect_static_delegate = new efl_access_selection_child_deselect_delegate(child_deselect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_child_deselect"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_child_deselect_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.SelectionConcrete.efl_access_selection_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.SelectionConcrete.efl_access_selection_interface_get();
+   }
+
+
+    private delegate  int efl_access_selection_selected_children_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_selection_selected_children_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_selected_children_count_get_api_delegate> efl_access_selection_selected_children_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_selected_children_count_get_api_delegate>(_Module, "efl_access_selection_selected_children_count_get");
+    private static  int selected_children_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_selection_selected_children_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Selection)wrapper).GetSelectedChildrenCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_selection_selected_children_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_selection_selected_children_count_get_delegate efl_access_selection_selected_children_count_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_selection_selected_child_get_delegate(System.IntPtr obj, System.IntPtr pd,    int selected_child_index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_selection_selected_child_get_api_delegate(System.IntPtr obj,    int selected_child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_get_api_delegate> efl_access_selection_selected_child_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_get_api_delegate>(_Module, "efl_access_selection_selected_child_get");
+    private static Efl.Object selected_child_get(System.IntPtr obj, System.IntPtr pd,   int selected_child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_selected_child_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Selection)wrapper).GetSelectedChild( selected_child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_selected_child_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selected_child_index);
+      }
+   }
+   private static efl_access_selection_selected_child_get_delegate efl_access_selection_selected_child_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_child_select_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_child_select_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_child_select_api_delegate> efl_access_selection_child_select_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_child_select_api_delegate>(_Module, "efl_access_selection_child_select");
+    private static bool child_select(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_child_select was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Selection)wrapper).ChildSelect( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_child_select_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_child_select_delegate efl_access_selection_child_select_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_selected_child_deselect_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_selected_child_deselect_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_deselect_api_delegate> efl_access_selection_selected_child_deselect_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_deselect_api_delegate>(_Module, "efl_access_selection_selected_child_deselect");
+    private static bool selected_child_deselect(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_selected_child_deselect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Selection)wrapper).SelectedChildDeselect( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_selected_child_deselect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_selected_child_deselect_delegate efl_access_selection_selected_child_deselect_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_is_child_selected_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_is_child_selected_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_is_child_selected_api_delegate> efl_access_selection_is_child_selected_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_is_child_selected_api_delegate>(_Module, "efl_access_selection_is_child_selected");
+    private static bool is_child_selected(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_is_child_selected was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Selection)wrapper).IsChildSelected( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_is_child_selected_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_is_child_selected_delegate efl_access_selection_is_child_selected_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_all_children_select_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_all_children_select_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_all_children_select_api_delegate> efl_access_selection_all_children_select_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_all_children_select_api_delegate>(_Module, "efl_access_selection_all_children_select");
+    private static bool all_children_select(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_selection_all_children_select was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Selection)wrapper).AllChildrenSelect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_selection_all_children_select_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_selection_all_children_select_delegate efl_access_selection_all_children_select_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_clear_api_delegate> efl_access_selection_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_clear_api_delegate>(_Module, "efl_access_selection_clear");
+    private static bool access_selection_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_selection_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Selection)wrapper).ClearAccessSelection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_selection_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_selection_clear_delegate efl_access_selection_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_child_deselect_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_child_deselect_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_child_deselect_api_delegate> efl_access_selection_child_deselect_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_child_deselect_api_delegate>(_Module, "efl_access_selection_child_deselect");
+    private static bool child_deselect(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_child_deselect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Selection)wrapper).ChildDeselect( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_child_deselect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_child_deselect_delegate efl_access_selection_child_deselect_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_text.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_text.eo.cs
new file mode 100755 (executable)
index 0000000..b57a609
--- /dev/null
@@ -0,0 +1,1425 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { 
+/// <summary>Elementary accessible text interface</summary>
+[TextNativeInherit]
+public interface Text : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets single character present in accessible widget&apos;s text at given offset.</summary>
+/// <param name="offset">Position in text.</param>
+/// <returns>Character at offset. 0 when out-of bounds offset has been given. Codepoints between DC80 and DCFF indicates that string includes invalid UTF8 chars.</returns>
+Eina.Unicode GetCharacter(  int offset);
+   /// <summary>Gets string, start and end offset in text according to given initial offset and granularity.</summary>
+/// <param name="granularity">Text granularity</param>
+/// <param name="start_offset">Offset indicating start of string according to given granularity.  -1 in case of error.</param>
+/// <param name="end_offset">Offset indicating end of string according to given granularity. -1 in case of error.</param>
+/// <returns>Newly allocated UTF-8 encoded string. Must be free by a user.</returns>
+ System.String GetString( Efl.Access.TextGranularity granularity,   int start_offset,   int end_offset);
+   /// <summary>Gets text of accessible widget.</summary>
+/// <param name="start_offset">Position in text.</param>
+/// <param name="end_offset">End offset of text.</param>
+/// <returns>UTF-8 encoded text.</returns>
+ System.String GetAccessText(  int start_offset,   int end_offset);
+   /// <summary>Gets offset position of caret (cursor)</summary>
+/// <returns>Offset</returns>
+ int GetCaretOffset();
+   /// <summary>Caret offset property</summary>
+/// <param name="offset">Offset</param>
+/// <returns><c>true</c> if caret was successfully moved, <c>false</c> otherwise.</returns>
+bool SetCaretOffset(  int offset);
+   /// <summary>Indicate if a text attribute with a given name is set</summary>
+/// <param name="name">Text attribute name</param>
+/// <param name="start_offset">Position in text from which given attribute is set.</param>
+/// <param name="end_offset">Position in text to which given attribute is set.</param>
+/// <param name="value">Value of text attribute. Should be free()</param>
+/// <returns><c>true</c> if attribute name is set, <c>false</c> otherwise</returns>
+bool GetAttribute(  System.String name,   int start_offset,   int end_offset,  out  System.String value);
+   /// <summary>Gets list of all text attributes.</summary>
+/// <param name="start_offset">Start offset</param>
+/// <param name="end_offset">End offset</param>
+/// <returns>List of text attributes</returns>
+Eina.List<Efl.Access.TextAttribute> GetTextAttributes(  int start_offset,   int end_offset);
+   /// <summary>Default attributes</summary>
+/// <returns>List of default attributes</returns>
+Eina.List<Efl.Access.TextAttribute> GetDefaultAttributes();
+   /// <summary>Character extents</summary>
+/// <param name="offset">Offset</param>
+/// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <param name="rect">Extents rectangle</param>
+/// <returns><c>true</c> if character extents, <c>false</c> otherwise</returns>
+bool GetCharacterExtents(  int offset,  bool screen_coords,  out Eina.Rect rect);
+   /// <summary>Character count</summary>
+/// <returns>Character count</returns>
+ int GetCharacterCount();
+   /// <summary>Offset at given point</summary>
+/// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns>Offset</returns>
+ int GetOffsetAtPoint( bool screen_coords,   int x,   int y);
+   /// <summary>Bounded ranges</summary>
+/// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <param name="rect">Bounding box</param>
+/// <param name="xclip">xclip</param>
+/// <param name="yclip">yclip</param>
+/// <returns>List of ranges</returns>
+Eina.List<Efl.Access.TextRange> GetBoundedRanges( bool screen_coords,  Eina.Rect rect,  Efl.Access.TextClipType xclip,  Efl.Access.TextClipType yclip);
+   /// <summary>Range extents</summary>
+/// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+/// <param name="start_offset">Start offset</param>
+/// <param name="end_offset">End offset</param>
+/// <param name="rect">Range rectangle</param>
+/// <returns><c>true</c> if range extents, <c>false</c> otherwise</returns>
+bool GetRangeExtents( bool screen_coords,   int start_offset,   int end_offset,  out Eina.Rect rect);
+   /// <summary>Selection count property</summary>
+/// <returns>Selection counter</returns>
+ int GetSelectionsCount();
+   /// <summary>Selection property</summary>
+/// <param name="selection_number">Selection number for identification</param>
+/// <param name="start_offset">Selection start offset</param>
+/// <param name="end_offset">Selection end offset</param>
+/// <returns></returns>
+ void GetAccessSelection(  int selection_number,  out  int start_offset,  out  int end_offset);
+   /// <summary>Selection property</summary>
+/// <param name="selection_number">Selection number for identification</param>
+/// <param name="start_offset">Selection start offset</param>
+/// <param name="end_offset">Selection end offset</param>
+/// <returns><c>true</c> if selection was set, <c>false</c> otherwise</returns>
+bool SetAccessSelection(  int selection_number,   int start_offset,   int end_offset);
+   /// <summary>Add selection</summary>
+/// <param name="start_offset">Start selection from this offset</param>
+/// <param name="end_offset">End selection at this offset</param>
+/// <returns><c>true</c> if selection was added, <c>false</c> otherwise</returns>
+bool AddSelection(  int start_offset,   int end_offset);
+   /// <summary>Remove selection</summary>
+/// <param name="selection_number">Selection number to be removed</param>
+/// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+bool SelectionRemove(  int selection_number);
+                                                         /// <summary>Caret moved</summary>
+   event EventHandler AccessTextCaretMovedEvt;
+   /// <summary>Text was inserted</summary>
+   event EventHandler<Efl.Access.TextAccessTextInsertedEvt_Args> AccessTextInsertedEvt;
+   /// <summary>Text was removed</summary>
+   event EventHandler<Efl.Access.TextAccessTextRemovedEvt_Args> AccessTextRemovedEvt;
+   /// <summary>Text selection has changed</summary>
+   event EventHandler AccessTextSelectionChangedEvt;
+   /// <summary>Caret offset property</summary>
+/// <value>Offset</value>
+    int CaretOffset {
+      get ;
+      set ;
+   }
+   /// <summary>Default attributes</summary>
+/// <value>List of default attributes</value>
+   Eina.List<Efl.Access.TextAttribute> DefaultAttributes {
+      get ;
+   }
+   /// <summary>Character count</summary>
+/// <value>Character count</value>
+    int CharacterCount {
+      get ;
+   }
+   /// <summary>Selection count property</summary>
+/// <value>Selection counter</value>
+    int SelectionsCount {
+      get ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Access.Text.AccessTextInsertedEvt"/>.</summary>
+public class TextAccessTextInsertedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Access.TextChangeInfo arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Access.Text.AccessTextRemovedEvt"/>.</summary>
+public class TextAccessTextRemovedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Access.TextChangeInfo arg { get; set; }
+}
+/// <summary>Elementary accessible text interface</summary>
+sealed public class TextConcrete : 
+
+Text
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextConcrete))
+            return Efl.Access.TextNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_text_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object AccessTextCaretMovedEvtKey = new object();
+   /// <summary>Caret moved</summary>
+   public event EventHandler AccessTextCaretMovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextCaretMovedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextCaretMovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextCaretMovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextCaretMovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextCaretMovedEvt.</summary>
+   public void On_AccessTextCaretMovedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AccessTextCaretMovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextCaretMovedEvt_delegate;
+   private void on_AccessTextCaretMovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AccessTextCaretMovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessTextInsertedEvtKey = new object();
+   /// <summary>Text was inserted</summary>
+   public event EventHandler<Efl.Access.TextAccessTextInsertedEvt_Args> AccessTextInsertedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_INSERTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextInsertedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextInsertedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_INSERTED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextInsertedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextInsertedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextInsertedEvt.</summary>
+   public void On_AccessTextInsertedEvt(Efl.Access.TextAccessTextInsertedEvt_Args e)
+   {
+      EventHandler<Efl.Access.TextAccessTextInsertedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.TextAccessTextInsertedEvt_Args>)eventHandlers[AccessTextInsertedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextInsertedEvt_delegate;
+   private void on_AccessTextInsertedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.TextAccessTextInsertedEvt_Args args = new Efl.Access.TextAccessTextInsertedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_AccessTextInsertedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessTextRemovedEvtKey = new object();
+   /// <summary>Text was removed</summary>
+   public event EventHandler<Efl.Access.TextAccessTextRemovedEvt_Args> AccessTextRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextRemovedEvt.</summary>
+   public void On_AccessTextRemovedEvt(Efl.Access.TextAccessTextRemovedEvt_Args e)
+   {
+      EventHandler<Efl.Access.TextAccessTextRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.TextAccessTextRemovedEvt_Args>)eventHandlers[AccessTextRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextRemovedEvt_delegate;
+   private void on_AccessTextRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.TextAccessTextRemovedEvt_Args args = new Efl.Access.TextAccessTextRemovedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_AccessTextRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessTextSelectionChangedEvtKey = new object();
+   /// <summary>Text selection has changed</summary>
+   public event EventHandler AccessTextSelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextSelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextSelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextSelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextSelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextSelectionChangedEvt.</summary>
+   public void On_AccessTextSelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AccessTextSelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextSelectionChangedEvt_delegate;
+   private void on_AccessTextSelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AccessTextSelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_AccessTextCaretMovedEvt_delegate = new Efl.EventCb(on_AccessTextCaretMovedEvt_NativeCallback);
+      evt_AccessTextInsertedEvt_delegate = new Efl.EventCb(on_AccessTextInsertedEvt_NativeCallback);
+      evt_AccessTextRemovedEvt_delegate = new Efl.EventCb(on_AccessTextRemovedEvt_NativeCallback);
+      evt_AccessTextSelectionChangedEvt_delegate = new Efl.EventCb(on_AccessTextSelectionChangedEvt_NativeCallback);
+   }
+   /// <summary>Gets single character present in accessible widget&apos;s text at given offset.</summary>
+   /// <param name="offset">Position in text.</param>
+   /// <returns>Character at offset. 0 when out-of bounds offset has been given. Codepoints between DC80 and DCFF indicates that string includes invalid UTF8 chars.</returns>
+   public Eina.Unicode GetCharacter(  int offset) {
+                         var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_character_get_ptr.Value.Delegate(this.NativeHandle, offset);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets string, start and end offset in text according to given initial offset and granularity.</summary>
+   /// <param name="granularity">Text granularity</param>
+   /// <param name="start_offset">Offset indicating start of string according to given granularity.  -1 in case of error.</param>
+   /// <param name="end_offset">Offset indicating end of string according to given granularity. -1 in case of error.</param>
+   /// <returns>Newly allocated UTF-8 encoded string. Must be free by a user.</returns>
+   public  System.String GetString( Efl.Access.TextGranularity granularity,   int start_offset,   int end_offset) {
+             var _in_start_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(end_offset);
+                                          var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_string_get_ptr.Value.Delegate(this.NativeHandle, granularity,  _in_start_offset,  _in_end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Gets text of accessible widget.</summary>
+   /// <param name="start_offset">Position in text.</param>
+   /// <param name="end_offset">End offset of text.</param>
+   /// <returns>UTF-8 encoded text.</returns>
+   public  System.String GetAccessText(  int start_offset,   int end_offset) {
+                                           var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_get_ptr.Value.Delegate(this.NativeHandle, start_offset,  end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets offset position of caret (cursor)</summary>
+   /// <returns>Offset</returns>
+   public  int GetCaretOffset() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_caret_offset_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Caret offset property</summary>
+   /// <param name="offset">Offset</param>
+   /// <returns><c>true</c> if caret was successfully moved, <c>false</c> otherwise.</returns>
+   public bool SetCaretOffset(  int offset) {
+                         var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_caret_offset_set_ptr.Value.Delegate(this.NativeHandle, offset);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Indicate if a text attribute with a given name is set</summary>
+   /// <param name="name">Text attribute name</param>
+   /// <param name="start_offset">Position in text from which given attribute is set.</param>
+   /// <param name="end_offset">Position in text to which given attribute is set.</param>
+   /// <param name="value">Value of text attribute. Should be free()</param>
+   /// <returns><c>true</c> if attribute name is set, <c>false</c> otherwise</returns>
+   public bool GetAttribute(  System.String name,   int start_offset,   int end_offset,  out  System.String value) {
+             var _in_start_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(end_offset);
+                                                            var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_attribute_get_ptr.Value.Delegate(this.NativeHandle, name,  _in_start_offset,  _in_end_offset,  out value);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Gets list of all text attributes.</summary>
+   /// <param name="start_offset">Start offset</param>
+   /// <param name="end_offset">End offset</param>
+   /// <returns>List of text attributes</returns>
+   public Eina.List<Efl.Access.TextAttribute> GetTextAttributes(  int start_offset,   int end_offset) {
+       var _in_start_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(end_offset);
+                              var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_attributes_get_ptr.Value.Delegate(this.NativeHandle, _in_start_offset,  _in_end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                              return new Eina.List<Efl.Access.TextAttribute>(_ret_var, true, true);
+ }
+   /// <summary>Default attributes</summary>
+   /// <returns>List of default attributes</returns>
+   public Eina.List<Efl.Access.TextAttribute> GetDefaultAttributes() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_default_attributes_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.TextAttribute>(_ret_var, true, true);
+ }
+   /// <summary>Character extents</summary>
+   /// <param name="offset">Offset</param>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="rect">Extents rectangle</param>
+   /// <returns><c>true</c> if character extents, <c>false</c> otherwise</returns>
+   public bool GetCharacterExtents(  int offset,  bool screen_coords,  out Eina.Rect rect) {
+                                     var _out_rect = new Eina.Rect_StructInternal();
+                        var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_character_extents_get_ptr.Value.Delegate(this.NativeHandle, offset,  screen_coords,  out _out_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                  rect = Eina.Rect_StructConversion.ToManaged(_out_rect);
+                        return _ret_var;
+ }
+   /// <summary>Character count</summary>
+   /// <returns>Character count</returns>
+   public  int GetCharacterCount() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_character_count_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Offset at given point</summary>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns>Offset</returns>
+   public  int GetOffsetAtPoint( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_offset_at_point_get_ptr.Value.Delegate(this.NativeHandle, screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Bounded ranges</summary>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="rect">Bounding box</param>
+   /// <param name="xclip">xclip</param>
+   /// <param name="yclip">yclip</param>
+   /// <returns>List of ranges</returns>
+   public Eina.List<Efl.Access.TextRange> GetBoundedRanges( bool screen_coords,  Eina.Rect rect,  Efl.Access.TextClipType xclip,  Efl.Access.TextClipType yclip) {
+             var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                                                  var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_bounded_ranges_get_ptr.Value.Delegate(this.NativeHandle, screen_coords,  _in_rect,  xclip,  yclip);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return new Eina.List<Efl.Access.TextRange>(_ret_var, true, true);
+ }
+   /// <summary>Range extents</summary>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="start_offset">Start offset</param>
+   /// <param name="end_offset">End offset</param>
+   /// <param name="rect">Range rectangle</param>
+   /// <returns><c>true</c> if range extents, <c>false</c> otherwise</returns>
+   public bool GetRangeExtents( bool screen_coords,   int start_offset,   int end_offset,  out Eina.Rect rect) {
+                                                 var _out_rect = new Eina.Rect_StructInternal();
+                              var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_range_extents_get_ptr.Value.Delegate(this.NativeHandle, screen_coords,  start_offset,  end_offset,  out _out_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                        rect = Eina.Rect_StructConversion.ToManaged(_out_rect);
+                              return _ret_var;
+ }
+   /// <summary>Selection count property</summary>
+   /// <returns>Selection counter</returns>
+   public  int GetSelectionsCount() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_selections_count_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Selection property</summary>
+   /// <param name="selection_number">Selection number for identification</param>
+   /// <param name="start_offset">Selection start offset</param>
+   /// <param name="end_offset">Selection end offset</param>
+   /// <returns></returns>
+   public  void GetAccessSelection(  int selection_number,  out  int start_offset,  out  int end_offset) {
+                                                             Efl.Access.TextNativeInherit.efl_access_text_access_selection_get_ptr.Value.Delegate(this.NativeHandle, selection_number,  out start_offset,  out end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Selection property</summary>
+   /// <param name="selection_number">Selection number for identification</param>
+   /// <param name="start_offset">Selection start offset</param>
+   /// <param name="end_offset">Selection end offset</param>
+   /// <returns><c>true</c> if selection was set, <c>false</c> otherwise</returns>
+   public bool SetAccessSelection(  int selection_number,   int start_offset,   int end_offset) {
+                                                             var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_access_selection_set_ptr.Value.Delegate(this.NativeHandle, selection_number,  start_offset,  end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Add selection</summary>
+   /// <param name="start_offset">Start selection from this offset</param>
+   /// <param name="end_offset">End selection at this offset</param>
+   /// <returns><c>true</c> if selection was added, <c>false</c> otherwise</returns>
+   public bool AddSelection(  int start_offset,   int end_offset) {
+                                           var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_selection_add_ptr.Value.Delegate(this.NativeHandle, start_offset,  end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Remove selection</summary>
+   /// <param name="selection_number">Selection number to be removed</param>
+   /// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+   public bool SelectionRemove(  int selection_number) {
+                         var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_selection_remove_ptr.Value.Delegate(this.NativeHandle, selection_number);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Caret offset property</summary>
+/// <value>Offset</value>
+   public  int CaretOffset {
+      get { return GetCaretOffset(); }
+      set { SetCaretOffset( value); }
+   }
+   /// <summary>Default attributes</summary>
+/// <value>List of default attributes</value>
+   public Eina.List<Efl.Access.TextAttribute> DefaultAttributes {
+      get { return GetDefaultAttributes(); }
+   }
+   /// <summary>Character count</summary>
+/// <value>Character count</value>
+   public  int CharacterCount {
+      get { return GetCharacterCount(); }
+   }
+   /// <summary>Selection count property</summary>
+/// <value>Selection counter</value>
+   public  int SelectionsCount {
+      get { return GetSelectionsCount(); }
+   }
+}
+public class TextNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_text_character_get_static_delegate == null)
+      efl_access_text_character_get_static_delegate = new efl_access_text_character_get_delegate(character_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_character_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_character_get_static_delegate)});
+      if (efl_access_text_string_get_static_delegate == null)
+      efl_access_text_string_get_static_delegate = new efl_access_text_string_get_delegate(string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_string_get_static_delegate)});
+      if (efl_access_text_get_static_delegate == null)
+      efl_access_text_get_static_delegate = new efl_access_text_get_delegate(access_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_get_static_delegate)});
+      if (efl_access_text_caret_offset_get_static_delegate == null)
+      efl_access_text_caret_offset_get_static_delegate = new efl_access_text_caret_offset_get_delegate(caret_offset_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_caret_offset_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_caret_offset_get_static_delegate)});
+      if (efl_access_text_caret_offset_set_static_delegate == null)
+      efl_access_text_caret_offset_set_static_delegate = new efl_access_text_caret_offset_set_delegate(caret_offset_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_caret_offset_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_caret_offset_set_static_delegate)});
+      if (efl_access_text_attribute_get_static_delegate == null)
+      efl_access_text_attribute_get_static_delegate = new efl_access_text_attribute_get_delegate(attribute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_attribute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_attribute_get_static_delegate)});
+      if (efl_access_text_attributes_get_static_delegate == null)
+      efl_access_text_attributes_get_static_delegate = new efl_access_text_attributes_get_delegate(text_attributes_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_attributes_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_attributes_get_static_delegate)});
+      if (efl_access_text_default_attributes_get_static_delegate == null)
+      efl_access_text_default_attributes_get_static_delegate = new efl_access_text_default_attributes_get_delegate(default_attributes_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_default_attributes_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_default_attributes_get_static_delegate)});
+      if (efl_access_text_character_extents_get_static_delegate == null)
+      efl_access_text_character_extents_get_static_delegate = new efl_access_text_character_extents_get_delegate(character_extents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_character_extents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_character_extents_get_static_delegate)});
+      if (efl_access_text_character_count_get_static_delegate == null)
+      efl_access_text_character_count_get_static_delegate = new efl_access_text_character_count_get_delegate(character_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_character_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_character_count_get_static_delegate)});
+      if (efl_access_text_offset_at_point_get_static_delegate == null)
+      efl_access_text_offset_at_point_get_static_delegate = new efl_access_text_offset_at_point_get_delegate(offset_at_point_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_offset_at_point_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_offset_at_point_get_static_delegate)});
+      if (efl_access_text_bounded_ranges_get_static_delegate == null)
+      efl_access_text_bounded_ranges_get_static_delegate = new efl_access_text_bounded_ranges_get_delegate(bounded_ranges_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_bounded_ranges_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_bounded_ranges_get_static_delegate)});
+      if (efl_access_text_range_extents_get_static_delegate == null)
+      efl_access_text_range_extents_get_static_delegate = new efl_access_text_range_extents_get_delegate(range_extents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_range_extents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_range_extents_get_static_delegate)});
+      if (efl_access_text_selections_count_get_static_delegate == null)
+      efl_access_text_selections_count_get_static_delegate = new efl_access_text_selections_count_get_delegate(selections_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_selections_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_selections_count_get_static_delegate)});
+      if (efl_access_text_access_selection_get_static_delegate == null)
+      efl_access_text_access_selection_get_static_delegate = new efl_access_text_access_selection_get_delegate(access_selection_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_access_selection_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_access_selection_get_static_delegate)});
+      if (efl_access_text_access_selection_set_static_delegate == null)
+      efl_access_text_access_selection_set_static_delegate = new efl_access_text_access_selection_set_delegate(access_selection_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_access_selection_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_access_selection_set_static_delegate)});
+      if (efl_access_text_selection_add_static_delegate == null)
+      efl_access_text_selection_add_static_delegate = new efl_access_text_selection_add_delegate(selection_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_selection_add"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_selection_add_static_delegate)});
+      if (efl_access_text_selection_remove_static_delegate == null)
+      efl_access_text_selection_remove_static_delegate = new efl_access_text_selection_remove_delegate(selection_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_selection_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_selection_remove_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.TextConcrete.efl_access_text_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.TextConcrete.efl_access_text_interface_get();
+   }
+
+
+    private delegate Eina.Unicode efl_access_text_character_get_delegate(System.IntPtr obj, System.IntPtr pd,    int offset);
+
+
+    public delegate Eina.Unicode efl_access_text_character_get_api_delegate(System.IntPtr obj,    int offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_character_get_api_delegate> efl_access_text_character_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_character_get_api_delegate>(_Module, "efl_access_text_character_get");
+    private static Eina.Unicode character_get(System.IntPtr obj, System.IntPtr pd,   int offset)
+   {
+      Eina.Log.Debug("function efl_access_text_character_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Unicode _ret_var = default(Eina.Unicode);
+         try {
+            _ret_var = ((Text)wrapper).GetCharacter( offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_text_character_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset);
+      }
+   }
+   private static efl_access_text_character_get_delegate efl_access_text_character_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_text_string_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.TextGranularity granularity,    System.IntPtr start_offset,    System.IntPtr end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_text_string_get_api_delegate(System.IntPtr obj,   Efl.Access.TextGranularity granularity,    System.IntPtr start_offset,    System.IntPtr end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_string_get_api_delegate> efl_access_text_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_string_get_api_delegate>(_Module, "efl_access_text_string_get");
+    private static  System.String string_get(System.IntPtr obj, System.IntPtr pd,  Efl.Access.TextGranularity granularity,   System.IntPtr start_offset,   System.IntPtr end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_start_offset = Eina.PrimitiveConversion.PointerToManaged< int>(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.PointerToManaged< int>(end_offset);
+                                              System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetString( granularity,  _in_start_offset,  _in_end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_text_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  granularity,  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_string_get_delegate efl_access_text_string_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_text_get_delegate(System.IntPtr obj, System.IntPtr pd,    int start_offset,    int end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_text_get_api_delegate(System.IntPtr obj,    int start_offset,    int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_get_api_delegate> efl_access_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_get_api_delegate>(_Module, "efl_access_text_get");
+    private static  System.String access_text_get(System.IntPtr obj, System.IntPtr pd,   int start_offset,   int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetAccessText( start_offset,  end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_get_delegate efl_access_text_get_static_delegate;
+
+
+    private delegate  int efl_access_text_caret_offset_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_text_caret_offset_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_get_api_delegate> efl_access_text_caret_offset_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_get_api_delegate>(_Module, "efl_access_text_caret_offset_get");
+    private static  int caret_offset_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_caret_offset_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetCaretOffset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_text_caret_offset_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_caret_offset_get_delegate efl_access_text_caret_offset_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_caret_offset_set_delegate(System.IntPtr obj, System.IntPtr pd,    int offset);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_caret_offset_set_api_delegate(System.IntPtr obj,    int offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_set_api_delegate> efl_access_text_caret_offset_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_set_api_delegate>(_Module, "efl_access_text_caret_offset_set");
+    private static bool caret_offset_set(System.IntPtr obj, System.IntPtr pd,   int offset)
+   {
+      Eina.Log.Debug("function efl_access_text_caret_offset_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SetCaretOffset( offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_text_caret_offset_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset);
+      }
+   }
+   private static efl_access_text_caret_offset_set_delegate efl_access_text_caret_offset_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_attribute_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,    System.IntPtr start_offset,    System.IntPtr end_offset,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]  out  System.String value);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_attribute_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,    System.IntPtr start_offset,    System.IntPtr end_offset,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]  out  System.String value);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_attribute_get_api_delegate> efl_access_text_attribute_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_attribute_get_api_delegate>(_Module, "efl_access_text_attribute_get");
+    private static bool attribute_get(System.IntPtr obj, System.IntPtr pd,   System.String name,   System.IntPtr start_offset,   System.IntPtr end_offset,  out  System.String value)
+   {
+      Eina.Log.Debug("function efl_access_text_attribute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_start_offset = Eina.PrimitiveConversion.PointerToManaged< int>(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.PointerToManaged< int>(end_offset);
+                              value = default( System.String);                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetAttribute( name,  _in_start_offset,  _in_end_offset,  out value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_access_text_attribute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  start_offset,  end_offset,  out value);
+      }
+   }
+   private static efl_access_text_attribute_get_delegate efl_access_text_attribute_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_text_attributes_get_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr start_offset,    System.IntPtr end_offset);
+
+
+    public delegate  System.IntPtr efl_access_text_attributes_get_api_delegate(System.IntPtr obj,    System.IntPtr start_offset,    System.IntPtr end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_attributes_get_api_delegate> efl_access_text_attributes_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_attributes_get_api_delegate>(_Module, "efl_access_text_attributes_get");
+    private static  System.IntPtr text_attributes_get(System.IntPtr obj, System.IntPtr pd,   System.IntPtr start_offset,   System.IntPtr end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_attributes_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_start_offset = Eina.PrimitiveConversion.PointerToManaged< int>(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.PointerToManaged< int>(end_offset);
+                                 Eina.List<Efl.Access.TextAttribute> _ret_var = default(Eina.List<Efl.Access.TextAttribute>);
+         try {
+            _ret_var = ((Text)wrapper).GetTextAttributes( _in_start_offset,  _in_end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_text_attributes_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_attributes_get_delegate efl_access_text_attributes_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_text_default_attributes_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_text_default_attributes_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_default_attributes_get_api_delegate> efl_access_text_default_attributes_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_default_attributes_get_api_delegate>(_Module, "efl_access_text_default_attributes_get");
+    private static  System.IntPtr default_attributes_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_default_attributes_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.TextAttribute> _ret_var = default(Eina.List<Efl.Access.TextAttribute>);
+         try {
+            _ret_var = ((Text)wrapper).GetDefaultAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_text_default_attributes_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_default_attributes_get_delegate efl_access_text_default_attributes_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_character_extents_get_delegate(System.IntPtr obj, System.IntPtr pd,    int offset,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   out Eina.Rect_StructInternal rect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_character_extents_get_api_delegate(System.IntPtr obj,    int offset,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   out Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_character_extents_get_api_delegate> efl_access_text_character_extents_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_character_extents_get_api_delegate>(_Module, "efl_access_text_character_extents_get");
+    private static bool character_extents_get(System.IntPtr obj, System.IntPtr pd,   int offset,  bool screen_coords,  out Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_access_text_character_extents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                             Eina.Rect _out_rect = default(Eina.Rect);
+                           bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetCharacterExtents( offset,  screen_coords,  out _out_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  rect = Eina.Rect_StructConversion.ToInternal(_out_rect);
+                        return _ret_var;
+      } else {
+         return efl_access_text_character_extents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset,  screen_coords,  out rect);
+      }
+   }
+   private static efl_access_text_character_extents_get_delegate efl_access_text_character_extents_get_static_delegate;
+
+
+    private delegate  int efl_access_text_character_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_text_character_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_character_count_get_api_delegate> efl_access_text_character_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_character_count_get_api_delegate>(_Module, "efl_access_text_character_count_get");
+    private static  int character_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_character_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetCharacterCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_text_character_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_character_count_get_delegate efl_access_text_character_count_get_static_delegate;
+
+
+    private delegate  int efl_access_text_offset_at_point_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+    public delegate  int efl_access_text_offset_at_point_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_offset_at_point_get_api_delegate> efl_access_text_offset_at_point_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_offset_at_point_get_api_delegate>(_Module, "efl_access_text_offset_at_point_get");
+    private static  int offset_at_point_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_text_offset_at_point_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                         int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetOffsetAtPoint( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_text_offset_at_point_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_text_offset_at_point_get_delegate efl_access_text_offset_at_point_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_text_bounded_ranges_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect,   Efl.Access.TextClipType xclip,   Efl.Access.TextClipType yclip);
+
+
+    public delegate  System.IntPtr efl_access_text_bounded_ranges_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect,   Efl.Access.TextClipType xclip,   Efl.Access.TextClipType yclip);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_bounded_ranges_get_api_delegate> efl_access_text_bounded_ranges_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_bounded_ranges_get_api_delegate>(_Module, "efl_access_text_bounded_ranges_get");
+    private static  System.IntPtr bounded_ranges_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,  Eina.Rect_StructInternal rect,  Efl.Access.TextClipType xclip,  Efl.Access.TextClipType yclip)
+   {
+      Eina.Log.Debug("function efl_access_text_bounded_ranges_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                                                     Eina.List<Efl.Access.TextRange> _ret_var = default(Eina.List<Efl.Access.TextRange>);
+         try {
+            _ret_var = ((Text)wrapper).GetBoundedRanges( screen_coords,  _in_rect,  xclip,  yclip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_text_bounded_ranges_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  rect,  xclip,  yclip);
+      }
+   }
+   private static efl_access_text_bounded_ranges_get_delegate efl_access_text_bounded_ranges_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_range_extents_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int start_offset,    int end_offset,   out Eina.Rect_StructInternal rect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_range_extents_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int start_offset,    int end_offset,   out Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_range_extents_get_api_delegate> efl_access_text_range_extents_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_range_extents_get_api_delegate>(_Module, "efl_access_text_range_extents_get");
+    private static bool range_extents_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int start_offset,   int end_offset,  out Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_access_text_range_extents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                         Eina.Rect _out_rect = default(Eina.Rect);
+                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetRangeExtents( screen_coords,  start_offset,  end_offset,  out _out_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        rect = Eina.Rect_StructConversion.ToInternal(_out_rect);
+                              return _ret_var;
+      } else {
+         return efl_access_text_range_extents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  start_offset,  end_offset,  out rect);
+      }
+   }
+   private static efl_access_text_range_extents_get_delegate efl_access_text_range_extents_get_static_delegate;
+
+
+    private delegate  int efl_access_text_selections_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_text_selections_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_selections_count_get_api_delegate> efl_access_text_selections_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_selections_count_get_api_delegate>(_Module, "efl_access_text_selections_count_get");
+    private static  int selections_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_selections_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetSelectionsCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_text_selections_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_selections_count_get_delegate efl_access_text_selections_count_get_static_delegate;
+
+
+    private delegate  void efl_access_text_access_selection_get_delegate(System.IntPtr obj, System.IntPtr pd,    int selection_number,   out  int start_offset,   out  int end_offset);
+
+
+    public delegate  void efl_access_text_access_selection_get_api_delegate(System.IntPtr obj,    int selection_number,   out  int start_offset,   out  int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_access_selection_get_api_delegate> efl_access_text_access_selection_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_access_selection_get_api_delegate>(_Module, "efl_access_text_access_selection_get");
+    private static  void access_selection_get(System.IntPtr obj, System.IntPtr pd,   int selection_number,  out  int start_offset,  out  int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_access_selection_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       start_offset = default( int);      end_offset = default( int);                           
+         try {
+            ((Text)wrapper).GetAccessSelection( selection_number,  out start_offset,  out end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_access_text_access_selection_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selection_number,  out start_offset,  out end_offset);
+      }
+   }
+   private static efl_access_text_access_selection_get_delegate efl_access_text_access_selection_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_access_selection_set_delegate(System.IntPtr obj, System.IntPtr pd,    int selection_number,    int start_offset,    int end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_access_selection_set_api_delegate(System.IntPtr obj,    int selection_number,    int start_offset,    int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_access_selection_set_api_delegate> efl_access_text_access_selection_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_access_selection_set_api_delegate>(_Module, "efl_access_text_access_selection_set");
+    private static bool access_selection_set(System.IntPtr obj, System.IntPtr pd,   int selection_number,   int start_offset,   int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_access_selection_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SetAccessSelection( selection_number,  start_offset,  end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_text_access_selection_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selection_number,  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_access_selection_set_delegate efl_access_text_access_selection_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_selection_add_delegate(System.IntPtr obj, System.IntPtr pd,    int start_offset,    int end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_selection_add_api_delegate(System.IntPtr obj,    int start_offset,    int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_selection_add_api_delegate> efl_access_text_selection_add_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_selection_add_api_delegate>(_Module, "efl_access_text_selection_add");
+    private static bool selection_add(System.IntPtr obj, System.IntPtr pd,   int start_offset,   int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_selection_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).AddSelection( start_offset,  end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_text_selection_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_selection_add_delegate efl_access_text_selection_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_selection_remove_delegate(System.IntPtr obj, System.IntPtr pd,    int selection_number);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_selection_remove_api_delegate(System.IntPtr obj,    int selection_number);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_selection_remove_api_delegate> efl_access_text_selection_remove_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_selection_remove_api_delegate>(_Module, "efl_access_text_selection_remove");
+    private static bool selection_remove(System.IntPtr obj, System.IntPtr pd,   int selection_number)
+   {
+      Eina.Log.Debug("function efl_access_text_selection_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SelectionRemove( selection_number);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_text_selection_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selection_number);
+      }
+   }
+   private static efl_access_text_selection_remove_delegate efl_access_text_selection_remove_static_delegate;
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Text accessibility granularity</summary>
+public enum TextGranularity
+{
+/// <summary>Character granularity</summary>
+Char = 0,
+/// <summary>Word granularity</summary>
+Word = 1,
+/// <summary>Sentence granularity</summary>
+Sentence = 2,
+/// <summary>Line granularity</summary>
+Line = 3,
+/// <summary>Paragraph granularity</summary>
+Paragraph = 4,
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Text clip type</summary>
+public enum TextClipType
+{
+/// <summary>No clip type</summary>
+None = 0,
+/// <summary>Minimum clip type</summary>
+Min = 1,
+/// <summary>Maximum clip type</summary>
+Max = 2,
+/// <summary>Both clip types</summary>
+Both = 3,
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Text attribute</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextAttribute
+{
+   /// <summary>Text attribute name</summary>
+   public  System.String Name;
+   /// <summary>Text attribute value</summary>
+   public  System.String Value;
+   ///<summary>Constructor for TextAttribute.</summary>
+   public TextAttribute(
+       System.String Name=default( System.String),
+       System.String Value=default( System.String)   )
+   {
+      this.Name = Name;
+      this.Value = Value;
+   }
+public static implicit operator TextAttribute(IntPtr ptr)
+   {
+      var tmp = (TextAttribute_StructInternal)Marshal.PtrToStructure(ptr, typeof(TextAttribute_StructInternal));
+      return TextAttribute_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct TextAttribute.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextAttribute_StructInternal
+{
+///<summary>Internal wrapper for field Name</summary>
+public System.IntPtr Name;
+///<summary>Internal wrapper for field Value</summary>
+public System.IntPtr Value;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator TextAttribute(TextAttribute_StructInternal struct_)
+   {
+      return TextAttribute_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator TextAttribute_StructInternal(TextAttribute struct_)
+   {
+      return TextAttribute_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct TextAttribute</summary>
+public static class TextAttribute_StructConversion
+{
+   internal static TextAttribute_StructInternal ToInternal(TextAttribute _external_struct)
+   {
+      var _internal_struct = new TextAttribute_StructInternal();
+
+      _internal_struct.Name = Eina.MemoryNative.StrDup(_external_struct.Name);
+      _internal_struct.Value = Eina.MemoryNative.StrDup(_external_struct.Value);
+
+      return _internal_struct;
+   }
+
+   internal static TextAttribute ToManaged(TextAttribute_StructInternal _internal_struct)
+   {
+      var _external_struct = new TextAttribute();
+
+      _external_struct.Name = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Name);
+      _external_struct.Value = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Value);
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Text range</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextRange
+{
+   /// <summary>Range start offset</summary>
+   public  int Start_offset;
+   /// <summary>Range end offset</summary>
+   public  int End_offset;
+   /// <summary>Range content</summary>
+   public char Content;
+   ///<summary>Constructor for TextRange.</summary>
+   public TextRange(
+       int Start_offset=default( int),
+       int End_offset=default( int),
+      char Content=default(char)   )
+   {
+      this.Start_offset = Start_offset;
+      this.End_offset = End_offset;
+      this.Content = Content;
+   }
+public static implicit operator TextRange(IntPtr ptr)
+   {
+      var tmp = (TextRange_StructInternal)Marshal.PtrToStructure(ptr, typeof(TextRange_StructInternal));
+      return TextRange_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct TextRange.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextRange_StructInternal
+{
+   
+   public  int Start_offset;
+   
+   public  int End_offset;
+   
+   public  System.IntPtr Content;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator TextRange(TextRange_StructInternal struct_)
+   {
+      return TextRange_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator TextRange_StructInternal(TextRange struct_)
+   {
+      return TextRange_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct TextRange</summary>
+public static class TextRange_StructConversion
+{
+   internal static TextRange_StructInternal ToInternal(TextRange _external_struct)
+   {
+      var _internal_struct = new TextRange_StructInternal();
+
+      _internal_struct.Start_offset = _external_struct.Start_offset;
+      _internal_struct.End_offset = _external_struct.End_offset;
+      _internal_struct.Content = Eina.PrimitiveConversion.ManagedToPointerAlloc(_external_struct.Content);
+
+      return _internal_struct;
+   }
+
+   internal static TextRange ToManaged(TextRange_StructInternal _internal_struct)
+   {
+      var _external_struct = new TextRange();
+
+      _external_struct.Start_offset = _internal_struct.Start_offset;
+      _external_struct.End_offset = _internal_struct.End_offset;
+      _external_struct.Content = Eina.PrimitiveConversion.PointerToManaged<char>(_internal_struct.Content);
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Access { 
+/// <summary>Text change information</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextChangeInfo
+{
+   /// <summary>Change content</summary>
+   public  System.String Content;
+   /// <summary><c>true</c> if text got inserted</summary>
+   public bool Inserted;
+   /// <summary>Change position</summary>
+   public  uint Pos;
+   /// <summary>Change length</summary>
+   public  uint Len;
+   ///<summary>Constructor for TextChangeInfo.</summary>
+   public TextChangeInfo(
+       System.String Content=default( System.String),
+      bool Inserted=default(bool),
+       uint Pos=default( uint),
+       uint Len=default( uint)   )
+   {
+      this.Content = Content;
+      this.Inserted = Inserted;
+      this.Pos = Pos;
+      this.Len = Len;
+   }
+public static implicit operator TextChangeInfo(IntPtr ptr)
+   {
+      var tmp = (TextChangeInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(TextChangeInfo_StructInternal));
+      return TextChangeInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct TextChangeInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextChangeInfo_StructInternal
+{
+///<summary>Internal wrapper for field Content</summary>
+public System.IntPtr Content;
+///<summary>Internal wrapper for field Inserted</summary>
+public System.Byte Inserted;
+   
+   public  uint Pos;
+   
+   public  uint Len;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator TextChangeInfo(TextChangeInfo_StructInternal struct_)
+   {
+      return TextChangeInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator TextChangeInfo_StructInternal(TextChangeInfo struct_)
+   {
+      return TextChangeInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct TextChangeInfo</summary>
+public static class TextChangeInfo_StructConversion
+{
+   internal static TextChangeInfo_StructInternal ToInternal(TextChangeInfo _external_struct)
+   {
+      var _internal_struct = new TextChangeInfo_StructInternal();
+
+      _internal_struct.Content = Eina.MemoryNative.StrDup(_external_struct.Content);
+      _internal_struct.Inserted = _external_struct.Inserted ? (byte)1 : (byte)0;
+      _internal_struct.Pos = _external_struct.Pos;
+      _internal_struct.Len = _external_struct.Len;
+
+      return _internal_struct;
+   }
+
+   internal static TextChangeInfo ToManaged(TextChangeInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new TextChangeInfo();
+
+      _external_struct.Content = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Content);
+      _external_struct.Inserted = _internal_struct.Inserted != 0;
+      _external_struct.Pos = _internal_struct.Pos;
+      _external_struct.Len = _internal_struct.Len;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_value.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_value.eo.cs
new file mode 100755 (executable)
index 0000000..bd93b84
--- /dev/null
@@ -0,0 +1,282 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { 
+/// <summary>Elementary Access value interface</summary>
+[ValueNativeInherit]
+public interface Value : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets value displayed by a accessible widget.</summary>
+/// <param name="value">Value of widget casted to floating point number.</param>
+/// <param name="text">string describing value in given context eg. small, enough</param>
+/// <returns></returns>
+ void GetValueAndText( out double value,  out  System.String text);
+   /// <summary>Value and text property</summary>
+/// <param name="value">Value of widget casted to floating point number.</param>
+/// <param name="text">string describing value in given context eg. small, enough</param>
+/// <returns><c>true</c> if setting widgets value has succeeded, otherwise <c>false</c> .</returns>
+bool SetValueAndText( double value,   System.String text);
+   /// <summary>Gets a range of all possible values and its description</summary>
+/// <param name="lower_limit">Lower limit of the range</param>
+/// <param name="upper_limit">Upper limit of the range</param>
+/// <param name="description">Description of the range</param>
+/// <returns></returns>
+ void GetRange( out double lower_limit,  out double upper_limit,  out  System.String description);
+   /// <summary>Gets an minimal incrementation value</summary>
+/// <returns>Minimal incrementation value</returns>
+double GetIncrement();
+               /// <summary>Gets an minimal incrementation value</summary>
+/// <value>Minimal incrementation value</value>
+   double Increment {
+      get ;
+   }
+}
+/// <summary>Elementary Access value interface</summary>
+sealed public class ValueConcrete : 
+
+Value
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ValueConcrete))
+            return Efl.Access.ValueNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_value_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ValueConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ValueConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ValueConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ValueConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Gets value displayed by a accessible widget.</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns></returns>
+   public  void GetValueAndText( out double value,  out  System.String text) {
+                                           Efl.Access.ValueNativeInherit.efl_access_value_and_text_get_ptr.Value.Delegate(this.NativeHandle, out value,  out text);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Value and text property</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns><c>true</c> if setting widgets value has succeeded, otherwise <c>false</c> .</returns>
+   public bool SetValueAndText( double value,   System.String text) {
+                                           var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_and_text_set_ptr.Value.Delegate(this.NativeHandle, value,  text);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets a range of all possible values and its description</summary>
+   /// <param name="lower_limit">Lower limit of the range</param>
+   /// <param name="upper_limit">Upper limit of the range</param>
+   /// <param name="description">Description of the range</param>
+   /// <returns></returns>
+   public  void GetRange( out double lower_limit,  out double upper_limit,  out  System.String description) {
+                                                             Efl.Access.ValueNativeInherit.efl_access_value_range_get_ptr.Value.Delegate(this.NativeHandle, out lower_limit,  out upper_limit,  out description);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Gets an minimal incrementation value</summary>
+   /// <returns>Minimal incrementation value</returns>
+   public double GetIncrement() {
+       var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_increment_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets an minimal incrementation value</summary>
+/// <value>Minimal incrementation value</value>
+   public double Increment {
+      get { return GetIncrement(); }
+   }
+}
+public class ValueNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_value_and_text_get_static_delegate == null)
+      efl_access_value_and_text_get_static_delegate = new efl_access_value_and_text_get_delegate(value_and_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_get_static_delegate)});
+      if (efl_access_value_and_text_set_static_delegate == null)
+      efl_access_value_and_text_set_static_delegate = new efl_access_value_and_text_set_delegate(value_and_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_set_static_delegate)});
+      if (efl_access_value_range_get_static_delegate == null)
+      efl_access_value_range_get_static_delegate = new efl_access_value_range_get_delegate(range_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_range_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_range_get_static_delegate)});
+      if (efl_access_value_increment_get_static_delegate == null)
+      efl_access_value_increment_get_static_delegate = new efl_access_value_increment_get_delegate(increment_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_increment_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_increment_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.ValueConcrete.efl_access_value_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.ValueConcrete.efl_access_value_interface_get();
+   }
+
+
+    private delegate  void efl_access_value_and_text_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+
+
+    public delegate  void efl_access_value_and_text_get_api_delegate(System.IntPtr obj,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate> efl_access_value_and_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate>(_Module, "efl_access_value_and_text_get");
+    private static  void value_and_text_get(System.IntPtr obj, System.IntPtr pd,  out double value,  out  System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           value = default(double);       System.String _out_text = default( System.String);
+                     
+         try {
+            ((Value)wrapper).GetValueAndText( out value,  out _out_text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            text = _out_text;
+                        } else {
+         efl_access_value_and_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out value,  out text);
+      }
+   }
+   private static efl_access_value_and_text_get_delegate efl_access_value_and_text_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_value_and_text_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_value_and_text_set_api_delegate(System.IntPtr obj,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate> efl_access_value_and_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate>(_Module, "efl_access_value_and_text_set");
+    private static bool value_and_text_set(System.IntPtr obj, System.IntPtr pd,  double value,   System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Value)wrapper).SetValueAndText( value,  text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_value_and_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value,  text);
+      }
+   }
+   private static efl_access_value_and_text_set_delegate efl_access_value_and_text_set_static_delegate;
+
+
+    private delegate  void efl_access_value_range_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+
+
+    public delegate  void efl_access_value_range_get_api_delegate(System.IntPtr obj,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate> efl_access_value_range_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate>(_Module, "efl_access_value_range_get");
+    private static  void range_get(System.IntPtr obj, System.IntPtr pd,  out double lower_limit,  out double upper_limit,  out  System.String description)
+   {
+      Eina.Log.Debug("function efl_access_value_range_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 lower_limit = default(double);      upper_limit = default(double);       System.String _out_description = default( System.String);
+                           
+         try {
+            ((Value)wrapper).GetRange( out lower_limit,  out upper_limit,  out _out_description);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  description = _out_description;
+                              } else {
+         efl_access_value_range_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out lower_limit,  out upper_limit,  out description);
+      }
+   }
+   private static efl_access_value_range_get_delegate efl_access_value_range_get_static_delegate;
+
+
+    private delegate double efl_access_value_increment_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_access_value_increment_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate> efl_access_value_increment_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate>(_Module, "efl_access_value_increment_get");
+    private static double increment_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_value_increment_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Value)wrapper).GetIncrement();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_value_increment_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_value_increment_get_delegate efl_access_value_increment_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_widget_action.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_widget_action.eo.cs
new file mode 100755 (executable)
index 0000000..f585e37
--- /dev/null
@@ -0,0 +1,432 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { namespace Widget { 
+/// <summary>Access widget action mixin</summary>
+[ActionNativeInherit]
+public interface Action : 
+   Efl.Access.Action ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Elementary actions</summary>
+/// <returns>NULL-terminated array of Efl.Access.Action_Data.</returns>
+Efl.Access.ActionData GetElmActions();
+      /// <summary></summary>
+   event EventHandler ReadingStateChangedEvt;
+   /// <summary>Elementary actions</summary>
+/// <value>NULL-terminated array of Efl.Access.Action_Data.</value>
+   Efl.Access.ActionData ElmActions {
+      get ;
+   }
+}
+/// <summary>Access widget action mixin</summary>
+sealed public class ActionConcrete : 
+
+Action
+   , Efl.Access.Action
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ActionConcrete))
+            return Efl.Access.Widget.ActionNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_widget_action_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ActionConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ActionConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ActionConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ActionConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ReadingStateChangedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler ReadingStateChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WIDGET_ACTION_EVENT_READING_STATE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ReadingStateChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ReadingStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WIDGET_ACTION_EVENT_READING_STATE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ReadingStateChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ReadingStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ReadingStateChangedEvt.</summary>
+   public void On_ReadingStateChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ReadingStateChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ReadingStateChangedEvt_delegate;
+   private void on_ReadingStateChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ReadingStateChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ReadingStateChangedEvt_delegate = new Efl.EventCb(on_ReadingStateChangedEvt_NativeCallback);
+   }
+   /// <summary>Elementary actions</summary>
+   /// <returns>NULL-terminated array of Efl.Access.Action_Data.</returns>
+   public Efl.Access.ActionData GetElmActions() {
+       var _ret_var = Efl.Access.Widget.ActionNativeInherit.efl_access_widget_action_elm_actions_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets action name for given id</summary>
+   /// <param name="id">ID to get action name for</param>
+   /// <returns>Action name</returns>
+   public  System.String GetActionName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_name_get_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets localized action name for given id</summary>
+   /// <param name="id">ID to get localized name for</param>
+   /// <returns>Localized name</returns>
+   public  System.String GetActionLocalizedName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_localized_name_get_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get list of available widget actions</summary>
+   /// <returns>Contains statically allocated strings.</returns>
+   public Eina.List<Efl.Access.ActionData> GetActions() {
+       var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_actions_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.ActionData>(_ret_var, false, false);
+ }
+   /// <summary>Performs action on given widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns><c>true</c> if action was performed, <c>false</c> otherwise</returns>
+   public bool ActionDo(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_do_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets configured keybinding for specific action and widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns>Should be freed by the user.</returns>
+   public  System.String GetActionKeybinding(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_keybinding_get_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Elementary actions</summary>
+/// <value>NULL-terminated array of Efl.Access.Action_Data.</value>
+   public Efl.Access.ActionData ElmActions {
+      get { return GetElmActions(); }
+   }
+   /// <summary>Get list of available widget actions</summary>
+/// <value>Contains statically allocated strings.</value>
+   public Eina.List<Efl.Access.ActionData> Actions {
+      get { return GetActions(); }
+   }
+}
+public class ActionNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_widget_action_elm_actions_get_static_delegate == null)
+      efl_access_widget_action_elm_actions_get_static_delegate = new efl_access_widget_action_elm_actions_get_delegate(elm_actions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_widget_action_elm_actions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_widget_action_elm_actions_get_static_delegate)});
+      if (efl_access_action_name_get_static_delegate == null)
+      efl_access_action_name_get_static_delegate = new efl_access_action_name_get_delegate(action_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_name_get_static_delegate)});
+      if (efl_access_action_localized_name_get_static_delegate == null)
+      efl_access_action_localized_name_get_static_delegate = new efl_access_action_localized_name_get_delegate(action_localized_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_localized_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_localized_name_get_static_delegate)});
+      if (efl_access_action_actions_get_static_delegate == null)
+      efl_access_action_actions_get_static_delegate = new efl_access_action_actions_get_delegate(actions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_actions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_actions_get_static_delegate)});
+      if (efl_access_action_do_static_delegate == null)
+      efl_access_action_do_static_delegate = new efl_access_action_do_delegate(action_do);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_do"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_do_static_delegate)});
+      if (efl_access_action_keybinding_get_static_delegate == null)
+      efl_access_action_keybinding_get_static_delegate = new efl_access_action_keybinding_get_delegate(action_keybinding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_keybinding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_keybinding_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.Widget.ActionConcrete.efl_access_widget_action_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.Widget.ActionConcrete.efl_access_widget_action_mixin_get();
+   }
+
+
+    private delegate Efl.Access.ActionData efl_access_widget_action_elm_actions_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.ActionData efl_access_widget_action_elm_actions_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_widget_action_elm_actions_get_api_delegate> efl_access_widget_action_elm_actions_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_widget_action_elm_actions_get_api_delegate>(_Module, "efl_access_widget_action_elm_actions_get");
+    private static Efl.Access.ActionData elm_actions_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_widget_action_elm_actions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.ActionData _ret_var = default(Efl.Access.ActionData);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetElmActions();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_widget_action_elm_actions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_widget_action_elm_actions_get_delegate efl_access_widget_action_elm_actions_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate> efl_access_action_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate>(_Module, "efl_access_action_name_get");
+    private static  System.String action_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActionName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_name_get_delegate efl_access_action_name_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_localized_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_localized_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate> efl_access_action_localized_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate>(_Module, "efl_access_action_localized_name_get");
+    private static  System.String action_localized_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_localized_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActionLocalizedName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_localized_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_localized_name_get_delegate efl_access_action_localized_name_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_action_actions_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_action_actions_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate> efl_access_action_actions_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate>(_Module, "efl_access_action_actions_get");
+    private static  System.IntPtr actions_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_action_actions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.ActionData> _ret_var = default(Eina.List<Efl.Access.ActionData>);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActions();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_access_action_actions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_action_actions_get_delegate efl_access_action_actions_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_action_do_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_action_do_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate> efl_access_action_do_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate>(_Module, "efl_access_action_do");
+    private static bool action_do(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_do was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).ActionDo( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_do_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_do_delegate efl_access_action_do_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_action_keybinding_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_action_keybinding_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate> efl_access_action_keybinding_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate>(_Module, "efl_access_action_keybinding_get");
+    private static  System.String action_keybinding_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_keybinding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ActionConcrete)wrapper).GetActionKeybinding( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_keybinding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_keybinding_get_delegate efl_access_action_keybinding_get_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_access_window.eo.cs b/internals/src/EflSharp/EflSharp/efl_access_window.eo.cs
new file mode 100755 (executable)
index 0000000..352263a
--- /dev/null
@@ -0,0 +1,481 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Access { 
+/// <summary>Elementary accessible window interface</summary>
+[WindowNativeInherit]
+public interface Window : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Called when new window has been created.</summary>
+   event EventHandler WindowCreatedEvt;
+   /// <summary>Called when window has been destroyed.</summary>
+   event EventHandler WindowDestroyedEvt;
+   /// <summary>Called when window has been activated. (focused)</summary>
+   event EventHandler WindowActivatedEvt;
+   /// <summary>Called when window has been deactivated (unfocused).</summary>
+   event EventHandler WindowDeactivatedEvt;
+   /// <summary>Called when window has been maximized</summary>
+   event EventHandler WindowMaximizedEvt;
+   /// <summary>Called when window has been minimized</summary>
+   event EventHandler WindowMinimizedEvt;
+   /// <summary>Called when window has been restored</summary>
+   event EventHandler WindowRestoredEvt;
+}
+/// <summary>Elementary accessible window interface</summary>
+sealed public class WindowConcrete : 
+
+Window
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WindowConcrete))
+            return Efl.Access.WindowNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_access_window_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WindowConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~WindowConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static WindowConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WindowConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object WindowCreatedEvtKey = new object();
+   /// <summary>Called when new window has been created.</summary>
+   public event EventHandler WindowCreatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_CREATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowCreatedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowCreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_CREATED";
+            if (remove_cpp_event_handler(key, this.evt_WindowCreatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowCreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowCreatedEvt.</summary>
+   public void On_WindowCreatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowCreatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowCreatedEvt_delegate;
+   private void on_WindowCreatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowCreatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowDestroyedEvtKey = new object();
+   /// <summary>Called when window has been destroyed.</summary>
+   public event EventHandler WindowDestroyedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DESTROYED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowDestroyedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowDestroyedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DESTROYED";
+            if (remove_cpp_event_handler(key, this.evt_WindowDestroyedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowDestroyedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowDestroyedEvt.</summary>
+   public void On_WindowDestroyedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowDestroyedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowDestroyedEvt_delegate;
+   private void on_WindowDestroyedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowDestroyedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowActivatedEvtKey = new object();
+   /// <summary>Called when window has been activated. (focused)</summary>
+   public event EventHandler WindowActivatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_ACTIVATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowActivatedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowActivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_ACTIVATED";
+            if (remove_cpp_event_handler(key, this.evt_WindowActivatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowActivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowActivatedEvt.</summary>
+   public void On_WindowActivatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowActivatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowActivatedEvt_delegate;
+   private void on_WindowActivatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowActivatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowDeactivatedEvtKey = new object();
+   /// <summary>Called when window has been deactivated (unfocused).</summary>
+   public event EventHandler WindowDeactivatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DEACTIVATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowDeactivatedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowDeactivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DEACTIVATED";
+            if (remove_cpp_event_handler(key, this.evt_WindowDeactivatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowDeactivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowDeactivatedEvt.</summary>
+   public void On_WindowDeactivatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowDeactivatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowDeactivatedEvt_delegate;
+   private void on_WindowDeactivatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowDeactivatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowMaximizedEvtKey = new object();
+   /// <summary>Called when window has been maximized</summary>
+   public event EventHandler WindowMaximizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MAXIMIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowMaximizedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowMaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MAXIMIZED";
+            if (remove_cpp_event_handler(key, this.evt_WindowMaximizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowMaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowMaximizedEvt.</summary>
+   public void On_WindowMaximizedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowMaximizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowMaximizedEvt_delegate;
+   private void on_WindowMaximizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowMaximizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowMinimizedEvtKey = new object();
+   /// <summary>Called when window has been minimized</summary>
+   public event EventHandler WindowMinimizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MINIMIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowMinimizedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowMinimizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MINIMIZED";
+            if (remove_cpp_event_handler(key, this.evt_WindowMinimizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowMinimizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowMinimizedEvt.</summary>
+   public void On_WindowMinimizedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowMinimizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowMinimizedEvt_delegate;
+   private void on_WindowMinimizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowMinimizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowRestoredEvtKey = new object();
+   /// <summary>Called when window has been restored</summary>
+   public event EventHandler WindowRestoredEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_RESTORED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowRestoredEvt_delegate)) {
+               eventHandlers.AddHandler(WindowRestoredEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_RESTORED";
+            if (remove_cpp_event_handler(key, this.evt_WindowRestoredEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowRestoredEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowRestoredEvt.</summary>
+   public void On_WindowRestoredEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowRestoredEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowRestoredEvt_delegate;
+   private void on_WindowRestoredEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowRestoredEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_WindowCreatedEvt_delegate = new Efl.EventCb(on_WindowCreatedEvt_NativeCallback);
+      evt_WindowDestroyedEvt_delegate = new Efl.EventCb(on_WindowDestroyedEvt_NativeCallback);
+      evt_WindowActivatedEvt_delegate = new Efl.EventCb(on_WindowActivatedEvt_NativeCallback);
+      evt_WindowDeactivatedEvt_delegate = new Efl.EventCb(on_WindowDeactivatedEvt_NativeCallback);
+      evt_WindowMaximizedEvt_delegate = new Efl.EventCb(on_WindowMaximizedEvt_NativeCallback);
+      evt_WindowMinimizedEvt_delegate = new Efl.EventCb(on_WindowMinimizedEvt_NativeCallback);
+      evt_WindowRestoredEvt_delegate = new Efl.EventCb(on_WindowRestoredEvt_NativeCallback);
+   }
+}
+public class WindowNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Access.WindowConcrete.efl_access_window_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Access.WindowConcrete.efl_access_window_interface_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_all.cs b/internals/src/EflSharp/EflSharp/efl_all.cs
new file mode 100755 (executable)
index 0000000..d8c08d3
--- /dev/null
@@ -0,0 +1,106 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Threading;
+
+using static Efl.UnsafeNativeMethods;
+
+namespace Efl {
+
+static class UnsafeNativeMethods {
+
+    private delegate void init_func_delegate();
+    [DllImport(efl.Libs.Ecore)] public static extern void ecore_init();
+    [DllImport(efl.Libs.Ecore)] public static extern void ecore_shutdown();
+    // dotnet loads libraries from DllImport with RTLD_LOCAL. Due to the
+    // way evas modules are built with meson, currently they do not link directly
+    // with libevas, leading to symbol not found errors when trying to open them.
+    // The call to FunctionWrapper makes sure evas is loaded with RTLD_GLOBAL,
+    // allowing the symbols to remain visible for the modules until the build
+    // is sorted out.
+    private static Efl.Eo.FunctionWrapper<init_func_delegate> _evas_init;
+    [DllImport(efl.Libs.Evas)] public static extern void evas_shutdown();
+    [DllImport(efl.Libs.Elementary)] public static extern int elm_init(int argc, IntPtr argv);
+    [DllImport(efl.Libs.Elementary)] public static extern void elm_policy_set(int policy, int policy_detail);
+    [DllImport(efl.Libs.Elementary)] public static extern void elm_shutdown();
+    [DllImport(efl.Libs.Elementary)] public static extern void elm_run();
+    [DllImport(efl.Libs.Elementary)] public static extern void elm_exit();
+
+    static UnsafeNativeMethods() {
+        _evas_init = new Efl.Eo.FunctionWrapper<init_func_delegate>("evas", "evas_init");
+    }
+    public static void evas_init()
+    {
+        _evas_init.Value.Delegate();
+    }
+}
+
+public enum Components {
+    Basic,
+    Ui
+}
+
+public static class All {
+    private static bool InitializedUi = false;
+
+    public static void Init(Efl.Components components=Components.Basic) {
+        Eina.Config.Init();
+        Efl.Eo.Config.Init();
+        ecore_init();
+        evas_init();
+        eldbus.Config.Init();
+
+        if (components == Components.Ui) {
+            Efl.Ui.Config.Init();
+            InitializedUi = true;
+        }
+    }
+
+    /// <summary>Shutdowns all EFL subsystems.</summary>
+    public static void Shutdown() {
+        // Try to cleanup everything before actually shutting down.
+        System.GC.Collect();
+        System.GC.WaitForPendingFinalizers();
+
+        if (InitializedUi)
+            Efl.Ui.Config.Shutdown();
+        eldbus.Config.Shutdown();
+        evas_shutdown();
+        ecore_shutdown();
+        Efl.Eo.Config.Shutdown();
+        Eina.Config.Shutdown();
+    }
+}
+
+// Placeholder. Will move to elm_config.cs later
+namespace Ui {
+
+public static class Config {
+    public static void Init() {
+        // TODO Support elm command line arguments
+#if WIN32 // Not a native define, we define it in our build system
+        // Ecore_Win32 uses OleInitialize, which requires single thread apartments
+        if (System.Threading.Thread.CurrentThread.GetApartmentState() != ApartmentState.STA)
+            throw new InvalidOperationException("UI Applications require STAThreadAttribute in Main()");
+#endif
+        elm_init(0, IntPtr.Zero);
+
+        elm_policy_set((int)Elm.Policy.Quit, (int)Elm.PolicyQuit.LastWindowHidden);
+    }
+    public static void Shutdown() {
+        elm_shutdown();
+    }
+
+    public static void Run() {
+        elm_run();
+    }
+
+    public static void Exit() {
+        elm_exit();
+    }
+}
+
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/efl_app.eo.cs b/internals/src/EflSharp/EflSharp/efl_app.eo.cs
new file mode 100755 (executable)
index 0000000..735a503
--- /dev/null
@@ -0,0 +1,711 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Object representing the application itself</summary>
+[AppNativeInherit]
+public class App : Efl.Loop, Efl.Eo.IWrapper,Efl.Core.CommandLine
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.AppNativeInherit nativeInherit = new Efl.AppNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (App))
+            return Efl.AppNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_app_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public App(Efl.Object parent= null
+         ) :
+      base(efl_app_class_get(), typeof(App), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public App(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected App(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static App static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new App(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PauseEvtKey = new object();
+   /// <summary>Called when the application is not going be displayed or otherwise used by a user for some time</summary>
+   public event EventHandler PauseEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_PAUSE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_PauseEvt_delegate)) {
+               eventHandlers.AddHandler(PauseEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_PAUSE";
+            if (remove_cpp_event_handler(key, this.evt_PauseEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PauseEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PauseEvt.</summary>
+   public void On_PauseEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PauseEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PauseEvt_delegate;
+   private void on_PauseEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PauseEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ResumeEvtKey = new object();
+   /// <summary>Called before a window is rendered after a pause event</summary>
+   public event EventHandler ResumeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_RESUME";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_ResumeEvt_delegate)) {
+               eventHandlers.AddHandler(ResumeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_RESUME";
+            if (remove_cpp_event_handler(key, this.evt_ResumeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ResumeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ResumeEvt.</summary>
+   public void On_ResumeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ResumeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ResumeEvt_delegate;
+   private void on_ResumeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ResumeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StandbyEvtKey = new object();
+   /// <summary>Called when the application&apos;s windows are all destroyed</summary>
+   public event EventHandler StandbyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_STANDBY";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_StandbyEvt_delegate)) {
+               eventHandlers.AddHandler(StandbyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_STANDBY";
+            if (remove_cpp_event_handler(key, this.evt_StandbyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StandbyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StandbyEvt.</summary>
+   public void On_StandbyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StandbyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StandbyEvt_delegate;
+   private void on_StandbyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StandbyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object TerminateEvtKey = new object();
+   /// <summary>Called before starting the shutdown of the application</summary>
+   public event EventHandler TerminateEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_TERMINATE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_TerminateEvt_delegate)) {
+               eventHandlers.AddHandler(TerminateEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_TERMINATE";
+            if (remove_cpp_event_handler(key, this.evt_TerminateEvt_delegate)) { 
+               eventHandlers.RemoveHandler(TerminateEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event TerminateEvt.</summary>
+   public void On_TerminateEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[TerminateEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_TerminateEvt_delegate;
+   private void on_TerminateEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_TerminateEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SignalUsr1EvtKey = new object();
+   /// <summary>System specific, but on unix maps to SIGUSR1 signal to the process - only called on main loop object</summary>
+   public event EventHandler SignalUsr1Evt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_SIGNAL_USR1";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_SignalUsr1Evt_delegate)) {
+               eventHandlers.AddHandler(SignalUsr1EvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_SIGNAL_USR1";
+            if (remove_cpp_event_handler(key, this.evt_SignalUsr1Evt_delegate)) { 
+               eventHandlers.RemoveHandler(SignalUsr1EvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SignalUsr1Evt.</summary>
+   public void On_SignalUsr1Evt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SignalUsr1EvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SignalUsr1Evt_delegate;
+   private void on_SignalUsr1Evt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SignalUsr1Evt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SignalUsr2EvtKey = new object();
+   /// <summary>System specific, but on unix maps to SIGUSR2 signal to the process - only called on main loop object</summary>
+   public event EventHandler SignalUsr2Evt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_SIGNAL_USR2";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_SignalUsr2Evt_delegate)) {
+               eventHandlers.AddHandler(SignalUsr2EvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_SIGNAL_USR2";
+            if (remove_cpp_event_handler(key, this.evt_SignalUsr2Evt_delegate)) { 
+               eventHandlers.RemoveHandler(SignalUsr2EvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SignalUsr2Evt.</summary>
+   public void On_SignalUsr2Evt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SignalUsr2EvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SignalUsr2Evt_delegate;
+   private void on_SignalUsr2Evt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SignalUsr2Evt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SignalHupEvtKey = new object();
+   /// <summary>System specific, but on unix maps to SIGHUP signal to the process - only called on main loop object</summary>
+   public event EventHandler SignalHupEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_SIGNAL_HUP";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_SignalHupEvt_delegate)) {
+               eventHandlers.AddHandler(SignalHupEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_APP_EVENT_SIGNAL_HUP";
+            if (remove_cpp_event_handler(key, this.evt_SignalHupEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SignalHupEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SignalHupEvt.</summary>
+   public void On_SignalHupEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SignalHupEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SignalHupEvt_delegate;
+   private void on_SignalHupEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SignalHupEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PauseEvt_delegate = new Efl.EventCb(on_PauseEvt_NativeCallback);
+      evt_ResumeEvt_delegate = new Efl.EventCb(on_ResumeEvt_NativeCallback);
+      evt_StandbyEvt_delegate = new Efl.EventCb(on_StandbyEvt_NativeCallback);
+      evt_TerminateEvt_delegate = new Efl.EventCb(on_TerminateEvt_NativeCallback);
+      evt_SignalUsr1Evt_delegate = new Efl.EventCb(on_SignalUsr1Evt_NativeCallback);
+      evt_SignalUsr2Evt_delegate = new Efl.EventCb(on_SignalUsr2Evt_NativeCallback);
+      evt_SignalHupEvt_delegate = new Efl.EventCb(on_SignalHupEvt_NativeCallback);
+   }
+   /// <summary>Returns the app object that is representing this process
+   /// Note: This function call only works in the main loop thread of the process.</summary>
+   /// <returns>Application for this process</returns>
+   public static Efl.App GetAppMain() {
+       var _ret_var = Efl.AppNativeInherit.efl_app_main_get_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates the version of EFL with which this application was compiled against/for.
+   /// This might differ from <see cref="Efl.App.GetEflVersion"/>.</summary>
+   /// <returns>Efl build version</returns>
+   virtual public Efl.Version GetBuildEflVersion() {
+       var _ret_var = Efl.AppNativeInherit.efl_app_build_efl_version_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Version>(_ret_var);
+      
+      return __ret_tmp;
+ }
+   /// <summary>Indicates the currently running version of EFL.
+   /// This might differ from <see cref="Efl.App.GetBuildEflVersion"/>.</summary>
+   /// <returns>Efl version</returns>
+   virtual public Efl.Version GetEflVersion() {
+       var _ret_var = Efl.AppNativeInherit.efl_app_efl_version_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Version>(_ret_var);
+      
+      return __ret_tmp;
+ }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+   /// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+   /// 
+   /// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+   /// 
+   /// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+   /// 
+   /// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+   /// <returns></returns>
+   virtual public  System.String GetCommand() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Use an array to fill this object
+   /// Every element of a string is a argument.</summary>
+   /// <param name="array">An array where every array field is an argument</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandArray( Eina.Array< System.String> array) {
+       var _in_array = array.Handle;
+array.Own = false;
+array.OwnContent = false;
+                  var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_array_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_array);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Use a string to fill this object
+   /// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+   /// <param name="str">A command in form of a string</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandString(  System.String str) {
+                         var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), str);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the accessor which enables access to each argument that got passed to this object.</summary>
+   /// <returns></returns>
+   virtual public Eina.Accessor< System.String> CommandAccess() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_access_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Accessor< System.String>(_ret_var, false, false);
+ }
+   /// <summary>Returns the app object that is representing this process
+/// Note: This function call only works in the main loop thread of the process.</summary>
+/// <value>Application for this process</value>
+   public static Efl.App AppMain {
+      get { return GetAppMain(); }
+   }
+   /// <summary>Indicates the version of EFL with which this application was compiled against/for.
+/// This might differ from <see cref="Efl.App.GetEflVersion"/>.</summary>
+/// <value>Efl build version</value>
+   public Efl.Version BuildEflVersion {
+      get { return GetBuildEflVersion(); }
+   }
+   /// <summary>Indicates the currently running version of EFL.
+/// This might differ from <see cref="Efl.App.GetBuildEflVersion"/>.</summary>
+/// <value>Efl version</value>
+   public Efl.Version EflVersion {
+      get { return GetEflVersion(); }
+   }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+/// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+/// 
+/// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+/// 
+/// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+/// 
+/// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+/// <value></value>
+   public  System.String Command {
+      get { return GetCommand(); }
+   }
+   /// <summary>Use an array to fill this object
+/// Every element of a string is a argument.</summary>
+/// <value>An array where every array field is an argument</value>
+   public Eina.Array< System.String> CommandArray {
+      set { SetCommandArray( value); }
+   }
+   /// <summary>Use a string to fill this object
+/// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+/// <value>A command in form of a string</value>
+   public  System.String CommandString {
+      set { SetCommandString( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.App.efl_app_class_get();
+   }
+}
+public class AppNativeInherit : Efl.LoopNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_app_build_efl_version_get_static_delegate == null)
+      efl_app_build_efl_version_get_static_delegate = new efl_app_build_efl_version_get_delegate(build_efl_version_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_app_build_efl_version_get"), func = Marshal.GetFunctionPointerForDelegate(efl_app_build_efl_version_get_static_delegate)});
+      if (efl_app_efl_version_get_static_delegate == null)
+      efl_app_efl_version_get_static_delegate = new efl_app_efl_version_get_delegate(efl_version_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_app_efl_version_get"), func = Marshal.GetFunctionPointerForDelegate(efl_app_efl_version_get_static_delegate)});
+      if (efl_core_command_line_command_get_static_delegate == null)
+      efl_core_command_line_command_get_static_delegate = new efl_core_command_line_command_get_delegate(command_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_get"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_get_static_delegate)});
+      if (efl_core_command_line_command_array_set_static_delegate == null)
+      efl_core_command_line_command_array_set_static_delegate = new efl_core_command_line_command_array_set_delegate(command_array_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_array_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_array_set_static_delegate)});
+      if (efl_core_command_line_command_string_set_static_delegate == null)
+      efl_core_command_line_command_string_set_static_delegate = new efl_core_command_line_command_string_set_delegate(command_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_string_set_static_delegate)});
+      if (efl_core_command_line_command_access_static_delegate == null)
+      efl_core_command_line_command_access_static_delegate = new efl_core_command_line_command_access_delegate(command_access);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_access"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_access_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.App.efl_app_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.App.efl_app_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.App, Efl.Eo.NonOwnTag>))] private delegate Efl.App efl_app_main_get_delegate();
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.App, Efl.Eo.NonOwnTag>))] public delegate Efl.App efl_app_main_get_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_app_main_get_api_delegate> efl_app_main_get_ptr = new Efl.Eo.FunctionWrapper<efl_app_main_get_api_delegate>(_Module, "efl_app_main_get");
+    private static Efl.App app_main_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_app_main_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.App _ret_var = default(Efl.App);
+         try {
+            _ret_var = App.GetAppMain();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_app_main_get_ptr.Value.Delegate();
+      }
+   }
+
+
+    private delegate  System.IntPtr efl_app_build_efl_version_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_app_build_efl_version_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_app_build_efl_version_get_api_delegate> efl_app_build_efl_version_get_ptr = new Efl.Eo.FunctionWrapper<efl_app_build_efl_version_get_api_delegate>(_Module, "efl_app_build_efl_version_get");
+    private static  System.IntPtr build_efl_version_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_app_build_efl_version_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Version _ret_var = default(Efl.Version);
+         try {
+            _ret_var = ((App)wrapper).GetBuildEflVersion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_app_build_efl_version_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_app_build_efl_version_get_delegate efl_app_build_efl_version_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_app_efl_version_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_app_efl_version_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_app_efl_version_get_api_delegate> efl_app_efl_version_get_ptr = new Efl.Eo.FunctionWrapper<efl_app_efl_version_get_api_delegate>(_Module, "efl_app_efl_version_get");
+    private static  System.IntPtr efl_version_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_app_efl_version_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Version _ret_var = default(Efl.Version);
+         try {
+            _ret_var = ((App)wrapper).GetEflVersion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_app_efl_version_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_app_efl_version_get_delegate efl_app_efl_version_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_core_command_line_command_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_core_command_line_command_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate> efl_core_command_line_command_get_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate>(_Module, "efl_core_command_line_command_get");
+    private static  System.String command_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((App)wrapper).GetCommand();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_core_command_line_command_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_get_delegate efl_core_command_line_command_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_array_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr array);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_array_set_api_delegate(System.IntPtr obj,    System.IntPtr array);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate> efl_core_command_line_command_array_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate>(_Module, "efl_core_command_line_command_array_set");
+    private static bool command_array_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr array)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_array_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_array = new Eina.Array< System.String>(array, true, true);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((App)wrapper).SetCommandArray( _in_array);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_array_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  array);
+      }
+   }
+   private static efl_core_command_line_command_array_set_delegate efl_core_command_line_command_array_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate> efl_core_command_line_command_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate>(_Module, "efl_core_command_line_command_string_set");
+    private static bool command_string_set(System.IntPtr obj, System.IntPtr pd,   System.String str)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((App)wrapper).SetCommandString( str);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  str);
+      }
+   }
+   private static efl_core_command_line_command_string_set_delegate efl_core_command_line_command_string_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_core_command_line_command_access_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_core_command_line_command_access_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate> efl_core_command_line_command_access_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate>(_Module, "efl_core_command_line_command_access");
+    private static  System.IntPtr command_access(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_access was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Accessor< System.String> _ret_var = default(Eina.Accessor< System.String>);
+         try {
+            _ret_var = ((App)wrapper).CommandAccess();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_core_command_line_command_access_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_access_delegate efl_core_command_line_command_access_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_appthread.eo.cs b/internals/src/EflSharp/EflSharp/efl_appthread.eo.cs
new file mode 100755 (executable)
index 0000000..25db696
--- /dev/null
@@ -0,0 +1,1274 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+[AppthreadNativeInherit]
+public class Appthread : Efl.Loop, Efl.Eo.IWrapper,Efl.ThreadIO,Efl.Core.CommandLine,Efl.Io.Closer,Efl.Io.Reader,Efl.Io.Writer
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.AppthreadNativeInherit nativeInherit = new Efl.AppthreadNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Appthread))
+            return Efl.AppthreadNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_appthread_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Appthread(Efl.Object parent= null
+         ) :
+      base(efl_appthread_class_get(), typeof(Appthread), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Appthread(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Appthread(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Appthread static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Appthread(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ClosedEvtKey = new object();
+   /// <summary>Notifies closed, when property is marked as true
+   /// 1.19</summary>
+   public event EventHandler ClosedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClosedEvt_delegate)) {
+               eventHandlers.AddHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (remove_cpp_event_handler(key, this.evt_ClosedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClosedEvt.</summary>
+   public void On_ClosedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClosedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClosedEvt_delegate;
+   private void on_ClosedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClosedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_readChangedEvtKey = new object();
+   /// <summary>Notifies can_read property changed.
+   /// If <see cref="Efl.Io.Reader.CanRead"/> is <c>true</c> there is data to <see cref="Efl.Io.Reader.Read"/> without blocking/error. If <see cref="Efl.Io.Reader.CanRead"/> is <c>false</c>, <see cref="Efl.Io.Reader.Read"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Reader.Read"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> Can_readChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_readChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_readChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_readChangedEvt.</summary>
+   public void On_Can_readChangedEvt(Efl.Io.ReaderCan_readChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args>)eventHandlers[Can_readChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_readChangedEvt_delegate;
+   private void on_Can_readChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.ReaderCan_readChangedEvt_Args args = new Efl.Io.ReaderCan_readChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_readChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EosEvtKey = new object();
+   /// <summary>Notifies end of stream, when property is marked as true.
+   /// If this is used alongside with an <see cref="Efl.Io.Closer"/>, then it should be emitted before that call.
+   /// 
+   /// It should be emitted only once for an object unless it implements <see cref="Efl.Io.Positioner.Seek"/>.
+   /// 
+   /// The property <see cref="Efl.Io.Reader.CanRead"/> should change to <c>false</c> before this event is dispatched.
+   /// 1.19</summary>
+   public event EventHandler EosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EosEvt_delegate)) {
+               eventHandlers.AddHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (remove_cpp_event_handler(key, this.evt_EosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EosEvt.</summary>
+   public void On_EosEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EosEvt_delegate;
+   private void on_EosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_writeChangedEvtKey = new object();
+   /// <summary>Notifies can_write property changed.
+   /// If <see cref="Efl.Io.Writer.CanWrite"/> is <c>true</c> there is data to <see cref="Efl.Io.Writer.Write"/> without blocking/error. If <see cref="Efl.Io.Writer.CanWrite"/> is <c>false</c>, <see cref="Efl.Io.Writer.Write"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Writer.Write"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> Can_writeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_writeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_writeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_writeChangedEvt.</summary>
+   public void On_Can_writeChangedEvt(Efl.Io.WriterCan_writeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args>)eventHandlers[Can_writeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_writeChangedEvt_delegate;
+   private void on_Can_writeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.WriterCan_writeChangedEvt_Args args = new Efl.Io.WriterCan_writeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_writeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ClosedEvt_delegate = new Efl.EventCb(on_ClosedEvt_NativeCallback);
+      evt_Can_readChangedEvt_delegate = new Efl.EventCb(on_Can_readChangedEvt_NativeCallback);
+      evt_EosEvt_delegate = new Efl.EventCb(on_EosEvt_NativeCallback);
+      evt_Can_writeChangedEvt_delegate = new Efl.EventCb(on_Can_writeChangedEvt_NativeCallback);
+   }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   virtual public  System.IntPtr GetIndata() {
+       var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_indata_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="data">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetIndata(  System.IntPtr data) {
+                         Efl.ThreadIONativeInherit.efl_threadio_indata_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   virtual public  System.IntPtr GetOutdata() {
+       var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_outdata_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="data">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetOutdata(  System.IntPtr data) {
+                         Efl.ThreadIONativeInherit.efl_threadio_outdata_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="func">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void Call( EFlThreadIOCall func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.ThreadIONativeInherit.efl_threadio_call_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), EFlThreadIOCallWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="func">No description supplied.</param>
+   /// <returns>No description supplied.</returns>
+   virtual public  System.IntPtr CallSync( EFlThreadIOCallSync func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_call_sync_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), EFlThreadIOCallSyncWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+   /// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+   /// 
+   /// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+   /// 
+   /// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+   /// 
+   /// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+   /// <returns></returns>
+   virtual public  System.String GetCommand() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Use an array to fill this object
+   /// Every element of a string is a argument.</summary>
+   /// <param name="array">An array where every array field is an argument</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandArray( Eina.Array< System.String> array) {
+       var _in_array = array.Handle;
+array.Own = false;
+array.OwnContent = false;
+                  var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_array_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_array);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Use a string to fill this object
+   /// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+   /// <param name="str">A command in form of a string</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandString(  System.String str) {
+                         var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), str);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the accessor which enables access to each argument that got passed to this object.</summary>
+   /// <returns></returns>
+   virtual public Eina.Accessor< System.String> CommandAccess() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_access_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Accessor< System.String>(_ret_var, false, false);
+ }
+   /// <summary>If true will notify object was closed.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if closed, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetClosed() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_closed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close resources on exec() calls.
+   /// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnExec() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c>, will close on exec() call.
+   /// 1.19</summary>
+   /// <param name="close_on_exec"><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns><c>true</c> if could set, <c>false</c> if not supported or failed.
+   /// 1.19</returns>
+   virtual public bool SetCloseOnExec( bool close_on_exec) {
+                         var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_exec);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnInvalidate() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <param name="close_on_invalidate"><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCloseOnInvalidate( bool close_on_invalidate) {
+                         Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_invalidate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Closes the Input/Output object.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as close(2) libc function.
+   /// 1.19</summary>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Close() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanRead() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_read"><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanRead( bool can_read) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_read);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetEos() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_eos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <param name="is_eos"><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEos( bool is_eos) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_eos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_eos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Reads data into a pre-allocated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as read(2) libc function.
+   /// 1.19</summary>
+   /// <param name="rw_slice">Provides a pre-allocated memory to be filled up to rw_slice.len. It will be populated and the length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Read( ref Eina.RwSlice rw_slice) {
+                         var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_read_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref rw_slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanWrite() {
+       var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_can_write_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_write"><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanWrite( bool can_write) {
+                         Efl.Io.WriterNativeInherit.efl_io_writer_can_write_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_write);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Writes data from a pre-populated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as write(2) libc function.
+   /// 1.19</summary>
+   /// <param name="slice">Provides a pre-populated memory to be used up to slice.len. The returned slice will be adapted as length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <param name="remaining">Convenience to output the remaining parts of slice that was not written. If the full slice was written, this will be a slice of zero-length.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Write( ref Eina.Slice slice,  ref Eina.Slice remaining) {
+                                           var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_write_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref slice,  ref remaining);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public  System.IntPtr Indata {
+      get { return GetIndata(); }
+      set { SetIndata( value); }
+   }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public  System.IntPtr Outdata {
+      get { return GetOutdata(); }
+      set { SetOutdata( value); }
+   }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+/// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+/// 
+/// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+/// 
+/// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+/// 
+/// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+/// <value></value>
+   public  System.String Command {
+      get { return GetCommand(); }
+   }
+   /// <summary>Use an array to fill this object
+/// Every element of a string is a argument.</summary>
+/// <value>An array where every array field is an argument</value>
+   public Eina.Array< System.String> CommandArray {
+      set { SetCommandArray( value); }
+   }
+   /// <summary>Use a string to fill this object
+/// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+/// <value>A command in form of a string</value>
+   public  System.String CommandString {
+      set { SetCommandString( value); }
+   }
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <value><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Closed {
+      get { return GetClosed(); }
+   }
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <value><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnExec {
+      get { return GetCloseOnExec(); }
+      set { SetCloseOnExec( value); }
+   }
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <value><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnInvalidate {
+      get { return GetCloseOnInvalidate(); }
+      set { SetCloseOnInvalidate( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanRead {
+      get { return GetCanRead(); }
+      set { SetCanRead( value); }
+   }
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <value><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Eos {
+      get { return GetEos(); }
+      set { SetEos( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanWrite {
+      get { return GetCanWrite(); }
+      set { SetCanWrite( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Appthread.efl_appthread_class_get();
+   }
+}
+public class AppthreadNativeInherit : Efl.LoopNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_threadio_indata_get_static_delegate == null)
+      efl_threadio_indata_get_static_delegate = new efl_threadio_indata_get_delegate(indata_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_indata_get"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_indata_get_static_delegate)});
+      if (efl_threadio_indata_set_static_delegate == null)
+      efl_threadio_indata_set_static_delegate = new efl_threadio_indata_set_delegate(indata_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_indata_set"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_indata_set_static_delegate)});
+      if (efl_threadio_outdata_get_static_delegate == null)
+      efl_threadio_outdata_get_static_delegate = new efl_threadio_outdata_get_delegate(outdata_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_outdata_get"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_outdata_get_static_delegate)});
+      if (efl_threadio_outdata_set_static_delegate == null)
+      efl_threadio_outdata_set_static_delegate = new efl_threadio_outdata_set_delegate(outdata_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_outdata_set"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_outdata_set_static_delegate)});
+      if (efl_threadio_call_static_delegate == null)
+      efl_threadio_call_static_delegate = new efl_threadio_call_delegate(call);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_call"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_call_static_delegate)});
+      if (efl_threadio_call_sync_static_delegate == null)
+      efl_threadio_call_sync_static_delegate = new efl_threadio_call_sync_delegate(call_sync);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_call_sync"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_call_sync_static_delegate)});
+      if (efl_core_command_line_command_get_static_delegate == null)
+      efl_core_command_line_command_get_static_delegate = new efl_core_command_line_command_get_delegate(command_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_get"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_get_static_delegate)});
+      if (efl_core_command_line_command_array_set_static_delegate == null)
+      efl_core_command_line_command_array_set_static_delegate = new efl_core_command_line_command_array_set_delegate(command_array_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_array_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_array_set_static_delegate)});
+      if (efl_core_command_line_command_string_set_static_delegate == null)
+      efl_core_command_line_command_string_set_static_delegate = new efl_core_command_line_command_string_set_delegate(command_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_string_set_static_delegate)});
+      if (efl_core_command_line_command_access_static_delegate == null)
+      efl_core_command_line_command_access_static_delegate = new efl_core_command_line_command_access_delegate(command_access);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_access"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_access_static_delegate)});
+      if (efl_io_closer_closed_get_static_delegate == null)
+      efl_io_closer_closed_get_static_delegate = new efl_io_closer_closed_get_delegate(closed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_closed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_closed_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_get_static_delegate == null)
+      efl_io_closer_close_on_exec_get_static_delegate = new efl_io_closer_close_on_exec_get_delegate(close_on_exec_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_set_static_delegate == null)
+      efl_io_closer_close_on_exec_set_static_delegate = new efl_io_closer_close_on_exec_set_delegate(close_on_exec_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_set_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_get_static_delegate == null)
+      efl_io_closer_close_on_invalidate_get_static_delegate = new efl_io_closer_close_on_invalidate_get_delegate(close_on_invalidate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_get_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_set_static_delegate == null)
+      efl_io_closer_close_on_invalidate_set_static_delegate = new efl_io_closer_close_on_invalidate_set_delegate(close_on_invalidate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_set_static_delegate)});
+      if (efl_io_closer_close_static_delegate == null)
+      efl_io_closer_close_static_delegate = new efl_io_closer_close_delegate(close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_static_delegate)});
+      if (efl_io_reader_can_read_get_static_delegate == null)
+      efl_io_reader_can_read_get_static_delegate = new efl_io_reader_can_read_get_delegate(can_read_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_get_static_delegate)});
+      if (efl_io_reader_can_read_set_static_delegate == null)
+      efl_io_reader_can_read_set_static_delegate = new efl_io_reader_can_read_set_delegate(can_read_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_set_static_delegate)});
+      if (efl_io_reader_eos_get_static_delegate == null)
+      efl_io_reader_eos_get_static_delegate = new efl_io_reader_eos_get_delegate(eos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_get_static_delegate)});
+      if (efl_io_reader_eos_set_static_delegate == null)
+      efl_io_reader_eos_set_static_delegate = new efl_io_reader_eos_set_delegate(eos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_set_static_delegate)});
+      if (efl_io_reader_read_static_delegate == null)
+      efl_io_reader_read_static_delegate = new efl_io_reader_read_delegate(read);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_read"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_read_static_delegate)});
+      if (efl_io_writer_can_write_get_static_delegate == null)
+      efl_io_writer_can_write_get_static_delegate = new efl_io_writer_can_write_get_delegate(can_write_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_get_static_delegate)});
+      if (efl_io_writer_can_write_set_static_delegate == null)
+      efl_io_writer_can_write_set_static_delegate = new efl_io_writer_can_write_set_delegate(can_write_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_set_static_delegate)});
+      if (efl_io_writer_write_static_delegate == null)
+      efl_io_writer_write_static_delegate = new efl_io_writer_write_delegate(write);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_write"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_write_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Appthread.efl_appthread_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Appthread.efl_appthread_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_threadio_indata_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_threadio_indata_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_indata_get_api_delegate> efl_threadio_indata_get_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_indata_get_api_delegate>(_Module, "efl_threadio_indata_get");
+    private static  System.IntPtr indata_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_threadio_indata_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Appthread)wrapper).GetIndata();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_threadio_indata_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_threadio_indata_get_delegate efl_threadio_indata_get_static_delegate;
+
+
+    private delegate  void efl_threadio_indata_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data);
+
+
+    public delegate  void efl_threadio_indata_set_api_delegate(System.IntPtr obj,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_indata_set_api_delegate> efl_threadio_indata_set_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_indata_set_api_delegate>(_Module, "efl_threadio_indata_set");
+    private static  void indata_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_threadio_indata_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Appthread)wrapper).SetIndata( data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_indata_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data);
+      }
+   }
+   private static efl_threadio_indata_set_delegate efl_threadio_indata_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_threadio_outdata_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_threadio_outdata_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_outdata_get_api_delegate> efl_threadio_outdata_get_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_outdata_get_api_delegate>(_Module, "efl_threadio_outdata_get");
+    private static  System.IntPtr outdata_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_threadio_outdata_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Appthread)wrapper).GetOutdata();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_threadio_outdata_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_threadio_outdata_get_delegate efl_threadio_outdata_get_static_delegate;
+
+
+    private delegate  void efl_threadio_outdata_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data);
+
+
+    public delegate  void efl_threadio_outdata_set_api_delegate(System.IntPtr obj,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_outdata_set_api_delegate> efl_threadio_outdata_set_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_outdata_set_api_delegate>(_Module, "efl_threadio_outdata_set");
+    private static  void outdata_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_threadio_outdata_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Appthread)wrapper).SetOutdata( data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_outdata_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data);
+      }
+   }
+   private static efl_threadio_outdata_set_delegate efl_threadio_outdata_set_static_delegate;
+
+
+    private delegate  void efl_threadio_call_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_threadio_call_api_delegate(System.IntPtr obj,  IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_call_api_delegate> efl_threadio_call_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_call_api_delegate>(_Module, "efl_threadio_call");
+    private static  void call(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_threadio_call was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              EFlThreadIOCallWrapper func_wrapper = new EFlThreadIOCallWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((Appthread)wrapper).Call( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_call_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_threadio_call_delegate efl_threadio_call_static_delegate;
+
+
+    private delegate  System.IntPtr efl_threadio_call_sync_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  System.IntPtr efl_threadio_call_sync_api_delegate(System.IntPtr obj,  IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_call_sync_api_delegate> efl_threadio_call_sync_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_call_sync_api_delegate>(_Module, "efl_threadio_call_sync");
+    private static  System.IntPtr call_sync(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_threadio_call_sync was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              EFlThreadIOCallSyncWrapper func_wrapper = new EFlThreadIOCallSyncWrapper(func, func_data, func_free_cb);
+          System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Appthread)wrapper).CallSync( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_threadio_call_sync_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_threadio_call_sync_delegate efl_threadio_call_sync_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_core_command_line_command_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_core_command_line_command_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate> efl_core_command_line_command_get_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate>(_Module, "efl_core_command_line_command_get");
+    private static  System.String command_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Appthread)wrapper).GetCommand();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_core_command_line_command_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_get_delegate efl_core_command_line_command_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_array_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr array);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_array_set_api_delegate(System.IntPtr obj,    System.IntPtr array);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate> efl_core_command_line_command_array_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate>(_Module, "efl_core_command_line_command_array_set");
+    private static bool command_array_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr array)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_array_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_array = new Eina.Array< System.String>(array, true, true);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).SetCommandArray( _in_array);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_array_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  array);
+      }
+   }
+   private static efl_core_command_line_command_array_set_delegate efl_core_command_line_command_array_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate> efl_core_command_line_command_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate>(_Module, "efl_core_command_line_command_string_set");
+    private static bool command_string_set(System.IntPtr obj, System.IntPtr pd,   System.String str)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).SetCommandString( str);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  str);
+      }
+   }
+   private static efl_core_command_line_command_string_set_delegate efl_core_command_line_command_string_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_core_command_line_command_access_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_core_command_line_command_access_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate> efl_core_command_line_command_access_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate>(_Module, "efl_core_command_line_command_access");
+    private static  System.IntPtr command_access(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_access was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Accessor< System.String> _ret_var = default(Eina.Accessor< System.String>);
+         try {
+            _ret_var = ((Appthread)wrapper).CommandAccess();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_core_command_line_command_access_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_access_delegate efl_core_command_line_command_access_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_closed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_closed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate> efl_io_closer_closed_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate>(_Module, "efl_io_closer_closed_get");
+    private static bool closed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_closed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).GetClosed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_closed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_closed_get_delegate efl_io_closer_closed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate> efl_io_closer_close_on_exec_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate>(_Module, "efl_io_closer_close_on_exec_get");
+    private static bool close_on_exec_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).GetCloseOnExec();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_exec_get_delegate efl_io_closer_close_on_exec_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate> efl_io_closer_close_on_exec_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate>(_Module, "efl_io_closer_close_on_exec_set");
+    private static bool close_on_exec_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_exec)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).SetCloseOnExec( close_on_exec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_exec);
+      }
+   }
+   private static efl_io_closer_close_on_exec_set_delegate efl_io_closer_close_on_exec_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_invalidate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_invalidate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate> efl_io_closer_close_on_invalidate_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_get");
+    private static bool close_on_invalidate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).GetCloseOnInvalidate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_get_delegate efl_io_closer_close_on_invalidate_get_static_delegate;
+
+
+    private delegate  void efl_io_closer_close_on_invalidate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+
+
+    public delegate  void efl_io_closer_close_on_invalidate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate> efl_io_closer_close_on_invalidate_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_set");
+    private static  void close_on_invalidate_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_invalidate)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Appthread)wrapper).SetCloseOnInvalidate( close_on_invalidate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_invalidate);
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_set_delegate efl_io_closer_close_on_invalidate_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_closer_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_io_closer_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate> efl_io_closer_close_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate>(_Module, "efl_io_closer_close");
+    private static  Eina.Error close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Appthread)wrapper).Close();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_delegate efl_io_closer_close_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_can_read_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_can_read_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate> efl_io_reader_can_read_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate>(_Module, "efl_io_reader_can_read_get");
+    private static bool can_read_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).GetCanRead();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_can_read_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_can_read_get_delegate efl_io_reader_can_read_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_can_read_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+
+
+    public delegate  void efl_io_reader_can_read_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate> efl_io_reader_can_read_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate>(_Module, "efl_io_reader_can_read_set");
+    private static  void can_read_set(System.IntPtr obj, System.IntPtr pd,  bool can_read)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Appthread)wrapper).SetCanRead( can_read);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_can_read_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_read);
+      }
+   }
+   private static efl_io_reader_can_read_set_delegate efl_io_reader_can_read_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_eos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_eos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate> efl_io_reader_eos_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate>(_Module, "efl_io_reader_eos_get");
+    private static bool eos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).GetEos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_eos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_eos_get_delegate efl_io_reader_eos_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_eos_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+
+
+    public delegate  void efl_io_reader_eos_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate> efl_io_reader_eos_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate>(_Module, "efl_io_reader_eos_set");
+    private static  void eos_set(System.IntPtr obj, System.IntPtr pd,  bool is_eos)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Appthread)wrapper).SetEos( is_eos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_eos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_eos);
+      }
+   }
+   private static efl_io_reader_eos_set_delegate efl_io_reader_eos_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_reader_read_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.RwSlice rw_slice);
+
+
+    public delegate  Eina.Error efl_io_reader_read_api_delegate(System.IntPtr obj,   ref Eina.RwSlice rw_slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate> efl_io_reader_read_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate>(_Module, "efl_io_reader_read");
+    private static  Eina.Error read(System.IntPtr obj, System.IntPtr pd,  ref Eina.RwSlice rw_slice)
+   {
+      Eina.Log.Debug("function efl_io_reader_read was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Appthread)wrapper).Read( ref rw_slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_reader_read_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref rw_slice);
+      }
+   }
+   private static efl_io_reader_read_delegate efl_io_reader_read_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_writer_can_write_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_writer_can_write_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate> efl_io_writer_can_write_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate>(_Module, "efl_io_writer_can_write_get");
+    private static bool can_write_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Appthread)wrapper).GetCanWrite();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_writer_can_write_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_writer_can_write_get_delegate efl_io_writer_can_write_get_static_delegate;
+
+
+    private delegate  void efl_io_writer_can_write_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+
+
+    public delegate  void efl_io_writer_can_write_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate> efl_io_writer_can_write_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate>(_Module, "efl_io_writer_can_write_set");
+    private static  void can_write_set(System.IntPtr obj, System.IntPtr pd,  bool can_write)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Appthread)wrapper).SetCanWrite( can_write);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_writer_can_write_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_write);
+      }
+   }
+   private static efl_io_writer_can_write_set_delegate efl_io_writer_can_write_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_writer_write_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+
+
+    public delegate  Eina.Error efl_io_writer_write_api_delegate(System.IntPtr obj,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate> efl_io_writer_write_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate>(_Module, "efl_io_writer_write");
+    private static  Eina.Error write(System.IntPtr obj, System.IntPtr pd,  ref Eina.Slice slice,  ref Eina.Slice remaining)
+   {
+      Eina.Log.Debug("function efl_io_writer_write was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 remaining = default(Eina.Slice);                      Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Appthread)wrapper).Write( ref slice,  ref remaining);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_writer_write_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref slice,  ref remaining);
+      }
+   }
+   private static efl_io_writer_write_delegate efl_io_writer_write_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_boolean_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_boolean_model.eo.cs
new file mode 100755 (executable)
index 0000000..737b4b0
--- /dev/null
@@ -0,0 +1,166 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl boolean model class</summary>
+[BooleanModelNativeInherit]
+public class BooleanModel : Efl.CompositeModel, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.BooleanModelNativeInherit nativeInherit = new Efl.BooleanModelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (BooleanModel))
+            return Efl.BooleanModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_boolean_model_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="model">Model that is/will be See <see cref="Efl.Ui.View.SetModel"/></param>
+   ///<param name="index">Position of this object in the parent model. See <see cref="Efl.CompositeModel.SetIndex"/></param>
+   public BooleanModel(Efl.Object parent
+         , Efl.Model model,  uint? index = null) :
+      base(efl_boolean_model_class_get(), typeof(BooleanModel), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(model))
+         SetModel(Efl.Eo.Globals.GetParamHelper(model));
+      if (Efl.Eo.Globals.ParamHelperCheck(index))
+         SetIndex(Efl.Eo.Globals.GetParamHelper(index));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public BooleanModel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected BooleanModel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static BooleanModel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new BooleanModel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Add a new named boolean property with a defined default value.</summary>
+   /// <param name="name"></param>
+   /// <param name="default_value"></param>
+   /// <returns></returns>
+   virtual public  void AddBoolean(  System.String name,  bool default_value) {
+                                           Efl.BooleanModelNativeInherit.efl_boolean_model_boolean_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  default_value);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Delete an existing named boolean property</summary>
+   /// <param name="name"></param>
+   /// <returns></returns>
+   virtual public  void DelBoolean(  System.String name) {
+                         Efl.BooleanModelNativeInherit.efl_boolean_model_boolean_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.BooleanModel.efl_boolean_model_class_get();
+   }
+}
+public class BooleanModelNativeInherit : Efl.CompositeModelNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_boolean_model_boolean_add_static_delegate == null)
+      efl_boolean_model_boolean_add_static_delegate = new efl_boolean_model_boolean_add_delegate(boolean_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_boolean_model_boolean_add"), func = Marshal.GetFunctionPointerForDelegate(efl_boolean_model_boolean_add_static_delegate)});
+      if (efl_boolean_model_boolean_del_static_delegate == null)
+      efl_boolean_model_boolean_del_static_delegate = new efl_boolean_model_boolean_del_delegate(boolean_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_boolean_model_boolean_del"), func = Marshal.GetFunctionPointerForDelegate(efl_boolean_model_boolean_del_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.BooleanModel.efl_boolean_model_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.BooleanModel.efl_boolean_model_class_get();
+   }
+
+
+    private delegate  void efl_boolean_model_boolean_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.U1)]  bool default_value);
+
+
+    public delegate  void efl_boolean_model_boolean_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.U1)]  bool default_value);
+    public static Efl.Eo.FunctionWrapper<efl_boolean_model_boolean_add_api_delegate> efl_boolean_model_boolean_add_ptr = new Efl.Eo.FunctionWrapper<efl_boolean_model_boolean_add_api_delegate>(_Module, "efl_boolean_model_boolean_add");
+    private static  void boolean_add(System.IntPtr obj, System.IntPtr pd,   System.String name,  bool default_value)
+   {
+      Eina.Log.Debug("function efl_boolean_model_boolean_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((BooleanModel)wrapper).AddBoolean( name,  default_value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_boolean_model_boolean_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  default_value);
+      }
+   }
+   private static efl_boolean_model_boolean_add_delegate efl_boolean_model_boolean_add_static_delegate;
+
+
+    private delegate  void efl_boolean_model_boolean_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate  void efl_boolean_model_boolean_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_boolean_model_boolean_del_api_delegate> efl_boolean_model_boolean_del_ptr = new Efl.Eo.FunctionWrapper<efl_boolean_model_boolean_del_api_delegate>(_Module, "efl_boolean_model_boolean_del");
+    private static  void boolean_del(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_boolean_model_boolean_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((BooleanModel)wrapper).DelBoolean( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_boolean_model_boolean_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_boolean_model_boolean_del_delegate efl_boolean_model_boolean_del_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_bounce_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_bounce_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..222e700
--- /dev/null
@@ -0,0 +1,197 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl bounce interpolator class</summary>
+[BounceInterpolatorNativeInherit]
+public class BounceInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.BounceInterpolatorNativeInherit nativeInherit = new Efl.BounceInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (BounceInterpolator))
+            return Efl.BounceInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_bounce_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public BounceInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_bounce_interpolator_class_get(), typeof(BounceInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public BounceInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected BounceInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static BounceInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new BounceInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void GetFactors( out double factor1,  out double factor2) {
+                                           Efl.BounceInterpolatorNativeInherit.efl_bounce_interpolator_factors_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out factor1,  out factor2);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void SetFactors( double factor1,  double factor2) {
+                                           Efl.BounceInterpolatorNativeInherit.efl_bounce_interpolator_factors_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factor1,  factor2);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.BounceInterpolator.efl_bounce_interpolator_class_get();
+   }
+}
+public class BounceInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_bounce_interpolator_factors_get_static_delegate == null)
+      efl_bounce_interpolator_factors_get_static_delegate = new efl_bounce_interpolator_factors_get_delegate(factors_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_bounce_interpolator_factors_get"), func = Marshal.GetFunctionPointerForDelegate(efl_bounce_interpolator_factors_get_static_delegate)});
+      if (efl_bounce_interpolator_factors_set_static_delegate == null)
+      efl_bounce_interpolator_factors_set_static_delegate = new efl_bounce_interpolator_factors_set_delegate(factors_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_bounce_interpolator_factors_set"), func = Marshal.GetFunctionPointerForDelegate(efl_bounce_interpolator_factors_set_static_delegate)});
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.BounceInterpolator.efl_bounce_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.BounceInterpolator.efl_bounce_interpolator_class_get();
+   }
+
+
+    private delegate  void efl_bounce_interpolator_factors_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double factor1,   out double factor2);
+
+
+    public delegate  void efl_bounce_interpolator_factors_get_api_delegate(System.IntPtr obj,   out double factor1,   out double factor2);
+    public static Efl.Eo.FunctionWrapper<efl_bounce_interpolator_factors_get_api_delegate> efl_bounce_interpolator_factors_get_ptr = new Efl.Eo.FunctionWrapper<efl_bounce_interpolator_factors_get_api_delegate>(_Module, "efl_bounce_interpolator_factors_get");
+    private static  void factors_get(System.IntPtr obj, System.IntPtr pd,  out double factor1,  out double factor2)
+   {
+      Eina.Log.Debug("function efl_bounce_interpolator_factors_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           factor1 = default(double);      factor2 = default(double);                     
+         try {
+            ((BounceInterpolator)wrapper).GetFactors( out factor1,  out factor2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_bounce_interpolator_factors_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out factor1,  out factor2);
+      }
+   }
+   private static efl_bounce_interpolator_factors_get_delegate efl_bounce_interpolator_factors_get_static_delegate;
+
+
+    private delegate  void efl_bounce_interpolator_factors_set_delegate(System.IntPtr obj, System.IntPtr pd,   double factor1,   double factor2);
+
+
+    public delegate  void efl_bounce_interpolator_factors_set_api_delegate(System.IntPtr obj,   double factor1,   double factor2);
+    public static Efl.Eo.FunctionWrapper<efl_bounce_interpolator_factors_set_api_delegate> efl_bounce_interpolator_factors_set_ptr = new Efl.Eo.FunctionWrapper<efl_bounce_interpolator_factors_set_api_delegate>(_Module, "efl_bounce_interpolator_factors_set");
+    private static  void factors_set(System.IntPtr obj, System.IntPtr pd,  double factor1,  double factor2)
+   {
+      Eina.Log.Debug("function efl_bounce_interpolator_factors_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((BounceInterpolator)wrapper).SetFactors( factor1,  factor2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_bounce_interpolator_factors_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factor1,  factor2);
+      }
+   }
+   private static efl_bounce_interpolator_factors_set_delegate efl_bounce_interpolator_factors_set_static_delegate;
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((BounceInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_cached_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_cached_item.eo.cs
new file mode 100755 (executable)
index 0000000..10600e1
--- /dev/null
@@ -0,0 +1,154 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Cached { 
+/// <summary>Efl Cached Item interface</summary>
+[ItemNativeInherit]
+public interface Item : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get the memory size associated with an object.</summary>
+/// <returns>Bytes of memory consumed by this object.</returns>
+ uint GetMemorySize();
+      /// <summary>Get the memory size associated with an object.</summary>
+/// <value>Bytes of memory consumed by this object.</value>
+    uint MemorySize {
+      get ;
+   }
+}
+/// <summary>Efl Cached Item interface</summary>
+sealed public class ItemConcrete : 
+
+Item
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ItemConcrete))
+            return Efl.Cached.ItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_cached_item_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ItemConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ItemConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ItemConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ItemConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get the memory size associated with an object.</summary>
+   /// <returns>Bytes of memory consumed by this object.</returns>
+   public  uint GetMemorySize() {
+       var _ret_var = Efl.Cached.ItemNativeInherit.efl_cached_item_memory_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the memory size associated with an object.</summary>
+/// <value>Bytes of memory consumed by this object.</value>
+   public  uint MemorySize {
+      get { return GetMemorySize(); }
+   }
+}
+public class ItemNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_cached_item_memory_size_get_static_delegate == null)
+      efl_cached_item_memory_size_get_static_delegate = new efl_cached_item_memory_size_get_delegate(memory_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_cached_item_memory_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_cached_item_memory_size_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Cached.ItemConcrete.efl_cached_item_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Cached.ItemConcrete.efl_cached_item_interface_get();
+   }
+
+
+    private delegate  uint efl_cached_item_memory_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_cached_item_memory_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_cached_item_memory_size_get_api_delegate> efl_cached_item_memory_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_cached_item_memory_size_get_api_delegate>(_Module, "efl_cached_item_memory_size_get");
+    private static  uint memory_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_cached_item_memory_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Item)wrapper).GetMemorySize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_cached_item_memory_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_cached_item_memory_size_get_delegate efl_cached_item_memory_size_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation.eo.cs
new file mode 100755 (executable)
index 0000000..e9aa0e7
--- /dev/null
@@ -0,0 +1,698 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl animation class</summary>
+[AnimationNativeInherit]
+public class Animation : Efl.Object, Efl.Eo.IWrapper,Efl.Playable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationNativeInherit nativeInherit = new Efl.Canvas.AnimationNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Animation))
+            return Efl.Canvas.AnimationNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Animation(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_class_get(), typeof(Animation), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Animation(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Animation(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Animation static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Animation(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Keep final state property</summary>
+   /// <returns><c>true</c> to keep final state, <c>false</c> otherwise.</returns>
+   virtual public bool GetFinalStateKeep() {
+       var _ret_var = Efl.Canvas.AnimationNativeInherit.efl_animation_final_state_keep_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Keep final state property</summary>
+   /// <param name="keep"><c>true</c> to keep final state, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetFinalStateKeep( bool keep) {
+                         Efl.Canvas.AnimationNativeInherit.efl_animation_final_state_keep_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), keep);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Duration property</summary>
+   /// <returns>Duration value.</returns>
+   virtual public double GetDuration() {
+       var _ret_var = Efl.Canvas.AnimationNativeInherit.efl_animation_duration_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Duration property</summary>
+   /// <param name="sec">Duration value.</param>
+   /// <returns></returns>
+   virtual public  void SetDuration( double sec) {
+                         Efl.Canvas.AnimationNativeInherit.efl_animation_duration_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sec);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Repeat mode property</summary>
+   /// <returns>Repeat mode. EFL_ANIMATION_REPEAT_MODE_RESTART restarts animation when the animation ends and EFL_ANIMATION_REPEAT_MODE_REVERSE reverses animation when the animation ends.</returns>
+   virtual public Efl.Canvas.AnimationRepeatMode GetRepeatMode() {
+       var _ret_var = Efl.Canvas.AnimationNativeInherit.efl_animation_repeat_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Repeat mode property</summary>
+   /// <param name="mode">Repeat mode. EFL_ANIMATION_REPEAT_MODE_RESTART restarts animation when the animation ends and EFL_ANIMATION_REPEAT_MODE_REVERSE reverses animation when the animation ends.</param>
+   /// <returns></returns>
+   virtual public  void SetRepeatMode( Efl.Canvas.AnimationRepeatMode mode) {
+                         Efl.Canvas.AnimationNativeInherit.efl_animation_repeat_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Repeat count property</summary>
+   /// <returns>Repeat count. EFL_ANIMATION_REPEAT_INFINITE repeats animation infinitely.</returns>
+   virtual public  int GetRepeatCount() {
+       var _ret_var = Efl.Canvas.AnimationNativeInherit.efl_animation_repeat_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Repeat count property</summary>
+   /// <param name="count">Repeat count. EFL_ANIMATION_REPEAT_INFINITE repeats animation infinitely.</param>
+   /// <returns></returns>
+   virtual public  void SetRepeatCount(  int count) {
+                         Efl.Canvas.AnimationNativeInherit.efl_animation_repeat_count_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), count);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Start delay property</summary>
+   /// <returns>Delay time, in seconds, from when the animation starts until the animation is animated</returns>
+   virtual public double GetStartDelay() {
+       var _ret_var = Efl.Canvas.AnimationNativeInherit.efl_animation_start_delay_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start delay property</summary>
+   /// <param name="sec">Delay time, in seconds, from when the animation starts until the animation is animated</param>
+   /// <returns></returns>
+   virtual public  void SetStartDelay( double sec) {
+                         Efl.Canvas.AnimationNativeInherit.efl_animation_start_delay_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sec);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Interpolator property</summary>
+   /// <returns>Interpolator which indicates interpolation fucntion. Efl_Interpolator is required.</returns>
+   virtual public Efl.Interpolator GetInterpolator() {
+       var _ret_var = Efl.Canvas.AnimationNativeInherit.efl_animation_interpolator_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Interpolator property</summary>
+   /// <param name="interpolator">Interpolator which indicates interpolation fucntion. Efl_Interpolator is required.</param>
+   /// <returns></returns>
+   virtual public  void SetInterpolator( Efl.Interpolator interpolator) {
+                         Efl.Canvas.AnimationNativeInherit.efl_animation_interpolator_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), interpolator);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="progress"></param>
+   /// <param name="target"></param>
+   /// <returns>Final applied progress.</returns>
+   virtual public double AnimationApply( double progress,  Efl.Canvas.Object target) {
+                                           var _ret_var = Efl.Canvas.AnimationNativeInherit.efl_animation_apply_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress,  target);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Get the length of play for the media file.</summary>
+   /// <returns>The length of the stream in seconds.</returns>
+   virtual public double GetLength() {
+       var _ret_var = Efl.PlayableNativeInherit.efl_playable_length_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public bool GetPlayable() {
+       var _ret_var = Efl.PlayableNativeInherit.efl_playable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get whether the media file is seekable.</summary>
+   /// <returns><c>true</c> if seekable.</returns>
+   virtual public bool GetSeekable() {
+       var _ret_var = Efl.PlayableNativeInherit.efl_playable_seekable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Keep final state property</summary>
+/// <value><c>true</c> to keep final state, <c>false</c> otherwise.</value>
+   public bool FinalStateKeep {
+      get { return GetFinalStateKeep(); }
+      set { SetFinalStateKeep( value); }
+   }
+   /// <summary>Duration property</summary>
+/// <value>Duration value.</value>
+   public double Duration {
+      get { return GetDuration(); }
+      set { SetDuration( value); }
+   }
+   /// <summary>Repeat mode property</summary>
+/// <value>Repeat mode. EFL_ANIMATION_REPEAT_MODE_RESTART restarts animation when the animation ends and EFL_ANIMATION_REPEAT_MODE_REVERSE reverses animation when the animation ends.</value>
+   public Efl.Canvas.AnimationRepeatMode RepeatMode {
+      get { return GetRepeatMode(); }
+      set { SetRepeatMode( value); }
+   }
+   /// <summary>Repeat count property</summary>
+/// <value>Repeat count. EFL_ANIMATION_REPEAT_INFINITE repeats animation infinitely.</value>
+   public  int RepeatCount {
+      get { return GetRepeatCount(); }
+      set { SetRepeatCount( value); }
+   }
+   /// <summary>Start delay property</summary>
+/// <value>Delay time, in seconds, from when the animation starts until the animation is animated</value>
+   public double StartDelay {
+      get { return GetStartDelay(); }
+      set { SetStartDelay( value); }
+   }
+   /// <summary>Interpolator property</summary>
+/// <value>Interpolator which indicates interpolation fucntion. Efl_Interpolator is required.</value>
+   public Efl.Interpolator Interpolator {
+      get { return GetInterpolator(); }
+      set { SetInterpolator( value); }
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   public double Length {
+      get { return GetLength(); }
+   }
+   /// <summary></summary>
+/// <value></value>
+   public bool Playable {
+      get { return GetPlayable(); }
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   public bool Seekable {
+      get { return GetSeekable(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Animation.efl_canvas_animation_class_get();
+   }
+}
+public class AnimationNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_animation_final_state_keep_get_static_delegate == null)
+      efl_animation_final_state_keep_get_static_delegate = new efl_animation_final_state_keep_get_delegate(final_state_keep_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_final_state_keep_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_final_state_keep_get_static_delegate)});
+      if (efl_animation_final_state_keep_set_static_delegate == null)
+      efl_animation_final_state_keep_set_static_delegate = new efl_animation_final_state_keep_set_delegate(final_state_keep_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_final_state_keep_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_final_state_keep_set_static_delegate)});
+      if (efl_animation_duration_get_static_delegate == null)
+      efl_animation_duration_get_static_delegate = new efl_animation_duration_get_delegate(duration_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_duration_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_duration_get_static_delegate)});
+      if (efl_animation_duration_set_static_delegate == null)
+      efl_animation_duration_set_static_delegate = new efl_animation_duration_set_delegate(duration_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_duration_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_duration_set_static_delegate)});
+      if (efl_animation_repeat_mode_get_static_delegate == null)
+      efl_animation_repeat_mode_get_static_delegate = new efl_animation_repeat_mode_get_delegate(repeat_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_repeat_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_repeat_mode_get_static_delegate)});
+      if (efl_animation_repeat_mode_set_static_delegate == null)
+      efl_animation_repeat_mode_set_static_delegate = new efl_animation_repeat_mode_set_delegate(repeat_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_repeat_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_repeat_mode_set_static_delegate)});
+      if (efl_animation_repeat_count_get_static_delegate == null)
+      efl_animation_repeat_count_get_static_delegate = new efl_animation_repeat_count_get_delegate(repeat_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_repeat_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_repeat_count_get_static_delegate)});
+      if (efl_animation_repeat_count_set_static_delegate == null)
+      efl_animation_repeat_count_set_static_delegate = new efl_animation_repeat_count_set_delegate(repeat_count_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_repeat_count_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_repeat_count_set_static_delegate)});
+      if (efl_animation_start_delay_get_static_delegate == null)
+      efl_animation_start_delay_get_static_delegate = new efl_animation_start_delay_get_delegate(start_delay_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_start_delay_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_start_delay_get_static_delegate)});
+      if (efl_animation_start_delay_set_static_delegate == null)
+      efl_animation_start_delay_set_static_delegate = new efl_animation_start_delay_set_delegate(start_delay_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_start_delay_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_start_delay_set_static_delegate)});
+      if (efl_animation_interpolator_get_static_delegate == null)
+      efl_animation_interpolator_get_static_delegate = new efl_animation_interpolator_get_delegate(interpolator_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_interpolator_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_interpolator_get_static_delegate)});
+      if (efl_animation_interpolator_set_static_delegate == null)
+      efl_animation_interpolator_set_static_delegate = new efl_animation_interpolator_set_delegate(interpolator_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_interpolator_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_interpolator_set_static_delegate)});
+      if (efl_animation_apply_static_delegate == null)
+      efl_animation_apply_static_delegate = new efl_animation_apply_delegate(animation_apply);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_apply"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_apply_static_delegate)});
+      if (efl_playable_length_get_static_delegate == null)
+      efl_playable_length_get_static_delegate = new efl_playable_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_playable_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_playable_length_get_static_delegate)});
+      if (efl_playable_get_static_delegate == null)
+      efl_playable_get_static_delegate = new efl_playable_get_delegate(playable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_playable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_playable_get_static_delegate)});
+      if (efl_playable_seekable_get_static_delegate == null)
+      efl_playable_seekable_get_static_delegate = new efl_playable_seekable_get_delegate(seekable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_playable_seekable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_playable_seekable_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Animation.efl_canvas_animation_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Animation.efl_canvas_animation_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_animation_final_state_keep_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_animation_final_state_keep_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_final_state_keep_get_api_delegate> efl_animation_final_state_keep_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_final_state_keep_get_api_delegate>(_Module, "efl_animation_final_state_keep_get");
+    private static bool final_state_keep_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_final_state_keep_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Animation)wrapper).GetFinalStateKeep();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_final_state_keep_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_final_state_keep_get_delegate efl_animation_final_state_keep_get_static_delegate;
+
+
+    private delegate  void efl_animation_final_state_keep_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool keep);
+
+
+    public delegate  void efl_animation_final_state_keep_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool keep);
+    public static Efl.Eo.FunctionWrapper<efl_animation_final_state_keep_set_api_delegate> efl_animation_final_state_keep_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_final_state_keep_set_api_delegate>(_Module, "efl_animation_final_state_keep_set");
+    private static  void final_state_keep_set(System.IntPtr obj, System.IntPtr pd,  bool keep)
+   {
+      Eina.Log.Debug("function efl_animation_final_state_keep_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Animation)wrapper).SetFinalStateKeep( keep);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_final_state_keep_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  keep);
+      }
+   }
+   private static efl_animation_final_state_keep_set_delegate efl_animation_final_state_keep_set_static_delegate;
+
+
+    private delegate double efl_animation_duration_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_animation_duration_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_duration_get_api_delegate> efl_animation_duration_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_duration_get_api_delegate>(_Module, "efl_animation_duration_get");
+    private static double duration_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_duration_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Animation)wrapper).GetDuration();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_duration_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_duration_get_delegate efl_animation_duration_get_static_delegate;
+
+
+    private delegate  void efl_animation_duration_set_delegate(System.IntPtr obj, System.IntPtr pd,   double sec);
+
+
+    public delegate  void efl_animation_duration_set_api_delegate(System.IntPtr obj,   double sec);
+    public static Efl.Eo.FunctionWrapper<efl_animation_duration_set_api_delegate> efl_animation_duration_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_duration_set_api_delegate>(_Module, "efl_animation_duration_set");
+    private static  void duration_set(System.IntPtr obj, System.IntPtr pd,  double sec)
+   {
+      Eina.Log.Debug("function efl_animation_duration_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Animation)wrapper).SetDuration( sec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_duration_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sec);
+      }
+   }
+   private static efl_animation_duration_set_delegate efl_animation_duration_set_static_delegate;
+
+
+    private delegate Efl.Canvas.AnimationRepeatMode efl_animation_repeat_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Canvas.AnimationRepeatMode efl_animation_repeat_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_repeat_mode_get_api_delegate> efl_animation_repeat_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_repeat_mode_get_api_delegate>(_Module, "efl_animation_repeat_mode_get");
+    private static Efl.Canvas.AnimationRepeatMode repeat_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_repeat_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.AnimationRepeatMode _ret_var = default(Efl.Canvas.AnimationRepeatMode);
+         try {
+            _ret_var = ((Animation)wrapper).GetRepeatMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_repeat_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_repeat_mode_get_delegate efl_animation_repeat_mode_get_static_delegate;
+
+
+    private delegate  void efl_animation_repeat_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Canvas.AnimationRepeatMode mode);
+
+
+    public delegate  void efl_animation_repeat_mode_set_api_delegate(System.IntPtr obj,   Efl.Canvas.AnimationRepeatMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_animation_repeat_mode_set_api_delegate> efl_animation_repeat_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_repeat_mode_set_api_delegate>(_Module, "efl_animation_repeat_mode_set");
+    private static  void repeat_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.AnimationRepeatMode mode)
+   {
+      Eina.Log.Debug("function efl_animation_repeat_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Animation)wrapper).SetRepeatMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_repeat_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_animation_repeat_mode_set_delegate efl_animation_repeat_mode_set_static_delegate;
+
+
+    private delegate  int efl_animation_repeat_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_animation_repeat_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_repeat_count_get_api_delegate> efl_animation_repeat_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_repeat_count_get_api_delegate>(_Module, "efl_animation_repeat_count_get");
+    private static  int repeat_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_repeat_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Animation)wrapper).GetRepeatCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_repeat_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_repeat_count_get_delegate efl_animation_repeat_count_get_static_delegate;
+
+
+    private delegate  void efl_animation_repeat_count_set_delegate(System.IntPtr obj, System.IntPtr pd,    int count);
+
+
+    public delegate  void efl_animation_repeat_count_set_api_delegate(System.IntPtr obj,    int count);
+    public static Efl.Eo.FunctionWrapper<efl_animation_repeat_count_set_api_delegate> efl_animation_repeat_count_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_repeat_count_set_api_delegate>(_Module, "efl_animation_repeat_count_set");
+    private static  void repeat_count_set(System.IntPtr obj, System.IntPtr pd,   int count)
+   {
+      Eina.Log.Debug("function efl_animation_repeat_count_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Animation)wrapper).SetRepeatCount( count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_repeat_count_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  count);
+      }
+   }
+   private static efl_animation_repeat_count_set_delegate efl_animation_repeat_count_set_static_delegate;
+
+
+    private delegate double efl_animation_start_delay_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_animation_start_delay_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_start_delay_get_api_delegate> efl_animation_start_delay_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_start_delay_get_api_delegate>(_Module, "efl_animation_start_delay_get");
+    private static double start_delay_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_start_delay_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Animation)wrapper).GetStartDelay();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_start_delay_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_start_delay_get_delegate efl_animation_start_delay_get_static_delegate;
+
+
+    private delegate  void efl_animation_start_delay_set_delegate(System.IntPtr obj, System.IntPtr pd,   double sec);
+
+
+    public delegate  void efl_animation_start_delay_set_api_delegate(System.IntPtr obj,   double sec);
+    public static Efl.Eo.FunctionWrapper<efl_animation_start_delay_set_api_delegate> efl_animation_start_delay_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_start_delay_set_api_delegate>(_Module, "efl_animation_start_delay_set");
+    private static  void start_delay_set(System.IntPtr obj, System.IntPtr pd,  double sec)
+   {
+      Eina.Log.Debug("function efl_animation_start_delay_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Animation)wrapper).SetStartDelay( sec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_start_delay_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sec);
+      }
+   }
+   private static efl_animation_start_delay_set_delegate efl_animation_start_delay_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.InterpolatorConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Interpolator efl_animation_interpolator_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.InterpolatorConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Interpolator efl_animation_interpolator_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_interpolator_get_api_delegate> efl_animation_interpolator_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_interpolator_get_api_delegate>(_Module, "efl_animation_interpolator_get");
+    private static Efl.Interpolator interpolator_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_interpolator_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Interpolator _ret_var = default(Efl.Interpolator);
+         try {
+            _ret_var = ((Animation)wrapper).GetInterpolator();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_interpolator_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_interpolator_get_delegate efl_animation_interpolator_get_static_delegate;
+
+
+    private delegate  void efl_animation_interpolator_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.InterpolatorConcrete, Efl.Eo.NonOwnTag>))]  Efl.Interpolator interpolator);
+
+
+    public delegate  void efl_animation_interpolator_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.InterpolatorConcrete, Efl.Eo.NonOwnTag>))]  Efl.Interpolator interpolator);
+    public static Efl.Eo.FunctionWrapper<efl_animation_interpolator_set_api_delegate> efl_animation_interpolator_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_interpolator_set_api_delegate>(_Module, "efl_animation_interpolator_set");
+    private static  void interpolator_set(System.IntPtr obj, System.IntPtr pd,  Efl.Interpolator interpolator)
+   {
+      Eina.Log.Debug("function efl_animation_interpolator_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Animation)wrapper).SetInterpolator( interpolator);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_interpolator_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  interpolator);
+      }
+   }
+   private static efl_animation_interpolator_set_delegate efl_animation_interpolator_set_static_delegate;
+
+
+    private delegate double efl_animation_apply_delegate(System.IntPtr obj, System.IntPtr pd,   double progress, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object target);
+
+
+    public delegate double efl_animation_apply_api_delegate(System.IntPtr obj,   double progress, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object target);
+    public static Efl.Eo.FunctionWrapper<efl_animation_apply_api_delegate> efl_animation_apply_ptr = new Efl.Eo.FunctionWrapper<efl_animation_apply_api_delegate>(_Module, "efl_animation_apply");
+    private static double animation_apply(System.IntPtr obj, System.IntPtr pd,  double progress,  Efl.Canvas.Object target)
+   {
+      Eina.Log.Debug("function efl_animation_apply was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      double _ret_var = default(double);
+         try {
+            _ret_var = ((Animation)wrapper).AnimationApply( progress,  target);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_animation_apply_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress,  target);
+      }
+   }
+   private static efl_animation_apply_delegate efl_animation_apply_static_delegate;
+
+
+    private delegate double efl_playable_length_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_playable_length_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_playable_length_get_api_delegate> efl_playable_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_playable_length_get_api_delegate>(_Module, "efl_playable_length_get");
+    private static double length_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_playable_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Animation)wrapper).GetLength();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_playable_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_playable_length_get_delegate efl_playable_length_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_playable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_playable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_playable_get_api_delegate> efl_playable_get_ptr = new Efl.Eo.FunctionWrapper<efl_playable_get_api_delegate>(_Module, "efl_playable_get");
+    private static bool playable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_playable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Animation)wrapper).GetPlayable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_playable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_playable_get_delegate efl_playable_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_playable_seekable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_playable_seekable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_playable_seekable_get_api_delegate> efl_playable_seekable_get_ptr = new Efl.Eo.FunctionWrapper<efl_playable_seekable_get_api_delegate>(_Module, "efl_playable_seekable_get");
+    private static bool seekable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_playable_seekable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Animation)wrapper).GetSeekable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_playable_seekable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_playable_seekable_get_delegate efl_playable_seekable_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_alpha.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_alpha.eo.cs
new file mode 100755 (executable)
index 0000000..ddf42b7
--- /dev/null
@@ -0,0 +1,161 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl alpha animation class</summary>
+[AnimationAlphaNativeInherit]
+public class AnimationAlpha : Efl.Canvas.Animation, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationAlphaNativeInherit nativeInherit = new Efl.Canvas.AnimationAlphaNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationAlpha))
+            return Efl.Canvas.AnimationAlphaNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_alpha_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationAlpha(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_alpha_class_get(), typeof(AnimationAlpha), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationAlpha(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationAlpha(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationAlpha static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationAlpha(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Alpha property</summary>
+   /// <param name="from_alpha">Alpha value when animation starts</param>
+   /// <param name="to_alpha">Alpha value when animation ends</param>
+   /// <returns></returns>
+   virtual public  void GetAlpha( out double from_alpha,  out double to_alpha) {
+                                           Efl.Canvas.AnimationAlphaNativeInherit.efl_animation_alpha_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from_alpha,  out to_alpha);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alpha property</summary>
+   /// <param name="from_alpha">Alpha value when animation starts</param>
+   /// <param name="to_alpha">Alpha value when animation ends</param>
+   /// <returns></returns>
+   virtual public  void SetAlpha( double from_alpha,  double to_alpha) {
+                                           Efl.Canvas.AnimationAlphaNativeInherit.efl_animation_alpha_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from_alpha,  to_alpha);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationAlpha.efl_canvas_animation_alpha_class_get();
+   }
+}
+public class AnimationAlphaNativeInherit : Efl.Canvas.AnimationNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_animation_alpha_get_static_delegate == null)
+      efl_animation_alpha_get_static_delegate = new efl_animation_alpha_get_delegate(alpha_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_alpha_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_alpha_get_static_delegate)});
+      if (efl_animation_alpha_set_static_delegate == null)
+      efl_animation_alpha_set_static_delegate = new efl_animation_alpha_set_delegate(alpha_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_alpha_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_alpha_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationAlpha.efl_canvas_animation_alpha_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationAlpha.efl_canvas_animation_alpha_class_get();
+   }
+
+
+    private delegate  void efl_animation_alpha_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double from_alpha,   out double to_alpha);
+
+
+    public delegate  void efl_animation_alpha_get_api_delegate(System.IntPtr obj,   out double from_alpha,   out double to_alpha);
+    public static Efl.Eo.FunctionWrapper<efl_animation_alpha_get_api_delegate> efl_animation_alpha_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_alpha_get_api_delegate>(_Module, "efl_animation_alpha_get");
+    private static  void alpha_get(System.IntPtr obj, System.IntPtr pd,  out double from_alpha,  out double to_alpha)
+   {
+      Eina.Log.Debug("function efl_animation_alpha_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           from_alpha = default(double);      to_alpha = default(double);                     
+         try {
+            ((AnimationAlpha)wrapper).GetAlpha( out from_alpha,  out to_alpha);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_animation_alpha_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from_alpha,  out to_alpha);
+      }
+   }
+   private static efl_animation_alpha_get_delegate efl_animation_alpha_get_static_delegate;
+
+
+    private delegate  void efl_animation_alpha_set_delegate(System.IntPtr obj, System.IntPtr pd,   double from_alpha,   double to_alpha);
+
+
+    public delegate  void efl_animation_alpha_set_api_delegate(System.IntPtr obj,   double from_alpha,   double to_alpha);
+    public static Efl.Eo.FunctionWrapper<efl_animation_alpha_set_api_delegate> efl_animation_alpha_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_alpha_set_api_delegate>(_Module, "efl_animation_alpha_set");
+    private static  void alpha_set(System.IntPtr obj, System.IntPtr pd,  double from_alpha,  double to_alpha)
+   {
+      Eina.Log.Debug("function efl_animation_alpha_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((AnimationAlpha)wrapper).SetAlpha( from_alpha,  to_alpha);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_animation_alpha_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from_alpha,  to_alpha);
+      }
+   }
+   private static efl_animation_alpha_set_delegate efl_animation_alpha_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_group.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_group.eo.cs
new file mode 100755 (executable)
index 0000000..7b41413
--- /dev/null
@@ -0,0 +1,194 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl group animation abstract class</summary>
+[AnimationGroupNativeInherit]
+public class AnimationGroup : Efl.Canvas.Animation, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationGroupNativeInherit nativeInherit = new Efl.Canvas.AnimationGroupNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationGroup))
+            return Efl.Canvas.AnimationGroupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_group_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationGroup(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_group_class_get(), typeof(AnimationGroup), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationGroup(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationGroup(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationGroup static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationGroup(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Add the given animation to the animation group.</summary>
+   /// <param name="animation">The animation which needs to be added to the animation group</param>
+   /// <returns></returns>
+   virtual public  void AddAnimation( Efl.Canvas.Animation animation) {
+                         Efl.Canvas.AnimationGroupNativeInherit.efl_animation_group_animation_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), animation);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Delete the given animation from the animation group.</summary>
+   /// <param name="animation">The animation which needs to be deleted from the animation group</param>
+   /// <returns></returns>
+   virtual public  void DelAnimation( Efl.Canvas.Animation animation) {
+                         Efl.Canvas.AnimationGroupNativeInherit.efl_animation_group_animation_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), animation);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the animations of the animation group.</summary>
+   /// <returns>The animations of the animation group</returns>
+   virtual public Eina.List<Efl.Canvas.Animation> GetAnimations() {
+       var _ret_var = Efl.Canvas.AnimationGroupNativeInherit.efl_animation_group_animations_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Canvas.Animation>(_ret_var, false, false);
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationGroup.efl_canvas_animation_group_class_get();
+   }
+}
+public class AnimationGroupNativeInherit : Efl.Canvas.AnimationNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_animation_group_animation_add_static_delegate == null)
+      efl_animation_group_animation_add_static_delegate = new efl_animation_group_animation_add_delegate(animation_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_group_animation_add"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_group_animation_add_static_delegate)});
+      if (efl_animation_group_animation_del_static_delegate == null)
+      efl_animation_group_animation_del_static_delegate = new efl_animation_group_animation_del_delegate(animation_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_group_animation_del"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_group_animation_del_static_delegate)});
+      if (efl_animation_group_animations_get_static_delegate == null)
+      efl_animation_group_animations_get_static_delegate = new efl_animation_group_animations_get_delegate(animations_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_group_animations_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_group_animations_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationGroup.efl_canvas_animation_group_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationGroup.efl_canvas_animation_group_class_get();
+   }
+
+
+    private delegate  void efl_animation_group_animation_add_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Animation animation);
+
+
+    public delegate  void efl_animation_group_animation_add_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Animation animation);
+    public static Efl.Eo.FunctionWrapper<efl_animation_group_animation_add_api_delegate> efl_animation_group_animation_add_ptr = new Efl.Eo.FunctionWrapper<efl_animation_group_animation_add_api_delegate>(_Module, "efl_animation_group_animation_add");
+    private static  void animation_add(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Animation animation)
+   {
+      Eina.Log.Debug("function efl_animation_group_animation_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationGroup)wrapper).AddAnimation( animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_group_animation_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animation);
+      }
+   }
+   private static efl_animation_group_animation_add_delegate efl_animation_group_animation_add_static_delegate;
+
+
+    private delegate  void efl_animation_group_animation_del_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Animation animation);
+
+
+    public delegate  void efl_animation_group_animation_del_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Animation animation);
+    public static Efl.Eo.FunctionWrapper<efl_animation_group_animation_del_api_delegate> efl_animation_group_animation_del_ptr = new Efl.Eo.FunctionWrapper<efl_animation_group_animation_del_api_delegate>(_Module, "efl_animation_group_animation_del");
+    private static  void animation_del(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Animation animation)
+   {
+      Eina.Log.Debug("function efl_animation_group_animation_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationGroup)wrapper).DelAnimation( animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_group_animation_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animation);
+      }
+   }
+   private static efl_animation_group_animation_del_delegate efl_animation_group_animation_del_static_delegate;
+
+
+    private delegate  System.IntPtr efl_animation_group_animations_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_animation_group_animations_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_group_animations_get_api_delegate> efl_animation_group_animations_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_group_animations_get_api_delegate>(_Module, "efl_animation_group_animations_get");
+    private static  System.IntPtr animations_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_group_animations_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Canvas.Animation> _ret_var = default(Eina.List<Efl.Canvas.Animation>);
+         try {
+            _ret_var = ((AnimationGroup)wrapper).GetAnimations();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_animation_group_animations_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_group_animations_get_delegate efl_animation_group_animations_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_group_parallel.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_group_parallel.eo.cs
new file mode 100755 (executable)
index 0000000..e2e2f00
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl group parallel animation class</summary>
+[AnimationGroupParallelNativeInherit]
+public class AnimationGroupParallel : Efl.Canvas.AnimationGroup, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationGroupParallelNativeInherit nativeInherit = new Efl.Canvas.AnimationGroupParallelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationGroupParallel))
+            return Efl.Canvas.AnimationGroupParallelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_group_parallel_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationGroupParallel(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_group_parallel_class_get(), typeof(AnimationGroupParallel), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationGroupParallel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationGroupParallel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationGroupParallel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationGroupParallel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationGroupParallel.efl_canvas_animation_group_parallel_class_get();
+   }
+}
+public class AnimationGroupParallelNativeInherit : Efl.Canvas.AnimationGroupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationGroupParallel.efl_canvas_animation_group_parallel_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationGroupParallel.efl_canvas_animation_group_parallel_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_group_sequential.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_group_sequential.eo.cs
new file mode 100755 (executable)
index 0000000..e571478
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl group sequential animation class</summary>
+[AnimationGroupSequentialNativeInherit]
+public class AnimationGroupSequential : Efl.Canvas.AnimationGroup, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationGroupSequentialNativeInherit nativeInherit = new Efl.Canvas.AnimationGroupSequentialNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationGroupSequential))
+            return Efl.Canvas.AnimationGroupSequentialNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_group_sequential_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationGroupSequential(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_group_sequential_class_get(), typeof(AnimationGroupSequential), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationGroupSequential(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationGroupSequential(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationGroupSequential static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationGroupSequential(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationGroupSequential.efl_canvas_animation_group_sequential_class_get();
+   }
+}
+public class AnimationGroupSequentialNativeInherit : Efl.Canvas.AnimationGroupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationGroupSequential.efl_canvas_animation_group_sequential_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationGroupSequential.efl_canvas_animation_group_sequential_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_player.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_player.eo.cs
new file mode 100755 (executable)
index 0000000..f2289f9
--- /dev/null
@@ -0,0 +1,1070 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.AnimationPlayer.RunningEvt"/>.</summary>
+public class AnimationPlayerRunningEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Canvas.ObjectAnimationEvent arg { get; set; }
+}
+/// <summary>Efl animation object class</summary>
+[AnimationPlayerNativeInherit]
+public class AnimationPlayer : Efl.Object, Efl.Eo.IWrapper,Efl.Player
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationPlayerNativeInherit nativeInherit = new Efl.Canvas.AnimationPlayerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationPlayer))
+            return Efl.Canvas.AnimationPlayerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_player_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationPlayer(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_player_class_get(), typeof(AnimationPlayer), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationPlayer(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationPlayer(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationPlayer static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationPlayer(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object StartedEvtKey = new object();
+   /// <summary>Animation is started.</summary>
+   public event EventHandler StartedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ANIMATION_PLAYER_EVENT_STARTED";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_StartedEvt_delegate)) {
+               eventHandlers.AddHandler(StartedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ANIMATION_PLAYER_EVENT_STARTED";
+            if (remove_cpp_event_handler(key, this.evt_StartedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StartedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StartedEvt.</summary>
+   public void On_StartedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StartedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StartedEvt_delegate;
+   private void on_StartedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StartedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RunningEvtKey = new object();
+   /// <summary>Animation is running.</summary>
+   public event EventHandler<Efl.Canvas.AnimationPlayerRunningEvt_Args> RunningEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ANIMATION_PLAYER_EVENT_RUNNING";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_RunningEvt_delegate)) {
+               eventHandlers.AddHandler(RunningEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ANIMATION_PLAYER_EVENT_RUNNING";
+            if (remove_cpp_event_handler(key, this.evt_RunningEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RunningEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RunningEvt.</summary>
+   public void On_RunningEvt(Efl.Canvas.AnimationPlayerRunningEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.AnimationPlayerRunningEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.AnimationPlayerRunningEvt_Args>)eventHandlers[RunningEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RunningEvt_delegate;
+   private void on_RunningEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.AnimationPlayerRunningEvt_Args args = new Efl.Canvas.AnimationPlayerRunningEvt_Args();
+      args.arg = default(Efl.Canvas.ObjectAnimationEvent);
+      try {
+         On_RunningEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EndedEvtKey = new object();
+   /// <summary>Animation is ended.</summary>
+   public event EventHandler EndedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ANIMATION_PLAYER_EVENT_ENDED";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_EndedEvt_delegate)) {
+               eventHandlers.AddHandler(EndedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ANIMATION_PLAYER_EVENT_ENDED";
+            if (remove_cpp_event_handler(key, this.evt_EndedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EndedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EndedEvt.</summary>
+   public void On_EndedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EndedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EndedEvt_delegate;
+   private void on_EndedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EndedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_StartedEvt_delegate = new Efl.EventCb(on_StartedEvt_NativeCallback);
+      evt_RunningEvt_delegate = new Efl.EventCb(on_RunningEvt_NativeCallback);
+      evt_EndedEvt_delegate = new Efl.EventCb(on_EndedEvt_NativeCallback);
+   }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public Efl.Canvas.Animation GetAnimation() {
+       var _ret_var = Efl.Canvas.AnimationPlayerNativeInherit.efl_animation_player_animation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="animation"></param>
+   /// <returns></returns>
+   virtual public  void SetAnimation( Efl.Canvas.Animation animation) {
+                         Efl.Canvas.AnimationPlayerNativeInherit.efl_animation_player_animation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), animation);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Auto delete property</summary>
+   /// <returns><c>true</c> to delete animation object automatically when animation is finished or animation is cancelled, <c>false</c> otherwise.</returns>
+   virtual public bool GetAutoDel() {
+       var _ret_var = Efl.Canvas.AnimationPlayerNativeInherit.efl_animation_player_auto_del_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Auto delete property</summary>
+   /// <param name="auto_del"><c>true</c> to delete animation object automatically when animation is finished or animation is cancelled, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetAutoDel( bool auto_del) {
+                         Efl.Canvas.AnimationPlayerNativeInherit.efl_animation_player_auto_del_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), auto_del);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Target object property</summary>
+   /// <returns>Target object which is applied animation.</returns>
+   virtual public Efl.Canvas.Object GetTarget() {
+       var _ret_var = Efl.Canvas.AnimationPlayerNativeInherit.efl_animation_player_target_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Target object property</summary>
+   /// <param name="target">Target object which is applied animation.</param>
+   /// <returns></returns>
+   virtual public  void SetTarget( Efl.Canvas.Object target) {
+                         Efl.Canvas.AnimationPlayerNativeInherit.efl_animation_player_target_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), target);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether or not the playable can be played.</summary>
+   /// <returns><c>true</c> if the object have playable data, <c>false</c> otherwise</returns>
+   virtual public bool GetPlayable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_playable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get play/pause state of the media file.</summary>
+   /// <returns><c>true</c> if playing, <c>false</c> otherwise.</returns>
+   virtual public bool GetPlay() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set play/pause state of the media file.
+   /// This functions sets the currently playing status of the video. Using this function to play or pause the video doesn&apos;t alter it&apos;s current position.</summary>
+   /// <param name="play"><c>true</c> if playing, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetPlay( bool play) {
+                         Efl.PlayerNativeInherit.efl_player_play_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), play);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the position in the media file.
+   /// The position is returned as the number of seconds since the beginning of the media file.</summary>
+   /// <returns>The position (in seconds).</returns>
+   virtual public double GetPos() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the position in the media file.
+   /// This functions sets the current position of the media file to &quot;sec&quot;, this only works on seekable streams. Setting the position doesn&apos;t change the playing state of the media file.</summary>
+   /// <param name="sec">The position (in seconds).</param>
+   /// <returns></returns>
+   virtual public  void SetPos( double sec) {
+                         Efl.PlayerNativeInherit.efl_player_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sec);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get how much of the file has been played.
+   /// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+   /// <returns>The progress within the [0, 1] range.</returns>
+   virtual public double GetProgress() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_progress_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <returns>The play speed in the [0, infinity) range.</returns>
+   virtual public double GetPlaySpeed() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_speed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <param name="speed">The play speed in the [0, infinity) range.</param>
+   /// <returns></returns>
+   virtual public  void SetPlaySpeed( double speed) {
+                         Efl.PlayerNativeInherit.efl_player_play_speed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), speed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <returns>The volume level</returns>
+   virtual public double GetVolume() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_volume_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <param name="volume">The volume level</param>
+   /// <returns></returns>
+   virtual public  void SetVolume( double volume) {
+                         Efl.PlayerNativeInherit.efl_player_volume_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), volume);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <returns>The mute state. <c>true</c> or <c>false</c>.</returns>
+   virtual public bool GetMute() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_mute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <param name="mute">The mute state. <c>true</c> or <c>false</c>.</param>
+   /// <returns></returns>
+   virtual public  void SetMute( bool mute) {
+                         Efl.PlayerNativeInherit.efl_player_mute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mute);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the length of play for the media file.</summary>
+   /// <returns>The length of the stream in seconds.</returns>
+   virtual public double GetLength() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_length_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get whether the media file is seekable.</summary>
+   /// <returns><c>true</c> if seekable.</returns>
+   virtual public bool GetSeekable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_seekable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start a playing playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Start() {
+       Efl.PlayerNativeInherit.efl_player_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stop playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Stop() {
+       Efl.PlayerNativeInherit.efl_player_stop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary></summary>
+/// <value></value>
+   public Efl.Canvas.Animation Animation {
+      get { return GetAnimation(); }
+      set { SetAnimation( value); }
+   }
+   /// <summary>Auto delete property</summary>
+/// <value><c>true</c> to delete animation object automatically when animation is finished or animation is cancelled, <c>false</c> otherwise.</value>
+   public bool AutoDel {
+      get { return GetAutoDel(); }
+      set { SetAutoDel( value); }
+   }
+   /// <summary>Target object property</summary>
+/// <value>Target object which is applied animation.</value>
+   public Efl.Canvas.Object Target {
+      get { return GetTarget(); }
+      set { SetTarget( value); }
+   }
+   /// <summary>Whether or not the playable can be played.</summary>
+/// <value><c>true</c> if the object have playable data, <c>false</c> otherwise</value>
+   public bool Playable {
+      get { return GetPlayable(); }
+   }
+   /// <summary>Get play/pause state of the media file.</summary>
+/// <value><c>true</c> if playing, <c>false</c> otherwise.</value>
+   public bool Play {
+      get { return GetPlay(); }
+      set { SetPlay( value); }
+   }
+   /// <summary>Get the position in the media file.
+/// The position is returned as the number of seconds since the beginning of the media file.</summary>
+/// <value>The position (in seconds).</value>
+   public double Pos {
+      get { return GetPos(); }
+      set { SetPos( value); }
+   }
+   /// <summary>Get how much of the file has been played.
+/// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+/// <value>The progress within the [0, 1] range.</value>
+   public double Progress {
+      get { return GetProgress(); }
+   }
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <value>The play speed in the [0, infinity) range.</value>
+   public double PlaySpeed {
+      get { return GetPlaySpeed(); }
+      set { SetPlaySpeed( value); }
+   }
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <value>The volume level</value>
+   public double Volume {
+      get { return GetVolume(); }
+      set { SetVolume( value); }
+   }
+   /// <summary>This property controls the audio mute state.</summary>
+/// <value>The mute state. <c>true</c> or <c>false</c>.</value>
+   public bool Mute {
+      get { return GetMute(); }
+      set { SetMute( value); }
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   public double Length {
+      get { return GetLength(); }
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   public bool Seekable {
+      get { return GetSeekable(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationPlayer.efl_canvas_animation_player_class_get();
+   }
+}
+public class AnimationPlayerNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_animation_player_animation_get_static_delegate == null)
+      efl_animation_player_animation_get_static_delegate = new efl_animation_player_animation_get_delegate(animation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_player_animation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_player_animation_get_static_delegate)});
+      if (efl_animation_player_animation_set_static_delegate == null)
+      efl_animation_player_animation_set_static_delegate = new efl_animation_player_animation_set_delegate(animation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_player_animation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_player_animation_set_static_delegate)});
+      if (efl_animation_player_auto_del_get_static_delegate == null)
+      efl_animation_player_auto_del_get_static_delegate = new efl_animation_player_auto_del_get_delegate(auto_del_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_player_auto_del_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_player_auto_del_get_static_delegate)});
+      if (efl_animation_player_auto_del_set_static_delegate == null)
+      efl_animation_player_auto_del_set_static_delegate = new efl_animation_player_auto_del_set_delegate(auto_del_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_player_auto_del_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_player_auto_del_set_static_delegate)});
+      if (efl_animation_player_target_get_static_delegate == null)
+      efl_animation_player_target_get_static_delegate = new efl_animation_player_target_get_delegate(target_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_player_target_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_player_target_get_static_delegate)});
+      if (efl_animation_player_target_set_static_delegate == null)
+      efl_animation_player_target_set_static_delegate = new efl_animation_player_target_set_delegate(target_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_player_target_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_player_target_set_static_delegate)});
+      if (efl_player_playable_get_static_delegate == null)
+      efl_player_playable_get_static_delegate = new efl_player_playable_get_delegate(playable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_playable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_playable_get_static_delegate)});
+      if (efl_player_play_get_static_delegate == null)
+      efl_player_play_get_static_delegate = new efl_player_play_get_delegate(play_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_get_static_delegate)});
+      if (efl_player_play_set_static_delegate == null)
+      efl_player_play_set_static_delegate = new efl_player_play_set_delegate(play_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_set_static_delegate)});
+      if (efl_player_pos_get_static_delegate == null)
+      efl_player_pos_get_static_delegate = new efl_player_pos_get_delegate(pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_get_static_delegate)});
+      if (efl_player_pos_set_static_delegate == null)
+      efl_player_pos_set_static_delegate = new efl_player_pos_set_delegate(pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_set_static_delegate)});
+      if (efl_player_progress_get_static_delegate == null)
+      efl_player_progress_get_static_delegate = new efl_player_progress_get_delegate(progress_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_progress_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_progress_get_static_delegate)});
+      if (efl_player_play_speed_get_static_delegate == null)
+      efl_player_play_speed_get_static_delegate = new efl_player_play_speed_get_delegate(play_speed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_get_static_delegate)});
+      if (efl_player_play_speed_set_static_delegate == null)
+      efl_player_play_speed_set_static_delegate = new efl_player_play_speed_set_delegate(play_speed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_set_static_delegate)});
+      if (efl_player_volume_get_static_delegate == null)
+      efl_player_volume_get_static_delegate = new efl_player_volume_get_delegate(volume_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_get_static_delegate)});
+      if (efl_player_volume_set_static_delegate == null)
+      efl_player_volume_set_static_delegate = new efl_player_volume_set_delegate(volume_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_set_static_delegate)});
+      if (efl_player_mute_get_static_delegate == null)
+      efl_player_mute_get_static_delegate = new efl_player_mute_get_delegate(mute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_get_static_delegate)});
+      if (efl_player_mute_set_static_delegate == null)
+      efl_player_mute_set_static_delegate = new efl_player_mute_set_delegate(mute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_set_static_delegate)});
+      if (efl_player_length_get_static_delegate == null)
+      efl_player_length_get_static_delegate = new efl_player_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_length_get_static_delegate)});
+      if (efl_player_seekable_get_static_delegate == null)
+      efl_player_seekable_get_static_delegate = new efl_player_seekable_get_delegate(seekable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_seekable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_seekable_get_static_delegate)});
+      if (efl_player_start_static_delegate == null)
+      efl_player_start_static_delegate = new efl_player_start_delegate(start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_start"), func = Marshal.GetFunctionPointerForDelegate(efl_player_start_static_delegate)});
+      if (efl_player_stop_static_delegate == null)
+      efl_player_stop_static_delegate = new efl_player_stop_delegate(stop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_player_stop_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationPlayer.efl_canvas_animation_player_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationPlayer.efl_canvas_animation_player_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Animation efl_animation_player_animation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Animation efl_animation_player_animation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_player_animation_get_api_delegate> efl_animation_player_animation_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_player_animation_get_api_delegate>(_Module, "efl_animation_player_animation_get");
+    private static Efl.Canvas.Animation animation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_player_animation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Animation _ret_var = default(Efl.Canvas.Animation);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetAnimation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_player_animation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_player_animation_get_delegate efl_animation_player_animation_get_static_delegate;
+
+
+    private delegate  void efl_animation_player_animation_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Animation animation);
+
+
+    public delegate  void efl_animation_player_animation_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Animation, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Animation animation);
+    public static Efl.Eo.FunctionWrapper<efl_animation_player_animation_set_api_delegate> efl_animation_player_animation_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_player_animation_set_api_delegate>(_Module, "efl_animation_player_animation_set");
+    private static  void animation_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Animation animation)
+   {
+      Eina.Log.Debug("function efl_animation_player_animation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetAnimation( animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_player_animation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animation);
+      }
+   }
+   private static efl_animation_player_animation_set_delegate efl_animation_player_animation_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_animation_player_auto_del_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_animation_player_auto_del_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_player_auto_del_get_api_delegate> efl_animation_player_auto_del_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_player_auto_del_get_api_delegate>(_Module, "efl_animation_player_auto_del_get");
+    private static bool auto_del_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_player_auto_del_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetAutoDel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_player_auto_del_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_player_auto_del_get_delegate efl_animation_player_auto_del_get_static_delegate;
+
+
+    private delegate  void efl_animation_player_auto_del_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool auto_del);
+
+
+    public delegate  void efl_animation_player_auto_del_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool auto_del);
+    public static Efl.Eo.FunctionWrapper<efl_animation_player_auto_del_set_api_delegate> efl_animation_player_auto_del_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_player_auto_del_set_api_delegate>(_Module, "efl_animation_player_auto_del_set");
+    private static  void auto_del_set(System.IntPtr obj, System.IntPtr pd,  bool auto_del)
+   {
+      Eina.Log.Debug("function efl_animation_player_auto_del_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetAutoDel( auto_del);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_player_auto_del_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  auto_del);
+      }
+   }
+   private static efl_animation_player_auto_del_set_delegate efl_animation_player_auto_del_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_animation_player_target_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_animation_player_target_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_animation_player_target_get_api_delegate> efl_animation_player_target_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_player_target_get_api_delegate>(_Module, "efl_animation_player_target_get");
+    private static Efl.Canvas.Object target_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_animation_player_target_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetTarget();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_animation_player_target_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_animation_player_target_get_delegate efl_animation_player_target_get_static_delegate;
+
+
+    private delegate  void efl_animation_player_target_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object target);
+
+
+    public delegate  void efl_animation_player_target_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object target);
+    public static Efl.Eo.FunctionWrapper<efl_animation_player_target_set_api_delegate> efl_animation_player_target_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_player_target_set_api_delegate>(_Module, "efl_animation_player_target_set");
+    private static  void target_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object target)
+   {
+      Eina.Log.Debug("function efl_animation_player_target_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetTarget( target);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_animation_player_target_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  target);
+      }
+   }
+   private static efl_animation_player_target_set_delegate efl_animation_player_target_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_playable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_playable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate> efl_player_playable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate>(_Module, "efl_player_playable_get");
+    private static bool playable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_playable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetPlayable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_playable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_playable_get_delegate efl_player_playable_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_play_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_play_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate> efl_player_play_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate>(_Module, "efl_player_play_get");
+    private static bool play_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetPlay();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_get_delegate efl_player_play_get_static_delegate;
+
+
+    private delegate  void efl_player_play_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool play);
+
+
+    public delegate  void efl_player_play_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool play);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate> efl_player_play_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate>(_Module, "efl_player_play_set");
+    private static  void play_set(System.IntPtr obj, System.IntPtr pd,  bool play)
+   {
+      Eina.Log.Debug("function efl_player_play_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetPlay( play);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  play);
+      }
+   }
+   private static efl_player_play_set_delegate efl_player_play_set_static_delegate;
+
+
+    private delegate double efl_player_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate> efl_player_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate>(_Module, "efl_player_pos_get");
+    private static double pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_pos_get_delegate efl_player_pos_get_static_delegate;
+
+
+    private delegate  void efl_player_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   double sec);
+
+
+    public delegate  void efl_player_pos_set_api_delegate(System.IntPtr obj,   double sec);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate> efl_player_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate>(_Module, "efl_player_pos_set");
+    private static  void pos_set(System.IntPtr obj, System.IntPtr pd,  double sec)
+   {
+      Eina.Log.Debug("function efl_player_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetPos( sec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sec);
+      }
+   }
+   private static efl_player_pos_set_delegate efl_player_pos_set_static_delegate;
+
+
+    private delegate double efl_player_progress_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_progress_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate> efl_player_progress_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate>(_Module, "efl_player_progress_get");
+    private static double progress_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_progress_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetProgress();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_progress_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_progress_get_delegate efl_player_progress_get_static_delegate;
+
+
+    private delegate double efl_player_play_speed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_play_speed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate> efl_player_play_speed_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate>(_Module, "efl_player_play_speed_get");
+    private static double play_speed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetPlaySpeed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_speed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_speed_get_delegate efl_player_play_speed_get_static_delegate;
+
+
+    private delegate  void efl_player_play_speed_set_delegate(System.IntPtr obj, System.IntPtr pd,   double speed);
+
+
+    public delegate  void efl_player_play_speed_set_api_delegate(System.IntPtr obj,   double speed);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate> efl_player_play_speed_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate>(_Module, "efl_player_play_speed_set");
+    private static  void play_speed_set(System.IntPtr obj, System.IntPtr pd,  double speed)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetPlaySpeed( speed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_speed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  speed);
+      }
+   }
+   private static efl_player_play_speed_set_delegate efl_player_play_speed_set_static_delegate;
+
+
+    private delegate double efl_player_volume_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_volume_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate> efl_player_volume_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate>(_Module, "efl_player_volume_get");
+    private static double volume_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_volume_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetVolume();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_volume_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_volume_get_delegate efl_player_volume_get_static_delegate;
+
+
+    private delegate  void efl_player_volume_set_delegate(System.IntPtr obj, System.IntPtr pd,   double volume);
+
+
+    public delegate  void efl_player_volume_set_api_delegate(System.IntPtr obj,   double volume);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate> efl_player_volume_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate>(_Module, "efl_player_volume_set");
+    private static  void volume_set(System.IntPtr obj, System.IntPtr pd,  double volume)
+   {
+      Eina.Log.Debug("function efl_player_volume_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetVolume( volume);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_volume_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  volume);
+      }
+   }
+   private static efl_player_volume_set_delegate efl_player_volume_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_mute_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_mute_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate> efl_player_mute_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate>(_Module, "efl_player_mute_get");
+    private static bool mute_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_mute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetMute();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_mute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_mute_get_delegate efl_player_mute_get_static_delegate;
+
+
+    private delegate  void efl_player_mute_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+
+
+    public delegate  void efl_player_mute_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate> efl_player_mute_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate>(_Module, "efl_player_mute_set");
+    private static  void mute_set(System.IntPtr obj, System.IntPtr pd,  bool mute)
+   {
+      Eina.Log.Debug("function efl_player_mute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnimationPlayer)wrapper).SetMute( mute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_mute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mute);
+      }
+   }
+   private static efl_player_mute_set_delegate efl_player_mute_set_static_delegate;
+
+
+    private delegate double efl_player_length_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_length_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate> efl_player_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate>(_Module, "efl_player_length_get");
+    private static double length_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetLength();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_length_get_delegate efl_player_length_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_seekable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_seekable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate> efl_player_seekable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate>(_Module, "efl_player_seekable_get");
+    private static bool seekable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_seekable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((AnimationPlayer)wrapper).GetSeekable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_seekable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_seekable_get_delegate efl_player_seekable_get_static_delegate;
+
+
+    private delegate  void efl_player_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_start_api_delegate> efl_player_start_ptr = new Efl.Eo.FunctionWrapper<efl_player_start_api_delegate>(_Module, "efl_player_start");
+    private static  void start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((AnimationPlayer)wrapper).Start();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_start_delegate efl_player_start_static_delegate;
+
+
+    private delegate  void efl_player_stop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_stop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate> efl_player_stop_ptr = new Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate>(_Module, "efl_player_stop");
+    private static  void stop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_stop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((AnimationPlayer)wrapper).Stop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_stop_delegate efl_player_stop_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_rotate.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_rotate.eo.cs
new file mode 100755 (executable)
index 0000000..67f6fa0
--- /dev/null
@@ -0,0 +1,241 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl rotate animation class</summary>
+[AnimationRotateNativeInherit]
+public class AnimationRotate : Efl.Canvas.Animation, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationRotateNativeInherit nativeInherit = new Efl.Canvas.AnimationRotateNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationRotate))
+            return Efl.Canvas.AnimationRotateNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_rotate_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationRotate(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_rotate_class_get(), typeof(AnimationRotate), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationRotate(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationRotate(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationRotate static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationRotate(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Rotate property</summary>
+   /// <param name="from_degree">Rotation degree when animation starts</param>
+   /// <param name="to_degree">Rotation degree when animation ends</param>
+   /// <param name="pivot">Pivot object for the center point. If the pivot object is NULL, then the object is rotated on itself.</param>
+   /// <param name="cx">X relative coordinate of the center point. The left end is 0.0 and the right end is 1.0 (the center is 0.5).</param>
+   /// <param name="cy">Y relative coordinate of the center point. The top end is 0.0 and the bottom end is 1.0 (the center is 0.5).</param>
+   /// <returns></returns>
+   virtual public  void GetRotate( out double from_degree,  out double to_degree,  out Efl.Canvas.Object pivot,  out double cx,  out double cy) {
+                                                                                                 Efl.Canvas.AnimationRotateNativeInherit.efl_animation_rotate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from_degree,  out to_degree,  out pivot,  out cx,  out cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Rotate property</summary>
+   /// <param name="from_degree">Rotation degree when animation starts</param>
+   /// <param name="to_degree">Rotation degree when animation ends</param>
+   /// <param name="pivot">Pivot object for the center point. If the pivot object is NULL, then the object is rotated on itself.</param>
+   /// <param name="cx">X relative coordinate of the center point. The left end is 0.0 and the right end is 1.0 (the center is 0.5).</param>
+   /// <param name="cy">Y relative coordinate of the center point. The top end is 0.0 and the bottom end is 1.0 (the center is 0.5).</param>
+   /// <returns></returns>
+   virtual public  void SetRotate( double from_degree,  double to_degree,  Efl.Canvas.Object pivot,  double cx,  double cy) {
+                                                                                                 Efl.Canvas.AnimationRotateNativeInherit.efl_animation_rotate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from_degree,  to_degree,  pivot,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Rotate absolute property</summary>
+   /// <param name="from_degree">Rotation degree when animation starts</param>
+   /// <param name="to_degree">Rotation degree when animation ends</param>
+   /// <param name="cx">X absolute coordinate of the center point.</param>
+   /// <param name="cy">Y absolute coordinate of the center point.</param>
+   /// <returns></returns>
+   virtual public  void GetRotateAbsolute( out double from_degree,  out double to_degree,  out  int cx,  out  int cy) {
+                                                                               Efl.Canvas.AnimationRotateNativeInherit.efl_animation_rotate_absolute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from_degree,  out to_degree,  out cx,  out cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Rotate absolute property</summary>
+   /// <param name="from_degree">Rotation degree when animation starts</param>
+   /// <param name="to_degree">Rotation degree when animation ends</param>
+   /// <param name="cx">X absolute coordinate of the center point.</param>
+   /// <param name="cy">Y absolute coordinate of the center point.</param>
+   /// <returns></returns>
+   virtual public  void SetRotateAbsolute( double from_degree,  double to_degree,   int cx,   int cy) {
+                                                                               Efl.Canvas.AnimationRotateNativeInherit.efl_animation_rotate_absolute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from_degree,  to_degree,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationRotate.efl_canvas_animation_rotate_class_get();
+   }
+}
+public class AnimationRotateNativeInherit : Efl.Canvas.AnimationNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_animation_rotate_get_static_delegate == null)
+      efl_animation_rotate_get_static_delegate = new efl_animation_rotate_get_delegate(rotate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_rotate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_rotate_get_static_delegate)});
+      if (efl_animation_rotate_set_static_delegate == null)
+      efl_animation_rotate_set_static_delegate = new efl_animation_rotate_set_delegate(rotate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_rotate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_rotate_set_static_delegate)});
+      if (efl_animation_rotate_absolute_get_static_delegate == null)
+      efl_animation_rotate_absolute_get_static_delegate = new efl_animation_rotate_absolute_get_delegate(rotate_absolute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_rotate_absolute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_rotate_absolute_get_static_delegate)});
+      if (efl_animation_rotate_absolute_set_static_delegate == null)
+      efl_animation_rotate_absolute_set_static_delegate = new efl_animation_rotate_absolute_set_delegate(rotate_absolute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_rotate_absolute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_rotate_absolute_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationRotate.efl_canvas_animation_rotate_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationRotate.efl_canvas_animation_rotate_class_get();
+   }
+
+
+    private delegate  void efl_animation_rotate_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double from_degree,   out double to_degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object pivot,   out double cx,   out double cy);
+
+
+    public delegate  void efl_animation_rotate_get_api_delegate(System.IntPtr obj,   out double from_degree,   out double to_degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object pivot,   out double cx,   out double cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_rotate_get_api_delegate> efl_animation_rotate_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_rotate_get_api_delegate>(_Module, "efl_animation_rotate_get");
+    private static  void rotate_get(System.IntPtr obj, System.IntPtr pd,  out double from_degree,  out double to_degree,  out Efl.Canvas.Object pivot,  out double cx,  out double cy)
+   {
+      Eina.Log.Debug("function efl_animation_rotate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                             from_degree = default(double);      to_degree = default(double);      pivot = default(Efl.Canvas.Object);      cx = default(double);      cy = default(double);                                       
+         try {
+            ((AnimationRotate)wrapper).GetRotate( out from_degree,  out to_degree,  out pivot,  out cx,  out cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_animation_rotate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from_degree,  out to_degree,  out pivot,  out cx,  out cy);
+      }
+   }
+   private static efl_animation_rotate_get_delegate efl_animation_rotate_get_static_delegate;
+
+
+    private delegate  void efl_animation_rotate_set_delegate(System.IntPtr obj, System.IntPtr pd,   double from_degree,   double to_degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pivot,   double cx,   double cy);
+
+
+    public delegate  void efl_animation_rotate_set_api_delegate(System.IntPtr obj,   double from_degree,   double to_degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pivot,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_rotate_set_api_delegate> efl_animation_rotate_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_rotate_set_api_delegate>(_Module, "efl_animation_rotate_set");
+    private static  void rotate_set(System.IntPtr obj, System.IntPtr pd,  double from_degree,  double to_degree,  Efl.Canvas.Object pivot,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_animation_rotate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((AnimationRotate)wrapper).SetRotate( from_degree,  to_degree,  pivot,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_animation_rotate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from_degree,  to_degree,  pivot,  cx,  cy);
+      }
+   }
+   private static efl_animation_rotate_set_delegate efl_animation_rotate_set_static_delegate;
+
+
+    private delegate  void efl_animation_rotate_absolute_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double from_degree,   out double to_degree,   out  int cx,   out  int cy);
+
+
+    public delegate  void efl_animation_rotate_absolute_get_api_delegate(System.IntPtr obj,   out double from_degree,   out double to_degree,   out  int cx,   out  int cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_rotate_absolute_get_api_delegate> efl_animation_rotate_absolute_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_rotate_absolute_get_api_delegate>(_Module, "efl_animation_rotate_absolute_get");
+    private static  void rotate_absolute_get(System.IntPtr obj, System.IntPtr pd,  out double from_degree,  out double to_degree,  out  int cx,  out  int cy)
+   {
+      Eina.Log.Debug("function efl_animation_rotate_absolute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       from_degree = default(double);      to_degree = default(double);      cx = default( int);      cy = default( int);                                 
+         try {
+            ((AnimationRotate)wrapper).GetRotateAbsolute( out from_degree,  out to_degree,  out cx,  out cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_animation_rotate_absolute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from_degree,  out to_degree,  out cx,  out cy);
+      }
+   }
+   private static efl_animation_rotate_absolute_get_delegate efl_animation_rotate_absolute_get_static_delegate;
+
+
+    private delegate  void efl_animation_rotate_absolute_set_delegate(System.IntPtr obj, System.IntPtr pd,   double from_degree,   double to_degree,    int cx,    int cy);
+
+
+    public delegate  void efl_animation_rotate_absolute_set_api_delegate(System.IntPtr obj,   double from_degree,   double to_degree,    int cx,    int cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_rotate_absolute_set_api_delegate> efl_animation_rotate_absolute_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_rotate_absolute_set_api_delegate>(_Module, "efl_animation_rotate_absolute_set");
+    private static  void rotate_absolute_set(System.IntPtr obj, System.IntPtr pd,  double from_degree,  double to_degree,   int cx,   int cy)
+   {
+      Eina.Log.Debug("function efl_animation_rotate_absolute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((AnimationRotate)wrapper).SetRotateAbsolute( from_degree,  to_degree,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_animation_rotate_absolute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from_degree,  to_degree,  cx,  cy);
+      }
+   }
+   private static efl_animation_rotate_absolute_set_delegate efl_animation_rotate_absolute_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_scale.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_scale.eo.cs
new file mode 100755 (executable)
index 0000000..e5d3622
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl scale animation class</summary>
+[AnimationScaleNativeInherit]
+public class AnimationScale : Efl.Canvas.Animation, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationScaleNativeInherit nativeInherit = new Efl.Canvas.AnimationScaleNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationScale))
+            return Efl.Canvas.AnimationScaleNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_scale_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationScale(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_scale_class_get(), typeof(AnimationScale), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationScale(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationScale(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationScale static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationScale(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Scale property</summary>
+   /// <param name="from_scale_x">Scale factor along x axis when animation starts</param>
+   /// <param name="from_scale_y">Scale factor along y axis when animation starts</param>
+   /// <param name="to_scale_x">Scale factor along x axis when animation ends</param>
+   /// <param name="to_scale_y">Scale factor along y axis when animation ends</param>
+   /// <param name="pivot">Pivot object for the center point. If the pivot object is NULL, then the object is scaled on itself.</param>
+   /// <param name="cx">X relative coordinate of the center point. The left end is 0.0 and the right end is 1.0 (the center is 0.5).</param>
+   /// <param name="cy">Y relative coordinate of the center point. The top end is 0.0 and the bottom end is 1.0 (the center is 0.5).</param>
+   /// <returns></returns>
+   virtual public  void GetScale( out double from_scale_x,  out double from_scale_y,  out double to_scale_x,  out double to_scale_y,  out Efl.Canvas.Object pivot,  out double cx,  out double cy) {
+                                                                                                                                     Efl.Canvas.AnimationScaleNativeInherit.efl_animation_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from_scale_x,  out from_scale_y,  out to_scale_x,  out to_scale_y,  out pivot,  out cx,  out cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Scale property</summary>
+   /// <param name="from_scale_x">Scale factor along x axis when animation starts</param>
+   /// <param name="from_scale_y">Scale factor along y axis when animation starts</param>
+   /// <param name="to_scale_x">Scale factor along x axis when animation ends</param>
+   /// <param name="to_scale_y">Scale factor along y axis when animation ends</param>
+   /// <param name="pivot">Pivot object for the center point. If the pivot object is NULL, then the object is scaled on itself.</param>
+   /// <param name="cx">X relative coordinate of the center point. The left end is 0.0 and the right end is 1.0 (the center is 0.5).</param>
+   /// <param name="cy">Y relative coordinate of the center point. The top end is 0.0 and the bottom end is 1.0 (the center is 0.5).</param>
+   /// <returns></returns>
+   virtual public  void SetScale( double from_scale_x,  double from_scale_y,  double to_scale_x,  double to_scale_y,  Efl.Canvas.Object pivot,  double cx,  double cy) {
+                                                                                                                                     Efl.Canvas.AnimationScaleNativeInherit.efl_animation_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from_scale_x,  from_scale_y,  to_scale_x,  to_scale_y,  pivot,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Scale absolute property</summary>
+   /// <param name="from_scale_x">Scale factor along x axis when animation starts</param>
+   /// <param name="from_scale_y">Scale factor along y axis when animation starts</param>
+   /// <param name="to_scale_x">Scale factor along x axis when animation ends</param>
+   /// <param name="to_scale_y">Scale factor along y axis when animation ends</param>
+   /// <param name="cx">X absolute coordinate of the center point.</param>
+   /// <param name="cy">Y absolute coordinate of the center point.</param>
+   /// <returns></returns>
+   virtual public  void GetScaleAbsolute( out double from_scale_x,  out double from_scale_y,  out double to_scale_x,  out double to_scale_y,  out  int cx,  out  int cy) {
+                                                                                                                   Efl.Canvas.AnimationScaleNativeInherit.efl_animation_scale_absolute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from_scale_x,  out from_scale_y,  out to_scale_x,  out to_scale_y,  out cx,  out cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Scale absolute property</summary>
+   /// <param name="from_scale_x">Scale factor along x axis when animation starts</param>
+   /// <param name="from_scale_y">Scale factor along y axis when animation starts</param>
+   /// <param name="to_scale_x">Scale factor along x axis when animation ends</param>
+   /// <param name="to_scale_y">Scale factor along y axis when animation ends</param>
+   /// <param name="cx">X absolute coordinate of the center point.</param>
+   /// <param name="cy">Y absolute coordinate of the center point.</param>
+   /// <returns></returns>
+   virtual public  void SetScaleAbsolute( double from_scale_x,  double from_scale_y,  double to_scale_x,  double to_scale_y,   int cx,   int cy) {
+                                                                                                                   Efl.Canvas.AnimationScaleNativeInherit.efl_animation_scale_absolute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from_scale_x,  from_scale_y,  to_scale_x,  to_scale_y,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationScale.efl_canvas_animation_scale_class_get();
+   }
+}
+public class AnimationScaleNativeInherit : Efl.Canvas.AnimationNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_animation_scale_get_static_delegate == null)
+      efl_animation_scale_get_static_delegate = new efl_animation_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_scale_get_static_delegate)});
+      if (efl_animation_scale_set_static_delegate == null)
+      efl_animation_scale_set_static_delegate = new efl_animation_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_scale_set_static_delegate)});
+      if (efl_animation_scale_absolute_get_static_delegate == null)
+      efl_animation_scale_absolute_get_static_delegate = new efl_animation_scale_absolute_get_delegate(scale_absolute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_scale_absolute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_scale_absolute_get_static_delegate)});
+      if (efl_animation_scale_absolute_set_static_delegate == null)
+      efl_animation_scale_absolute_set_static_delegate = new efl_animation_scale_absolute_set_delegate(scale_absolute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_scale_absolute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_scale_absolute_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationScale.efl_canvas_animation_scale_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationScale.efl_canvas_animation_scale_class_get();
+   }
+
+
+    private delegate  void efl_animation_scale_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double from_scale_x,   out double from_scale_y,   out double to_scale_x,   out double to_scale_y, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object pivot,   out double cx,   out double cy);
+
+
+    public delegate  void efl_animation_scale_get_api_delegate(System.IntPtr obj,   out double from_scale_x,   out double from_scale_y,   out double to_scale_x,   out double to_scale_y, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object pivot,   out double cx,   out double cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_scale_get_api_delegate> efl_animation_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_scale_get_api_delegate>(_Module, "efl_animation_scale_get");
+    private static  void scale_get(System.IntPtr obj, System.IntPtr pd,  out double from_scale_x,  out double from_scale_y,  out double to_scale_x,  out double to_scale_y,  out Efl.Canvas.Object pivot,  out double cx,  out double cy)
+   {
+      Eina.Log.Debug("function efl_animation_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                         from_scale_x = default(double);      from_scale_y = default(double);      to_scale_x = default(double);      to_scale_y = default(double);      pivot = default(Efl.Canvas.Object);      cx = default(double);      cy = default(double);                                                   
+         try {
+            ((AnimationScale)wrapper).GetScale( out from_scale_x,  out from_scale_y,  out to_scale_x,  out to_scale_y,  out pivot,  out cx,  out cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_animation_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from_scale_x,  out from_scale_y,  out to_scale_x,  out to_scale_y,  out pivot,  out cx,  out cy);
+      }
+   }
+   private static efl_animation_scale_get_delegate efl_animation_scale_get_static_delegate;
+
+
+    private delegate  void efl_animation_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double from_scale_x,   double from_scale_y,   double to_scale_x,   double to_scale_y, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pivot,   double cx,   double cy);
+
+
+    public delegate  void efl_animation_scale_set_api_delegate(System.IntPtr obj,   double from_scale_x,   double from_scale_y,   double to_scale_x,   double to_scale_y, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pivot,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_scale_set_api_delegate> efl_animation_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_scale_set_api_delegate>(_Module, "efl_animation_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double from_scale_x,  double from_scale_y,  double to_scale_x,  double to_scale_y,  Efl.Canvas.Object pivot,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_animation_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((AnimationScale)wrapper).SetScale( from_scale_x,  from_scale_y,  to_scale_x,  to_scale_y,  pivot,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_animation_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from_scale_x,  from_scale_y,  to_scale_x,  to_scale_y,  pivot,  cx,  cy);
+      }
+   }
+   private static efl_animation_scale_set_delegate efl_animation_scale_set_static_delegate;
+
+
+    private delegate  void efl_animation_scale_absolute_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double from_scale_x,   out double from_scale_y,   out double to_scale_x,   out double to_scale_y,   out  int cx,   out  int cy);
+
+
+    public delegate  void efl_animation_scale_absolute_get_api_delegate(System.IntPtr obj,   out double from_scale_x,   out double from_scale_y,   out double to_scale_x,   out double to_scale_y,   out  int cx,   out  int cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_scale_absolute_get_api_delegate> efl_animation_scale_absolute_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_scale_absolute_get_api_delegate>(_Module, "efl_animation_scale_absolute_get");
+    private static  void scale_absolute_get(System.IntPtr obj, System.IntPtr pd,  out double from_scale_x,  out double from_scale_y,  out double to_scale_x,  out double to_scale_y,  out  int cx,  out  int cy)
+   {
+      Eina.Log.Debug("function efl_animation_scale_absolute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   from_scale_x = default(double);      from_scale_y = default(double);      to_scale_x = default(double);      to_scale_y = default(double);      cx = default( int);      cy = default( int);                                             
+         try {
+            ((AnimationScale)wrapper).GetScaleAbsolute( out from_scale_x,  out from_scale_y,  out to_scale_x,  out to_scale_y,  out cx,  out cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_animation_scale_absolute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from_scale_x,  out from_scale_y,  out to_scale_x,  out to_scale_y,  out cx,  out cy);
+      }
+   }
+   private static efl_animation_scale_absolute_get_delegate efl_animation_scale_absolute_get_static_delegate;
+
+
+    private delegate  void efl_animation_scale_absolute_set_delegate(System.IntPtr obj, System.IntPtr pd,   double from_scale_x,   double from_scale_y,   double to_scale_x,   double to_scale_y,    int cx,    int cy);
+
+
+    public delegate  void efl_animation_scale_absolute_set_api_delegate(System.IntPtr obj,   double from_scale_x,   double from_scale_y,   double to_scale_x,   double to_scale_y,    int cx,    int cy);
+    public static Efl.Eo.FunctionWrapper<efl_animation_scale_absolute_set_api_delegate> efl_animation_scale_absolute_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_scale_absolute_set_api_delegate>(_Module, "efl_animation_scale_absolute_set");
+    private static  void scale_absolute_set(System.IntPtr obj, System.IntPtr pd,  double from_scale_x,  double from_scale_y,  double to_scale_x,  double to_scale_y,   int cx,   int cy)
+   {
+      Eina.Log.Debug("function efl_animation_scale_absolute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((AnimationScale)wrapper).SetScaleAbsolute( from_scale_x,  from_scale_y,  to_scale_x,  to_scale_y,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_animation_scale_absolute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from_scale_x,  from_scale_y,  to_scale_x,  to_scale_y,  cx,  cy);
+      }
+   }
+   private static efl_animation_scale_absolute_set_delegate efl_animation_scale_absolute_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_translate.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_translate.eo.cs
new file mode 100755 (executable)
index 0000000..5051aec
--- /dev/null
@@ -0,0 +1,239 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl translate animation class</summary>
+[AnimationTranslateNativeInherit]
+public class AnimationTranslate : Efl.Canvas.Animation, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.AnimationTranslateNativeInherit nativeInherit = new Efl.Canvas.AnimationTranslateNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnimationTranslate))
+            return Efl.Canvas.AnimationTranslateNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_animation_translate_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AnimationTranslate(Efl.Object parent= null
+         ) :
+      base(efl_canvas_animation_translate_class_get(), typeof(AnimationTranslate), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnimationTranslate(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnimationTranslate(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnimationTranslate static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnimationTranslate(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Translate property</summary>
+   /// <param name="from_x">Distance moved along x axis when animation starts</param>
+   /// <param name="from_y">Distance moved along y axis when animation starts</param>
+   /// <param name="to_x">Distance moved along x axis when animation ends</param>
+   /// <param name="to_y">Distance moved along y axis when animation ends</param>
+   /// <returns></returns>
+   virtual public  void GetTranslate( out  int from_x,  out  int from_y,  out  int to_x,  out  int to_y) {
+                                                                               Efl.Canvas.AnimationTranslateNativeInherit.efl_animation_translate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from_x,  out from_y,  out to_x,  out to_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Translate property</summary>
+   /// <param name="from_x">Distance moved along x axis when animation starts</param>
+   /// <param name="from_y">Distance moved along y axis when animation starts</param>
+   /// <param name="to_x">Distance moved along x axis when animation ends</param>
+   /// <param name="to_y">Distance moved along y axis when animation ends</param>
+   /// <returns></returns>
+   virtual public  void SetTranslate(  int from_x,   int from_y,   int to_x,   int to_y) {
+                                                                               Efl.Canvas.AnimationTranslateNativeInherit.efl_animation_translate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from_x,  from_y,  to_x,  to_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Translate absolute property</summary>
+   /// <param name="from_x">X coordinate when animation starts</param>
+   /// <param name="from_y">Y coordinate when animation starts</param>
+   /// <param name="to_x">X coordinate when animation ends</param>
+   /// <param name="to_y">Y coordinate when animation ends</param>
+   /// <returns></returns>
+   virtual public  void GetTranslateAbsolute( out  int from_x,  out  int from_y,  out  int to_x,  out  int to_y) {
+                                                                               Efl.Canvas.AnimationTranslateNativeInherit.efl_animation_translate_absolute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from_x,  out from_y,  out to_x,  out to_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Translate absolute property</summary>
+   /// <param name="from_x">X coordinate when animation starts</param>
+   /// <param name="from_y">Y coordinate when animation starts</param>
+   /// <param name="to_x">X coordinate when animation ends</param>
+   /// <param name="to_y">Y coordinate when animation ends</param>
+   /// <returns></returns>
+   virtual public  void SetTranslateAbsolute(  int from_x,   int from_y,   int to_x,   int to_y) {
+                                                                               Efl.Canvas.AnimationTranslateNativeInherit.efl_animation_translate_absolute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from_x,  from_y,  to_x,  to_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationTranslate.efl_canvas_animation_translate_class_get();
+   }
+}
+public class AnimationTranslateNativeInherit : Efl.Canvas.AnimationNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_animation_translate_get_static_delegate == null)
+      efl_animation_translate_get_static_delegate = new efl_animation_translate_get_delegate(translate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_translate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_translate_get_static_delegate)});
+      if (efl_animation_translate_set_static_delegate == null)
+      efl_animation_translate_set_static_delegate = new efl_animation_translate_set_delegate(translate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_translate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_translate_set_static_delegate)});
+      if (efl_animation_translate_absolute_get_static_delegate == null)
+      efl_animation_translate_absolute_get_static_delegate = new efl_animation_translate_absolute_get_delegate(translate_absolute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_translate_absolute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_translate_absolute_get_static_delegate)});
+      if (efl_animation_translate_absolute_set_static_delegate == null)
+      efl_animation_translate_absolute_set_static_delegate = new efl_animation_translate_absolute_set_delegate(translate_absolute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_animation_translate_absolute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_animation_translate_absolute_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.AnimationTranslate.efl_canvas_animation_translate_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.AnimationTranslate.efl_canvas_animation_translate_class_get();
+   }
+
+
+    private delegate  void efl_animation_translate_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int from_x,   out  int from_y,   out  int to_x,   out  int to_y);
+
+
+    public delegate  void efl_animation_translate_get_api_delegate(System.IntPtr obj,   out  int from_x,   out  int from_y,   out  int to_x,   out  int to_y);
+    public static Efl.Eo.FunctionWrapper<efl_animation_translate_get_api_delegate> efl_animation_translate_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_translate_get_api_delegate>(_Module, "efl_animation_translate_get");
+    private static  void translate_get(System.IntPtr obj, System.IntPtr pd,  out  int from_x,  out  int from_y,  out  int to_x,  out  int to_y)
+   {
+      Eina.Log.Debug("function efl_animation_translate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       from_x = default( int);      from_y = default( int);      to_x = default( int);      to_y = default( int);                                 
+         try {
+            ((AnimationTranslate)wrapper).GetTranslate( out from_x,  out from_y,  out to_x,  out to_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_animation_translate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from_x,  out from_y,  out to_x,  out to_y);
+      }
+   }
+   private static efl_animation_translate_get_delegate efl_animation_translate_get_static_delegate;
+
+
+    private delegate  void efl_animation_translate_set_delegate(System.IntPtr obj, System.IntPtr pd,    int from_x,    int from_y,    int to_x,    int to_y);
+
+
+    public delegate  void efl_animation_translate_set_api_delegate(System.IntPtr obj,    int from_x,    int from_y,    int to_x,    int to_y);
+    public static Efl.Eo.FunctionWrapper<efl_animation_translate_set_api_delegate> efl_animation_translate_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_translate_set_api_delegate>(_Module, "efl_animation_translate_set");
+    private static  void translate_set(System.IntPtr obj, System.IntPtr pd,   int from_x,   int from_y,   int to_x,   int to_y)
+   {
+      Eina.Log.Debug("function efl_animation_translate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((AnimationTranslate)wrapper).SetTranslate( from_x,  from_y,  to_x,  to_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_animation_translate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from_x,  from_y,  to_x,  to_y);
+      }
+   }
+   private static efl_animation_translate_set_delegate efl_animation_translate_set_static_delegate;
+
+
+    private delegate  void efl_animation_translate_absolute_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int from_x,   out  int from_y,   out  int to_x,   out  int to_y);
+
+
+    public delegate  void efl_animation_translate_absolute_get_api_delegate(System.IntPtr obj,   out  int from_x,   out  int from_y,   out  int to_x,   out  int to_y);
+    public static Efl.Eo.FunctionWrapper<efl_animation_translate_absolute_get_api_delegate> efl_animation_translate_absolute_get_ptr = new Efl.Eo.FunctionWrapper<efl_animation_translate_absolute_get_api_delegate>(_Module, "efl_animation_translate_absolute_get");
+    private static  void translate_absolute_get(System.IntPtr obj, System.IntPtr pd,  out  int from_x,  out  int from_y,  out  int to_x,  out  int to_y)
+   {
+      Eina.Log.Debug("function efl_animation_translate_absolute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       from_x = default( int);      from_y = default( int);      to_x = default( int);      to_y = default( int);                                 
+         try {
+            ((AnimationTranslate)wrapper).GetTranslateAbsolute( out from_x,  out from_y,  out to_x,  out to_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_animation_translate_absolute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from_x,  out from_y,  out to_x,  out to_y);
+      }
+   }
+   private static efl_animation_translate_absolute_get_delegate efl_animation_translate_absolute_get_static_delegate;
+
+
+    private delegate  void efl_animation_translate_absolute_set_delegate(System.IntPtr obj, System.IntPtr pd,    int from_x,    int from_y,    int to_x,    int to_y);
+
+
+    public delegate  void efl_animation_translate_absolute_set_api_delegate(System.IntPtr obj,    int from_x,    int from_y,    int to_x,    int to_y);
+    public static Efl.Eo.FunctionWrapper<efl_animation_translate_absolute_set_api_delegate> efl_animation_translate_absolute_set_ptr = new Efl.Eo.FunctionWrapper<efl_animation_translate_absolute_set_api_delegate>(_Module, "efl_animation_translate_absolute_set");
+    private static  void translate_absolute_set(System.IntPtr obj, System.IntPtr pd,   int from_x,   int from_y,   int to_x,   int to_y)
+   {
+      Eina.Log.Debug("function efl_animation_translate_absolute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((AnimationTranslate)wrapper).SetTranslateAbsolute( from_x,  from_y,  to_x,  to_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_animation_translate_absolute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from_x,  from_y,  to_x,  to_y);
+      }
+   }
+   private static efl_animation_translate_absolute_set_delegate efl_animation_translate_absolute_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_animation_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_canvas_animation_types.eot.cs
new file mode 100755 (executable)
index 0000000..834c5c0
--- /dev/null
@@ -0,0 +1,66 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Animation repeat mode</summary>
+public enum AnimationRepeatMode
+{
+/// <summary>Restart animation when the animation ends.</summary>
+Restart = 0,
+/// <summary>Reverse animation when the animation ends.</summary>
+Reverse = 1,
+}
+} } 
+namespace Efl { namespace Canvas { 
+/// <summary>Information of event running</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct AnimationPlayerEventRunning
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator AnimationPlayerEventRunning(IntPtr ptr)
+   {
+      var tmp = (AnimationPlayerEventRunning_StructInternal)Marshal.PtrToStructure(ptr, typeof(AnimationPlayerEventRunning_StructInternal));
+      return AnimationPlayerEventRunning_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct AnimationPlayerEventRunning.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct AnimationPlayerEventRunning_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator AnimationPlayerEventRunning(AnimationPlayerEventRunning_StructInternal struct_)
+   {
+      return AnimationPlayerEventRunning_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator AnimationPlayerEventRunning_StructInternal(AnimationPlayerEventRunning struct_)
+   {
+      return AnimationPlayerEventRunning_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct AnimationPlayerEventRunning</summary>
+public static class AnimationPlayerEventRunning_StructConversion
+{
+   internal static AnimationPlayerEventRunning_StructInternal ToInternal(AnimationPlayerEventRunning _external_struct)
+   {
+      var _internal_struct = new AnimationPlayerEventRunning_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static AnimationPlayerEventRunning ToManaged(AnimationPlayerEventRunning_StructInternal _internal_struct)
+   {
+      var _external_struct = new AnimationPlayerEventRunning();
+
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_event_grabber.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_event_grabber.eo.cs
new file mode 100755 (executable)
index 0000000..76fa510
--- /dev/null
@@ -0,0 +1,180 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Low-level rectangle object.
+/// This provides a smart version of the typical &quot;event rectangle&quot;, which allows objects to set this as their parent and route events to a group of objects. Events will not propagate to non-member objects below this object.
+/// 
+/// Adding members is done just like a normal smart object, using efl_canvas_group_member_add (Eo API) or evas_object_smart_member_add (legacy).
+/// 
+/// Child objects are not modified in any way, unlike other types of smart objects.
+/// 
+/// No child objects should be stacked above the event grabber parent while the grabber is visible. A critical error will be raised if this is detected.
+/// 1.20</summary>
+[EventGrabberNativeInherit]
+public class EventGrabber : Efl.Canvas.Group, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.EventGrabberNativeInherit nativeInherit = new Efl.Canvas.EventGrabberNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (EventGrabber))
+            return Efl.Canvas.EventGrabberNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_event_grabber_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public EventGrabber(Efl.Object parent= null
+         ) :
+      base(efl_canvas_event_grabber_class_get(), typeof(EventGrabber), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public EventGrabber(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected EventGrabber(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static EventGrabber static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new EventGrabber(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Stops the grabber from updating its internal stacking order while visible
+   /// 1.20</summary>
+   /// <returns>If <c>true</c>, stop updating
+   /// 1.20</returns>
+   virtual public bool GetFreezeWhenVisible() {
+       var _ret_var = Efl.Canvas.EventGrabberNativeInherit.efl_canvas_event_grabber_freeze_when_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stops the grabber from updating its internal stacking order while visible
+   /// 1.20</summary>
+   /// <param name="set">If <c>true</c>, stop updating
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFreezeWhenVisible( bool set) {
+                         Efl.Canvas.EventGrabberNativeInherit.efl_canvas_event_grabber_freeze_when_visible_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), set);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Stops the grabber from updating its internal stacking order while visible
+/// 1.20</summary>
+/// <value>If <c>true</c>, stop updating
+/// 1.20</value>
+   public bool FreezeWhenVisible {
+      get { return GetFreezeWhenVisible(); }
+      set { SetFreezeWhenVisible( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.EventGrabber.efl_canvas_event_grabber_class_get();
+   }
+}
+public class EventGrabberNativeInherit : Efl.Canvas.GroupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_event_grabber_freeze_when_visible_get_static_delegate == null)
+      efl_canvas_event_grabber_freeze_when_visible_get_static_delegate = new efl_canvas_event_grabber_freeze_when_visible_get_delegate(freeze_when_visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_event_grabber_freeze_when_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_event_grabber_freeze_when_visible_get_static_delegate)});
+      if (efl_canvas_event_grabber_freeze_when_visible_set_static_delegate == null)
+      efl_canvas_event_grabber_freeze_when_visible_set_static_delegate = new efl_canvas_event_grabber_freeze_when_visible_set_delegate(freeze_when_visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_event_grabber_freeze_when_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_event_grabber_freeze_when_visible_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.EventGrabber.efl_canvas_event_grabber_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.EventGrabber.efl_canvas_event_grabber_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_event_grabber_freeze_when_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_event_grabber_freeze_when_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_event_grabber_freeze_when_visible_get_api_delegate> efl_canvas_event_grabber_freeze_when_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_event_grabber_freeze_when_visible_get_api_delegate>(_Module, "efl_canvas_event_grabber_freeze_when_visible_get");
+    private static bool freeze_when_visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_event_grabber_freeze_when_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((EventGrabber)wrapper).GetFreezeWhenVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_event_grabber_freeze_when_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_event_grabber_freeze_when_visible_get_delegate efl_canvas_event_grabber_freeze_when_visible_get_static_delegate;
+
+
+    private delegate  void efl_canvas_event_grabber_freeze_when_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool set);
+
+
+    public delegate  void efl_canvas_event_grabber_freeze_when_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool set);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_event_grabber_freeze_when_visible_set_api_delegate> efl_canvas_event_grabber_freeze_when_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_event_grabber_freeze_when_visible_set_api_delegate>(_Module, "efl_canvas_event_grabber_freeze_when_visible_set");
+    private static  void freeze_when_visible_set(System.IntPtr obj, System.IntPtr pd,  bool set)
+   {
+      Eina.Log.Debug("function efl_canvas_event_grabber_freeze_when_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((EventGrabber)wrapper).SetFreezeWhenVisible( set);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_event_grabber_freeze_when_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  set);
+      }
+   }
+   private static efl_canvas_event_grabber_freeze_when_visible_set_delegate efl_canvas_event_grabber_freeze_when_visible_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_filter_internal.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_filter_internal.eo.cs
new file mode 100755 (executable)
index 0000000..b1ea7fa
--- /dev/null
@@ -0,0 +1,1177 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { namespace Filter { 
+/// <summary>Evas internal implementation of filters.</summary>
+[InternalNativeInherit]
+public interface Internal : 
+   Efl.Gfx.Filter ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Marks this filter as changed.</summary>
+/// <param name="val"><c>true</c> if filter changed, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetFilterChanged( bool val);
+   /// <summary>Marks this filter as invalid.</summary>
+/// <param name="val"><c>true</c> if filter is invalid, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetFilterInvalid( bool val);
+   /// <summary>Retrieve cached output buffer, if any.
+/// Does not increment the reference count.</summary>
+/// <returns>Output buffer</returns>
+ System.IntPtr GetFilterOutputBuffer();
+   /// <summary>Called by Efl.Canvas.Filter.Internal to determine whether the input is alpha or rgba.</summary>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool FilterInputAlpha();
+   /// <summary>Called by Efl.Canvas.Filter.Internal to request the parent class for state information (color, etc...).</summary>
+/// <param name="state">State info to fill in</param>
+/// <param name="data">Private data for the class</param>
+/// <returns></returns>
+ void FilterStatePrepare( out Efl.Canvas.Filter.State state,   System.IntPtr data);
+   /// <summary>Called by Efl.Canvas.Filter.Internal when the parent class must render the input.</summary>
+/// <param name="filter">Current filter context</param>
+/// <param name="engine">Engine context</param>
+/// <param name="output">Output context</param>
+/// <param name="drawctx">Draw context (for evas engine)</param>
+/// <param name="data">Private data used by textblock</param>
+/// <param name="l">Left</param>
+/// <param name="r">Right</param>
+/// <param name="t">Top</param>
+/// <param name="b">Bottom</param>
+/// <param name="x">X offset</param>
+/// <param name="y">Y offset</param>
+/// <param name="do_async"><c>true</c> when the operation should be done asynchronously, <c>false</c> otherwise</param>
+/// <returns>Indicates success from the object render function.</returns>
+bool FilterInputRender(  System.IntPtr filter,   System.IntPtr engine,   System.IntPtr output,   System.IntPtr drawctx,   System.IntPtr data,   int l,   int r,   int t,   int b,   int x,   int y,  bool do_async);
+   /// <summary>Called when filter changes must trigger a redraw of the object.
+/// Virtual, to be implemented in the parent class.</summary>
+/// <returns></returns>
+ void FilterDirty();
+                        /// <summary>Marks this filter as changed.</summary>
+/// <value><c>true</c> if filter changed, <c>false</c> otherwise</value>
+   bool FilterChanged {
+      set ;
+   }
+   /// <summary>Marks this filter as invalid.</summary>
+/// <value><c>true</c> if filter is invalid, <c>false</c> otherwise</value>
+   bool FilterInvalid {
+      set ;
+   }
+   /// <summary>Retrieve cached output buffer, if any.
+/// Does not increment the reference count.</summary>
+/// <value>Output buffer</value>
+    System.IntPtr FilterOutputBuffer {
+      get ;
+   }
+}
+/// <summary>Evas internal implementation of filters.</summary>
+sealed public class InternalConcrete : 
+
+Internal
+   , Efl.Gfx.Filter
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (InternalConcrete))
+            return Efl.Canvas.Filter.InternalNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_filter_internal_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public InternalConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~InternalConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static InternalConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new InternalConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Marks this filter as changed.</summary>
+   /// <param name="val"><c>true</c> if filter changed, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetFilterChanged( bool val) {
+                         Efl.Canvas.Filter.InternalNativeInherit.evas_filter_changed_set_ptr.Value.Delegate(this.NativeHandle, val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Marks this filter as invalid.</summary>
+   /// <param name="val"><c>true</c> if filter is invalid, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetFilterInvalid( bool val) {
+                         Efl.Canvas.Filter.InternalNativeInherit.evas_filter_invalid_set_ptr.Value.Delegate(this.NativeHandle, val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieve cached output buffer, if any.
+   /// Does not increment the reference count.</summary>
+   /// <returns>Output buffer</returns>
+   public  System.IntPtr GetFilterOutputBuffer() {
+       var _ret_var = Efl.Canvas.Filter.InternalNativeInherit.evas_filter_output_buffer_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Called by Efl.Canvas.Filter.Internal to determine whether the input is alpha or rgba.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool FilterInputAlpha() {
+       var _ret_var = Efl.Canvas.Filter.InternalNativeInherit.evas_filter_input_alpha_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Called by Efl.Canvas.Filter.Internal to request the parent class for state information (color, etc...).</summary>
+   /// <param name="state">State info to fill in</param>
+   /// <param name="data">Private data for the class</param>
+   /// <returns></returns>
+   public  void FilterStatePrepare( out Efl.Canvas.Filter.State state,   System.IntPtr data) {
+                   var _out_state = new Efl.Canvas.Filter.State_StructInternal();
+                        Efl.Canvas.Filter.InternalNativeInherit.evas_filter_state_prepare_ptr.Value.Delegate(this.NativeHandle, out _out_state,  data);
+      Eina.Error.RaiseIfUnhandledException();
+      state = Efl.Canvas.Filter.State_StructConversion.ToManaged(_out_state);
+                         }
+   /// <summary>Called by Efl.Canvas.Filter.Internal when the parent class must render the input.</summary>
+   /// <param name="filter">Current filter context</param>
+   /// <param name="engine">Engine context</param>
+   /// <param name="output">Output context</param>
+   /// <param name="drawctx">Draw context (for evas engine)</param>
+   /// <param name="data">Private data used by textblock</param>
+   /// <param name="l">Left</param>
+   /// <param name="r">Right</param>
+   /// <param name="t">Top</param>
+   /// <param name="b">Bottom</param>
+   /// <param name="x">X offset</param>
+   /// <param name="y">Y offset</param>
+   /// <param name="do_async"><c>true</c> when the operation should be done asynchronously, <c>false</c> otherwise</param>
+   /// <returns>Indicates success from the object render function.</returns>
+   public bool FilterInputRender(  System.IntPtr filter,   System.IntPtr engine,   System.IntPtr output,   System.IntPtr drawctx,   System.IntPtr data,   int l,   int r,   int t,   int b,   int x,   int y,  bool do_async) {
+                                                                                                                                                                                                                               var _ret_var = Efl.Canvas.Filter.InternalNativeInherit.evas_filter_input_render_ptr.Value.Delegate(this.NativeHandle, filter,  engine,  output,  drawctx,  data,  l,  r,  t,  b,  x,  y,  do_async);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                                                      return _ret_var;
+ }
+   /// <summary>Called when filter changes must trigger a redraw of the object.
+   /// Virtual, to be implemented in the parent class.</summary>
+   /// <returns></returns>
+   public  void FilterDirty() {
+       Efl.Canvas.Filter.InternalNativeInherit.evas_filter_dirty_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Gets the code of the filter program set on this object. May be <c>null</c>.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterProgram( out  System.String code,  out  System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_get_ptr.Value.Delegate(this.NativeHandle, out code,  out name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set a graphical filter program on this object.
+   /// Valid for Text and Image objects at the moment.
+   /// 
+   /// The argument passed to this function is a string containing a valid Lua program based on the filters API as described in the &quot;EFL Graphics Filters&quot; reference page.
+   /// 
+   /// Set to <c>null</c> to disable filtering.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterProgram(  System.String code,   System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_set_ptr.Value.Delegate(this.NativeHandle, code,  name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterState( out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_get_ptr.Value.Delegate(this.NativeHandle, out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterState(  System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_set_ptr.Value.Delegate(this.NativeHandle, cur_state,  cur_val,  next_state,  next_val,  pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Gets the padding required to apply this filter.
+   /// 1.18</summary>
+   /// <param name="l">Padding on the left
+   /// 1.18</param>
+   /// <param name="r">Padding on the right
+   /// 1.18</param>
+   /// <param name="t">Padding on the top
+   /// 1.18</param>
+   /// <param name="b">Padding on the bottom
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterPadding( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.FilterNativeInherit.efl_gfx_filter_padding_get_ptr.Value.Delegate(this.NativeHandle, out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <returns>Object to use as a source of pixels.
+   /// 1.18</returns>
+   public Efl.Gfx.Entity GetFilterSource(  System.String name) {
+                         var _ret_var = Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_get_ptr.Value.Delegate(this.NativeHandle, name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <param name="source">Object to use as a source of pixels.
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterSource(  System.String name,  Efl.Gfx.Entity source) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_set_ptr.Value.Delegate(this.NativeHandle, name,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterData(  System.String name,  out  System.String value,  out bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_get_ptr.Value.Delegate(this.NativeHandle, name,  out value,  out execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterData(  System.String name,   System.String value,  bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_set_ptr.Value.Delegate(this.NativeHandle, name,  value,  execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Marks this filter as changed.</summary>
+/// <value><c>true</c> if filter changed, <c>false</c> otherwise</value>
+   public bool FilterChanged {
+      set { SetFilterChanged( value); }
+   }
+   /// <summary>Marks this filter as invalid.</summary>
+/// <value><c>true</c> if filter is invalid, <c>false</c> otherwise</value>
+   public bool FilterInvalid {
+      set { SetFilterInvalid( value); }
+   }
+   /// <summary>Retrieve cached output buffer, if any.
+/// Does not increment the reference count.</summary>
+/// <value>Output buffer</value>
+   public  System.IntPtr FilterOutputBuffer {
+      get { return GetFilterOutputBuffer(); }
+   }
+}
+public class InternalNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (evas_filter_changed_set_static_delegate == null)
+      evas_filter_changed_set_static_delegate = new evas_filter_changed_set_delegate(filter_changed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_changed_set"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_changed_set_static_delegate)});
+      if (evas_filter_invalid_set_static_delegate == null)
+      evas_filter_invalid_set_static_delegate = new evas_filter_invalid_set_delegate(filter_invalid_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_invalid_set"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_invalid_set_static_delegate)});
+      if (evas_filter_output_buffer_get_static_delegate == null)
+      evas_filter_output_buffer_get_static_delegate = new evas_filter_output_buffer_get_delegate(filter_output_buffer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_output_buffer_get"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_output_buffer_get_static_delegate)});
+      if (evas_filter_input_alpha_static_delegate == null)
+      evas_filter_input_alpha_static_delegate = new evas_filter_input_alpha_delegate(filter_input_alpha);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_input_alpha"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_input_alpha_static_delegate)});
+      if (evas_filter_state_prepare_static_delegate == null)
+      evas_filter_state_prepare_static_delegate = new evas_filter_state_prepare_delegate(filter_state_prepare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_state_prepare"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_state_prepare_static_delegate)});
+      if (evas_filter_input_render_static_delegate == null)
+      evas_filter_input_render_static_delegate = new evas_filter_input_render_delegate(filter_input_render);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_input_render"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_input_render_static_delegate)});
+      if (evas_filter_dirty_static_delegate == null)
+      evas_filter_dirty_static_delegate = new evas_filter_dirty_delegate(filter_dirty);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_dirty"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_dirty_static_delegate)});
+      if (efl_gfx_filter_program_get_static_delegate == null)
+      efl_gfx_filter_program_get_static_delegate = new efl_gfx_filter_program_get_delegate(filter_program_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_get_static_delegate)});
+      if (efl_gfx_filter_program_set_static_delegate == null)
+      efl_gfx_filter_program_set_static_delegate = new efl_gfx_filter_program_set_delegate(filter_program_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_set_static_delegate)});
+      if (efl_gfx_filter_state_get_static_delegate == null)
+      efl_gfx_filter_state_get_static_delegate = new efl_gfx_filter_state_get_delegate(filter_state_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_get_static_delegate)});
+      if (efl_gfx_filter_state_set_static_delegate == null)
+      efl_gfx_filter_state_set_static_delegate = new efl_gfx_filter_state_set_delegate(filter_state_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_set_static_delegate)});
+      if (efl_gfx_filter_padding_get_static_delegate == null)
+      efl_gfx_filter_padding_get_static_delegate = new efl_gfx_filter_padding_get_delegate(filter_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_padding_get_static_delegate)});
+      if (efl_gfx_filter_source_get_static_delegate == null)
+      efl_gfx_filter_source_get_static_delegate = new efl_gfx_filter_source_get_delegate(filter_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_get_static_delegate)});
+      if (efl_gfx_filter_source_set_static_delegate == null)
+      efl_gfx_filter_source_set_static_delegate = new efl_gfx_filter_source_set_delegate(filter_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_set_static_delegate)});
+      if (efl_gfx_filter_data_get_static_delegate == null)
+      efl_gfx_filter_data_get_static_delegate = new efl_gfx_filter_data_get_delegate(filter_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_get_static_delegate)});
+      if (efl_gfx_filter_data_set_static_delegate == null)
+      efl_gfx_filter_data_set_static_delegate = new efl_gfx_filter_data_set_delegate(filter_data_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Filter.InternalConcrete.efl_canvas_filter_internal_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Filter.InternalConcrete.efl_canvas_filter_internal_mixin_get();
+   }
+
+
+    private delegate  void evas_filter_changed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void evas_filter_changed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<evas_filter_changed_set_api_delegate> evas_filter_changed_set_ptr = new Efl.Eo.FunctionWrapper<evas_filter_changed_set_api_delegate>(_Module, "evas_filter_changed_set");
+    private static  void filter_changed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function evas_filter_changed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InternalConcrete)wrapper).SetFilterChanged( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         evas_filter_changed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static evas_filter_changed_set_delegate evas_filter_changed_set_static_delegate;
+
+
+    private delegate  void evas_filter_invalid_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void evas_filter_invalid_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<evas_filter_invalid_set_api_delegate> evas_filter_invalid_set_ptr = new Efl.Eo.FunctionWrapper<evas_filter_invalid_set_api_delegate>(_Module, "evas_filter_invalid_set");
+    private static  void filter_invalid_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function evas_filter_invalid_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InternalConcrete)wrapper).SetFilterInvalid( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         evas_filter_invalid_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static evas_filter_invalid_set_delegate evas_filter_invalid_set_static_delegate;
+
+
+    private delegate  System.IntPtr evas_filter_output_buffer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr evas_filter_output_buffer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<evas_filter_output_buffer_get_api_delegate> evas_filter_output_buffer_get_ptr = new Efl.Eo.FunctionWrapper<evas_filter_output_buffer_get_api_delegate>(_Module, "evas_filter_output_buffer_get");
+    private static  System.IntPtr filter_output_buffer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function evas_filter_output_buffer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((InternalConcrete)wrapper).GetFilterOutputBuffer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return evas_filter_output_buffer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static evas_filter_output_buffer_get_delegate evas_filter_output_buffer_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool evas_filter_input_alpha_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool evas_filter_input_alpha_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<evas_filter_input_alpha_api_delegate> evas_filter_input_alpha_ptr = new Efl.Eo.FunctionWrapper<evas_filter_input_alpha_api_delegate>(_Module, "evas_filter_input_alpha");
+    private static bool filter_input_alpha(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function evas_filter_input_alpha was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InternalConcrete)wrapper).FilterInputAlpha();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return evas_filter_input_alpha_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static evas_filter_input_alpha_delegate evas_filter_input_alpha_static_delegate;
+
+
+    private delegate  void evas_filter_state_prepare_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Canvas.Filter.State_StructInternal state,    System.IntPtr data);
+
+
+    public delegate  void evas_filter_state_prepare_api_delegate(System.IntPtr obj,   out Efl.Canvas.Filter.State_StructInternal state,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<evas_filter_state_prepare_api_delegate> evas_filter_state_prepare_ptr = new Efl.Eo.FunctionWrapper<evas_filter_state_prepare_api_delegate>(_Module, "evas_filter_state_prepare");
+    private static  void filter_state_prepare(System.IntPtr obj, System.IntPtr pd,  out Efl.Canvas.Filter.State_StructInternal state,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function evas_filter_state_prepare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Canvas.Filter.State _out_state = default(Efl.Canvas.Filter.State);
+                           
+         try {
+            ((InternalConcrete)wrapper).FilterStatePrepare( out _out_state,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      state = Efl.Canvas.Filter.State_StructConversion.ToInternal(_out_state);
+                              } else {
+         evas_filter_state_prepare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out state,  data);
+      }
+   }
+   private static evas_filter_state_prepare_delegate evas_filter_state_prepare_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool evas_filter_input_render_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr filter,    System.IntPtr engine,    System.IntPtr output,    System.IntPtr drawctx,    System.IntPtr data,    int l,    int r,    int t,    int b,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool do_async);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool evas_filter_input_render_api_delegate(System.IntPtr obj,    System.IntPtr filter,    System.IntPtr engine,    System.IntPtr output,    System.IntPtr drawctx,    System.IntPtr data,    int l,    int r,    int t,    int b,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool do_async);
+    public static Efl.Eo.FunctionWrapper<evas_filter_input_render_api_delegate> evas_filter_input_render_ptr = new Efl.Eo.FunctionWrapper<evas_filter_input_render_api_delegate>(_Module, "evas_filter_input_render");
+    private static bool filter_input_render(System.IntPtr obj, System.IntPtr pd,   System.IntPtr filter,   System.IntPtr engine,   System.IntPtr output,   System.IntPtr drawctx,   System.IntPtr data,   int l,   int r,   int t,   int b,   int x,   int y,  bool do_async)
+   {
+      Eina.Log.Debug("function evas_filter_input_render was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                                                                                          bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InternalConcrete)wrapper).FilterInputRender( filter,  engine,  output,  drawctx,  data,  l,  r,  t,  b,  x,  y,  do_async);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                                                      return _ret_var;
+      } else {
+         return evas_filter_input_render_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  filter,  engine,  output,  drawctx,  data,  l,  r,  t,  b,  x,  y,  do_async);
+      }
+   }
+   private static evas_filter_input_render_delegate evas_filter_input_render_static_delegate;
+
+
+    private delegate  void evas_filter_dirty_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void evas_filter_dirty_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<evas_filter_dirty_api_delegate> evas_filter_dirty_ptr = new Efl.Eo.FunctionWrapper<evas_filter_dirty_api_delegate>(_Module, "evas_filter_dirty");
+    private static  void filter_dirty(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function evas_filter_dirty was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((InternalConcrete)wrapper).FilterDirty();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         evas_filter_dirty_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static evas_filter_dirty_delegate evas_filter_dirty_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_program_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate> efl_gfx_filter_program_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate>(_Module, "efl_gfx_filter_program_get");
+    private static  void filter_program_get(System.IntPtr obj, System.IntPtr pd,  out  System.String code,  out  System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_code = default( System.String);
+       System.String _out_name = default( System.String);
+                     
+         try {
+            ((InternalConcrete)wrapper).GetFilterProgram( out _out_code,  out _out_name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      code = _out_code;
+      name = _out_name;
+                        } else {
+         efl_gfx_filter_program_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out code,  out name);
+      }
+   }
+   private static efl_gfx_filter_program_get_delegate efl_gfx_filter_program_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_program_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate> efl_gfx_filter_program_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate>(_Module, "efl_gfx_filter_program_set");
+    private static  void filter_program_set(System.IntPtr obj, System.IntPtr pd,   System.String code,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InternalConcrete)wrapper).SetFilterProgram( code,  name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_program_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code,  name);
+      }
+   }
+   private static efl_gfx_filter_program_set_delegate efl_gfx_filter_program_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+
+
+    public delegate  void efl_gfx_filter_state_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate> efl_gfx_filter_state_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate>(_Module, "efl_gfx_filter_state_get");
+    private static  void filter_state_get(System.IntPtr obj, System.IntPtr pd,  out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                              System.String _out_cur_state = default( System.String);
+      cur_val = default(double);       System.String _out_next_state = default( System.String);
+      next_val = default(double);      pos = default(double);                                       
+         try {
+            ((InternalConcrete)wrapper).GetFilterState( out _out_cur_state,  out cur_val,  out _out_next_state,  out next_val,  out pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      cur_state = _out_cur_state;
+            next_state = _out_next_state;
+                                                      } else {
+         efl_gfx_filter_state_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      }
+   }
+   private static efl_gfx_filter_state_get_delegate efl_gfx_filter_state_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+
+
+    public delegate  void efl_gfx_filter_state_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate> efl_gfx_filter_state_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate>(_Module, "efl_gfx_filter_state_set");
+    private static  void filter_state_set(System.IntPtr obj, System.IntPtr pd,   System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((InternalConcrete)wrapper).SetFilterState( cur_state,  cur_val,  next_state,  next_val,  pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_filter_state_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur_state,  cur_val,  next_state,  next_val,  pos);
+      }
+   }
+   private static efl_gfx_filter_state_set_delegate efl_gfx_filter_state_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_filter_padding_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate> efl_gfx_filter_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate>(_Module, "efl_gfx_filter_padding_get");
+    private static  void filter_padding_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((InternalConcrete)wrapper).GetFilterPadding( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_filter_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_filter_padding_get_delegate efl_gfx_filter_padding_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_gfx_filter_source_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_gfx_filter_source_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate> efl_gfx_filter_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate>(_Module, "efl_gfx_filter_source_get");
+    private static Efl.Gfx.Entity filter_source_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((InternalConcrete)wrapper).GetFilterSource( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_filter_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_gfx_filter_source_get_delegate efl_gfx_filter_source_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+
+
+    public delegate  void efl_gfx_filter_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate> efl_gfx_filter_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate>(_Module, "efl_gfx_filter_source_set");
+    private static  void filter_source_set(System.IntPtr obj, System.IntPtr pd,   System.String name,  Efl.Gfx.Entity source)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InternalConcrete)wrapper).SetFilterSource( name,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  source);
+      }
+   }
+   private static efl_gfx_filter_source_set_delegate efl_gfx_filter_source_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate> efl_gfx_filter_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate>(_Module, "efl_gfx_filter_data_get");
+    private static  void filter_data_get(System.IntPtr obj, System.IntPtr pd,   System.String name,  out  System.String value,  out bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                        System.String _out_value = default( System.String);
+      execute = default(bool);                           
+         try {
+            ((InternalConcrete)wrapper).GetFilterData( name,  out _out_value,  out execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            value = _out_value;
+                                    } else {
+         efl_gfx_filter_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  out value,  out execute);
+      }
+   }
+   private static efl_gfx_filter_data_get_delegate efl_gfx_filter_data_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate> efl_gfx_filter_data_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate>(_Module, "efl_gfx_filter_data_set");
+    private static  void filter_data_set(System.IntPtr obj, System.IntPtr pd,   System.String name,   System.String value,  bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((InternalConcrete)wrapper).SetFilterData( name,  value,  execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_filter_data_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  value,  execute);
+      }
+   }
+   private static efl_gfx_filter_data_set_delegate efl_gfx_filter_data_set_static_delegate;
+}
+} } } 
+namespace Efl { namespace Gfx { 
+/// <summary>32 bit color data structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Color32
+{
+   /// <summary>Red component of the color</summary>
+   public  byte R;
+   /// <summary>Green component of the color</summary>
+   public  byte G;
+   /// <summary>Blue component of the color</summary>
+   public  byte B;
+   /// <summary>Translucent component of the color</summary>
+   public  byte A;
+   ///<summary>Constructor for Color32.</summary>
+   public Color32(
+       byte R=default( byte),
+       byte G=default( byte),
+       byte B=default( byte),
+       byte A=default( byte)   )
+   {
+      this.R = R;
+      this.G = G;
+      this.B = B;
+      this.A = A;
+   }
+public static implicit operator Color32(IntPtr ptr)
+   {
+      var tmp = (Color32_StructInternal)Marshal.PtrToStructure(ptr, typeof(Color32_StructInternal));
+      return Color32_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Color32.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Color32_StructInternal
+{
+   
+   public  byte R;
+   
+   public  byte G;
+   
+   public  byte B;
+   
+   public  byte A;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Color32(Color32_StructInternal struct_)
+   {
+      return Color32_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Color32_StructInternal(Color32 struct_)
+   {
+      return Color32_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Color32</summary>
+public static class Color32_StructConversion
+{
+   internal static Color32_StructInternal ToInternal(Color32 _external_struct)
+   {
+      var _internal_struct = new Color32_StructInternal();
+
+      _internal_struct.R = _external_struct.R;
+      _internal_struct.G = _external_struct.G;
+      _internal_struct.B = _external_struct.B;
+      _internal_struct.A = _external_struct.A;
+
+      return _internal_struct;
+   }
+
+   internal static Color32 ToManaged(Color32_StructInternal _internal_struct)
+   {
+      var _external_struct = new Color32();
+
+      _external_struct.R = _internal_struct.R;
+      _external_struct.G = _internal_struct.G;
+      _external_struct.B = _internal_struct.B;
+      _external_struct.A = _internal_struct.A;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Canvas { namespace Filter { 
+/// <summary>Filter state name structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StateName
+{
+   /// <summary>Filter state name</summary>
+   public  System.String Name;
+   /// <summary>Filter state value</summary>
+   public double Value;
+   ///<summary>Constructor for StateName.</summary>
+   public StateName(
+       System.String Name=default( System.String),
+      double Value=default(double)   )
+   {
+      this.Name = Name;
+      this.Value = Value;
+   }
+public static implicit operator StateName(IntPtr ptr)
+   {
+      var tmp = (StateName_StructInternal)Marshal.PtrToStructure(ptr, typeof(StateName_StructInternal));
+      return StateName_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct StateName.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StateName_StructInternal
+{
+///<summary>Internal wrapper for field Name</summary>
+public System.IntPtr Name;
+   
+   public double Value;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator StateName(StateName_StructInternal struct_)
+   {
+      return StateName_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator StateName_StructInternal(StateName struct_)
+   {
+      return StateName_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct StateName</summary>
+public static class StateName_StructConversion
+{
+   internal static StateName_StructInternal ToInternal(StateName _external_struct)
+   {
+      var _internal_struct = new StateName_StructInternal();
+
+      _internal_struct.Name = Eina.MemoryNative.StrDup(_external_struct.Name);
+      _internal_struct.Value = _external_struct.Value;
+
+      return _internal_struct;
+   }
+
+   internal static StateName ToManaged(StateName_StructInternal _internal_struct)
+   {
+      var _external_struct = new StateName();
+
+      _external_struct.Name = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Name);
+      _external_struct.Value = _internal_struct.Value;
+
+      return _external_struct;
+   }
+
+}
+} } } 
+namespace Efl { namespace Canvas { namespace Filter { 
+/// <summary>Filter state text structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StateText
+{
+   /// <summary>Text outline color</summary>
+   public Efl.Gfx.Color32 Outline;
+   /// <summary>Text shadow color</summary>
+   public Efl.Gfx.Color32 Shadow;
+   /// <summary>Text glow color</summary>
+   public Efl.Gfx.Color32 Glow;
+   /// <summary>Text glow2 color</summary>
+   public Efl.Gfx.Color32 Glow2;
+   ///<summary>Constructor for StateText.</summary>
+   public StateText(
+      Efl.Gfx.Color32 Outline=default(Efl.Gfx.Color32),
+      Efl.Gfx.Color32 Shadow=default(Efl.Gfx.Color32),
+      Efl.Gfx.Color32 Glow=default(Efl.Gfx.Color32),
+      Efl.Gfx.Color32 Glow2=default(Efl.Gfx.Color32)   )
+   {
+      this.Outline = Outline;
+      this.Shadow = Shadow;
+      this.Glow = Glow;
+      this.Glow2 = Glow2;
+   }
+public static implicit operator StateText(IntPtr ptr)
+   {
+      var tmp = (StateText_StructInternal)Marshal.PtrToStructure(ptr, typeof(StateText_StructInternal));
+      return StateText_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct StateText.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StateText_StructInternal
+{
+   
+   public Efl.Gfx.Color32_StructInternal Outline;
+   
+   public Efl.Gfx.Color32_StructInternal Shadow;
+   
+   public Efl.Gfx.Color32_StructInternal Glow;
+   
+   public Efl.Gfx.Color32_StructInternal Glow2;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator StateText(StateText_StructInternal struct_)
+   {
+      return StateText_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator StateText_StructInternal(StateText struct_)
+   {
+      return StateText_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct StateText</summary>
+public static class StateText_StructConversion
+{
+   internal static StateText_StructInternal ToInternal(StateText _external_struct)
+   {
+      var _internal_struct = new StateText_StructInternal();
+
+      _internal_struct.Outline = Efl.Gfx.Color32_StructConversion.ToInternal(_external_struct.Outline);
+      _internal_struct.Shadow = Efl.Gfx.Color32_StructConversion.ToInternal(_external_struct.Shadow);
+      _internal_struct.Glow = Efl.Gfx.Color32_StructConversion.ToInternal(_external_struct.Glow);
+      _internal_struct.Glow2 = Efl.Gfx.Color32_StructConversion.ToInternal(_external_struct.Glow2);
+
+      return _internal_struct;
+   }
+
+   internal static StateText ToManaged(StateText_StructInternal _internal_struct)
+   {
+      var _external_struct = new StateText();
+
+      _external_struct.Outline = Efl.Gfx.Color32_StructConversion.ToManaged(_internal_struct.Outline);
+      _external_struct.Shadow = Efl.Gfx.Color32_StructConversion.ToManaged(_internal_struct.Shadow);
+      _external_struct.Glow = Efl.Gfx.Color32_StructConversion.ToManaged(_internal_struct.Glow);
+      _external_struct.Glow2 = Efl.Gfx.Color32_StructConversion.ToManaged(_internal_struct.Glow2);
+
+      return _external_struct;
+   }
+
+}
+} } } 
+namespace Efl { namespace Canvas { namespace Filter { 
+/// <summary>Internal structure representing the state of a Gfx Filter</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct State
+{
+   /// <summary>Text state</summary>
+   public Efl.Canvas.Filter.StateText Text;
+   /// <summary>Color</summary>
+   public Efl.Gfx.Color32 Color;
+   /// <summary>Current state</summary>
+   public Efl.Canvas.Filter.StateName Cur;
+   /// <summary>Next state</summary>
+   public Efl.Canvas.Filter.StateName Next;
+   /// <summary>Width</summary>
+   public  int W;
+   /// <summary>Height</summary>
+   public  int H;
+   /// <summary>Scale factor</summary>
+   public double Scale;
+   /// <summary>Position</summary>
+   public double Pos;
+   ///<summary>Constructor for State.</summary>
+   public State(
+      Efl.Canvas.Filter.StateText Text=default(Efl.Canvas.Filter.StateText),
+      Efl.Gfx.Color32 Color=default(Efl.Gfx.Color32),
+      Efl.Canvas.Filter.StateName Cur=default(Efl.Canvas.Filter.StateName),
+      Efl.Canvas.Filter.StateName Next=default(Efl.Canvas.Filter.StateName),
+       int W=default( int),
+       int H=default( int),
+      double Scale=default(double),
+      double Pos=default(double)   )
+   {
+      this.Text = Text;
+      this.Color = Color;
+      this.Cur = Cur;
+      this.Next = Next;
+      this.W = W;
+      this.H = H;
+      this.Scale = Scale;
+      this.Pos = Pos;
+   }
+public static implicit operator State(IntPtr ptr)
+   {
+      var tmp = (State_StructInternal)Marshal.PtrToStructure(ptr, typeof(State_StructInternal));
+      return State_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct State.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct State_StructInternal
+{
+   
+   public Efl.Canvas.Filter.StateText_StructInternal Text;
+   
+   public Efl.Gfx.Color32_StructInternal Color;
+   
+   public Efl.Canvas.Filter.StateName_StructInternal Cur;
+   
+   public Efl.Canvas.Filter.StateName_StructInternal Next;
+   
+   public  int W;
+   
+   public  int H;
+   
+   public double Scale;
+   
+   public double Pos;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator State(State_StructInternal struct_)
+   {
+      return State_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator State_StructInternal(State struct_)
+   {
+      return State_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct State</summary>
+public static class State_StructConversion
+{
+   internal static State_StructInternal ToInternal(State _external_struct)
+   {
+      var _internal_struct = new State_StructInternal();
+
+      _internal_struct.Text = Efl.Canvas.Filter.StateText_StructConversion.ToInternal(_external_struct.Text);
+      _internal_struct.Color = Efl.Gfx.Color32_StructConversion.ToInternal(_external_struct.Color);
+      _internal_struct.Cur = Efl.Canvas.Filter.StateName_StructConversion.ToInternal(_external_struct.Cur);
+      _internal_struct.Next = Efl.Canvas.Filter.StateName_StructConversion.ToInternal(_external_struct.Next);
+      _internal_struct.W = _external_struct.W;
+      _internal_struct.H = _external_struct.H;
+      _internal_struct.Scale = _external_struct.Scale;
+      _internal_struct.Pos = _external_struct.Pos;
+
+      return _internal_struct;
+   }
+
+   internal static State ToManaged(State_StructInternal _internal_struct)
+   {
+      var _external_struct = new State();
+
+      _external_struct.Text = Efl.Canvas.Filter.StateText_StructConversion.ToManaged(_internal_struct.Text);
+      _external_struct.Color = Efl.Gfx.Color32_StructConversion.ToManaged(_internal_struct.Color);
+      _external_struct.Cur = Efl.Canvas.Filter.StateName_StructConversion.ToManaged(_internal_struct.Cur);
+      _external_struct.Next = Efl.Canvas.Filter.StateName_StructConversion.ToManaged(_internal_struct.Next);
+      _external_struct.W = _internal_struct.W;
+      _external_struct.H = _internal_struct.H;
+      _external_struct.Scale = _internal_struct.Scale;
+      _external_struct.Pos = _internal_struct.Pos;
+
+      return _external_struct;
+   }
+
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_group.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_group.eo.cs
new file mode 100755 (executable)
index 0000000..d3d121d
--- /dev/null
@@ -0,0 +1,541 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Group.MemberAddedEvt"/>.</summary>
+public class GroupMemberAddedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Gfx.Entity arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Group.MemberRemovedEvt"/>.</summary>
+public class GroupMemberRemovedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Gfx.Entity arg { get; set; }
+}
+/// <summary>A group object is a container for other canvas objects. Its children move along their parent and are often clipped with a common clipper. This is part of the legacy smart object concept.
+/// A group is not necessarily a container (see <see cref="Efl.Container"/>) in the sense that a standard widget may not have any empty slots for content. However it&apos;s still a group of low-level canvas objects (clipper, raw objects, etc.).</summary>
+[GroupNativeInherit]
+public class Group : Efl.Canvas.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.GroupNativeInherit nativeInherit = new Efl.Canvas.GroupNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Group))
+            return Efl.Canvas.GroupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_group_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Group(Efl.Object parent= null
+         ) :
+      base(efl_canvas_group_class_get(), typeof(Group), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Group(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Group(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Group static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Group(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object MemberAddedEvtKey = new object();
+   /// <summary>Called when a member is added to the group.</summary>
+   public event EventHandler<Efl.Canvas.GroupMemberAddedEvt_Args> MemberAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_GROUP_EVENT_MEMBER_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_MemberAddedEvt_delegate)) {
+               eventHandlers.AddHandler(MemberAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_GROUP_EVENT_MEMBER_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_MemberAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MemberAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MemberAddedEvt.</summary>
+   public void On_MemberAddedEvt(Efl.Canvas.GroupMemberAddedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.GroupMemberAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.GroupMemberAddedEvt_Args>)eventHandlers[MemberAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MemberAddedEvt_delegate;
+   private void on_MemberAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.GroupMemberAddedEvt_Args args = new Efl.Canvas.GroupMemberAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_MemberAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MemberRemovedEvtKey = new object();
+   /// <summary>Called when a member is removed from the group.</summary>
+   public event EventHandler<Efl.Canvas.GroupMemberRemovedEvt_Args> MemberRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_GROUP_EVENT_MEMBER_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_MemberRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(MemberRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_GROUP_EVENT_MEMBER_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_MemberRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MemberRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MemberRemovedEvt.</summary>
+   public void On_MemberRemovedEvt(Efl.Canvas.GroupMemberRemovedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.GroupMemberRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.GroupMemberRemovedEvt_Args>)eventHandlers[MemberRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MemberRemovedEvt_delegate;
+   private void on_MemberRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.GroupMemberRemovedEvt_Args args = new Efl.Canvas.GroupMemberRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_MemberRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_MemberAddedEvt_delegate = new Efl.EventCb(on_MemberAddedEvt_NativeCallback);
+      evt_MemberRemovedEvt_delegate = new Efl.EventCb(on_MemberRemovedEvt_NativeCallback);
+   }
+   /// <summary>Indicates that the group&apos;s layout needs to be recalculated.
+   /// If this flag is set, then the <see cref="Efl.Canvas.Group.CalculateGroup"/> function will be called, during rendering phase of the canvas. After that, this flag will be automatically unset.
+   /// 
+   /// Note: setting this flag alone will not make the canvas&apos; whole scene dirty. Using evas_render() will have no effect. To force this, use <see cref="Efl.Canvas.Group.GroupChange"/>, which will also call this function automatically, with the parameter set to <c>true</c>.
+   /// 
+   /// See also <see cref="Efl.Canvas.Group.CalculateGroup"/>.</summary>
+   /// <returns><c>true</c> if the group layout needs to be recalculated, <c>false</c> otherwise</returns>
+   virtual public bool GetGroupNeedRecalculate() {
+       var _ret_var = Efl.Canvas.GroupNativeInherit.efl_canvas_group_need_recalculate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates that the group&apos;s layout needs to be recalculated.
+   /// If this flag is set, then the <see cref="Efl.Canvas.Group.CalculateGroup"/> function will be called, during rendering phase of the canvas. After that, this flag will be automatically unset.
+   /// 
+   /// Note: setting this flag alone will not make the canvas&apos; whole scene dirty. Using evas_render() will have no effect. To force this, use <see cref="Efl.Canvas.Group.GroupChange"/>, which will also call this function automatically, with the parameter set to <c>true</c>.
+   /// 
+   /// See also <see cref="Efl.Canvas.Group.CalculateGroup"/>.</summary>
+   /// <param name="value"><c>true</c> if the group layout needs to be recalculated, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetGroupNeedRecalculate( bool value) {
+                         Efl.Canvas.GroupNativeInherit.efl_canvas_group_need_recalculate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the internal clipper.</summary>
+   /// <returns>A clipper rectangle.</returns>
+   virtual public Efl.Canvas.Object GetGroupClipper() {
+       var _ret_var = Efl.Canvas.GroupNativeInherit.efl_canvas_group_clipper_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Marks the object as dirty.
+   /// This also forcefully marks the given object as needing recalculation. As an effect, on the next rendering cycle its <see cref="Efl.Canvas.Group.CalculateGroup"/> method will be called.</summary>
+   /// <returns></returns>
+   virtual public  void GroupChange() {
+       Efl.Canvas.GroupNativeInherit.efl_canvas_group_change_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Triggers an immediate recalculation of this object&apos;s geometry.
+   /// This will also reset the flag <see cref="Efl.Canvas.Group.GroupNeedRecalculate"/>.</summary>
+   /// <returns></returns>
+   virtual public  void CalculateGroup() {
+       Efl.Canvas.GroupNativeInherit.efl_canvas_group_calculate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Returns an iterator over the children of this object, which are canvas objects.
+   /// This returns the list of &quot;smart&quot; children. This might be different from both the <see cref="Efl.Object"/> children list as well as the <see cref="Efl.Container"/> content list.</summary>
+   /// <returns>Iterator to object children</returns>
+   virtual public Eina.Iterator<Efl.Canvas.Object> GroupMembersIterate() {
+       var _ret_var = Efl.Canvas.GroupNativeInherit.efl_canvas_group_members_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Canvas.Object>(_ret_var, true, false);
+ }
+   /// <summary>Set a canvas object as a member of a given group (or smart object).
+   /// Members will automatically be stacked and layered together with the smart object. The various stacking functions will operate on members relative to the other members instead of the entire canvas, since they now live on an exclusive layer (see <see cref="Efl.Gfx.Stack.StackAbove"/>, for more details).
+   /// 
+   /// Subclasses inheriting from this one may override this function to ensure the proper stacking of special objects, such as clippers, event rectangles, etc...
+   /// 
+   /// See also <see cref="Efl.Canvas.Group.GroupMemberRemove"/>. See also <see cref="Efl.Canvas.Group.IsGroupMember"/>.</summary>
+   /// <param name="sub_obj">The member object.</param>
+   /// <returns></returns>
+   virtual public  void AddGroupMember( Efl.Canvas.Object sub_obj) {
+                         Efl.Canvas.GroupNativeInherit.efl_canvas_group_member_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sub_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Removes a member object from a given smart object.
+   /// This removes a member object from a smart object, if it was added to any. The object will still be on the canvas, but no longer associated with whichever smart object it was associated with.
+   /// 
+   /// See also <see cref="Efl.Canvas.Group.AddGroupMember"/>. See also <see cref="Efl.Canvas.Group.IsGroupMember"/>.</summary>
+   /// <param name="sub_obj">The member object to remove.</param>
+   /// <returns></returns>
+   virtual public  void GroupMemberRemove( Efl.Canvas.Object sub_obj) {
+                         Efl.Canvas.GroupNativeInherit.efl_canvas_group_member_remove_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sub_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Finds out if a given object is a member of this group.</summary>
+   /// <param name="sub_obj">A potential sub object.</param>
+   /// <returns><c>true</c> if <c>sub_obj</c> is a member of this group.</returns>
+   virtual public bool IsGroupMember( Efl.Canvas.Object sub_obj) {
+                         var _ret_var = Efl.Canvas.GroupNativeInherit.efl_canvas_group_member_is_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sub_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Indicates that the group&apos;s layout needs to be recalculated.
+/// If this flag is set, then the <see cref="Efl.Canvas.Group.CalculateGroup"/> function will be called, during rendering phase of the canvas. After that, this flag will be automatically unset.
+/// 
+/// Note: setting this flag alone will not make the canvas&apos; whole scene dirty. Using evas_render() will have no effect. To force this, use <see cref="Efl.Canvas.Group.GroupChange"/>, which will also call this function automatically, with the parameter set to <c>true</c>.
+/// 
+/// See also <see cref="Efl.Canvas.Group.CalculateGroup"/>.</summary>
+/// <value><c>true</c> if the group layout needs to be recalculated, <c>false</c> otherwise</value>
+   public bool GroupNeedRecalculate {
+      get { return GetGroupNeedRecalculate(); }
+      set { SetGroupNeedRecalculate( value); }
+   }
+   /// <summary>The internal clipper object used by this group.
+/// This is the object clipping all the child objects. Do not delete or otherwise modify this clipper!</summary>
+/// <value>A clipper rectangle.</value>
+   public Efl.Canvas.Object GroupClipper {
+      get { return GetGroupClipper(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Group.efl_canvas_group_class_get();
+   }
+}
+public class GroupNativeInherit : Efl.Canvas.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_group_need_recalculate_get_static_delegate == null)
+      efl_canvas_group_need_recalculate_get_static_delegate = new efl_canvas_group_need_recalculate_get_delegate(group_need_recalculate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_need_recalculate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_need_recalculate_get_static_delegate)});
+      if (efl_canvas_group_need_recalculate_set_static_delegate == null)
+      efl_canvas_group_need_recalculate_set_static_delegate = new efl_canvas_group_need_recalculate_set_delegate(group_need_recalculate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_need_recalculate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_need_recalculate_set_static_delegate)});
+      if (efl_canvas_group_clipper_get_static_delegate == null)
+      efl_canvas_group_clipper_get_static_delegate = new efl_canvas_group_clipper_get_delegate(group_clipper_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_clipper_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_clipper_get_static_delegate)});
+      if (efl_canvas_group_change_static_delegate == null)
+      efl_canvas_group_change_static_delegate = new efl_canvas_group_change_delegate(group_change);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_change"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_change_static_delegate)});
+      if (efl_canvas_group_calculate_static_delegate == null)
+      efl_canvas_group_calculate_static_delegate = new efl_canvas_group_calculate_delegate(group_calculate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_calculate"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_calculate_static_delegate)});
+      if (efl_canvas_group_members_iterate_static_delegate == null)
+      efl_canvas_group_members_iterate_static_delegate = new efl_canvas_group_members_iterate_delegate(group_members_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_members_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_members_iterate_static_delegate)});
+      if (efl_canvas_group_member_add_static_delegate == null)
+      efl_canvas_group_member_add_static_delegate = new efl_canvas_group_member_add_delegate(group_member_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_member_add"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_member_add_static_delegate)});
+      if (efl_canvas_group_member_remove_static_delegate == null)
+      efl_canvas_group_member_remove_static_delegate = new efl_canvas_group_member_remove_delegate(group_member_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_member_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_member_remove_static_delegate)});
+      if (efl_canvas_group_member_is_static_delegate == null)
+      efl_canvas_group_member_is_static_delegate = new efl_canvas_group_member_is_delegate(group_member_is);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_group_member_is"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_group_member_is_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Group.efl_canvas_group_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Group.efl_canvas_group_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_group_need_recalculate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_group_need_recalculate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_need_recalculate_get_api_delegate> efl_canvas_group_need_recalculate_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_need_recalculate_get_api_delegate>(_Module, "efl_canvas_group_need_recalculate_get");
+    private static bool group_need_recalculate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_group_need_recalculate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Group)wrapper).GetGroupNeedRecalculate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_group_need_recalculate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_group_need_recalculate_get_delegate efl_canvas_group_need_recalculate_get_static_delegate;
+
+
+    private delegate  void efl_canvas_group_need_recalculate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool value);
+
+
+    public delegate  void efl_canvas_group_need_recalculate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool value);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_need_recalculate_set_api_delegate> efl_canvas_group_need_recalculate_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_need_recalculate_set_api_delegate>(_Module, "efl_canvas_group_need_recalculate_set");
+    private static  void group_need_recalculate_set(System.IntPtr obj, System.IntPtr pd,  bool value)
+   {
+      Eina.Log.Debug("function efl_canvas_group_need_recalculate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Group)wrapper).SetGroupNeedRecalculate( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_group_need_recalculate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_canvas_group_need_recalculate_set_delegate efl_canvas_group_need_recalculate_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_canvas_group_clipper_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_canvas_group_clipper_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_clipper_get_api_delegate> efl_canvas_group_clipper_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_clipper_get_api_delegate>(_Module, "efl_canvas_group_clipper_get");
+    private static Efl.Canvas.Object group_clipper_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_group_clipper_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Group)wrapper).GetGroupClipper();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_group_clipper_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_group_clipper_get_delegate efl_canvas_group_clipper_get_static_delegate;
+
+
+    private delegate  void efl_canvas_group_change_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_canvas_group_change_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_change_api_delegate> efl_canvas_group_change_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_change_api_delegate>(_Module, "efl_canvas_group_change");
+    private static  void group_change(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_group_change was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Group)wrapper).GroupChange();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_canvas_group_change_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_group_change_delegate efl_canvas_group_change_static_delegate;
+
+
+    private delegate  void efl_canvas_group_calculate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_canvas_group_calculate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_calculate_api_delegate> efl_canvas_group_calculate_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_calculate_api_delegate>(_Module, "efl_canvas_group_calculate");
+    private static  void group_calculate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_group_calculate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Group)wrapper).CalculateGroup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_canvas_group_calculate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_group_calculate_delegate efl_canvas_group_calculate_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_group_members_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_group_members_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_members_iterate_api_delegate> efl_canvas_group_members_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_members_iterate_api_delegate>(_Module, "efl_canvas_group_members_iterate");
+    private static  System.IntPtr group_members_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_group_members_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Canvas.Object> _ret_var = default(Eina.Iterator<Efl.Canvas.Object>);
+         try {
+            _ret_var = ((Group)wrapper).GroupMembersIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_group_members_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_group_members_iterate_delegate efl_canvas_group_members_iterate_static_delegate;
+
+
+    private delegate  void efl_canvas_group_member_add_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+
+
+    public delegate  void efl_canvas_group_member_add_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_member_add_api_delegate> efl_canvas_group_member_add_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_member_add_api_delegate>(_Module, "efl_canvas_group_member_add");
+    private static  void group_member_add(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object sub_obj)
+   {
+      Eina.Log.Debug("function efl_canvas_group_member_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Group)wrapper).AddGroupMember( sub_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_group_member_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sub_obj);
+      }
+   }
+   private static efl_canvas_group_member_add_delegate efl_canvas_group_member_add_static_delegate;
+
+
+    private delegate  void efl_canvas_group_member_remove_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+
+
+    public delegate  void efl_canvas_group_member_remove_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_member_remove_api_delegate> efl_canvas_group_member_remove_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_member_remove_api_delegate>(_Module, "efl_canvas_group_member_remove");
+    private static  void group_member_remove(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object sub_obj)
+   {
+      Eina.Log.Debug("function efl_canvas_group_member_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Group)wrapper).GroupMemberRemove( sub_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_group_member_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sub_obj);
+      }
+   }
+   private static efl_canvas_group_member_remove_delegate efl_canvas_group_member_remove_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_group_member_is_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_group_member_is_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_group_member_is_api_delegate> efl_canvas_group_member_is_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_group_member_is_api_delegate>(_Module, "efl_canvas_group_member_is");
+    private static bool group_member_is(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object sub_obj)
+   {
+      Eina.Log.Debug("function efl_canvas_group_member_is was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Group)wrapper).IsGroupMember( sub_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_group_member_is_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sub_obj);
+      }
+   }
+   private static efl_canvas_group_member_is_delegate efl_canvas_group_member_is_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_image.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_image.eo.cs
new file mode 100755 (executable)
index 0000000..f1b6f69
--- /dev/null
@@ -0,0 +1,1442 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Low-level Image object.
+/// This replaces the legacy Evas Object Image, with only image-related interfaces: file and data images only. This object does not implement any special features such as proxy, snapshot or GL.</summary>
+[ImageNativeInherit]
+public class Image : Efl.Canvas.ImageInternal, Efl.Eo.IWrapper,Efl.File,Efl.Gfx.FrameController,Efl.Gfx.ImageLoadController
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.ImageNativeInherit nativeInherit = new Efl.Canvas.ImageNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Image))
+            return Efl.Canvas.ImageNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_image_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Image(Efl.Object parent= null
+         ) :
+      base(efl_canvas_image_class_get(), typeof(Image), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Image(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Image(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Image static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Image(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object LoadDoneEvtKey = new object();
+   /// <summary>Called when he image was loaded</summary>
+   public event EventHandler LoadDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadDoneEvt_delegate)) {
+               eventHandlers.AddHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (remove_cpp_event_handler(key, this.evt_LoadDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadDoneEvt.</summary>
+   public void On_LoadDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadDoneEvt_delegate;
+   private void on_LoadDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadErrorEvtKey = new object();
+   /// <summary>Called when an error happened during image loading</summary>
+   public event EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> LoadErrorEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadErrorEvt_delegate)) {
+               eventHandlers.AddHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (remove_cpp_event_handler(key, this.evt_LoadErrorEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadErrorEvt.</summary>
+   public void On_LoadErrorEvt(Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args>)eventHandlers[LoadErrorEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadErrorEvt_delegate;
+   private void on_LoadErrorEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args args = new Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args();
+      args.arg = default(Efl.Gfx.ImageLoadError);
+      try {
+         On_LoadErrorEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_LoadDoneEvt_delegate = new Efl.EventCb(on_LoadDoneEvt_NativeCallback);
+      evt_LoadErrorEvt_delegate = new Efl.EventCb(on_LoadErrorEvt_NativeCallback);
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Check if an object can be animated (has multiple frames).
+   /// This will be <c>true</c> for animated object for instance but <c>false</c> for a single frame object.
+   /// 1.1</summary>
+   /// <returns><c>true</c> if the object is animated</returns>
+   virtual public bool GetAnimated() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_animated_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Index of the current frame of an animated object.
+   /// Ranges from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>. Valid only if <see cref="Efl.Gfx.FrameController.GetAnimated"/>.</summary>
+   /// <returns>The index of current frame.</returns>
+   virtual public  int GetFrame() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the frame to current frame of an animated object.
+   /// 1.1</summary>
+   /// <param name="frame_index">The index of current frame.</param>
+   /// <returns>Returns <c>true</c> if the frame index is valid.</returns>
+   virtual public bool SetFrame(  int frame_index) {
+                         var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), frame_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the total number of frames of the object, if animated.
+   /// Returns -1 if not animated.
+   /// 1.1</summary>
+   /// <returns>The number of frames in the animated object.</returns>
+   virtual public  int GetFrameCount() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the kind of looping the animated object does.
+   /// This returns the kind of looping the animated object wants to do.
+   /// 
+   /// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>, you should display frames in a sequence like: 1-&gt;2-&gt;3-&gt;1-&gt;2-&gt;3-&gt;1...
+   /// 
+   /// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Pingpong"/>, it is better to display frames in a sequence like: 1-&gt;2-&gt;3-&gt;2-&gt;1-&gt;2-&gt;3-&gt;1...
+   /// 
+   /// The default type is <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>.
+   /// 1.1</summary>
+   /// <returns>Loop type of the animated object.</returns>
+   virtual public Efl.Gfx.FrameControllerLoopHint GetLoopType() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_loop_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the number times the animation of the object loops.
+   /// This returns loop count of animated object. The loop count is the number of times the animation will play fully from first to last frame until the animation should stop (at the final frame).
+   /// 
+   /// If 0 is returned, then looping should happen indefinitely (no limit to the number of times it loops).
+   /// 1.1</summary>
+   /// <returns>The number of loop of an animated object.</returns>
+   virtual public  int GetLoopCount() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_loop_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the duration of a sequence of frames.
+   /// This returns total duration in seconds that the specified sequence of frames should take.
+   /// 
+   /// If <c>start_frame</c> is 1 and <c>frame_num</c> is 0, this returns the duration of frame 1. If <c>start_frame</c> is 1 and <c>frame_num</c> is 1, this returns the total duration of frame 1 + frame 2.
+   /// 1.1</summary>
+   /// <param name="start_frame">The first frame, rangers from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>.</param>
+   /// <param name="frame_num">Number of frames in the sequence, starts from 0.</param>
+   /// <returns>Duration in seconds</returns>
+   virtual public double GetFrameDuration(  int start_frame,   int frame_num) {
+                                           var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_duration_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start_frame,  frame_num);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Returns the requested load size.</summary>
+   /// <returns>The image load size.</returns>
+   virtual public Eina.Size2D GetLoadSize() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Requests the canvas to load the image at the given size.
+   /// EFL will try to load an image of the requested size but does not guarantee an exact match between the request and the loaded image dimensions.</summary>
+   /// <param name="size">The image load size.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+   /// This function returns the DPI resolution of the given canvas image.</summary>
+   /// <returns>The DPI resolution.</returns>
+   virtual public double GetLoadDpi() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the DPI resolution of an image object&apos;s source image.
+   /// This function sets the DPI resolution of a given loaded canvas image. Most useful for the SVG image loader.</summary>
+   /// <param name="dpi">The DPI resolution.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadDpi( double dpi) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dpi);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+   /// 1.2</summary>
+   /// <returns><c>true</c> if region load of the image is supported, <c>false</c> otherwise</returns>
+   virtual public bool GetLoadRegionSupport() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+   /// <returns>A region of the image.</returns>
+   virtual public Eina.Rect GetLoadRegion() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Inform a given image object to load a selective region of its source image.
+   /// This function is useful when one is not showing all of an image&apos;s area on its image object.
+   /// 
+   /// Note: The image loader for the image format in question has to support selective region loading in order for this function to work.</summary>
+   /// <param name="region">A region of the image.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadRegion( Eina.Rect region) {
+       var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <returns><c>true</c> means that it should honor the orientation information.</returns>
+   virtual public bool GetLoadOrientation() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <param name="enable"><c>true</c> means that it should honor the orientation information.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadOrientation( bool enable) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The scale down factor is a divider on the original image size.
+   /// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+   /// 
+   /// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+   /// 
+   /// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+   /// <returns>The scale down dividing factor.</returns>
+   virtual public  int GetLoadScaleDown() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Requests the image loader to scale down by <c>div</c> times. Call this before starting the actual image load.</summary>
+   /// <param name="div">The scale down dividing factor.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadScaleDown(  int div) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), div);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+   /// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+   /// <returns>Will be true if header is to be skipped.</returns>
+   virtual public bool GetLoadSkipHeader() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the skip header state for susbsequent loads of a file.</summary>
+   /// <param name="skip">Will be true if header is to be skipped.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadSkipHeader( bool skip) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), skip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Begin preloading an image object&apos;s image data in the background.
+   /// Once the background task is complete the event <c>load</c>,done will be emitted.</summary>
+   /// <returns></returns>
+   virtual public  void LoadAsyncStart() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Cancel preloading an image object&apos;s image data in the background.
+   /// The object should be left in a state where it has no image data. If cancel is called too late, the image will be kept in memory.</summary>
+   /// <returns></returns>
+   virtual public  void LoadAsyncCancel() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Check if an object can be animated (has multiple frames).
+/// This will be <c>true</c> for animated object for instance but <c>false</c> for a single frame object.
+/// 1.1</summary>
+/// <value><c>true</c> if the object is animated</value>
+   public bool Animated {
+      get { return GetAnimated(); }
+   }
+   /// <summary>Index of the current frame of an animated object.
+/// Ranges from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>. Valid only if <see cref="Efl.Gfx.FrameController.GetAnimated"/>.</summary>
+/// <value>The index of current frame.</value>
+   public  int Frame {
+      get { return GetFrame(); }
+      set { SetFrame( value); }
+   }
+   /// <summary>Get the total number of frames of the object, if animated.
+/// Returns -1 if not animated.
+/// 1.1</summary>
+/// <value>The number of frames in the animated object.</value>
+   public  int FrameCount {
+      get { return GetFrameCount(); }
+   }
+   /// <summary>Get the kind of looping the animated object does.
+/// This returns the kind of looping the animated object wants to do.
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>, you should display frames in a sequence like: 1-&gt;2-&gt;3-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Pingpong"/>, it is better to display frames in a sequence like: 1-&gt;2-&gt;3-&gt;2-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// The default type is <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>.
+/// 1.1</summary>
+/// <value>Loop type of the animated object.</value>
+   public Efl.Gfx.FrameControllerLoopHint LoopType {
+      get { return GetLoopType(); }
+   }
+   /// <summary>Get the number times the animation of the object loops.
+/// This returns loop count of animated object. The loop count is the number of times the animation will play fully from first to last frame until the animation should stop (at the final frame).
+/// 
+/// If 0 is returned, then looping should happen indefinitely (no limit to the number of times it loops).
+/// 1.1</summary>
+/// <value>The number of loop of an animated object.</value>
+   public  int LoopCount {
+      get { return GetLoopCount(); }
+   }
+   /// <summary>The load size of an image.
+/// The image will be loaded into memory as if it was the specified size instead of its original size. This can save a lot of memory and is important for scalable types like svg.
+/// 
+/// By default, the load size is not specified, so it is 0x0.</summary>
+/// <value>The image load size.</value>
+   public Eina.Size2D LoadSize {
+      get { return GetLoadSize(); }
+      set { SetLoadSize( value); }
+   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+/// This function returns the DPI resolution of the given canvas image.</summary>
+/// <value>The DPI resolution.</value>
+   public double LoadDpi {
+      get { return GetLoadDpi(); }
+      set { SetLoadDpi( value); }
+   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+/// 1.2</summary>
+/// <value><c>true</c> if region load of the image is supported, <c>false</c> otherwise</value>
+   public bool LoadRegionSupport {
+      get { return GetLoadRegionSupport(); }
+   }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+/// <value>A region of the image.</value>
+   public Eina.Rect LoadRegion {
+      get { return GetLoadRegion(); }
+      set { SetLoadRegion( value); }
+   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+/// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+/// 1.1</summary>
+/// <value><c>true</c> means that it should honor the orientation information.</value>
+   public bool LoadOrientation {
+      get { return GetLoadOrientation(); }
+      set { SetLoadOrientation( value); }
+   }
+   /// <summary>The scale down factor is a divider on the original image size.
+/// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+/// 
+/// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+/// 
+/// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+/// <value>The scale down dividing factor.</value>
+   public  int LoadScaleDown {
+      get { return GetLoadScaleDown(); }
+      set { SetLoadScaleDown( value); }
+   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+/// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+/// <value>Will be true if header is to be skipped.</value>
+   public bool LoadSkipHeader {
+      get { return GetLoadSkipHeader(); }
+      set { SetLoadSkipHeader( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Image.efl_canvas_image_class_get();
+   }
+}
+public class ImageNativeInherit : Efl.Canvas.ImageInternalNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_gfx_frame_controller_animated_get_static_delegate == null)
+      efl_gfx_frame_controller_animated_get_static_delegate = new efl_gfx_frame_controller_animated_get_delegate(animated_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_animated_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_animated_get_static_delegate)});
+      if (efl_gfx_frame_controller_frame_get_static_delegate == null)
+      efl_gfx_frame_controller_frame_get_static_delegate = new efl_gfx_frame_controller_frame_get_delegate(frame_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_get_static_delegate)});
+      if (efl_gfx_frame_controller_frame_set_static_delegate == null)
+      efl_gfx_frame_controller_frame_set_static_delegate = new efl_gfx_frame_controller_frame_set_delegate(frame_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_set_static_delegate)});
+      if (efl_gfx_frame_controller_frame_count_get_static_delegate == null)
+      efl_gfx_frame_controller_frame_count_get_static_delegate = new efl_gfx_frame_controller_frame_count_get_delegate(frame_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_count_get_static_delegate)});
+      if (efl_gfx_frame_controller_loop_type_get_static_delegate == null)
+      efl_gfx_frame_controller_loop_type_get_static_delegate = new efl_gfx_frame_controller_loop_type_get_delegate(loop_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_loop_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_loop_type_get_static_delegate)});
+      if (efl_gfx_frame_controller_loop_count_get_static_delegate == null)
+      efl_gfx_frame_controller_loop_count_get_static_delegate = new efl_gfx_frame_controller_loop_count_get_delegate(loop_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_loop_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_loop_count_get_static_delegate)});
+      if (efl_gfx_frame_controller_frame_duration_get_static_delegate == null)
+      efl_gfx_frame_controller_frame_duration_get_static_delegate = new efl_gfx_frame_controller_frame_duration_get_delegate(frame_duration_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_duration_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_duration_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_size_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_get_static_delegate = new efl_gfx_image_load_controller_load_size_get_delegate(load_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_size_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_set_static_delegate = new efl_gfx_image_load_controller_load_size_set_delegate(load_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_get_static_delegate = new efl_gfx_image_load_controller_load_dpi_get_delegate(load_dpi_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_set_static_delegate = new efl_gfx_image_load_controller_load_dpi_set_delegate(load_dpi_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_support_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_support_get_static_delegate = new efl_gfx_image_load_controller_load_region_support_get_delegate(load_region_support_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_support_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_support_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_get_static_delegate = new efl_gfx_image_load_controller_load_region_get_delegate(load_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_set_static_delegate = new efl_gfx_image_load_controller_load_region_set_delegate(load_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_get_static_delegate = new efl_gfx_image_load_controller_load_orientation_get_delegate(load_orientation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_set_static_delegate = new efl_gfx_image_load_controller_load_orientation_set_delegate(load_orientation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_get_static_delegate = new efl_gfx_image_load_controller_load_scale_down_get_delegate(load_scale_down_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_set_static_delegate = new efl_gfx_image_load_controller_load_scale_down_set_delegate(load_scale_down_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_get_static_delegate = new efl_gfx_image_load_controller_load_skip_header_get_delegate(load_skip_header_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_set_static_delegate = new efl_gfx_image_load_controller_load_skip_header_set_delegate(load_skip_header_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_start_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_start_static_delegate = new efl_gfx_image_load_controller_load_async_start_delegate(load_async_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_start"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_start_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_cancel_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_cancel_static_delegate = new efl_gfx_image_load_controller_load_async_cancel_delegate(load_async_cancel);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_cancel"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_cancel_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Image.efl_canvas_image_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Image.efl_canvas_image_class_get();
+   }
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((Image)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Image)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Image)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Image)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Image)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Image)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_frame_controller_animated_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_frame_controller_animated_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_animated_get_api_delegate> efl_gfx_frame_controller_animated_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_animated_get_api_delegate>(_Module, "efl_gfx_frame_controller_animated_get");
+    private static bool animated_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_animated_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetAnimated();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_animated_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_animated_get_delegate efl_gfx_frame_controller_animated_get_static_delegate;
+
+
+    private delegate  int efl_gfx_frame_controller_frame_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_frame_controller_frame_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_get_api_delegate> efl_gfx_frame_controller_frame_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_get_api_delegate>(_Module, "efl_gfx_frame_controller_frame_get");
+    private static  int frame_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Image)wrapper).GetFrame();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_frame_get_delegate efl_gfx_frame_controller_frame_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_frame_controller_frame_set_delegate(System.IntPtr obj, System.IntPtr pd,    int frame_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_frame_controller_frame_set_api_delegate(System.IntPtr obj,    int frame_index);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_set_api_delegate> efl_gfx_frame_controller_frame_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_set_api_delegate>(_Module, "efl_gfx_frame_controller_frame_set");
+    private static bool frame_set(System.IntPtr obj, System.IntPtr pd,   int frame_index)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).SetFrame( frame_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  frame_index);
+      }
+   }
+   private static efl_gfx_frame_controller_frame_set_delegate efl_gfx_frame_controller_frame_set_static_delegate;
+
+
+    private delegate  int efl_gfx_frame_controller_frame_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_frame_controller_frame_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_count_get_api_delegate> efl_gfx_frame_controller_frame_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_count_get_api_delegate>(_Module, "efl_gfx_frame_controller_frame_count_get");
+    private static  int frame_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Image)wrapper).GetFrameCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_frame_count_get_delegate efl_gfx_frame_controller_frame_count_get_static_delegate;
+
+
+    private delegate Efl.Gfx.FrameControllerLoopHint efl_gfx_frame_controller_loop_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.FrameControllerLoopHint efl_gfx_frame_controller_loop_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_type_get_api_delegate> efl_gfx_frame_controller_loop_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_type_get_api_delegate>(_Module, "efl_gfx_frame_controller_loop_type_get");
+    private static Efl.Gfx.FrameControllerLoopHint loop_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_loop_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.FrameControllerLoopHint _ret_var = default(Efl.Gfx.FrameControllerLoopHint);
+         try {
+            _ret_var = ((Image)wrapper).GetLoopType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_loop_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_loop_type_get_delegate efl_gfx_frame_controller_loop_type_get_static_delegate;
+
+
+    private delegate  int efl_gfx_frame_controller_loop_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_frame_controller_loop_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_count_get_api_delegate> efl_gfx_frame_controller_loop_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_count_get_api_delegate>(_Module, "efl_gfx_frame_controller_loop_count_get");
+    private static  int loop_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_loop_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Image)wrapper).GetLoopCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_loop_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_loop_count_get_delegate efl_gfx_frame_controller_loop_count_get_static_delegate;
+
+
+    private delegate double efl_gfx_frame_controller_frame_duration_get_delegate(System.IntPtr obj, System.IntPtr pd,    int start_frame,    int frame_num);
+
+
+    public delegate double efl_gfx_frame_controller_frame_duration_get_api_delegate(System.IntPtr obj,    int start_frame,    int frame_num);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_duration_get_api_delegate> efl_gfx_frame_controller_frame_duration_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_duration_get_api_delegate>(_Module, "efl_gfx_frame_controller_frame_duration_get");
+    private static double frame_duration_get(System.IntPtr obj, System.IntPtr pd,   int start_frame,   int frame_num)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_duration_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetFrameDuration( start_frame,  frame_num);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_duration_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_frame,  frame_num);
+      }
+   }
+   private static efl_gfx_frame_controller_frame_duration_get_delegate efl_gfx_frame_controller_frame_duration_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate> efl_gfx_image_load_controller_load_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_get");
+    private static Eina.Size2D_StructInternal load_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_get_delegate efl_gfx_image_load_controller_load_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate> efl_gfx_image_load_controller_load_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_set");
+    private static  void load_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Image)wrapper).SetLoadSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_set_delegate efl_gfx_image_load_controller_load_size_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_load_controller_load_dpi_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_load_controller_load_dpi_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate> efl_gfx_image_load_controller_load_dpi_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_get");
+    private static double load_dpi_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadDpi();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_get_delegate efl_gfx_image_load_controller_load_dpi_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_dpi_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dpi);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_dpi_set_api_delegate(System.IntPtr obj,   double dpi);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate> efl_gfx_image_load_controller_load_dpi_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_set");
+    private static  void load_dpi_set(System.IntPtr obj, System.IntPtr pd,  double dpi)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadDpi( dpi);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dpi);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_set_delegate efl_gfx_image_load_controller_load_dpi_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_region_support_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_region_support_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate> efl_gfx_image_load_controller_load_region_support_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_support_get");
+    private static bool load_region_support_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_support_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadRegionSupport();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_support_get_delegate efl_gfx_image_load_controller_load_region_support_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate> efl_gfx_image_load_controller_load_region_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_get");
+    private static Eina.Rect_StructInternal load_region_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadRegion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_get_delegate efl_gfx_image_load_controller_load_region_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_region_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal region);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_region_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal region);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate> efl_gfx_image_load_controller_load_region_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_set");
+    private static  void load_region_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal region)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                     
+         try {
+            ((Image)wrapper).SetLoadRegion( _in_region);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  region);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_set_delegate efl_gfx_image_load_controller_load_region_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_orientation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_orientation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate> efl_gfx_image_load_controller_load_orientation_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_get");
+    private static bool load_orientation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadOrientation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_get_delegate efl_gfx_image_load_controller_load_orientation_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_orientation_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_orientation_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate> efl_gfx_image_load_controller_load_orientation_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_set");
+    private static  void load_orientation_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadOrientation( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_set_delegate efl_gfx_image_load_controller_load_orientation_set_static_delegate;
+
+
+    private delegate  int efl_gfx_image_load_controller_load_scale_down_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_image_load_controller_load_scale_down_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate> efl_gfx_image_load_controller_load_scale_down_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_get");
+    private static  int load_scale_down_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadScaleDown();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_get_delegate efl_gfx_image_load_controller_load_scale_down_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_scale_down_set_delegate(System.IntPtr obj, System.IntPtr pd,    int div);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_scale_down_set_api_delegate(System.IntPtr obj,    int div);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate> efl_gfx_image_load_controller_load_scale_down_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_set");
+    private static  void load_scale_down_set(System.IntPtr obj, System.IntPtr pd,   int div)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadScaleDown( div);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  div);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_set_delegate efl_gfx_image_load_controller_load_scale_down_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_skip_header_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_skip_header_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate> efl_gfx_image_load_controller_load_skip_header_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_get");
+    private static bool load_skip_header_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadSkipHeader();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_get_delegate efl_gfx_image_load_controller_load_skip_header_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_skip_header_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_skip_header_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate> efl_gfx_image_load_controller_load_skip_header_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_set");
+    private static  void load_skip_header_set(System.IntPtr obj, System.IntPtr pd,  bool skip)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadSkipHeader( skip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  skip);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_set_delegate efl_gfx_image_load_controller_load_skip_header_set_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate> efl_gfx_image_load_controller_load_async_start_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_start");
+    private static  void load_async_start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).LoadAsyncStart();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_start_delegate efl_gfx_image_load_controller_load_async_start_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_cancel_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_cancel_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate> efl_gfx_image_load_controller_load_async_cancel_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_cancel");
+    private static  void load_async_cancel(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_cancel was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).LoadAsyncCancel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_cancel_delegate efl_gfx_image_load_controller_load_async_cancel_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_image_internal.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_image_internal.eo.cs
new file mode 100755 (executable)
index 0000000..5306756
--- /dev/null
@@ -0,0 +1,2623 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl canvas internal image class</summary>
+[ImageInternalNativeInherit]
+public class ImageInternal : Efl.Canvas.Object, Efl.Eo.IWrapper,Efl.FileSave,Efl.Orientation,Efl.Canvas.Filter.Internal,Efl.Gfx.Buffer,Efl.Gfx.Fill,Efl.Gfx.Filter,Efl.Gfx.Image,Efl.Gfx.View
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.ImageInternalNativeInherit nativeInherit = new Efl.Canvas.ImageInternalNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ImageInternal))
+            return Efl.Canvas.ImageInternalNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_image_internal_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ImageInternal(Efl.Object parent= null
+         ) :
+      base(efl_canvas_image_internal_class_get(), typeof(ImageInternal), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ImageInternal(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ImageInternal(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ImageInternal static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ImageInternal(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PreloadEvtKey = new object();
+   /// <summary>Image data has been preloaded.</summary>
+   public event EventHandler PreloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PreloadEvt_delegate)) {
+               eventHandlers.AddHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (remove_cpp_event_handler(key, this.evt_PreloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PreloadEvt.</summary>
+   public void On_PreloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PreloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PreloadEvt_delegate;
+   private void on_PreloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PreloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ResizeEvtKey = new object();
+   /// <summary>Image was resized (its pixel data).</summary>
+   public event EventHandler ResizeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ResizeEvt_delegate)) {
+               eventHandlers.AddHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (remove_cpp_event_handler(key, this.evt_ResizeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ResizeEvt.</summary>
+   public void On_ResizeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ResizeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ResizeEvt_delegate;
+   private void on_ResizeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ResizeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnloadEvtKey = new object();
+   /// <summary>Image data has been unloaded (by some mechanism in EFL that threw out the original image data).</summary>
+   public event EventHandler UnloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnloadEvt_delegate)) {
+               eventHandlers.AddHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (remove_cpp_event_handler(key, this.evt_UnloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnloadEvt.</summary>
+   public void On_UnloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnloadEvt_delegate;
+   private void on_UnloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PreloadEvt_delegate = new Efl.EventCb(on_PreloadEvt_NativeCallback);
+      evt_ResizeEvt_delegate = new Efl.EventCb(on_ResizeEvt_NativeCallback);
+      evt_UnloadEvt_delegate = new Efl.EventCb(on_UnloadEvt_NativeCallback);
+   }
+   /// <summary>Save the given image object&apos;s contents to an (image) file.
+   /// The extension suffix on <c>file</c> will determine which saver module Evas is to use when saving, thus the final file&apos;s format. If the file supports multiple data stored in it (Eet ones), you can specify the key to be used as the index of the image in it.
+   /// 
+   /// You can specify some flags when saving the image.  Currently acceptable flags are <c>quality</c> and <c>compress</c>. Eg.: &quot;quality=100 compress=9&quot;.</summary>
+   /// <param name="file">The filename to be used to save the image (extension obligatory).</param>
+   /// <param name="key">The image key in the file (if an Eet one), or <c>null</c>, otherwise.</param>
+   /// <param name="info">The flags to be used (<c>null</c> for defaults).</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool Save(  System.String file,   System.String key,  ref Efl.FileSaveInfo info) {
+                   var _in_info = Efl.FileSaveInfo_StructConversion.ToInternal(info);
+                                          var _ret_var = Efl.FileSaveNativeInherit.efl_file_save_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file,  key,  ref _in_info);
+      Eina.Error.RaiseIfUnhandledException();
+                                    info = Efl.FileSaveInfo_StructConversion.ToManaged(_in_info);
+      return _ret_var;
+ }
+   /// <summary>Control the orientation of a given object.
+   /// This can be used to set the rotation on an image or a window, for instance.</summary>
+   /// <returns>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</returns>
+   virtual public Efl.Orient GetOrientation() {
+       var _ret_var = Efl.OrientationNativeInherit.efl_orientation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the orientation of a given object.
+   /// This can be used to set the rotation on an image or a window, for instance.</summary>
+   /// <param name="dir">The rotation angle (CCW), see <see cref="Efl.Orient"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetOrientation( Efl.Orient dir) {
+                         Efl.OrientationNativeInherit.efl_orientation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the flip of the given image
+   /// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+   /// <returns>Flip method</returns>
+   virtual public Efl.Flip GetFlip() {
+       var _ret_var = Efl.OrientationNativeInherit.efl_orientation_flip_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the flip of the given image
+   /// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+   /// <param name="flip">Flip method</param>
+   /// <returns></returns>
+   virtual public  void SetFlip( Efl.Flip flip) {
+                         Efl.OrientationNativeInherit.efl_orientation_flip_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Marks this filter as changed.</summary>
+   /// <param name="val"><c>true</c> if filter changed, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetFilterChanged( bool val) {
+                         Efl.Canvas.Filter.InternalNativeInherit.evas_filter_changed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Marks this filter as invalid.</summary>
+   /// <param name="val"><c>true</c> if filter is invalid, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetFilterInvalid( bool val) {
+                         Efl.Canvas.Filter.InternalNativeInherit.evas_filter_invalid_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieve cached output buffer, if any.
+   /// Does not increment the reference count.</summary>
+   /// <returns>Output buffer</returns>
+   virtual public  System.IntPtr GetFilterOutputBuffer() {
+       var _ret_var = Efl.Canvas.Filter.InternalNativeInherit.evas_filter_output_buffer_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Called by Efl.Canvas.Filter.Internal to determine whether the input is alpha or rgba.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool FilterInputAlpha() {
+       var _ret_var = Efl.Canvas.Filter.InternalNativeInherit.evas_filter_input_alpha_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Called by Efl.Canvas.Filter.Internal to request the parent class for state information (color, etc...).</summary>
+   /// <param name="state">State info to fill in</param>
+   /// <param name="data">Private data for the class</param>
+   /// <returns></returns>
+   virtual public  void FilterStatePrepare( out Efl.Canvas.Filter.State state,   System.IntPtr data) {
+                   var _out_state = new Efl.Canvas.Filter.State_StructInternal();
+                        Efl.Canvas.Filter.InternalNativeInherit.evas_filter_state_prepare_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_state,  data);
+      Eina.Error.RaiseIfUnhandledException();
+      state = Efl.Canvas.Filter.State_StructConversion.ToManaged(_out_state);
+                         }
+   /// <summary>Called by Efl.Canvas.Filter.Internal when the parent class must render the input.</summary>
+   /// <param name="filter">Current filter context</param>
+   /// <param name="engine">Engine context</param>
+   /// <param name="output">Output context</param>
+   /// <param name="drawctx">Draw context (for evas engine)</param>
+   /// <param name="data">Private data used by textblock</param>
+   /// <param name="l">Left</param>
+   /// <param name="r">Right</param>
+   /// <param name="t">Top</param>
+   /// <param name="b">Bottom</param>
+   /// <param name="x">X offset</param>
+   /// <param name="y">Y offset</param>
+   /// <param name="do_async"><c>true</c> when the operation should be done asynchronously, <c>false</c> otherwise</param>
+   /// <returns>Indicates success from the object render function.</returns>
+   virtual public bool FilterInputRender(  System.IntPtr filter,   System.IntPtr engine,   System.IntPtr output,   System.IntPtr drawctx,   System.IntPtr data,   int l,   int r,   int t,   int b,   int x,   int y,  bool do_async) {
+                                                                                                                                                                                                                               var _ret_var = Efl.Canvas.Filter.InternalNativeInherit.evas_filter_input_render_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), filter,  engine,  output,  drawctx,  data,  l,  r,  t,  b,  x,  y,  do_async);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                                                      return _ret_var;
+ }
+   /// <summary>Called when filter changes must trigger a redraw of the object.
+   /// Virtual, to be implemented in the parent class.</summary>
+   /// <returns></returns>
+   virtual public  void FilterDirty() {
+       Efl.Canvas.Filter.InternalNativeInherit.evas_filter_dirty_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Rectangular size of the pixel buffer as allocated in memory.</summary>
+   /// <returns>Size of the buffer in pixels.</returns>
+   virtual public Eina.Size2D GetBufferSize() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Potentially not implemented, <see cref="Efl.Gfx.Buffer.BufferSize"/> may be read-only.</summary>
+   /// <param name="sz">Size of the buffer in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetBufferSize( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the current encoding of this buffer&apos;s pixels.
+   /// See <see cref="Efl.Gfx.Colorspace"/> for more information on the supported formats.</summary>
+   /// <returns>Colorspace</returns>
+   virtual public Efl.Gfx.Colorspace GetColorspace() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_colorspace_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieve whether alpha channel data is used on this object.</summary>
+   /// <returns>Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</returns>
+   virtual public bool GetAlpha() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_alpha_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Change alpha channel usage for this object.
+   /// This function sets a flag on an image object indicating whether or not to use alpha channel data. A value of <c>true</c> makes it use alpha channel data, and <c>false</c> makes it ignore that data. Note that this has nothing to do with an object&apos;s color as manipulated by <see cref="Efl.Gfx.Color.GetColor"/>.</summary>
+   /// <param name="alpha">Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</param>
+   /// <returns></returns>
+   virtual public  void SetAlpha( bool alpha) {
+                         Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_alpha_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), alpha);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Length in bytes of one row of pixels in memory.
+   /// Usually this will be equal to width * 4, with a plain BGRA image. This may return 0 if the stride is not applicable.
+   /// 
+   /// When applicable, this will include the <see cref="Efl.Gfx.Buffer.GetBufferBorders"/> as well as potential extra padding.</summary>
+   /// <returns>Stride</returns>
+   virtual public  int GetStride() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_stride_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Duplicated pixel borders inside this buffer.
+   /// Internally, EFL may require an image to have its border pixels duplicated, in particular for GL textures. This property exposes the internal duplicated borders to allow calling <see cref="Efl.Gfx.Buffer.BufferMap"/> with the entire pixel data, including those edge pixels.</summary>
+   /// <param name="l">Left border pixels, usually 0 or 1</param>
+   /// <param name="r">Right border pixels, usually 0 or 1</param>
+   /// <param name="t">Top border pixels, usually 0 or 1</param>
+   /// <param name="b">Bottom border pixels, usually 0 or 1</param>
+   /// <returns></returns>
+   virtual public  void GetBufferBorders( out  uint l,  out  uint r,  out  uint t,  out  uint b) {
+                                                                               Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_borders_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Mark a sub-region of the given image object to be redrawn.
+   /// This function schedules a particular rectangular region of an image object to be updated (redrawn) at the next rendering cycle.</summary>
+   /// <param name="region">The updated region.</param>
+   /// <returns></returns>
+   virtual public  void AddBufferUpdate( ref Eina.Rect region) {
+       var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                  Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_update_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+            region = Eina.Rect_StructConversion.ToManaged(_in_region);
+       }
+   /// <summary>Map a region of this buffer for read or write access by the CPU.
+   /// Fetches data from the GPU if needed. This operation may be slow if cpu_readable_fast or cpu_writeable_fast are not true, or if the required colorspace is different from the internal one.
+   /// 
+   /// Note that if the buffer has <see cref="Efl.Gfx.Buffer.GetBufferBorders"/>, then <c>x</c> and <c>y</c> may be negative.</summary>
+   /// <param name="mode">Specifies whether to map for read-only, write-only or read-write access (OR combination of flags).</param>
+   /// <param name="region">The region to map.</param>
+   /// <param name="cspace">Requested colorspace. If different from the internal cspace, map should try to convert the data into a new buffer. argb8888 by default.</param>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <param name="stride">Returns the length in bytes of a mapped line</param>
+   /// <returns>The data slice. In case of failure, the memory pointer will be <c>null</c>.</returns>
+   virtual public Eina.RwSlice BufferMap( Efl.Gfx.BufferAccessMode mode,  ref Eina.Rect region,  Efl.Gfx.Colorspace cspace,   int plane,  out  int stride) {
+             var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                                                                                    var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_map_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode,  ref _in_region,  cspace,  plane,  out stride);
+      Eina.Error.RaiseIfUnhandledException();
+                                          region = Eina.Rect_StructConversion.ToManaged(_in_region);
+                        return _ret_var;
+ }
+   /// <summary>Unmap a region of this buffer, and update the internal data if needed.
+   /// EFL will update the internal image if the map had write access.
+   /// 
+   /// Note: The <c>slice</c> struct does not need to be the one returned by <see cref="Efl.Gfx.Buffer.BufferMap"/>, only its contents (<c>mem</c> and <c>len</c>) must match. But after a call to <see cref="Efl.Gfx.Buffer.BufferUnmap"/> the original <c>slice</c> structure is not valid anymore.</summary>
+   /// <param name="slice">Data slice returned by a previous call to map.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool BufferUnmap( Eina.RwSlice slice) {
+                         var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_unmap_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set the pixels for this buffer by copying them, or allocate a new memory region.
+   /// This will allocate a new buffer in memory and copy the input <c>pixels</c> to it. The internal colorspace is not guaranteed to be preserved, and colorspace conversion may happen internally.
+   /// 
+   /// If <c>pixels</c> is <c>null</c>, then a new empty buffer will be allocated. If the buffer already had pixel data, the previous image data will be dropped. This is the same as <see cref="Efl.Gfx.Buffer.SetBufferManaged"/>.
+   /// 
+   /// The memory buffer <c>pixels</c> must be large enough to hold <c>width</c> x <c>height</c> pixels encoded in the colorspace <c>cspace</c>.
+   /// 
+   /// <c>slice</c> should not be the return value of <see cref="Efl.Gfx.Buffer.GetBufferManaged"/>.</summary>
+   /// <param name="slice">If <c>null</c>, allocates an empty buffer</param>
+   /// <param name="size">The size in pixels.</param>
+   /// <param name="stride">If 0, automatically guessed from the <c>width</c>.</param>
+   /// <param name="cspace">argb8888 by default.</param>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetBufferCopy( Eina.Slice slice,  Eina.Size2D size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane) {
+       var _in_slice = Eina.PrimitiveConversion.ManagedToPointerAlloc(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                                                                                    var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_copy_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_slice,  _in_size,  stride,  cspace,  plane);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Set the pixels for this buffer, managed externally by the client.
+   /// EFL will use the pixel data directly, and update the GPU-side texture if required. This will mark the image as dirty. If <c>slice</c> is <c>null</c>, this will detach the pixel data.
+   /// 
+   /// If the buffer already had pixel data, the previous image data will be dropped. This is the same as <see cref="Efl.Gfx.Buffer.SetBufferCopy"/>.
+   /// 
+   /// The memory buffer <c>pixels</c> must be large enough to hold <c>width</c> x <c>height</c> pixels encoded in the colorspace <c>cspace</c>.
+   /// 
+   /// See also <see cref="Efl.Gfx.Buffer.SetBufferCopy"/> if you want EFL to copy the input buffer internally.</summary>
+   /// <param name="slice">If <c>null</c>, detaches the previous buffer.</param>
+   /// <param name="size">The size in pixels.</param>
+   /// <param name="stride">If 0, automatically guessed from the <c>width</c>.</param>
+   /// <param name="cspace">argb8888 by default.</param>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetBufferManaged( Eina.Slice slice,  Eina.Size2D size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane) {
+       var _in_slice = Eina.PrimitiveConversion.ManagedToPointerAlloc(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                                                                                    var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_managed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_slice,  _in_size,  stride,  cspace,  plane);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Get a direct pointer to the internal pixel data, if available.
+   /// This will return <c>null</c> unless <see cref="Efl.Gfx.Buffer.SetBufferManaged"/> was used to pass in an external data pointer.</summary>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <returns>The data slice. The memory pointer will be <c>null</c> in case of failure.</returns>
+   virtual public Eina.Slice GetBufferManaged(  int plane) {
+                         var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_managed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), plane);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+   /// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+   /// 
+   /// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+   /// 
+   /// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+   /// <returns><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</returns>
+   virtual public bool GetFillAuto() {
+       var _ret_var = Efl.Gfx.FillNativeInherit.efl_gfx_fill_auto_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+   /// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+   /// 
+   /// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+   /// 
+   /// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+   /// <param name="filled"><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetFillAuto( bool filled) {
+                         Efl.Gfx.FillNativeInherit.efl_gfx_fill_auto_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), filled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+   /// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+   /// 
+   /// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+   /// <returns>The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</returns>
+   virtual public Eina.Rect GetFill() {
+       var _ret_var = Efl.Gfx.FillNativeInherit.efl_gfx_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+   /// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+   /// 
+   /// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+   /// <param name="fill">The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</param>
+   /// <returns></returns>
+   virtual public  void SetFill( Eina.Rect fill) {
+       var _in_fill = Eina.Rect_StructConversion.ToInternal(fill);
+                  Efl.Gfx.FillNativeInherit.efl_gfx_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_fill);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the code of the filter program set on this object. May be <c>null</c>.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterProgram( out  System.String code,  out  System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out code,  out name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set a graphical filter program on this object.
+   /// Valid for Text and Image objects at the moment.
+   /// 
+   /// The argument passed to this function is a string containing a valid Lua program based on the filters API as described in the &quot;EFL Graphics Filters&quot; reference page.
+   /// 
+   /// Set to <c>null</c> to disable filtering.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterProgram(  System.String code,   System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), code,  name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterState( out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterState(  System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur_state,  cur_val,  next_state,  next_val,  pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Gets the padding required to apply this filter.
+   /// 1.18</summary>
+   /// <param name="l">Padding on the left
+   /// 1.18</param>
+   /// <param name="r">Padding on the right
+   /// 1.18</param>
+   /// <param name="t">Padding on the top
+   /// 1.18</param>
+   /// <param name="b">Padding on the bottom
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterPadding( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.FilterNativeInherit.efl_gfx_filter_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <returns>Object to use as a source of pixels.
+   /// 1.18</returns>
+   virtual public Efl.Gfx.Entity GetFilterSource(  System.String name) {
+                         var _ret_var = Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <param name="source">Object to use as a source of pixels.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterSource(  System.String name,  Efl.Gfx.Entity source) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterData(  System.String name,  out  System.String value,  out bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  out value,  out execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterData(  System.String name,   System.String value,  bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  value,  execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <returns>Whether to use smooth scale or not.</returns>
+   virtual public bool GetSmoothScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <param name="smooth_scale">Whether to use smooth scale or not.</param>
+   /// <returns></returns>
+   virtual public  void SetSmoothScale( bool smooth_scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), smooth_scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <returns>Image scale type</returns>
+   virtual public Efl.Gfx.ImageScaleType GetScaleType() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <param name="scale_type">Image scale type</param>
+   /// <returns></returns>
+   virtual public  void SetScaleType( Efl.Gfx.ImageScaleType scale_type) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale_type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns 1.0 if not applicable (eg. height = 0).</summary>
+   /// <returns>The image&apos;s ratio.</returns>
+   virtual public double GetRatio() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_ratio_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void GetBorder( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void SetBorder(  int l,   int r,   int t,   int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l,  r,  t,  b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <returns>The scale factor.</returns>
+   virtual public double GetBorderScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <param name="scale">The scale factor.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderScale( double scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <returns>Fill mode of the center region.</returns>
+   virtual public Efl.Gfx.BorderFillMode GetBorderCenterFill() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <param name="fill">Fill mode of the center region.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderCenterFill( Efl.Gfx.BorderFillMode fill) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fill);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This represents the size of the original image in pixels.
+   /// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+   /// 
+   /// This is a read-only property, and may return 0x0.
+   /// 1.20</summary>
+   /// <returns>The size in pixels.</returns>
+   virtual public Eina.Size2D GetImageSize() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+   /// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+   /// <returns>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></returns>
+   virtual public Efl.Gfx.ImageContentHint GetContentHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the content hint setting of a given image object of the canvas.
+   /// This function sets the content hint value of the given image of the canvas. For example, if you&apos;re on the GL engine and your driver implementation supports it, setting this hint to #EVAS_IMAGE_CONTENT_HINT_DYNAMIC will make it need zero copies at texture upload time, which is an &quot;expensive&quot; operation.</summary>
+   /// <param name="hint">Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetContentHint( Efl.Gfx.ImageContentHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+   /// This function returns the scale hint value of the given image object of the canvas.</summary>
+   /// <returns>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></returns>
+   virtual public Efl.Gfx.ImageScaleHint GetScaleHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the scale hint of a given image of the canvas.
+   /// This function sets the scale hint value of the given image object in the canvas, which will affect how Evas is to cache scaled versions of its original source image.</summary>
+   /// <param name="hint">Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetScaleHint( Efl.Gfx.ImageScaleHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+   /// <returns>The load error code.</returns>
+   virtual public Efl.Gfx.ImageLoadError GetImageLoadError() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_load_error_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The dimensions of this object&apos;s viewport.
+   /// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+   /// 
+   /// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+   /// 
+   /// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+   /// 
+   /// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+   /// 
+   /// Refer to each implementing class specific documentation for more details.</summary>
+   /// <returns>Size of the view.</returns>
+   virtual public Eina.Size2D GetViewSize() {
+       var _ret_var = Efl.Gfx.ViewNativeInherit.efl_gfx_view_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The dimensions of this object&apos;s viewport.
+   /// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+   /// 
+   /// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+   /// 
+   /// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+   /// 
+   /// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+   /// 
+   /// Refer to each implementing class specific documentation for more details.</summary>
+   /// <param name="size">Size of the view.</param>
+   /// <returns></returns>
+   virtual public  void SetViewSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.ViewNativeInherit.efl_gfx_view_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the orientation of a given object.
+/// This can be used to set the rotation on an image or a window, for instance.</summary>
+/// <value>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</value>
+   public Efl.Orient Orientation {
+      get { return GetOrientation(); }
+      set { SetOrientation( value); }
+   }
+   /// <summary>Control the flip of the given image
+/// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+/// <value>Flip method</value>
+   public Efl.Flip Flip {
+      get { return GetFlip(); }
+      set { SetFlip( value); }
+   }
+   /// <summary>Marks this filter as changed.</summary>
+/// <value><c>true</c> if filter changed, <c>false</c> otherwise</value>
+   public bool FilterChanged {
+      set { SetFilterChanged( value); }
+   }
+   /// <summary>Marks this filter as invalid.</summary>
+/// <value><c>true</c> if filter is invalid, <c>false</c> otherwise</value>
+   public bool FilterInvalid {
+      set { SetFilterInvalid( value); }
+   }
+   /// <summary>Retrieve cached output buffer, if any.
+/// Does not increment the reference count.</summary>
+/// <value>Output buffer</value>
+   public  System.IntPtr FilterOutputBuffer {
+      get { return GetFilterOutputBuffer(); }
+   }
+   /// <summary>Rectangular size of the pixel buffer as allocated in memory.</summary>
+/// <value>Size of the buffer in pixels.</value>
+   public Eina.Size2D BufferSize {
+      get { return GetBufferSize(); }
+      set { SetBufferSize( value); }
+   }
+   /// <summary>The colorspace defines how pixels are encoded in the image in memory.
+/// By default, images are encoded in 32-bit BGRA, ie. each pixel takes 4 bytes in memory, with each channel B,G,R,A encoding the color with values from 0 to 255.
+/// 
+/// All images used in EFL use alpha-premultipied BGRA values, which means that for each pixel, B &lt;= A, G &lt;= A and R &lt;= A.</summary>
+/// <value>Colorspace</value>
+   public Efl.Gfx.Colorspace Colorspace {
+      get { return GetColorspace(); }
+   }
+   /// <summary>Indicates whether the alpha channel should be used.
+/// This does not indicate whether the image source file contains an alpha channel, only whether to respect it or discard it.</summary>
+/// <value>Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</value>
+   public bool Alpha {
+      get { return GetAlpha(); }
+      set { SetAlpha( value); }
+   }
+   /// <summary>Length in bytes of one row of pixels in memory.
+/// Usually this will be equal to width * 4, with a plain BGRA image. This may return 0 if the stride is not applicable.
+/// 
+/// When applicable, this will include the <see cref="Efl.Gfx.Buffer.GetBufferBorders"/> as well as potential extra padding.</summary>
+/// <value>Stride</value>
+   public  int Stride {
+      get { return GetStride(); }
+   }
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+/// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+/// 
+/// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+/// 
+/// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+/// <value><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</value>
+   public bool FillAuto {
+      get { return GetFillAuto(); }
+      set { SetFillAuto( value); }
+   }
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+/// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+/// 
+/// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+/// <value>The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</value>
+   public Eina.Rect Fill {
+      get { return GetFill(); }
+      set { SetFill( value); }
+   }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <value>Whether to use smooth scale or not.</value>
+   public bool SmoothScale {
+      get { return GetSmoothScale(); }
+      set { SetSmoothScale( value); }
+   }
+   /// <summary>Control how the image is scaled.</summary>
+/// <value>Image scale type</value>
+   public Efl.Gfx.ImageScaleType ScaleType {
+      get { return GetScaleType(); }
+      set { SetScaleType( value); }
+   }
+   /// <summary>The native width/height ratio of the image.</summary>
+/// <value>The image&apos;s ratio.</value>
+   public double Ratio {
+      get { return GetRatio(); }
+   }
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <value>The scale factor.</value>
+   public double BorderScale {
+      get { return GetBorderScale(); }
+      set { SetBorderScale( value); }
+   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <value>Fill mode of the center region.</value>
+   public Efl.Gfx.BorderFillMode BorderCenterFill {
+      get { return GetBorderCenterFill(); }
+      set { SetBorderCenterFill( value); }
+   }
+   /// <summary>This represents the size of the original image in pixels.
+/// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+/// 
+/// This is a read-only property, and may return 0x0.
+/// 1.20</summary>
+/// <value>The size in pixels.</value>
+   public Eina.Size2D ImageSize {
+      get { return GetImageSize(); }
+   }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+/// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+/// <value>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></value>
+   public Efl.Gfx.ImageContentHint ContentHint {
+      get { return GetContentHint(); }
+      set { SetContentHint( value); }
+   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+/// This function returns the scale hint value of the given image object of the canvas.</summary>
+/// <value>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></value>
+   public Efl.Gfx.ImageScaleHint ScaleHint {
+      get { return GetScaleHint(); }
+      set { SetScaleHint( value); }
+   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <value>The load error code.</value>
+   public Efl.Gfx.ImageLoadError ImageLoadError {
+      get { return GetImageLoadError(); }
+   }
+   /// <summary>The dimensions of this object&apos;s viewport.
+/// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+/// 
+/// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+/// 
+/// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+/// 
+/// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+/// 
+/// Refer to each implementing class specific documentation for more details.</summary>
+/// <value>Size of the view.</value>
+   public Eina.Size2D ViewSize {
+      get { return GetViewSize(); }
+      set { SetViewSize( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.ImageInternal.efl_canvas_image_internal_class_get();
+   }
+}
+public class ImageInternalNativeInherit : Efl.Canvas.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_file_save_static_delegate == null)
+      efl_file_save_static_delegate = new efl_file_save_delegate(save);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_save"), func = Marshal.GetFunctionPointerForDelegate(efl_file_save_static_delegate)});
+      if (efl_orientation_get_static_delegate == null)
+      efl_orientation_get_static_delegate = new efl_orientation_get_delegate(orientation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_get_static_delegate)});
+      if (efl_orientation_set_static_delegate == null)
+      efl_orientation_set_static_delegate = new efl_orientation_set_delegate(orientation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_set_static_delegate)});
+      if (efl_orientation_flip_get_static_delegate == null)
+      efl_orientation_flip_get_static_delegate = new efl_orientation_flip_get_delegate(flip_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_flip_get"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_flip_get_static_delegate)});
+      if (efl_orientation_flip_set_static_delegate == null)
+      efl_orientation_flip_set_static_delegate = new efl_orientation_flip_set_delegate(flip_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_flip_set"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_flip_set_static_delegate)});
+      if (evas_filter_changed_set_static_delegate == null)
+      evas_filter_changed_set_static_delegate = new evas_filter_changed_set_delegate(filter_changed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_changed_set"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_changed_set_static_delegate)});
+      if (evas_filter_invalid_set_static_delegate == null)
+      evas_filter_invalid_set_static_delegate = new evas_filter_invalid_set_delegate(filter_invalid_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_invalid_set"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_invalid_set_static_delegate)});
+      if (evas_filter_output_buffer_get_static_delegate == null)
+      evas_filter_output_buffer_get_static_delegate = new evas_filter_output_buffer_get_delegate(filter_output_buffer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_output_buffer_get"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_output_buffer_get_static_delegate)});
+      if (evas_filter_input_alpha_static_delegate == null)
+      evas_filter_input_alpha_static_delegate = new evas_filter_input_alpha_delegate(filter_input_alpha);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_input_alpha"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_input_alpha_static_delegate)});
+      if (evas_filter_state_prepare_static_delegate == null)
+      evas_filter_state_prepare_static_delegate = new evas_filter_state_prepare_delegate(filter_state_prepare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_state_prepare"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_state_prepare_static_delegate)});
+      if (evas_filter_input_render_static_delegate == null)
+      evas_filter_input_render_static_delegate = new evas_filter_input_render_delegate(filter_input_render);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_input_render"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_input_render_static_delegate)});
+      if (evas_filter_dirty_static_delegate == null)
+      evas_filter_dirty_static_delegate = new evas_filter_dirty_delegate(filter_dirty);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "evas_filter_dirty"), func = Marshal.GetFunctionPointerForDelegate(evas_filter_dirty_static_delegate)});
+      if (efl_gfx_buffer_size_get_static_delegate == null)
+      efl_gfx_buffer_size_get_static_delegate = new efl_gfx_buffer_size_get_delegate(buffer_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_size_get_static_delegate)});
+      if (efl_gfx_buffer_size_set_static_delegate == null)
+      efl_gfx_buffer_size_set_static_delegate = new efl_gfx_buffer_size_set_delegate(buffer_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_size_set_static_delegate)});
+      if (efl_gfx_buffer_colorspace_get_static_delegate == null)
+      efl_gfx_buffer_colorspace_get_static_delegate = new efl_gfx_buffer_colorspace_get_delegate(colorspace_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_colorspace_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_colorspace_get_static_delegate)});
+      if (efl_gfx_buffer_alpha_get_static_delegate == null)
+      efl_gfx_buffer_alpha_get_static_delegate = new efl_gfx_buffer_alpha_get_delegate(alpha_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_alpha_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_alpha_get_static_delegate)});
+      if (efl_gfx_buffer_alpha_set_static_delegate == null)
+      efl_gfx_buffer_alpha_set_static_delegate = new efl_gfx_buffer_alpha_set_delegate(alpha_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_alpha_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_alpha_set_static_delegate)});
+      if (efl_gfx_buffer_stride_get_static_delegate == null)
+      efl_gfx_buffer_stride_get_static_delegate = new efl_gfx_buffer_stride_get_delegate(stride_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_stride_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_stride_get_static_delegate)});
+      if (efl_gfx_buffer_borders_get_static_delegate == null)
+      efl_gfx_buffer_borders_get_static_delegate = new efl_gfx_buffer_borders_get_delegate(buffer_borders_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_borders_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_borders_get_static_delegate)});
+      if (efl_gfx_buffer_update_add_static_delegate == null)
+      efl_gfx_buffer_update_add_static_delegate = new efl_gfx_buffer_update_add_delegate(buffer_update_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_update_add"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_update_add_static_delegate)});
+      if (efl_gfx_buffer_map_static_delegate == null)
+      efl_gfx_buffer_map_static_delegate = new efl_gfx_buffer_map_delegate(buffer_map);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_map"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_map_static_delegate)});
+      if (efl_gfx_buffer_unmap_static_delegate == null)
+      efl_gfx_buffer_unmap_static_delegate = new efl_gfx_buffer_unmap_delegate(buffer_unmap);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_unmap"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_unmap_static_delegate)});
+      if (efl_gfx_buffer_copy_set_static_delegate == null)
+      efl_gfx_buffer_copy_set_static_delegate = new efl_gfx_buffer_copy_set_delegate(buffer_copy_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_copy_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_copy_set_static_delegate)});
+      if (efl_gfx_buffer_managed_set_static_delegate == null)
+      efl_gfx_buffer_managed_set_static_delegate = new efl_gfx_buffer_managed_set_delegate(buffer_managed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_managed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_managed_set_static_delegate)});
+      if (efl_gfx_buffer_managed_get_static_delegate == null)
+      efl_gfx_buffer_managed_get_static_delegate = new efl_gfx_buffer_managed_get_delegate(buffer_managed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_managed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_managed_get_static_delegate)});
+      if (efl_gfx_fill_auto_get_static_delegate == null)
+      efl_gfx_fill_auto_get_static_delegate = new efl_gfx_fill_auto_get_delegate(fill_auto_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_auto_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_auto_get_static_delegate)});
+      if (efl_gfx_fill_auto_set_static_delegate == null)
+      efl_gfx_fill_auto_set_static_delegate = new efl_gfx_fill_auto_set_delegate(fill_auto_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_auto_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_auto_set_static_delegate)});
+      if (efl_gfx_fill_get_static_delegate == null)
+      efl_gfx_fill_get_static_delegate = new efl_gfx_fill_get_delegate(fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_get_static_delegate)});
+      if (efl_gfx_fill_set_static_delegate == null)
+      efl_gfx_fill_set_static_delegate = new efl_gfx_fill_set_delegate(fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_set_static_delegate)});
+      if (efl_gfx_filter_program_get_static_delegate == null)
+      efl_gfx_filter_program_get_static_delegate = new efl_gfx_filter_program_get_delegate(filter_program_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_get_static_delegate)});
+      if (efl_gfx_filter_program_set_static_delegate == null)
+      efl_gfx_filter_program_set_static_delegate = new efl_gfx_filter_program_set_delegate(filter_program_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_set_static_delegate)});
+      if (efl_gfx_filter_state_get_static_delegate == null)
+      efl_gfx_filter_state_get_static_delegate = new efl_gfx_filter_state_get_delegate(filter_state_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_get_static_delegate)});
+      if (efl_gfx_filter_state_set_static_delegate == null)
+      efl_gfx_filter_state_set_static_delegate = new efl_gfx_filter_state_set_delegate(filter_state_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_set_static_delegate)});
+      if (efl_gfx_filter_padding_get_static_delegate == null)
+      efl_gfx_filter_padding_get_static_delegate = new efl_gfx_filter_padding_get_delegate(filter_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_padding_get_static_delegate)});
+      if (efl_gfx_filter_source_get_static_delegate == null)
+      efl_gfx_filter_source_get_static_delegate = new efl_gfx_filter_source_get_delegate(filter_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_get_static_delegate)});
+      if (efl_gfx_filter_source_set_static_delegate == null)
+      efl_gfx_filter_source_set_static_delegate = new efl_gfx_filter_source_set_delegate(filter_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_set_static_delegate)});
+      if (efl_gfx_filter_data_get_static_delegate == null)
+      efl_gfx_filter_data_get_static_delegate = new efl_gfx_filter_data_get_delegate(filter_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_get_static_delegate)});
+      if (efl_gfx_filter_data_set_static_delegate == null)
+      efl_gfx_filter_data_set_static_delegate = new efl_gfx_filter_data_set_delegate(filter_data_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_set_static_delegate)});
+      if (efl_gfx_image_smooth_scale_get_static_delegate == null)
+      efl_gfx_image_smooth_scale_get_static_delegate = new efl_gfx_image_smooth_scale_get_delegate(smooth_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_get_static_delegate)});
+      if (efl_gfx_image_smooth_scale_set_static_delegate == null)
+      efl_gfx_image_smooth_scale_set_static_delegate = new efl_gfx_image_smooth_scale_set_delegate(smooth_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_set_static_delegate)});
+      if (efl_gfx_image_scale_type_get_static_delegate == null)
+      efl_gfx_image_scale_type_get_static_delegate = new efl_gfx_image_scale_type_get_delegate(scale_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_get_static_delegate)});
+      if (efl_gfx_image_scale_type_set_static_delegate == null)
+      efl_gfx_image_scale_type_set_static_delegate = new efl_gfx_image_scale_type_set_delegate(scale_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_set_static_delegate)});
+      if (efl_gfx_image_ratio_get_static_delegate == null)
+      efl_gfx_image_ratio_get_static_delegate = new efl_gfx_image_ratio_get_delegate(ratio_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_ratio_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_ratio_get_static_delegate)});
+      if (efl_gfx_image_border_get_static_delegate == null)
+      efl_gfx_image_border_get_static_delegate = new efl_gfx_image_border_get_delegate(border_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_get_static_delegate)});
+      if (efl_gfx_image_border_set_static_delegate == null)
+      efl_gfx_image_border_set_static_delegate = new efl_gfx_image_border_set_delegate(border_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_set_static_delegate)});
+      if (efl_gfx_image_border_scale_get_static_delegate == null)
+      efl_gfx_image_border_scale_get_static_delegate = new efl_gfx_image_border_scale_get_delegate(border_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_get_static_delegate)});
+      if (efl_gfx_image_border_scale_set_static_delegate == null)
+      efl_gfx_image_border_scale_set_static_delegate = new efl_gfx_image_border_scale_set_delegate(border_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_set_static_delegate)});
+      if (efl_gfx_image_border_center_fill_get_static_delegate == null)
+      efl_gfx_image_border_center_fill_get_static_delegate = new efl_gfx_image_border_center_fill_get_delegate(border_center_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_get_static_delegate)});
+      if (efl_gfx_image_border_center_fill_set_static_delegate == null)
+      efl_gfx_image_border_center_fill_set_static_delegate = new efl_gfx_image_border_center_fill_set_delegate(border_center_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_set_static_delegate)});
+      if (efl_gfx_image_size_get_static_delegate == null)
+      efl_gfx_image_size_get_static_delegate = new efl_gfx_image_size_get_delegate(image_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_size_get_static_delegate)});
+      if (efl_gfx_image_content_hint_get_static_delegate == null)
+      efl_gfx_image_content_hint_get_static_delegate = new efl_gfx_image_content_hint_get_delegate(content_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_get_static_delegate)});
+      if (efl_gfx_image_content_hint_set_static_delegate == null)
+      efl_gfx_image_content_hint_set_static_delegate = new efl_gfx_image_content_hint_set_delegate(content_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_set_static_delegate)});
+      if (efl_gfx_image_scale_hint_get_static_delegate == null)
+      efl_gfx_image_scale_hint_get_static_delegate = new efl_gfx_image_scale_hint_get_delegate(scale_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_get_static_delegate)});
+      if (efl_gfx_image_scale_hint_set_static_delegate == null)
+      efl_gfx_image_scale_hint_set_static_delegate = new efl_gfx_image_scale_hint_set_delegate(scale_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_set_static_delegate)});
+      if (efl_gfx_image_load_error_get_static_delegate == null)
+      efl_gfx_image_load_error_get_static_delegate = new efl_gfx_image_load_error_get_delegate(image_load_error_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_error_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_error_get_static_delegate)});
+      if (efl_gfx_view_size_get_static_delegate == null)
+      efl_gfx_view_size_get_static_delegate = new efl_gfx_view_size_get_delegate(view_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_view_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_view_size_get_static_delegate)});
+      if (efl_gfx_view_size_set_static_delegate == null)
+      efl_gfx_view_size_set_static_delegate = new efl_gfx_view_size_set_delegate(view_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_view_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_view_size_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.ImageInternal.efl_canvas_image_internal_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.ImageInternal.efl_canvas_image_internal_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_save_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   ref Efl.FileSaveInfo_StructInternal info);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_save_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   ref Efl.FileSaveInfo_StructInternal info);
+    public static Efl.Eo.FunctionWrapper<efl_file_save_api_delegate> efl_file_save_ptr = new Efl.Eo.FunctionWrapper<efl_file_save_api_delegate>(_Module, "efl_file_save");
+    private static bool save(System.IntPtr obj, System.IntPtr pd,   System.String file,   System.String key,  ref Efl.FileSaveInfo_StructInternal info)
+   {
+      Eina.Log.Debug("function efl_file_save was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           var _in_info = Efl.FileSaveInfo_StructConversion.ToManaged(info);
+                                             bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).Save( file,  key,  ref _in_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    info = Efl.FileSaveInfo_StructConversion.ToInternal(_in_info);
+      return _ret_var;
+      } else {
+         return efl_file_save_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file,  key,  ref info);
+      }
+   }
+   private static efl_file_save_delegate efl_file_save_static_delegate;
+
+
+    private delegate Efl.Orient efl_orientation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Orient efl_orientation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_get_api_delegate> efl_orientation_get_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_get_api_delegate>(_Module, "efl_orientation_get");
+    private static Efl.Orient orientation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_orientation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Orient _ret_var = default(Efl.Orient);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetOrientation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_orientation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_orientation_get_delegate efl_orientation_get_static_delegate;
+
+
+    private delegate  void efl_orientation_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Orient dir);
+
+
+    public delegate  void efl_orientation_set_api_delegate(System.IntPtr obj,   Efl.Orient dir);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_set_api_delegate> efl_orientation_set_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_set_api_delegate>(_Module, "efl_orientation_set");
+    private static  void orientation_set(System.IntPtr obj, System.IntPtr pd,  Efl.Orient dir)
+   {
+      Eina.Log.Debug("function efl_orientation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetOrientation( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_orientation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_orientation_set_delegate efl_orientation_set_static_delegate;
+
+
+    private delegate Efl.Flip efl_orientation_flip_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Flip efl_orientation_flip_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_flip_get_api_delegate> efl_orientation_flip_get_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_flip_get_api_delegate>(_Module, "efl_orientation_flip_get");
+    private static Efl.Flip flip_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_orientation_flip_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Flip _ret_var = default(Efl.Flip);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetFlip();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_orientation_flip_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_orientation_flip_get_delegate efl_orientation_flip_get_static_delegate;
+
+
+    private delegate  void efl_orientation_flip_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Flip flip);
+
+
+    public delegate  void efl_orientation_flip_set_api_delegate(System.IntPtr obj,   Efl.Flip flip);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_flip_set_api_delegate> efl_orientation_flip_set_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_flip_set_api_delegate>(_Module, "efl_orientation_flip_set");
+    private static  void flip_set(System.IntPtr obj, System.IntPtr pd,  Efl.Flip flip)
+   {
+      Eina.Log.Debug("function efl_orientation_flip_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetFlip( flip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_orientation_flip_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flip);
+      }
+   }
+   private static efl_orientation_flip_set_delegate efl_orientation_flip_set_static_delegate;
+
+
+    private delegate  void evas_filter_changed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void evas_filter_changed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<evas_filter_changed_set_api_delegate> evas_filter_changed_set_ptr = new Efl.Eo.FunctionWrapper<evas_filter_changed_set_api_delegate>(_Module, "evas_filter_changed_set");
+    private static  void filter_changed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function evas_filter_changed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetFilterChanged( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         evas_filter_changed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static evas_filter_changed_set_delegate evas_filter_changed_set_static_delegate;
+
+
+    private delegate  void evas_filter_invalid_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void evas_filter_invalid_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<evas_filter_invalid_set_api_delegate> evas_filter_invalid_set_ptr = new Efl.Eo.FunctionWrapper<evas_filter_invalid_set_api_delegate>(_Module, "evas_filter_invalid_set");
+    private static  void filter_invalid_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function evas_filter_invalid_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetFilterInvalid( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         evas_filter_invalid_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static evas_filter_invalid_set_delegate evas_filter_invalid_set_static_delegate;
+
+
+    private delegate  System.IntPtr evas_filter_output_buffer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr evas_filter_output_buffer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<evas_filter_output_buffer_get_api_delegate> evas_filter_output_buffer_get_ptr = new Efl.Eo.FunctionWrapper<evas_filter_output_buffer_get_api_delegate>(_Module, "evas_filter_output_buffer_get");
+    private static  System.IntPtr filter_output_buffer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function evas_filter_output_buffer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetFilterOutputBuffer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return evas_filter_output_buffer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static evas_filter_output_buffer_get_delegate evas_filter_output_buffer_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool evas_filter_input_alpha_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool evas_filter_input_alpha_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<evas_filter_input_alpha_api_delegate> evas_filter_input_alpha_ptr = new Efl.Eo.FunctionWrapper<evas_filter_input_alpha_api_delegate>(_Module, "evas_filter_input_alpha");
+    private static bool filter_input_alpha(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function evas_filter_input_alpha was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).FilterInputAlpha();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return evas_filter_input_alpha_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static evas_filter_input_alpha_delegate evas_filter_input_alpha_static_delegate;
+
+
+    private delegate  void evas_filter_state_prepare_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Canvas.Filter.State_StructInternal state,    System.IntPtr data);
+
+
+    public delegate  void evas_filter_state_prepare_api_delegate(System.IntPtr obj,   out Efl.Canvas.Filter.State_StructInternal state,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<evas_filter_state_prepare_api_delegate> evas_filter_state_prepare_ptr = new Efl.Eo.FunctionWrapper<evas_filter_state_prepare_api_delegate>(_Module, "evas_filter_state_prepare");
+    private static  void filter_state_prepare(System.IntPtr obj, System.IntPtr pd,  out Efl.Canvas.Filter.State_StructInternal state,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function evas_filter_state_prepare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Canvas.Filter.State _out_state = default(Efl.Canvas.Filter.State);
+                           
+         try {
+            ((ImageInternal)wrapper).FilterStatePrepare( out _out_state,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      state = Efl.Canvas.Filter.State_StructConversion.ToInternal(_out_state);
+                              } else {
+         evas_filter_state_prepare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out state,  data);
+      }
+   }
+   private static evas_filter_state_prepare_delegate evas_filter_state_prepare_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool evas_filter_input_render_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr filter,    System.IntPtr engine,    System.IntPtr output,    System.IntPtr drawctx,    System.IntPtr data,    int l,    int r,    int t,    int b,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool do_async);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool evas_filter_input_render_api_delegate(System.IntPtr obj,    System.IntPtr filter,    System.IntPtr engine,    System.IntPtr output,    System.IntPtr drawctx,    System.IntPtr data,    int l,    int r,    int t,    int b,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool do_async);
+    public static Efl.Eo.FunctionWrapper<evas_filter_input_render_api_delegate> evas_filter_input_render_ptr = new Efl.Eo.FunctionWrapper<evas_filter_input_render_api_delegate>(_Module, "evas_filter_input_render");
+    private static bool filter_input_render(System.IntPtr obj, System.IntPtr pd,   System.IntPtr filter,   System.IntPtr engine,   System.IntPtr output,   System.IntPtr drawctx,   System.IntPtr data,   int l,   int r,   int t,   int b,   int x,   int y,  bool do_async)
+   {
+      Eina.Log.Debug("function evas_filter_input_render was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                                                                                          bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).FilterInputRender( filter,  engine,  output,  drawctx,  data,  l,  r,  t,  b,  x,  y,  do_async);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                                                      return _ret_var;
+      } else {
+         return evas_filter_input_render_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  filter,  engine,  output,  drawctx,  data,  l,  r,  t,  b,  x,  y,  do_async);
+      }
+   }
+   private static evas_filter_input_render_delegate evas_filter_input_render_static_delegate;
+
+
+    private delegate  void evas_filter_dirty_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void evas_filter_dirty_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<evas_filter_dirty_api_delegate> evas_filter_dirty_ptr = new Efl.Eo.FunctionWrapper<evas_filter_dirty_api_delegate>(_Module, "evas_filter_dirty");
+    private static  void filter_dirty(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function evas_filter_dirty was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ImageInternal)wrapper).FilterDirty();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         evas_filter_dirty_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static evas_filter_dirty_delegate evas_filter_dirty_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_buffer_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_buffer_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_get_api_delegate> efl_gfx_buffer_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_get_api_delegate>(_Module, "efl_gfx_buffer_size_get");
+    private static Eina.Size2D_StructInternal buffer_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetBufferSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_buffer_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_size_get_delegate efl_gfx_buffer_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_buffer_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_set_api_delegate> efl_gfx_buffer_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_set_api_delegate>(_Module, "efl_gfx_buffer_size_set");
+    private static  void buffer_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((ImageInternal)wrapper).SetBufferSize( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_buffer_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_buffer_size_set_delegate efl_gfx_buffer_size_set_static_delegate;
+
+
+    private delegate Efl.Gfx.Colorspace efl_gfx_buffer_colorspace_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.Colorspace efl_gfx_buffer_colorspace_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_colorspace_get_api_delegate> efl_gfx_buffer_colorspace_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_colorspace_get_api_delegate>(_Module, "efl_gfx_buffer_colorspace_get");
+    private static Efl.Gfx.Colorspace colorspace_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_colorspace_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Colorspace _ret_var = default(Efl.Gfx.Colorspace);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetColorspace();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_buffer_colorspace_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_colorspace_get_delegate efl_gfx_buffer_colorspace_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_alpha_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_alpha_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_get_api_delegate> efl_gfx_buffer_alpha_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_get_api_delegate>(_Module, "efl_gfx_buffer_alpha_get");
+    private static bool alpha_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_alpha_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetAlpha();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_buffer_alpha_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_alpha_get_delegate efl_gfx_buffer_alpha_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_alpha_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+
+
+    public delegate  void efl_gfx_buffer_alpha_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_set_api_delegate> efl_gfx_buffer_alpha_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_set_api_delegate>(_Module, "efl_gfx_buffer_alpha_set");
+    private static  void alpha_set(System.IntPtr obj, System.IntPtr pd,  bool alpha)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_alpha_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetAlpha( alpha);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_buffer_alpha_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  alpha);
+      }
+   }
+   private static efl_gfx_buffer_alpha_set_delegate efl_gfx_buffer_alpha_set_static_delegate;
+
+
+    private delegate  int efl_gfx_buffer_stride_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_buffer_stride_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_stride_get_api_delegate> efl_gfx_buffer_stride_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_stride_get_api_delegate>(_Module, "efl_gfx_buffer_stride_get");
+    private static  int stride_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_stride_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetStride();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_buffer_stride_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_stride_get_delegate efl_gfx_buffer_stride_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_borders_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  uint l,   out  uint r,   out  uint t,   out  uint b);
+
+
+    public delegate  void efl_gfx_buffer_borders_get_api_delegate(System.IntPtr obj,   out  uint l,   out  uint r,   out  uint t,   out  uint b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_borders_get_api_delegate> efl_gfx_buffer_borders_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_borders_get_api_delegate>(_Module, "efl_gfx_buffer_borders_get");
+    private static  void buffer_borders_get(System.IntPtr obj, System.IntPtr pd,  out  uint l,  out  uint r,  out  uint t,  out  uint b)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_borders_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( uint);      r = default( uint);      t = default( uint);      b = default( uint);                                 
+         try {
+            ((ImageInternal)wrapper).GetBufferBorders( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_buffer_borders_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_buffer_borders_get_delegate efl_gfx_buffer_borders_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_update_add_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Rect_StructInternal region);
+
+
+    public delegate  void efl_gfx_buffer_update_add_api_delegate(System.IntPtr obj,   ref Eina.Rect_StructInternal region);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_update_add_api_delegate> efl_gfx_buffer_update_add_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_update_add_api_delegate>(_Module, "efl_gfx_buffer_update_add");
+    private static  void buffer_update_add(System.IntPtr obj, System.IntPtr pd,  ref Eina.Rect_StructInternal region)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_update_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                     
+         try {
+            ((ImageInternal)wrapper).AddBufferUpdate( ref _in_region);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            region = Eina.Rect_StructConversion.ToInternal(_in_region);
+            } else {
+         efl_gfx_buffer_update_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref region);
+      }
+   }
+   private static efl_gfx_buffer_update_add_delegate efl_gfx_buffer_update_add_static_delegate;
+
+
+    private delegate Eina.RwSlice efl_gfx_buffer_map_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.BufferAccessMode mode,   ref Eina.Rect_StructInternal region,   Efl.Gfx.Colorspace cspace,    int plane,   out  int stride);
+
+
+    public delegate Eina.RwSlice efl_gfx_buffer_map_api_delegate(System.IntPtr obj,   Efl.Gfx.BufferAccessMode mode,   ref Eina.Rect_StructInternal region,   Efl.Gfx.Colorspace cspace,    int plane,   out  int stride);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_map_api_delegate> efl_gfx_buffer_map_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_map_api_delegate>(_Module, "efl_gfx_buffer_map");
+    private static Eina.RwSlice buffer_map(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.BufferAccessMode mode,  ref Eina.Rect_StructInternal region,  Efl.Gfx.Colorspace cspace,   int plane,  out  int stride)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_map was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                                                stride = default( int);                                       Eina.RwSlice _ret_var = default(Eina.RwSlice);
+         try {
+            _ret_var = ((ImageInternal)wrapper).BufferMap( mode,  ref _in_region,  cspace,  plane,  out stride);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          region = Eina.Rect_StructConversion.ToInternal(_in_region);
+                        return _ret_var;
+      } else {
+         return efl_gfx_buffer_map_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode,  ref region,  cspace,  plane,  out stride);
+      }
+   }
+   private static efl_gfx_buffer_map_delegate efl_gfx_buffer_map_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_unmap_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.RwSlice slice);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_unmap_api_delegate(System.IntPtr obj,   Eina.RwSlice slice);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_unmap_api_delegate> efl_gfx_buffer_unmap_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_unmap_api_delegate>(_Module, "efl_gfx_buffer_unmap");
+    private static bool buffer_unmap(System.IntPtr obj, System.IntPtr pd,  Eina.RwSlice slice)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_unmap was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).BufferUnmap( slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_unmap_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice);
+      }
+   }
+   private static efl_gfx_buffer_unmap_delegate efl_gfx_buffer_unmap_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_copy_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_copy_set_api_delegate(System.IntPtr obj,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_copy_set_api_delegate> efl_gfx_buffer_copy_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_copy_set_api_delegate>(_Module, "efl_gfx_buffer_copy_set");
+    private static bool buffer_copy_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr slice,  Eina.Size2D_StructInternal size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_copy_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_slice = Eina.PrimitiveConversion.PointerToManaged<Eina.Slice>(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                                                                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).SetBufferCopy( _in_slice,  _in_size,  stride,  cspace,  plane);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_copy_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice,  size,  stride,  cspace,  plane);
+      }
+   }
+   private static efl_gfx_buffer_copy_set_delegate efl_gfx_buffer_copy_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_managed_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_managed_set_api_delegate(System.IntPtr obj,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_set_api_delegate> efl_gfx_buffer_managed_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_set_api_delegate>(_Module, "efl_gfx_buffer_managed_set");
+    private static bool buffer_managed_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr slice,  Eina.Size2D_StructInternal size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_managed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_slice = Eina.PrimitiveConversion.PointerToManaged<Eina.Slice>(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                                                                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).SetBufferManaged( _in_slice,  _in_size,  stride,  cspace,  plane);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_managed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice,  size,  stride,  cspace,  plane);
+      }
+   }
+   private static efl_gfx_buffer_managed_set_delegate efl_gfx_buffer_managed_set_static_delegate;
+
+
+    private delegate Eina.Slice efl_gfx_buffer_managed_get_delegate(System.IntPtr obj, System.IntPtr pd,    int plane);
+
+
+    public delegate Eina.Slice efl_gfx_buffer_managed_get_api_delegate(System.IntPtr obj,    int plane);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_get_api_delegate> efl_gfx_buffer_managed_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_get_api_delegate>(_Module, "efl_gfx_buffer_managed_get");
+    private static Eina.Slice buffer_managed_get(System.IntPtr obj, System.IntPtr pd,   int plane)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_managed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Slice _ret_var = default(Eina.Slice);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetBufferManaged( plane);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_managed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  plane);
+      }
+   }
+   private static efl_gfx_buffer_managed_get_delegate efl_gfx_buffer_managed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_fill_auto_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_fill_auto_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_get_api_delegate> efl_gfx_fill_auto_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_get_api_delegate>(_Module, "efl_gfx_fill_auto_get");
+    private static bool fill_auto_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_auto_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetFillAuto();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_fill_auto_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_fill_auto_get_delegate efl_gfx_fill_auto_get_static_delegate;
+
+
+    private delegate  void efl_gfx_fill_auto_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool filled);
+
+
+    public delegate  void efl_gfx_fill_auto_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool filled);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_set_api_delegate> efl_gfx_fill_auto_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_set_api_delegate>(_Module, "efl_gfx_fill_auto_set");
+    private static  void fill_auto_set(System.IntPtr obj, System.IntPtr pd,  bool filled)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_auto_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetFillAuto( filled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_fill_auto_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  filled);
+      }
+   }
+   private static efl_gfx_fill_auto_set_delegate efl_gfx_fill_auto_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_get_api_delegate> efl_gfx_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_get_api_delegate>(_Module, "efl_gfx_fill_get");
+    private static Eina.Rect_StructInternal fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_fill_get_delegate efl_gfx_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal fill);
+
+
+    public delegate  void efl_gfx_fill_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal fill);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_set_api_delegate> efl_gfx_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_set_api_delegate>(_Module, "efl_gfx_fill_set");
+    private static  void fill_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal fill)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_fill = Eina.Rect_StructConversion.ToManaged(fill);
+                     
+         try {
+            ((ImageInternal)wrapper).SetFill( _in_fill);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill);
+      }
+   }
+   private static efl_gfx_fill_set_delegate efl_gfx_fill_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_program_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate> efl_gfx_filter_program_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate>(_Module, "efl_gfx_filter_program_get");
+    private static  void filter_program_get(System.IntPtr obj, System.IntPtr pd,  out  System.String code,  out  System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_code = default( System.String);
+       System.String _out_name = default( System.String);
+                     
+         try {
+            ((ImageInternal)wrapper).GetFilterProgram( out _out_code,  out _out_name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      code = _out_code;
+      name = _out_name;
+                        } else {
+         efl_gfx_filter_program_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out code,  out name);
+      }
+   }
+   private static efl_gfx_filter_program_get_delegate efl_gfx_filter_program_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_program_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate> efl_gfx_filter_program_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate>(_Module, "efl_gfx_filter_program_set");
+    private static  void filter_program_set(System.IntPtr obj, System.IntPtr pd,   System.String code,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageInternal)wrapper).SetFilterProgram( code,  name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_program_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code,  name);
+      }
+   }
+   private static efl_gfx_filter_program_set_delegate efl_gfx_filter_program_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+
+
+    public delegate  void efl_gfx_filter_state_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate> efl_gfx_filter_state_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate>(_Module, "efl_gfx_filter_state_get");
+    private static  void filter_state_get(System.IntPtr obj, System.IntPtr pd,  out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                              System.String _out_cur_state = default( System.String);
+      cur_val = default(double);       System.String _out_next_state = default( System.String);
+      next_val = default(double);      pos = default(double);                                       
+         try {
+            ((ImageInternal)wrapper).GetFilterState( out _out_cur_state,  out cur_val,  out _out_next_state,  out next_val,  out pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      cur_state = _out_cur_state;
+            next_state = _out_next_state;
+                                                      } else {
+         efl_gfx_filter_state_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      }
+   }
+   private static efl_gfx_filter_state_get_delegate efl_gfx_filter_state_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+
+
+    public delegate  void efl_gfx_filter_state_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate> efl_gfx_filter_state_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate>(_Module, "efl_gfx_filter_state_set");
+    private static  void filter_state_set(System.IntPtr obj, System.IntPtr pd,   System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((ImageInternal)wrapper).SetFilterState( cur_state,  cur_val,  next_state,  next_val,  pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_filter_state_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur_state,  cur_val,  next_state,  next_val,  pos);
+      }
+   }
+   private static efl_gfx_filter_state_set_delegate efl_gfx_filter_state_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_filter_padding_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate> efl_gfx_filter_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate>(_Module, "efl_gfx_filter_padding_get");
+    private static  void filter_padding_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((ImageInternal)wrapper).GetFilterPadding( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_filter_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_filter_padding_get_delegate efl_gfx_filter_padding_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_gfx_filter_source_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_gfx_filter_source_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate> efl_gfx_filter_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate>(_Module, "efl_gfx_filter_source_get");
+    private static Efl.Gfx.Entity filter_source_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetFilterSource( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_filter_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_gfx_filter_source_get_delegate efl_gfx_filter_source_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+
+
+    public delegate  void efl_gfx_filter_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate> efl_gfx_filter_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate>(_Module, "efl_gfx_filter_source_set");
+    private static  void filter_source_set(System.IntPtr obj, System.IntPtr pd,   System.String name,  Efl.Gfx.Entity source)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageInternal)wrapper).SetFilterSource( name,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  source);
+      }
+   }
+   private static efl_gfx_filter_source_set_delegate efl_gfx_filter_source_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate> efl_gfx_filter_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate>(_Module, "efl_gfx_filter_data_get");
+    private static  void filter_data_get(System.IntPtr obj, System.IntPtr pd,   System.String name,  out  System.String value,  out bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                        System.String _out_value = default( System.String);
+      execute = default(bool);                           
+         try {
+            ((ImageInternal)wrapper).GetFilterData( name,  out _out_value,  out execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            value = _out_value;
+                                    } else {
+         efl_gfx_filter_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  out value,  out execute);
+      }
+   }
+   private static efl_gfx_filter_data_get_delegate efl_gfx_filter_data_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate> efl_gfx_filter_data_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate>(_Module, "efl_gfx_filter_data_set");
+    private static  void filter_data_set(System.IntPtr obj, System.IntPtr pd,   System.String name,   System.String value,  bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((ImageInternal)wrapper).SetFilterData( name,  value,  execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_filter_data_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  value,  execute);
+      }
+   }
+   private static efl_gfx_filter_data_set_delegate efl_gfx_filter_data_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_smooth_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_smooth_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate> efl_gfx_image_smooth_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate>(_Module, "efl_gfx_image_smooth_scale_get");
+    private static bool smooth_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetSmoothScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_smooth_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_smooth_scale_get_delegate efl_gfx_image_smooth_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_smooth_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+
+
+    public delegate  void efl_gfx_image_smooth_scale_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate> efl_gfx_image_smooth_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate>(_Module, "efl_gfx_image_smooth_scale_set");
+    private static  void smooth_scale_set(System.IntPtr obj, System.IntPtr pd,  bool smooth_scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetSmoothScale( smooth_scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_smooth_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  smooth_scale);
+      }
+   }
+   private static efl_gfx_image_smooth_scale_set_delegate efl_gfx_image_smooth_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate> efl_gfx_image_scale_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate>(_Module, "efl_gfx_image_scale_type_get");
+    private static Efl.Gfx.ImageScaleType scale_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleType _ret_var = default(Efl.Gfx.ImageScaleType);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetScaleType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_type_get_delegate efl_gfx_image_scale_type_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleType scale_type);
+
+
+    public delegate  void efl_gfx_image_scale_type_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleType scale_type);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate> efl_gfx_image_scale_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate>(_Module, "efl_gfx_image_scale_type_set");
+    private static  void scale_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleType scale_type)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetScaleType( scale_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale_type);
+      }
+   }
+   private static efl_gfx_image_scale_type_set_delegate efl_gfx_image_scale_type_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_ratio_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_ratio_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate> efl_gfx_image_ratio_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate>(_Module, "efl_gfx_image_ratio_get");
+    private static double ratio_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_ratio_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetRatio();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_ratio_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_ratio_get_delegate efl_gfx_image_ratio_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_image_border_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate> efl_gfx_image_border_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate>(_Module, "efl_gfx_image_border_get");
+    private static  void border_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((ImageInternal)wrapper).GetBorder( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_image_border_get_delegate efl_gfx_image_border_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_set_delegate(System.IntPtr obj, System.IntPtr pd,    int l,    int r,    int t,    int b);
+
+
+    public delegate  void efl_gfx_image_border_set_api_delegate(System.IntPtr obj,    int l,    int r,    int t,    int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate> efl_gfx_image_border_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate>(_Module, "efl_gfx_image_border_set");
+    private static  void border_set(System.IntPtr obj, System.IntPtr pd,   int l,   int r,   int t,   int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((ImageInternal)wrapper).SetBorder( l,  r,  t,  b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l,  r,  t,  b);
+      }
+   }
+   private static efl_gfx_image_border_set_delegate efl_gfx_image_border_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_border_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_border_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate> efl_gfx_image_border_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate>(_Module, "efl_gfx_image_border_scale_get");
+    private static double border_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetBorderScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_scale_get_delegate efl_gfx_image_border_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_image_border_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate> efl_gfx_image_border_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate>(_Module, "efl_gfx_image_border_scale_set");
+    private static  void border_scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetBorderScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_image_border_scale_set_delegate efl_gfx_image_border_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate> efl_gfx_image_border_center_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate>(_Module, "efl_gfx_image_border_center_fill_get");
+    private static Efl.Gfx.BorderFillMode border_center_fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.BorderFillMode _ret_var = default(Efl.Gfx.BorderFillMode);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetBorderCenterFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_center_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_center_fill_get_delegate efl_gfx_image_border_center_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_center_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.BorderFillMode fill);
+
+
+    public delegate  void efl_gfx_image_border_center_fill_set_api_delegate(System.IntPtr obj,   Efl.Gfx.BorderFillMode fill);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate> efl_gfx_image_border_center_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate>(_Module, "efl_gfx_image_border_center_fill_set");
+    private static  void border_center_fill_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.BorderFillMode fill)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetBorderCenterFill( fill);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_center_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill);
+      }
+   }
+   private static efl_gfx_image_border_center_fill_set_delegate efl_gfx_image_border_center_fill_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate> efl_gfx_image_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate>(_Module, "efl_gfx_image_size_get");
+    private static Eina.Size2D_StructInternal image_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetImageSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_size_get_delegate efl_gfx_image_size_get_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate> efl_gfx_image_content_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate>(_Module, "efl_gfx_image_content_hint_get");
+    private static Efl.Gfx.ImageContentHint content_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageContentHint _ret_var = default(Efl.Gfx.ImageContentHint);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetContentHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_content_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_content_hint_get_delegate efl_gfx_image_content_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_content_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageContentHint hint);
+
+
+    public delegate  void efl_gfx_image_content_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageContentHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate> efl_gfx_image_content_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate>(_Module, "efl_gfx_image_content_hint_set");
+    private static  void content_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageContentHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetContentHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_content_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_content_hint_set_delegate efl_gfx_image_content_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate> efl_gfx_image_scale_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate>(_Module, "efl_gfx_image_scale_hint_get");
+    private static Efl.Gfx.ImageScaleHint scale_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleHint _ret_var = default(Efl.Gfx.ImageScaleHint);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetScaleHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_hint_get_delegate efl_gfx_image_scale_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleHint hint);
+
+
+    public delegate  void efl_gfx_image_scale_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate> efl_gfx_image_scale_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate>(_Module, "efl_gfx_image_scale_hint_set");
+    private static  void scale_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageInternal)wrapper).SetScaleHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_scale_hint_set_delegate efl_gfx_image_scale_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate> efl_gfx_image_load_error_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate>(_Module, "efl_gfx_image_load_error_get");
+    private static Efl.Gfx.ImageLoadError image_load_error_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_error_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageLoadError _ret_var = default(Efl.Gfx.ImageLoadError);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetImageLoadError();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_error_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_error_get_delegate efl_gfx_image_load_error_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_view_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_view_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_view_size_get_api_delegate> efl_gfx_view_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_view_size_get_api_delegate>(_Module, "efl_gfx_view_size_get");
+    private static Eina.Size2D_StructInternal view_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_view_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ImageInternal)wrapper).GetViewSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_view_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_view_size_get_delegate efl_gfx_view_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_view_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_view_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_view_size_set_api_delegate> efl_gfx_view_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_view_size_set_api_delegate>(_Module, "efl_gfx_view_size_set");
+    private static  void view_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_view_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((ImageInternal)wrapper).SetViewSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_view_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_view_size_set_delegate efl_gfx_view_size_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_layout.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_layout.eo.cs
new file mode 100755 (executable)
index 0000000..ae71602
--- /dev/null
@@ -0,0 +1,3601 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Layout.PartInvalidEvt"/>.</summary>
+public class LayoutPartInvalidEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+/// <summary>Edje object class</summary>
+[LayoutNativeInherit]
+public class Layout : Efl.Canvas.Group, Efl.Eo.IWrapper,Efl.Container,Efl.File,Efl.Observer,Efl.Part,Efl.Player,Efl.Gfx.ColorClass,Efl.Gfx.SizeClass,Efl.Gfx.TextClass,Efl.Layout.Calc,Efl.Layout.Group,Efl.Layout.Signal
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.LayoutNativeInherit nativeInherit = new Efl.Canvas.LayoutNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Layout))
+            return Efl.Canvas.LayoutNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_canvas_layout_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Layout(Efl.Object parent= null
+         ) :
+      base(efl_canvas_layout_class_get(), typeof(Layout), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Layout(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Layout(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Layout static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Layout(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PartInvalidEvtKey = new object();
+   /// <summary>Emitted when trying to use an invalid part. The value passed is the part name.</summary>
+   public event EventHandler<Efl.Canvas.LayoutPartInvalidEvt_Args> PartInvalidEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_PART_INVALID";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_PartInvalidEvt_delegate)) {
+               eventHandlers.AddHandler(PartInvalidEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_PART_INVALID";
+            if (remove_cpp_event_handler(key, this.evt_PartInvalidEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PartInvalidEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PartInvalidEvt.</summary>
+   public void On_PartInvalidEvt(Efl.Canvas.LayoutPartInvalidEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.LayoutPartInvalidEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.LayoutPartInvalidEvt_Args>)eventHandlers[PartInvalidEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PartInvalidEvt_delegate;
+   private void on_PartInvalidEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.LayoutPartInvalidEvt_Args args = new Efl.Canvas.LayoutPartInvalidEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_PartInvalidEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RecalcEvtKey = new object();
+   /// <summary>The layout was recalculated.
+   /// 1.21</summary>
+   public event EventHandler RecalcEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_RecalcEvt_delegate)) {
+               eventHandlers.AddHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (remove_cpp_event_handler(key, this.evt_RecalcEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RecalcEvt.</summary>
+   public void On_RecalcEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RecalcEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RecalcEvt_delegate;
+   private void on_RecalcEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RecalcEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CircularDependencyEvtKey = new object();
+   /// <summary>A circular dependency between parts of the object was found.
+   /// 1.21</summary>
+   public event EventHandler CircularDependencyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_CircularDependencyEvt_delegate)) {
+               eventHandlers.AddHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (remove_cpp_event_handler(key, this.evt_CircularDependencyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CircularDependencyEvt.</summary>
+   public void On_CircularDependencyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CircularDependencyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CircularDependencyEvt_delegate;
+   private void on_CircularDependencyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CircularDependencyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PartInvalidEvt_delegate = new Efl.EventCb(on_PartInvalidEvt_NativeCallback);
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+      evt_RecalcEvt_delegate = new Efl.EventCb(on_RecalcEvt_NativeCallback);
+      evt_CircularDependencyEvt_delegate = new Efl.EventCb(on_CircularDependencyEvt_NativeCallback);
+   }
+   /// <summary>Get the current state of animation, <c>true</c> by default.</summary>
+   /// <returns>The animation state, <c>true</c> by default.</returns>
+   virtual public bool GetAnimation() {
+       var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_animation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start or stop animating this object.</summary>
+   /// <param name="on">The animation state, <c>true</c> by default.</param>
+   /// <returns></returns>
+   virtual public  void SetAnimation( bool on) {
+                         Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_animation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), on);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the seat device given its Edje&apos;s name.
+   /// Edje references seats by a name that differs from Evas. Edje naming follows a incrementional convention: first registered name is &quot;seat1&quot;, second is &quot;seat2&quot;, differently from Evas.
+   /// 1.19</summary>
+   /// <param name="name">The name&apos;s character string.</param>
+   /// <returns>The seat device or <c>null</c> if not found.</returns>
+   virtual public Efl.Input.Device GetSeat(  System.String name) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_seat_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the name given to a set by Edje.
+   /// Edje references seats by a name that differs from Evas. Edje naming follows a incrementional convention: first registered name is &quot;seat1&quot;, second is &quot;seat2&quot;, differently from Evas.
+   /// 1.19</summary>
+   /// <param name="device">The seat device</param>
+   /// <returns>The name&apos;s character string or <c>null</c> if not found.</returns>
+   virtual public  System.String GetSeatName( Efl.Input.Device device) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_seat_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), device);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+   /// <returns>The load error code.</returns>
+   virtual public Efl.Gfx.ImageLoadError GetLayoutLoadError() {
+       var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_load_error_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets the object text min calculation policy.
+   /// Do not use this API without understanding whats going on. It is made for internal usage.
+   /// 
+   /// @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="state_name">The state name</param>
+   /// <param name="min_x">The min width policy</param>
+   /// <param name="min_y">The min height policy</param>
+   /// <returns><c>true</c> on success, or <c>false</c> on error</returns>
+   virtual public bool GetPartTextMinPolicy(  System.String part,   System.String state_name,  out bool min_x,  out bool min_y) {
+                                                                               var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_min_policy_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  state_name,  out min_x,  out min_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Sets the object text min calculation policy.
+   /// Do not use this API without understanding whats going on. It is made for internal usage.
+   /// 
+   /// @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="state_name">The state name</param>
+   /// <param name="min_x">The min width policy</param>
+   /// <param name="min_y">The min height policy</param>
+   /// <returns><c>true</c> on success, or <c>false</c> on error</returns>
+   virtual public bool SetPartTextMinPolicy(  System.String part,   System.String state_name,  bool min_x,  bool min_y) {
+                                                                               var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_min_policy_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  state_name,  min_x,  min_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Gets the valign for text.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <returns>The valign 0.0~1.0. -1.0 for respect EDC&apos;s align value.</returns>
+   virtual public double GetPartTextValign(  System.String part) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_valign_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the valign for text.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="valign">The valign 0.0~1.0. -1.0 for respect EDC&apos;s align value.</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool SetPartTextValign(  System.String part,  double valign) {
+                                           var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_valign_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  valign);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the duration for text&apos;s marquee.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <returns>The duration. 0.0 for respect EDC&apos;s duration value.</returns>
+   virtual public double GetPartTextMarqueeDuration(  System.String part) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_marquee_duration_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the duration for text&apos;s marquee.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="duration">The duration. 0.0 for respect EDC&apos;s duration value.</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool SetPartTextMarqueeDuration(  System.String part,  double duration) {
+                                           var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_marquee_duration_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  duration);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the speed for text&apos;s marquee.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <returns>The speed. 0.0 for respect EDC&apos;s speed value.</returns>
+   virtual public double GetPartTextMarqueeSpeed(  System.String part) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_marquee_speed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the speed for text&apos;s marquee.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="speed">The speed. 0.0 for respect EDC&apos;s speed value.</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool SetPartTextMarqueeSpeed(  System.String part,  double speed) {
+                                           var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_marquee_speed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  speed);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the always mode for text&apos;s marquee.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <returns>The always mode</returns>
+   virtual public bool GetPartTextMarqueeAlways(  System.String part) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_marquee_always_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the always mode for text&apos;s marquee.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="always">The always mode</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool SetPartTextMarqueeAlways(  System.String part,  bool always) {
+                                           var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_marquee_always_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  always);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the valign for a common description.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <returns>The valign 0.0~1.0. -1.0 for respect EDC&apos;s align value.</returns>
+   virtual public double GetPartValign(  System.String part) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_valign_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the valign for a common description.
+   /// Do not use this API without understanding whats going on. It is made for internal usage. @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="valign">The valign 0.0~1.0. -1.0 for respect EDC&apos;s align value.</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool SetPartValign(  System.String part,  double valign) {
+                                           var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_valign_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  valign);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Iterates over all accessibility-enabled part names.</summary>
+   /// <returns>Part name iterator</returns>
+   virtual public Eina.Iterator< System.String> AccessPartIterate() {
+       var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_access_part_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator< System.String>(_ret_var, true, false);
+ }
+   /// <summary>Unswallow an object from this Edje.</summary>
+   /// <param name="content">To be removed content.</param>
+   /// <returns><c>false</c> if <c>content</c> was not a child or can not be removed.</returns>
+   virtual public bool ContentRemove( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_content_remove_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the parent object for color class.
+   /// @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif @internal</summary>
+   /// <param name="parent">The parent object for color class</param>
+   /// <returns></returns>
+   virtual public  void SetColorClassParent( Efl.Object parent) {
+                         Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_color_class_parent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), parent);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Unsets the parent object for color class.
+   /// @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif @internal</summary>
+   /// <returns></returns>
+   virtual public  void UnsetColorClassParent() {
+       Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_color_class_parent_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get a position of the given cursor
+   /// @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="cur">cursor type</param>
+   /// <param name="x">w</param>
+   /// <param name="y">h</param>
+   /// <returns></returns>
+   virtual public  void GetPartTextCursorCoord(  System.String part,  Edje.Cursor cur,  out  int x,  out  int y) {
+                                                                               Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_cursor_coord_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  cur,  out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get a size of the given cursor
+   /// @internal</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="cur">cursor type</param>
+   /// <param name="w">w</param>
+   /// <param name="h">h</param>
+   /// <returns></returns>
+   virtual public  void GetPartTextCursorSize(  System.String part,  Edje.Cursor cur,  out  int w,  out  int h) {
+                                                                               Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_cursor_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  cur,  out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Returns the cursor geometry of the part relative to the edje object. The cursor geometry is kept in mouse down and move.
+   /// @internal @if MOBILE @since_tizen 3.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="part">The part name</param>
+   /// <param name="x">Cursor X position</param>
+   /// <param name="y">Cursor Y position</param>
+   /// <param name="w">Cursor width</param>
+   /// <param name="h">Cursor height</param>
+   /// <returns></returns>
+   virtual public  void GetPartTextCursorOnMouseGeometry(  System.String part,  out  int x,  out  int y,  out  int w,  out  int h) {
+                                                                                                 Efl.Canvas.LayoutNativeInherit.efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  out x,  out y,  out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Update observer according to the changes of observable object.
+   /// 1.19</summary>
+   /// <param name="obs">An observable object</param>
+   /// <param name="key">A key to classify observer groups</param>
+   /// <param name="data">Required data to update the observer, usually passed by observable object</param>
+   /// <returns></returns>
+   virtual public  void Update( Efl.Object obs,   System.String key,   System.IntPtr data) {
+                                                             Efl.ObserverNativeInherit.efl_observer_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), obs,  key,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Get a proxy object referring to a part of an object.</summary>
+   /// <param name="name">The part name.</param>
+   /// <returns>A (proxy) object, valid for a single call.</returns>
+   virtual public Efl.Object GetPart(  System.String name) {
+                         var _ret_var = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Whether or not the playable can be played.</summary>
+   /// <returns><c>true</c> if the object have playable data, <c>false</c> otherwise</returns>
+   virtual public bool GetPlayable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_playable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get play/pause state of the media file.</summary>
+   /// <returns><c>true</c> if playing, <c>false</c> otherwise.</returns>
+   virtual public bool GetPlay() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set play/pause state of the media file.
+   /// This functions sets the currently playing status of the video. Using this function to play or pause the video doesn&apos;t alter it&apos;s current position.</summary>
+   /// <param name="play"><c>true</c> if playing, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetPlay( bool play) {
+                         Efl.PlayerNativeInherit.efl_player_play_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), play);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the position in the media file.
+   /// The position is returned as the number of seconds since the beginning of the media file.</summary>
+   /// <returns>The position (in seconds).</returns>
+   virtual public double GetPos() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the position in the media file.
+   /// This functions sets the current position of the media file to &quot;sec&quot;, this only works on seekable streams. Setting the position doesn&apos;t change the playing state of the media file.</summary>
+   /// <param name="sec">The position (in seconds).</param>
+   /// <returns></returns>
+   virtual public  void SetPos( double sec) {
+                         Efl.PlayerNativeInherit.efl_player_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sec);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get how much of the file has been played.
+   /// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+   /// <returns>The progress within the [0, 1] range.</returns>
+   virtual public double GetProgress() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_progress_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <returns>The play speed in the [0, infinity) range.</returns>
+   virtual public double GetPlaySpeed() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_speed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <param name="speed">The play speed in the [0, infinity) range.</param>
+   /// <returns></returns>
+   virtual public  void SetPlaySpeed( double speed) {
+                         Efl.PlayerNativeInherit.efl_player_play_speed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), speed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <returns>The volume level</returns>
+   virtual public double GetVolume() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_volume_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <param name="volume">The volume level</param>
+   /// <returns></returns>
+   virtual public  void SetVolume( double volume) {
+                         Efl.PlayerNativeInherit.efl_player_volume_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), volume);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <returns>The mute state. <c>true</c> or <c>false</c>.</returns>
+   virtual public bool GetMute() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_mute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <param name="mute">The mute state. <c>true</c> or <c>false</c>.</param>
+   /// <returns></returns>
+   virtual public  void SetMute( bool mute) {
+                         Efl.PlayerNativeInherit.efl_player_mute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mute);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the length of play for the media file.</summary>
+   /// <returns>The length of the stream in seconds.</returns>
+   virtual public double GetLength() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_length_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get whether the media file is seekable.</summary>
+   /// <returns><c>true</c> if seekable.</returns>
+   virtual public bool GetSeekable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_seekable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start a playing playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Start() {
+       Efl.PlayerNativeInherit.efl_player_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stop playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Stop() {
+       Efl.PlayerNativeInherit.efl_player_stop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the color of color class.
+   /// This function gets the color values for a color class. If no explicit object color is set, then global values will be used.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <param name="r">The intensity of the red color</param>
+   /// <param name="g">The intensity of the green color</param>
+   /// <param name="b">The intensity of the blue color</param>
+   /// <param name="a">The alpha value</param>
+   /// <returns><c>true</c> if getting the color succeeded, <c>false</c> otherwise</returns>
+   virtual public bool GetColorClass(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,  out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                                                                   var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), color_class,  layer,  out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                              return _ret_var;
+ }
+   /// <summary>Set the color of color class.
+   /// This function sets the color values for a color class. This will cause all edje parts in the specified object that have the specified color class to have their colors multiplied by these values.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Setting color emits a signal &quot;color_class,set&quot; with source being the given color.
+   /// 
+   /// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <param name="r">The intensity of the red color</param>
+   /// <param name="g">The intensity of the green color</param>
+   /// <param name="b">The intensity of the blue color</param>
+   /// <param name="a">The alpha value</param>
+   /// <returns><c>true</c> if setting the color succeeded, <c>false</c> otherwise</returns>
+   virtual public bool SetColorClass(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,   int r,   int g,   int b,   int a) {
+                                                                                                                   var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), color_class,  layer,  r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                              return _ret_var;
+ }
+   /// <summary>Get the hex color string of color class.
+   /// This function gets the color values for a color class. If no explicit object color is set, then global values will be used.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Returns NULL if the color class cannot be fetched.
+   /// 
+   /// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <returns>the hex color code.</returns>
+   virtual public  System.String GetColorClassCode(  System.String color_class,  Efl.Gfx.ColorClassLayer layer) {
+                                           var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), color_class,  layer);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Set the hex color string of color class.
+   /// This function sets the color values for a color class. This will cause all edje parts in the specified object that have the specified color class to have their colors multiplied by these values.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Setting color emits a signal &quot;color_class,set&quot; with source being the given color.
+   /// 
+   /// Note: These color values are expected to be premultiplied by the alpha.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns><c>true</c> if setting the color succeeded, <c>false</c> otherwise</returns>
+   virtual public bool SetColorClassCode(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,   System.String colorcode) {
+                                                             var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_code_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), color_class,  layer,  colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Get the description of a color class.
+   /// This function gets the description of a color class in use by an object.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <returns>The description of the target color class or <c>null</c> if not found</returns>
+   virtual public  System.String GetColorClassDescription(  System.String color_class) {
+                         var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_description_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), color_class);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Delete the color class.
+   /// This function deletes any values for the specified color class.
+   /// 
+   /// Deleting the color class will revert it to the values defined by <see cref="Efl.Gfx.ColorClass.GetColorClass"/> or the color class defined in the theme file.
+   /// 
+   /// Deleting the color class will emit the signal &quot;color_class,del&quot; for the given Edje object.</summary>
+   /// <param name="color_class">The name of color_class</param>
+   /// <returns></returns>
+   virtual public  void DelColorClass(  System.String color_class) {
+                         Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), color_class);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Delete all color classes defined in object level.
+   /// This function deletes any color classes defined in object level. Clearing color classes will revert the color of all edje parts to the values defined in global level or theme file.
+   /// 1.17.0</summary>
+   /// <returns></returns>
+   virtual public  void ClearColorClass() {
+       Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get width and height of size class.
+   /// This function gets width and height for a size class. These values will only be valid until the size class is changed or the edje object is deleted.
+   /// 1.17</summary>
+   /// <param name="size_class">The name of size class</param>
+   /// <param name="minw">minimum width</param>
+   /// <param name="minh">minimum height</param>
+   /// <param name="maxw">maximum width</param>
+   /// <param name="maxh">maximum height</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool GetSizeClass(  System.String size_class,  out  int minw,  out  int minh,  out  int maxw,  out  int maxh) {
+                                                                                                 var _ret_var = Efl.Gfx.SizeClassNativeInherit.efl_gfx_size_class_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size_class,  out minw,  out minh,  out maxw,  out maxh);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Set width and height of size class.
+   /// This function sets width and height for a size class. This will make all edje parts in the specified object that have the specified size class update their size with given values.
+   /// 1.17</summary>
+   /// <param name="size_class">The name of size class</param>
+   /// <param name="minw">minimum width</param>
+   /// <param name="minh">minimum height</param>
+   /// <param name="maxw">maximum width</param>
+   /// <param name="maxh">maximum height</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool SetSizeClass(  System.String size_class,   int minw,   int minh,   int maxw,   int maxh) {
+                                                                                                 var _ret_var = Efl.Gfx.SizeClassNativeInherit.efl_gfx_size_class_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size_class,  minw,  minh,  maxw,  maxh);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Delete the size class.
+   /// This function deletes any values for the specified size class.
+   /// 
+   /// Deleting the size class will revert it to the values defined by <see cref="Efl.Gfx.SizeClass.GetSizeClass"/> or the size class defined in the theme file.
+   /// 1.17</summary>
+   /// <param name="size_class">The size class to be deleted.</param>
+   /// <returns></returns>
+   virtual public  void DelSizeClass(  System.String size_class) {
+                         Efl.Gfx.SizeClassNativeInherit.efl_gfx_size_class_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size_class);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get font and font size from edje text class.
+   /// This function gets the font and the font size from text class. The font string will only be valid until the text class is changed or the edje object is deleted.</summary>
+   /// <param name="text_class">The text class name</param>
+   /// <param name="font">Font name</param>
+   /// <param name="size">Font Size</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool GetTextClass(  System.String text_class,  out  System.String font,  out Efl.Font.Size size) {
+                                                             var _ret_var = Efl.Gfx.TextClassNativeInherit.efl_gfx_text_class_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text_class,  out font,  out size);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Set Edje text class.
+   /// This function sets the text class for the Edje.</summary>
+   /// <param name="text_class">The text class name</param>
+   /// <param name="font">Font name</param>
+   /// <param name="size">Font Size</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   virtual public bool SetTextClass(  System.String text_class,   System.String font,  Efl.Font.Size size) {
+                                                             var _ret_var = Efl.Gfx.TextClassNativeInherit.efl_gfx_text_class_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text_class,  font,  size);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Delete the text class.
+   /// This function deletes any values for the specified text class.
+   /// 
+   /// Deleting the text class will revert it to the values defined by <see cref="Efl.Gfx.TextClass.GetTextClass"/> or the text class defined in the theme file.
+   /// 1.17</summary>
+   /// <param name="text_class">The text class to be deleted.</param>
+   /// <returns></returns>
+   virtual public  void DelTextClass(  System.String text_class) {
+                         Efl.Gfx.TextClassNativeInherit.efl_gfx_text_class_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text_class);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether this object updates its size hints automatically.
+   /// 1.21</summary>
+   /// <returns>Whether or not update the size hints.
+   /// 1.21</returns>
+   virtual public bool GetCalcAutoUpdateHints() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable auto-update of size hints.
+   /// 1.21</summary>
+   /// <param name="update">Whether or not update the size hints.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetCalcAutoUpdateHints( bool update) {
+                         Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), update);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Calculates the minimum required size for a given layout object.
+   /// This call will trigger an internal recalculation of all parts of the object, in order to return its minimum required dimensions for width and height. The user might choose to impose those minimum sizes, making the resulting calculation to get to values greater or equal than <c>restricted</c> in both directions.
+   /// 
+   /// Note: At the end of this call, the object won&apos;t be automatically resized to the new dimensions, but just return the calculated sizes. The caller is the one up to change its geometry or not.
+   /// 
+   /// Warning: Be advised that invisible parts in the object will be taken into account in this calculation.
+   /// 1.21</summary>
+   /// <param name="restricted">The minimum size constraint as input, the returned size can not be lower than this (in both directions).
+   /// 1.21</param>
+   /// <returns>The minimum required size.
+   /// 1.21</returns>
+   virtual public Eina.Size2D CalcSizeMin( Eina.Size2D restricted) {
+       var _in_restricted = Eina.Size2D_StructConversion.ToInternal(restricted);
+                  var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_size_min_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_restricted);
+      Eina.Error.RaiseIfUnhandledException();
+                  return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Calculates the geometry of the region, relative to a given layout object&apos;s area, occupied by all parts in the object.
+   /// This function gets the geometry of the rectangle equal to the area required to group all parts in obj&apos;s group/collection. The x and y coordinates are relative to the top left corner of the whole obj object&apos;s area. Parts placed out of the group&apos;s boundaries will also be taken in account, so that x and y may be negative.
+   /// 
+   /// Note: On failure, this function will make all non-<c>null</c> geometry pointers&apos; pointed variables be set to zero.
+   /// 1.21</summary>
+   /// <returns>The calculated region.
+   /// 1.21</returns>
+   virtual public Eina.Rect CalcPartsExtends() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_parts_extends_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Freezes the layout object.
+   /// This function puts all changes on hold. Successive freezes will nest, requiring an equal number of thaws.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 on error
+   /// 1.21</returns>
+   virtual public  int FreezeCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Thaws the layout object.
+   /// This function thaws (in other words &quot;unfreezes&quot;) the given layout object.
+   /// 
+   /// Note: If sucessive freezes were done, an equal number of thaws will be required.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 if the object is not frozen or on error.
+   /// 1.21</returns>
+   virtual public  int ThawCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_thaw_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Forces a Size/Geometry calculation.
+   /// Forces the object to recalculate its layout regardless of freeze/thaw. This API should be used carefully.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/> and <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns></returns>
+   virtual public  void CalcForce() {
+       Efl.Layout.CalcNativeInherit.efl_layout_calc_force_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+   /// 
+   /// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+   /// 
+   /// Note: On failure, this function also return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+   /// 1.21</summary>
+   /// <returns>The minimum size as set in EDC.
+   /// 1.21</returns>
+   virtual public Eina.Size2D GetGroupSizeMin() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+   /// 
+   /// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+   /// 
+   /// Note: On failure, this function will return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+   /// 1.21</summary>
+   /// <returns>The maximum size as set in EDC.
+   /// 1.21</returns>
+   virtual public Eina.Size2D GetGroupSizeMax() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Retrives an EDC data field&apos;s value from a given Edje object&apos;s group.
+   /// This function fetches an EDC data field&apos;s value, which is declared on the objects building EDC file, under its group. EDC data blocks are most commonly used to pass arbitrary parameters from an application&apos;s theme to its code.
+   /// 
+   /// EDC data fields always hold  strings as values, hence the return type of this function. Check the complete &quot;syntax reference&quot; for EDC files.
+   /// 
+   /// This is how a data item is defined in EDC: collections { group { name: &quot;a_group&quot;; data { item: &quot;key1&quot; &quot;value1&quot;; item: &quot;key2&quot; &quot;value2&quot;; } } }
+   /// 
+   /// Warning: Do not confuse this call with edje_file_data_get(), which queries for a global EDC data field on an EDC declaration file.
+   /// 1.21</summary>
+   /// <param name="key">The data field&apos;s key string
+   /// 1.21</param>
+   /// <returns>The data&apos;s value string.
+   /// 1.21</returns>
+   virtual public  System.String GetGroupData(  System.String key) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_data_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns <c>true</c> if the part exists in the EDC group.
+   /// 1.21</summary>
+   /// <param name="part">The part name to check.
+   /// 1.21</param>
+   /// <returns><c>true</c> if the part exists, <c>false</c> otherwise.
+   /// 1.21</returns>
+   virtual public bool GetPartExist(  System.String part) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_part_exist_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sends an (Edje) message to a given Edje object
+   /// This function sends an Edje message to obj and to all of its child objects, if it has any (swallowed objects are one kind of child object). Only a few types are supported: - int, - float/double, - string/stringshare, - arrays of int, float, double or strings.
+   /// 
+   /// Messages can go both ways, from code to theme, or theme to code.
+   /// 
+   /// The id argument as a form of code and theme defining a common interface on message communication. One should define the same IDs on both code and EDC declaration, to individualize messages (binding them to a given context).
+   /// 1.21</summary>
+   /// <param name="id">A identification number for the message to be sent
+   /// 1.21</param>
+   /// <param name="msg">The message&apos;s payload
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void MessageSend(  int id,   Eina.Value msg) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_message_send_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id,  msg);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a callback for an arriving Edje signal, emitted by a given Edje object.
+   /// Edje signals are one of the communication interfaces between code and a given Edje object&apos;s theme. With signals, one can communicate two string values at a time, which are: - &quot;emission&quot; value: the name of the signal, in general - &quot;source&quot; value: a name for the signal&apos;s context, in general
+   /// 
+   /// Signals can go both ways, from code to theme, or theme to code.
+   /// 
+   /// Though there are those common uses for the two strings, one is free to use them however they like.
+   /// 
+   /// Signal callback registration is powerful, in the way that blobs may be used to match multiple signals at once. All the &quot;*?[&quot; set of <c>fnmatch</c>() operators can be used, both for emission and source.
+   /// 
+   /// Edje has internal signals it will emit, automatically, on various actions taking place on group parts. For example, the mouse cursor being moved, pressed, released, etc., over a given part&apos;s area, all generate individual signals.
+   /// 
+   /// With something like emission = &quot;mouse,down,*&quot;, source = &quot;button.*&quot; where &quot;button.*&quot; is the pattern for the names of parts implementing buttons on an interface, you&apos;d be registering for notifications on events of mouse buttons being pressed down on either of those parts (those events all have the &quot;mouse,down,&quot; common prefix on their names, with a suffix giving the button number). The actual emission and source strings of an event will be passed in as the emission and source parameters of the callback function (e.g. &quot;mouse,down,2&quot; and &quot;button.close&quot;), for each of those events.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.EmitSignal"/> on how to emit signals from code to a an object See <see cref="Efl.Layout.Signal.DelSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   virtual public bool AddSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Removes a signal-triggered callback from an object.
+   /// This function removes a callback, previously attached to the emission of a signal, from the object  obj. The parameters emission, source and func must match exactly those passed to a previous call to <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   virtual public bool DelSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Sends/emits an Edje signal to this layout.
+   /// This function sends a signal to the object. An Edje program, at the EDC specification level, can respond to a signal by having declared matching &quot;signal&quot; and &quot;source&quot; fields on its block.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/> for more on Edje signals.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void EmitSignal(  System.String emission,   System.String source) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_emit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Processes an object&apos;s messages and signals queue.
+   /// This function goes through the object message queue processing the pending messages for this specific Edje object. Normally they&apos;d be processed only at idle time.
+   /// 
+   /// If <c>recurse</c> is <c>true</c>, this function will be called recursively on all subobjects.
+   /// 1.21</summary>
+   /// <param name="recurse">Whether to process messages on children objects.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SignalProcess( bool recurse) {
+                         Efl.Layout.SignalNativeInherit.efl_layout_signal_process_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), recurse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether this object is animating or not.
+/// This property indicates whether animations are stopped or not. Animations here refer to transitions between states.
+/// 
+/// If animations are disabled, transitions between states (as defined in EDC) are then instantaneous. This is conceptually similar to setting the <see cref="Efl.Player.PlaySpeed"/> to an infinitely high value.</summary>
+/// <value>The animation state, <c>true</c> by default.</value>
+   public bool Animation {
+      get { return GetAnimation(); }
+      set { SetAnimation( value); }
+   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <value>The load error code.</value>
+   public Efl.Gfx.ImageLoadError LayoutLoadError {
+      get { return GetLayoutLoadError(); }
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Whether or not the playable can be played.</summary>
+/// <value><c>true</c> if the object have playable data, <c>false</c> otherwise</value>
+   public bool Playable {
+      get { return GetPlayable(); }
+   }
+   /// <summary>Get play/pause state of the media file.</summary>
+/// <value><c>true</c> if playing, <c>false</c> otherwise.</value>
+   public bool Play {
+      get { return GetPlay(); }
+      set { SetPlay( value); }
+   }
+   /// <summary>Get the position in the media file.
+/// The position is returned as the number of seconds since the beginning of the media file.</summary>
+/// <value>The position (in seconds).</value>
+   public double Pos {
+      get { return GetPos(); }
+      set { SetPos( value); }
+   }
+   /// <summary>Get how much of the file has been played.
+/// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+/// <value>The progress within the [0, 1] range.</value>
+   public double Progress {
+      get { return GetProgress(); }
+   }
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <value>The play speed in the [0, infinity) range.</value>
+   public double PlaySpeed {
+      get { return GetPlaySpeed(); }
+      set { SetPlaySpeed( value); }
+   }
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <value>The volume level</value>
+   public double Volume {
+      get { return GetVolume(); }
+      set { SetVolume( value); }
+   }
+   /// <summary>This property controls the audio mute state.</summary>
+/// <value>The mute state. <c>true</c> or <c>false</c>.</value>
+   public bool Mute {
+      get { return GetMute(); }
+      set { SetMute( value); }
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   public double Length {
+      get { return GetLength(); }
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   public bool Seekable {
+      get { return GetSeekable(); }
+   }
+   /// <summary>Whether this object updates its size hints automatically.
+/// By default edje doesn&apos;t set size hints on itself. If this property is set to <c>true</c>, size hints will be updated after recalculation. Be careful, as recalculation may happen often, enabling this property may have a considerable performance impact as other widgets will be notified of the size hints changes.
+/// 
+/// A layout recalculation can be triggered by <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcPartsExtends"/> or even any other internal event.
+/// 1.21</summary>
+/// <value>Whether or not update the size hints.
+/// 1.21</value>
+   public bool CalcAutoUpdateHints {
+      get { return GetCalcAutoUpdateHints(); }
+      set { SetCalcAutoUpdateHints( value); }
+   }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+/// 
+/// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+/// 
+/// Note: On failure, this function also return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+/// 1.21</summary>
+/// <value>The minimum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMin {
+      get { return GetGroupSizeMin(); }
+   }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+/// 
+/// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+/// 
+/// Note: On failure, this function will return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+/// 1.21</summary>
+/// <value>The maximum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMax {
+      get { return GetGroupSizeMax(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Layout.efl_canvas_layout_class_get();
+   }
+}
+public class LayoutNativeInherit : Efl.Canvas.GroupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_layout_animation_get_static_delegate == null)
+      efl_canvas_layout_animation_get_static_delegate = new efl_canvas_layout_animation_get_delegate(animation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_animation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_animation_get_static_delegate)});
+      if (efl_canvas_layout_animation_set_static_delegate == null)
+      efl_canvas_layout_animation_set_static_delegate = new efl_canvas_layout_animation_set_delegate(animation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_animation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_animation_set_static_delegate)});
+      if (efl_canvas_layout_seat_get_static_delegate == null)
+      efl_canvas_layout_seat_get_static_delegate = new efl_canvas_layout_seat_get_delegate(seat_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_seat_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_seat_get_static_delegate)});
+      if (efl_canvas_layout_seat_name_get_static_delegate == null)
+      efl_canvas_layout_seat_name_get_static_delegate = new efl_canvas_layout_seat_name_get_delegate(seat_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_seat_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_seat_name_get_static_delegate)});
+      if (efl_canvas_layout_load_error_get_static_delegate == null)
+      efl_canvas_layout_load_error_get_static_delegate = new efl_canvas_layout_load_error_get_delegate(layout_load_error_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_load_error_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_load_error_get_static_delegate)});
+      if (efl_canvas_layout_part_text_min_policy_get_static_delegate == null)
+      efl_canvas_layout_part_text_min_policy_get_static_delegate = new efl_canvas_layout_part_text_min_policy_get_delegate(part_text_min_policy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_min_policy_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_min_policy_get_static_delegate)});
+      if (efl_canvas_layout_part_text_min_policy_set_static_delegate == null)
+      efl_canvas_layout_part_text_min_policy_set_static_delegate = new efl_canvas_layout_part_text_min_policy_set_delegate(part_text_min_policy_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_min_policy_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_min_policy_set_static_delegate)});
+      if (efl_canvas_layout_part_text_valign_get_static_delegate == null)
+      efl_canvas_layout_part_text_valign_get_static_delegate = new efl_canvas_layout_part_text_valign_get_delegate(part_text_valign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_valign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_valign_get_static_delegate)});
+      if (efl_canvas_layout_part_text_valign_set_static_delegate == null)
+      efl_canvas_layout_part_text_valign_set_static_delegate = new efl_canvas_layout_part_text_valign_set_delegate(part_text_valign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_valign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_valign_set_static_delegate)});
+      if (efl_canvas_layout_part_text_marquee_duration_get_static_delegate == null)
+      efl_canvas_layout_part_text_marquee_duration_get_static_delegate = new efl_canvas_layout_part_text_marquee_duration_get_delegate(part_text_marquee_duration_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_marquee_duration_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_marquee_duration_get_static_delegate)});
+      if (efl_canvas_layout_part_text_marquee_duration_set_static_delegate == null)
+      efl_canvas_layout_part_text_marquee_duration_set_static_delegate = new efl_canvas_layout_part_text_marquee_duration_set_delegate(part_text_marquee_duration_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_marquee_duration_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_marquee_duration_set_static_delegate)});
+      if (efl_canvas_layout_part_text_marquee_speed_get_static_delegate == null)
+      efl_canvas_layout_part_text_marquee_speed_get_static_delegate = new efl_canvas_layout_part_text_marquee_speed_get_delegate(part_text_marquee_speed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_marquee_speed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_marquee_speed_get_static_delegate)});
+      if (efl_canvas_layout_part_text_marquee_speed_set_static_delegate == null)
+      efl_canvas_layout_part_text_marquee_speed_set_static_delegate = new efl_canvas_layout_part_text_marquee_speed_set_delegate(part_text_marquee_speed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_marquee_speed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_marquee_speed_set_static_delegate)});
+      if (efl_canvas_layout_part_text_marquee_always_get_static_delegate == null)
+      efl_canvas_layout_part_text_marquee_always_get_static_delegate = new efl_canvas_layout_part_text_marquee_always_get_delegate(part_text_marquee_always_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_marquee_always_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_marquee_always_get_static_delegate)});
+      if (efl_canvas_layout_part_text_marquee_always_set_static_delegate == null)
+      efl_canvas_layout_part_text_marquee_always_set_static_delegate = new efl_canvas_layout_part_text_marquee_always_set_delegate(part_text_marquee_always_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_marquee_always_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_marquee_always_set_static_delegate)});
+      if (efl_canvas_layout_part_valign_get_static_delegate == null)
+      efl_canvas_layout_part_valign_get_static_delegate = new efl_canvas_layout_part_valign_get_delegate(part_valign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_valign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_valign_get_static_delegate)});
+      if (efl_canvas_layout_part_valign_set_static_delegate == null)
+      efl_canvas_layout_part_valign_set_static_delegate = new efl_canvas_layout_part_valign_set_delegate(part_valign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_valign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_valign_set_static_delegate)});
+      if (efl_canvas_layout_access_part_iterate_static_delegate == null)
+      efl_canvas_layout_access_part_iterate_static_delegate = new efl_canvas_layout_access_part_iterate_delegate(access_part_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_access_part_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_access_part_iterate_static_delegate)});
+      if (efl_canvas_layout_content_remove_static_delegate == null)
+      efl_canvas_layout_content_remove_static_delegate = new efl_canvas_layout_content_remove_delegate(content_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_content_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_content_remove_static_delegate)});
+      if (efl_canvas_layout_color_class_parent_set_static_delegate == null)
+      efl_canvas_layout_color_class_parent_set_static_delegate = new efl_canvas_layout_color_class_parent_set_delegate(color_class_parent_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_color_class_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_color_class_parent_set_static_delegate)});
+      if (efl_canvas_layout_color_class_parent_unset_static_delegate == null)
+      efl_canvas_layout_color_class_parent_unset_static_delegate = new efl_canvas_layout_color_class_parent_unset_delegate(color_class_parent_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_color_class_parent_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_color_class_parent_unset_static_delegate)});
+      if (efl_canvas_layout_part_text_cursor_coord_get_static_delegate == null)
+      efl_canvas_layout_part_text_cursor_coord_get_static_delegate = new efl_canvas_layout_part_text_cursor_coord_get_delegate(part_text_cursor_coord_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_cursor_coord_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_cursor_coord_get_static_delegate)});
+      if (efl_canvas_layout_part_text_cursor_size_get_static_delegate == null)
+      efl_canvas_layout_part_text_cursor_size_get_static_delegate = new efl_canvas_layout_part_text_cursor_size_get_delegate(part_text_cursor_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_cursor_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_cursor_size_get_static_delegate)});
+      if (efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_static_delegate == null)
+      efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_static_delegate = new efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_delegate(part_text_cursor_on_mouse_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_cursor_on_mouse_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_observer_update_static_delegate == null)
+      efl_observer_update_static_delegate = new efl_observer_update_delegate(update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observer_update"), func = Marshal.GetFunctionPointerForDelegate(efl_observer_update_static_delegate)});
+      if (efl_part_get_static_delegate == null)
+      efl_part_get_static_delegate = new efl_part_get_delegate(part_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_part_get"), func = Marshal.GetFunctionPointerForDelegate(efl_part_get_static_delegate)});
+      if (efl_player_playable_get_static_delegate == null)
+      efl_player_playable_get_static_delegate = new efl_player_playable_get_delegate(playable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_playable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_playable_get_static_delegate)});
+      if (efl_player_play_get_static_delegate == null)
+      efl_player_play_get_static_delegate = new efl_player_play_get_delegate(play_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_get_static_delegate)});
+      if (efl_player_play_set_static_delegate == null)
+      efl_player_play_set_static_delegate = new efl_player_play_set_delegate(play_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_set_static_delegate)});
+      if (efl_player_pos_get_static_delegate == null)
+      efl_player_pos_get_static_delegate = new efl_player_pos_get_delegate(pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_get_static_delegate)});
+      if (efl_player_pos_set_static_delegate == null)
+      efl_player_pos_set_static_delegate = new efl_player_pos_set_delegate(pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_set_static_delegate)});
+      if (efl_player_progress_get_static_delegate == null)
+      efl_player_progress_get_static_delegate = new efl_player_progress_get_delegate(progress_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_progress_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_progress_get_static_delegate)});
+      if (efl_player_play_speed_get_static_delegate == null)
+      efl_player_play_speed_get_static_delegate = new efl_player_play_speed_get_delegate(play_speed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_get_static_delegate)});
+      if (efl_player_play_speed_set_static_delegate == null)
+      efl_player_play_speed_set_static_delegate = new efl_player_play_speed_set_delegate(play_speed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_set_static_delegate)});
+      if (efl_player_volume_get_static_delegate == null)
+      efl_player_volume_get_static_delegate = new efl_player_volume_get_delegate(volume_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_get_static_delegate)});
+      if (efl_player_volume_set_static_delegate == null)
+      efl_player_volume_set_static_delegate = new efl_player_volume_set_delegate(volume_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_set_static_delegate)});
+      if (efl_player_mute_get_static_delegate == null)
+      efl_player_mute_get_static_delegate = new efl_player_mute_get_delegate(mute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_get_static_delegate)});
+      if (efl_player_mute_set_static_delegate == null)
+      efl_player_mute_set_static_delegate = new efl_player_mute_set_delegate(mute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_set_static_delegate)});
+      if (efl_player_length_get_static_delegate == null)
+      efl_player_length_get_static_delegate = new efl_player_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_length_get_static_delegate)});
+      if (efl_player_seekable_get_static_delegate == null)
+      efl_player_seekable_get_static_delegate = new efl_player_seekable_get_delegate(seekable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_seekable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_seekable_get_static_delegate)});
+      if (efl_player_start_static_delegate == null)
+      efl_player_start_static_delegate = new efl_player_start_delegate(start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_start"), func = Marshal.GetFunctionPointerForDelegate(efl_player_start_static_delegate)});
+      if (efl_player_stop_static_delegate == null)
+      efl_player_stop_static_delegate = new efl_player_stop_delegate(stop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_player_stop_static_delegate)});
+      if (efl_gfx_color_class_get_static_delegate == null)
+      efl_gfx_color_class_get_static_delegate = new efl_gfx_color_class_get_delegate(color_class_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_get_static_delegate)});
+      if (efl_gfx_color_class_set_static_delegate == null)
+      efl_gfx_color_class_set_static_delegate = new efl_gfx_color_class_set_delegate(color_class_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_set_static_delegate)});
+      if (efl_gfx_color_class_code_get_static_delegate == null)
+      efl_gfx_color_class_code_get_static_delegate = new efl_gfx_color_class_code_get_delegate(color_class_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_code_get_static_delegate)});
+      if (efl_gfx_color_class_code_set_static_delegate == null)
+      efl_gfx_color_class_code_set_static_delegate = new efl_gfx_color_class_code_set_delegate(color_class_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_code_set_static_delegate)});
+      if (efl_gfx_color_class_description_get_static_delegate == null)
+      efl_gfx_color_class_description_get_static_delegate = new efl_gfx_color_class_description_get_delegate(color_class_description_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_description_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_description_get_static_delegate)});
+      if (efl_gfx_color_class_del_static_delegate == null)
+      efl_gfx_color_class_del_static_delegate = new efl_gfx_color_class_del_delegate(color_class_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_del"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_del_static_delegate)});
+      if (efl_gfx_color_class_clear_static_delegate == null)
+      efl_gfx_color_class_clear_static_delegate = new efl_gfx_color_class_clear_delegate(color_class_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_clear_static_delegate)});
+      if (efl_gfx_size_class_get_static_delegate == null)
+      efl_gfx_size_class_get_static_delegate = new efl_gfx_size_class_get_delegate(size_class_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_size_class_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_size_class_get_static_delegate)});
+      if (efl_gfx_size_class_set_static_delegate == null)
+      efl_gfx_size_class_set_static_delegate = new efl_gfx_size_class_set_delegate(size_class_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_size_class_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_size_class_set_static_delegate)});
+      if (efl_gfx_size_class_del_static_delegate == null)
+      efl_gfx_size_class_del_static_delegate = new efl_gfx_size_class_del_delegate(size_class_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_size_class_del"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_size_class_del_static_delegate)});
+      if (efl_gfx_text_class_get_static_delegate == null)
+      efl_gfx_text_class_get_static_delegate = new efl_gfx_text_class_get_delegate(text_class_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_text_class_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_text_class_get_static_delegate)});
+      if (efl_gfx_text_class_set_static_delegate == null)
+      efl_gfx_text_class_set_static_delegate = new efl_gfx_text_class_set_delegate(text_class_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_text_class_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_text_class_set_static_delegate)});
+      if (efl_gfx_text_class_del_static_delegate == null)
+      efl_gfx_text_class_del_static_delegate = new efl_gfx_text_class_del_delegate(text_class_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_text_class_del"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_text_class_del_static_delegate)});
+      if (efl_layout_calc_auto_update_hints_get_static_delegate == null)
+      efl_layout_calc_auto_update_hints_get_static_delegate = new efl_layout_calc_auto_update_hints_get_delegate(calc_auto_update_hints_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_get_static_delegate)});
+      if (efl_layout_calc_auto_update_hints_set_static_delegate == null)
+      efl_layout_calc_auto_update_hints_set_static_delegate = new efl_layout_calc_auto_update_hints_set_delegate(calc_auto_update_hints_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_set"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_set_static_delegate)});
+      if (efl_layout_calc_size_min_static_delegate == null)
+      efl_layout_calc_size_min_static_delegate = new efl_layout_calc_size_min_delegate(calc_size_min);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_size_min"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_size_min_static_delegate)});
+      if (efl_layout_calc_parts_extends_static_delegate == null)
+      efl_layout_calc_parts_extends_static_delegate = new efl_layout_calc_parts_extends_delegate(calc_parts_extends);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_parts_extends"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_parts_extends_static_delegate)});
+      if (efl_layout_calc_freeze_static_delegate == null)
+      efl_layout_calc_freeze_static_delegate = new efl_layout_calc_freeze_delegate(calc_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_freeze_static_delegate)});
+      if (efl_layout_calc_thaw_static_delegate == null)
+      efl_layout_calc_thaw_static_delegate = new efl_layout_calc_thaw_delegate(calc_thaw);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_thaw"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_thaw_static_delegate)});
+      if (efl_layout_calc_force_static_delegate == null)
+      efl_layout_calc_force_static_delegate = new efl_layout_calc_force_delegate(calc_force);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_force"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_force_static_delegate)});
+      if (efl_layout_group_size_min_get_static_delegate == null)
+      efl_layout_group_size_min_get_static_delegate = new efl_layout_group_size_min_get_delegate(group_size_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_min_get_static_delegate)});
+      if (efl_layout_group_size_max_get_static_delegate == null)
+      efl_layout_group_size_max_get_static_delegate = new efl_layout_group_size_max_get_delegate(group_size_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_max_get_static_delegate)});
+      if (efl_layout_group_data_get_static_delegate == null)
+      efl_layout_group_data_get_static_delegate = new efl_layout_group_data_get_delegate(group_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_data_get_static_delegate)});
+      if (efl_layout_group_part_exist_get_static_delegate == null)
+      efl_layout_group_part_exist_get_static_delegate = new efl_layout_group_part_exist_get_delegate(part_exist_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_part_exist_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_part_exist_get_static_delegate)});
+      if (efl_layout_signal_message_send_static_delegate == null)
+      efl_layout_signal_message_send_static_delegate = new efl_layout_signal_message_send_delegate(message_send);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_message_send"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_message_send_static_delegate)});
+      if (efl_layout_signal_callback_add_static_delegate == null)
+      efl_layout_signal_callback_add_static_delegate = new efl_layout_signal_callback_add_delegate(signal_callback_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_add"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_add_static_delegate)});
+      if (efl_layout_signal_callback_del_static_delegate == null)
+      efl_layout_signal_callback_del_static_delegate = new efl_layout_signal_callback_del_delegate(signal_callback_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_del"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_del_static_delegate)});
+      if (efl_layout_signal_emit_static_delegate == null)
+      efl_layout_signal_emit_static_delegate = new efl_layout_signal_emit_delegate(signal_emit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_emit"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_emit_static_delegate)});
+      if (efl_layout_signal_process_static_delegate == null)
+      efl_layout_signal_process_static_delegate = new efl_layout_signal_process_delegate(signal_process);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_process"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_process_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Layout.efl_canvas_layout_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Layout.efl_canvas_layout_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_animation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_animation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_animation_get_api_delegate> efl_canvas_layout_animation_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_animation_get_api_delegate>(_Module, "efl_canvas_layout_animation_get");
+    private static bool animation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_animation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetAnimation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_layout_animation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_layout_animation_get_delegate efl_canvas_layout_animation_get_static_delegate;
+
+
+    private delegate  void efl_canvas_layout_animation_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool on);
+
+
+    public delegate  void efl_canvas_layout_animation_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool on);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_animation_set_api_delegate> efl_canvas_layout_animation_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_animation_set_api_delegate>(_Module, "efl_canvas_layout_animation_set");
+    private static  void animation_set(System.IntPtr obj, System.IntPtr pd,  bool on)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_animation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetAnimation( on);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_layout_animation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  on);
+      }
+   }
+   private static efl_canvas_layout_animation_set_delegate efl_canvas_layout_animation_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_canvas_layout_seat_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_canvas_layout_seat_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_seat_get_api_delegate> efl_canvas_layout_seat_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_seat_get_api_delegate>(_Module, "efl_canvas_layout_seat_get");
+    private static Efl.Input.Device seat_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_seat_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Layout)wrapper).GetSeat( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_seat_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_canvas_layout_seat_get_delegate efl_canvas_layout_seat_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))] private delegate  System.String efl_canvas_layout_seat_name_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device device);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))] public delegate  System.String efl_canvas_layout_seat_name_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device device);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_seat_name_get_api_delegate> efl_canvas_layout_seat_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_seat_name_get_api_delegate>(_Module, "efl_canvas_layout_seat_name_get");
+    private static  System.String seat_name_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device device)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_seat_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetSeatName( device);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_seat_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  device);
+      }
+   }
+   private static efl_canvas_layout_seat_name_get_delegate efl_canvas_layout_seat_name_get_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageLoadError efl_canvas_layout_load_error_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageLoadError efl_canvas_layout_load_error_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_load_error_get_api_delegate> efl_canvas_layout_load_error_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_load_error_get_api_delegate>(_Module, "efl_canvas_layout_load_error_get");
+    private static Efl.Gfx.ImageLoadError layout_load_error_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_load_error_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageLoadError _ret_var = default(Efl.Gfx.ImageLoadError);
+         try {
+            _ret_var = ((Layout)wrapper).GetLayoutLoadError();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_layout_load_error_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_layout_load_error_get_delegate efl_canvas_layout_load_error_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_text_min_policy_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String state_name,  [MarshalAs(UnmanagedType.U1)]  out bool min_x,  [MarshalAs(UnmanagedType.U1)]  out bool min_y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_text_min_policy_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String state_name,  [MarshalAs(UnmanagedType.U1)]  out bool min_x,  [MarshalAs(UnmanagedType.U1)]  out bool min_y);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_min_policy_get_api_delegate> efl_canvas_layout_part_text_min_policy_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_min_policy_get_api_delegate>(_Module, "efl_canvas_layout_part_text_min_policy_get");
+    private static bool part_text_min_policy_get(System.IntPtr obj, System.IntPtr pd,   System.String part,   System.String state_name,  out bool min_x,  out bool min_y)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_min_policy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   min_x = default(bool);      min_y = default(bool);                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetPartTextMinPolicy( part,  state_name,  out min_x,  out min_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_min_policy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  state_name,  out min_x,  out min_y);
+      }
+   }
+   private static efl_canvas_layout_part_text_min_policy_get_delegate efl_canvas_layout_part_text_min_policy_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_text_min_policy_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String state_name,  [MarshalAs(UnmanagedType.U1)]  bool min_x,  [MarshalAs(UnmanagedType.U1)]  bool min_y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_text_min_policy_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String state_name,  [MarshalAs(UnmanagedType.U1)]  bool min_x,  [MarshalAs(UnmanagedType.U1)]  bool min_y);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_min_policy_set_api_delegate> efl_canvas_layout_part_text_min_policy_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_min_policy_set_api_delegate>(_Module, "efl_canvas_layout_part_text_min_policy_set");
+    private static bool part_text_min_policy_set(System.IntPtr obj, System.IntPtr pd,   System.String part,   System.String state_name,  bool min_x,  bool min_y)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_min_policy_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetPartTextMinPolicy( part,  state_name,  min_x,  min_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_min_policy_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  state_name,  min_x,  min_y);
+      }
+   }
+   private static efl_canvas_layout_part_text_min_policy_set_delegate efl_canvas_layout_part_text_min_policy_set_static_delegate;
+
+
+    private delegate double efl_canvas_layout_part_text_valign_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    public delegate double efl_canvas_layout_part_text_valign_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_valign_get_api_delegate> efl_canvas_layout_part_text_valign_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_valign_get_api_delegate>(_Module, "efl_canvas_layout_part_text_valign_get");
+    private static double part_text_valign_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_valign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetPartTextValign( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_valign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_canvas_layout_part_text_valign_get_delegate efl_canvas_layout_part_text_valign_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_text_valign_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double valign);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_text_valign_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double valign);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_valign_set_api_delegate> efl_canvas_layout_part_text_valign_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_valign_set_api_delegate>(_Module, "efl_canvas_layout_part_text_valign_set");
+    private static bool part_text_valign_set(System.IntPtr obj, System.IntPtr pd,   System.String part,  double valign)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_valign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetPartTextValign( part,  valign);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_valign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  valign);
+      }
+   }
+   private static efl_canvas_layout_part_text_valign_set_delegate efl_canvas_layout_part_text_valign_set_static_delegate;
+
+
+    private delegate double efl_canvas_layout_part_text_marquee_duration_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    public delegate double efl_canvas_layout_part_text_marquee_duration_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_duration_get_api_delegate> efl_canvas_layout_part_text_marquee_duration_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_duration_get_api_delegate>(_Module, "efl_canvas_layout_part_text_marquee_duration_get");
+    private static double part_text_marquee_duration_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_marquee_duration_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetPartTextMarqueeDuration( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_marquee_duration_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_canvas_layout_part_text_marquee_duration_get_delegate efl_canvas_layout_part_text_marquee_duration_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_text_marquee_duration_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double duration);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_text_marquee_duration_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double duration);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_duration_set_api_delegate> efl_canvas_layout_part_text_marquee_duration_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_duration_set_api_delegate>(_Module, "efl_canvas_layout_part_text_marquee_duration_set");
+    private static bool part_text_marquee_duration_set(System.IntPtr obj, System.IntPtr pd,   System.String part,  double duration)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_marquee_duration_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetPartTextMarqueeDuration( part,  duration);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_marquee_duration_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  duration);
+      }
+   }
+   private static efl_canvas_layout_part_text_marquee_duration_set_delegate efl_canvas_layout_part_text_marquee_duration_set_static_delegate;
+
+
+    private delegate double efl_canvas_layout_part_text_marquee_speed_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    public delegate double efl_canvas_layout_part_text_marquee_speed_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_speed_get_api_delegate> efl_canvas_layout_part_text_marquee_speed_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_speed_get_api_delegate>(_Module, "efl_canvas_layout_part_text_marquee_speed_get");
+    private static double part_text_marquee_speed_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_marquee_speed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetPartTextMarqueeSpeed( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_marquee_speed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_canvas_layout_part_text_marquee_speed_get_delegate efl_canvas_layout_part_text_marquee_speed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_text_marquee_speed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double speed);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_text_marquee_speed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double speed);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_speed_set_api_delegate> efl_canvas_layout_part_text_marquee_speed_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_speed_set_api_delegate>(_Module, "efl_canvas_layout_part_text_marquee_speed_set");
+    private static bool part_text_marquee_speed_set(System.IntPtr obj, System.IntPtr pd,   System.String part,  double speed)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_marquee_speed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetPartTextMarqueeSpeed( part,  speed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_marquee_speed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  speed);
+      }
+   }
+   private static efl_canvas_layout_part_text_marquee_speed_set_delegate efl_canvas_layout_part_text_marquee_speed_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_text_marquee_always_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_text_marquee_always_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_always_get_api_delegate> efl_canvas_layout_part_text_marquee_always_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_always_get_api_delegate>(_Module, "efl_canvas_layout_part_text_marquee_always_get");
+    private static bool part_text_marquee_always_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_marquee_always_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetPartTextMarqueeAlways( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_marquee_always_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_canvas_layout_part_text_marquee_always_get_delegate efl_canvas_layout_part_text_marquee_always_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_text_marquee_always_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.U1)]  bool always);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_text_marquee_always_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.U1)]  bool always);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_always_set_api_delegate> efl_canvas_layout_part_text_marquee_always_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_marquee_always_set_api_delegate>(_Module, "efl_canvas_layout_part_text_marquee_always_set");
+    private static bool part_text_marquee_always_set(System.IntPtr obj, System.IntPtr pd,   System.String part,  bool always)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_marquee_always_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetPartTextMarqueeAlways( part,  always);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_marquee_always_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  always);
+      }
+   }
+   private static efl_canvas_layout_part_text_marquee_always_set_delegate efl_canvas_layout_part_text_marquee_always_set_static_delegate;
+
+
+    private delegate double efl_canvas_layout_part_valign_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    public delegate double efl_canvas_layout_part_valign_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_valign_get_api_delegate> efl_canvas_layout_part_valign_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_valign_get_api_delegate>(_Module, "efl_canvas_layout_part_valign_get");
+    private static double part_valign_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_valign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetPartValign( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_part_valign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_canvas_layout_part_valign_get_delegate efl_canvas_layout_part_valign_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_part_valign_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double valign);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_part_valign_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   double valign);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_valign_set_api_delegate> efl_canvas_layout_part_valign_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_valign_set_api_delegate>(_Module, "efl_canvas_layout_part_valign_set");
+    private static bool part_valign_set(System.IntPtr obj, System.IntPtr pd,   System.String part,  double valign)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_valign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetPartValign( part,  valign);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_layout_part_valign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  valign);
+      }
+   }
+   private static efl_canvas_layout_part_valign_set_delegate efl_canvas_layout_part_valign_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_layout_access_part_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_layout_access_part_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_access_part_iterate_api_delegate> efl_canvas_layout_access_part_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_access_part_iterate_api_delegate>(_Module, "efl_canvas_layout_access_part_iterate");
+    private static  System.IntPtr access_part_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_access_part_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator< System.String> _ret_var = default(Eina.Iterator< System.String>);
+         try {
+            _ret_var = ((Layout)wrapper).AccessPartIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_layout_access_part_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_layout_access_part_iterate_delegate efl_canvas_layout_access_part_iterate_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_layout_content_remove_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_layout_content_remove_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_content_remove_api_delegate> efl_canvas_layout_content_remove_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_content_remove_api_delegate>(_Module, "efl_canvas_layout_content_remove");
+    private static bool content_remove(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_content_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).ContentRemove( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_layout_content_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_canvas_layout_content_remove_delegate efl_canvas_layout_content_remove_static_delegate;
+
+
+    private delegate  void efl_canvas_layout_color_class_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object parent);
+
+
+    public delegate  void efl_canvas_layout_color_class_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object parent);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_color_class_parent_set_api_delegate> efl_canvas_layout_color_class_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_color_class_parent_set_api_delegate>(_Module, "efl_canvas_layout_color_class_parent_set");
+    private static  void color_class_parent_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object parent)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_color_class_parent_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetColorClassParent( parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_layout_color_class_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent);
+      }
+   }
+   private static efl_canvas_layout_color_class_parent_set_delegate efl_canvas_layout_color_class_parent_set_static_delegate;
+
+
+    private delegate  void efl_canvas_layout_color_class_parent_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_canvas_layout_color_class_parent_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_color_class_parent_unset_api_delegate> efl_canvas_layout_color_class_parent_unset_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_color_class_parent_unset_api_delegate>(_Module, "efl_canvas_layout_color_class_parent_unset");
+    private static  void color_class_parent_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_color_class_parent_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Layout)wrapper).UnsetColorClassParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_canvas_layout_color_class_parent_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_layout_color_class_parent_unset_delegate efl_canvas_layout_color_class_parent_unset_static_delegate;
+
+
+    private delegate  void efl_canvas_layout_part_text_cursor_coord_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   Edje.Cursor cur,   out  int x,   out  int y);
+
+
+    public delegate  void efl_canvas_layout_part_text_cursor_coord_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   Edje.Cursor cur,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_cursor_coord_get_api_delegate> efl_canvas_layout_part_text_cursor_coord_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_cursor_coord_get_api_delegate>(_Module, "efl_canvas_layout_part_text_cursor_coord_get");
+    private static  void part_text_cursor_coord_get(System.IntPtr obj, System.IntPtr pd,   System.String part,  Edje.Cursor cur,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_cursor_coord_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   x = default( int);      y = default( int);                                 
+         try {
+            ((Layout)wrapper).GetPartTextCursorCoord( part,  cur,  out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_canvas_layout_part_text_cursor_coord_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  cur,  out x,  out y);
+      }
+   }
+   private static efl_canvas_layout_part_text_cursor_coord_get_delegate efl_canvas_layout_part_text_cursor_coord_get_static_delegate;
+
+
+    private delegate  void efl_canvas_layout_part_text_cursor_size_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   Edje.Cursor cur,   out  int w,   out  int h);
+
+
+    public delegate  void efl_canvas_layout_part_text_cursor_size_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   Edje.Cursor cur,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_cursor_size_get_api_delegate> efl_canvas_layout_part_text_cursor_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_cursor_size_get_api_delegate>(_Module, "efl_canvas_layout_part_text_cursor_size_get");
+    private static  void part_text_cursor_size_get(System.IntPtr obj, System.IntPtr pd,   System.String part,  Edje.Cursor cur,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_cursor_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   w = default( int);      h = default( int);                                 
+         try {
+            ((Layout)wrapper).GetPartTextCursorSize( part,  cur,  out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_canvas_layout_part_text_cursor_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  cur,  out w,  out h);
+      }
+   }
+   private static efl_canvas_layout_part_text_cursor_size_get_delegate efl_canvas_layout_part_text_cursor_size_get_static_delegate;
+
+
+    private delegate  void efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   out  int x,   out  int y,   out  int w,   out  int h);
+
+
+    public delegate  void efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,   out  int x,   out  int y,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_api_delegate> efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_api_delegate>(_Module, "efl_canvas_layout_part_text_cursor_on_mouse_geometry_get");
+    private static  void part_text_cursor_on_mouse_geometry_get(System.IntPtr obj, System.IntPtr pd,   System.String part,  out  int x,  out  int y,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_cursor_on_mouse_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   x = default( int);      y = default( int);      w = default( int);      h = default( int);                                       
+         try {
+            ((Layout)wrapper).GetPartTextCursorOnMouseGeometry( part,  out x,  out y,  out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  out x,  out y,  out w,  out h);
+      }
+   }
+   private static efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_delegate efl_canvas_layout_part_text_cursor_on_mouse_geometry_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Layout)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Layout)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((Layout)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Layout)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Layout)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Layout)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Layout)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    private delegate  void efl_observer_update_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object obs,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,    System.IntPtr data);
+
+
+    public delegate  void efl_observer_update_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object obs,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_observer_update_api_delegate> efl_observer_update_ptr = new Efl.Eo.FunctionWrapper<efl_observer_update_api_delegate>(_Module, "efl_observer_update");
+    private static  void update(System.IntPtr obj, System.IntPtr pd,  Efl.Object obs,   System.String key,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_observer_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Layout)wrapper).Update( obs,  key,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_observer_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  obs,  key,  data);
+      }
+   }
+   private static efl_observer_update_delegate efl_observer_update_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_part_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_part_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_part_get_api_delegate> efl_part_get_ptr = new Efl.Eo.FunctionWrapper<efl_part_get_api_delegate>(_Module, "efl_part_get");
+    private static Efl.Object part_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_part_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Layout)wrapper).GetPart( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_part_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_part_get_delegate efl_part_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_playable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_playable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate> efl_player_playable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate>(_Module, "efl_player_playable_get");
+    private static bool playable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_playable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetPlayable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_playable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_playable_get_delegate efl_player_playable_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_play_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_play_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate> efl_player_play_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate>(_Module, "efl_player_play_get");
+    private static bool play_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetPlay();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_get_delegate efl_player_play_get_static_delegate;
+
+
+    private delegate  void efl_player_play_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool play);
+
+
+    public delegate  void efl_player_play_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool play);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate> efl_player_play_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate>(_Module, "efl_player_play_set");
+    private static  void play_set(System.IntPtr obj, System.IntPtr pd,  bool play)
+   {
+      Eina.Log.Debug("function efl_player_play_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetPlay( play);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  play);
+      }
+   }
+   private static efl_player_play_set_delegate efl_player_play_set_static_delegate;
+
+
+    private delegate double efl_player_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate> efl_player_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate>(_Module, "efl_player_pos_get");
+    private static double pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_pos_get_delegate efl_player_pos_get_static_delegate;
+
+
+    private delegate  void efl_player_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   double sec);
+
+
+    public delegate  void efl_player_pos_set_api_delegate(System.IntPtr obj,   double sec);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate> efl_player_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate>(_Module, "efl_player_pos_set");
+    private static  void pos_set(System.IntPtr obj, System.IntPtr pd,  double sec)
+   {
+      Eina.Log.Debug("function efl_player_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetPos( sec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sec);
+      }
+   }
+   private static efl_player_pos_set_delegate efl_player_pos_set_static_delegate;
+
+
+    private delegate double efl_player_progress_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_progress_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate> efl_player_progress_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate>(_Module, "efl_player_progress_get");
+    private static double progress_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_progress_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetProgress();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_progress_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_progress_get_delegate efl_player_progress_get_static_delegate;
+
+
+    private delegate double efl_player_play_speed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_play_speed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate> efl_player_play_speed_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate>(_Module, "efl_player_play_speed_get");
+    private static double play_speed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetPlaySpeed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_speed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_speed_get_delegate efl_player_play_speed_get_static_delegate;
+
+
+    private delegate  void efl_player_play_speed_set_delegate(System.IntPtr obj, System.IntPtr pd,   double speed);
+
+
+    public delegate  void efl_player_play_speed_set_api_delegate(System.IntPtr obj,   double speed);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate> efl_player_play_speed_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate>(_Module, "efl_player_play_speed_set");
+    private static  void play_speed_set(System.IntPtr obj, System.IntPtr pd,  double speed)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetPlaySpeed( speed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_speed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  speed);
+      }
+   }
+   private static efl_player_play_speed_set_delegate efl_player_play_speed_set_static_delegate;
+
+
+    private delegate double efl_player_volume_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_volume_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate> efl_player_volume_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate>(_Module, "efl_player_volume_get");
+    private static double volume_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_volume_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetVolume();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_volume_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_volume_get_delegate efl_player_volume_get_static_delegate;
+
+
+    private delegate  void efl_player_volume_set_delegate(System.IntPtr obj, System.IntPtr pd,   double volume);
+
+
+    public delegate  void efl_player_volume_set_api_delegate(System.IntPtr obj,   double volume);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate> efl_player_volume_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate>(_Module, "efl_player_volume_set");
+    private static  void volume_set(System.IntPtr obj, System.IntPtr pd,  double volume)
+   {
+      Eina.Log.Debug("function efl_player_volume_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetVolume( volume);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_volume_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  volume);
+      }
+   }
+   private static efl_player_volume_set_delegate efl_player_volume_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_mute_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_mute_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate> efl_player_mute_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate>(_Module, "efl_player_mute_get");
+    private static bool mute_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_mute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetMute();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_mute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_mute_get_delegate efl_player_mute_get_static_delegate;
+
+
+    private delegate  void efl_player_mute_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+
+
+    public delegate  void efl_player_mute_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate> efl_player_mute_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate>(_Module, "efl_player_mute_set");
+    private static  void mute_set(System.IntPtr obj, System.IntPtr pd,  bool mute)
+   {
+      Eina.Log.Debug("function efl_player_mute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetMute( mute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_mute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mute);
+      }
+   }
+   private static efl_player_mute_set_delegate efl_player_mute_set_static_delegate;
+
+
+    private delegate double efl_player_length_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_length_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate> efl_player_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate>(_Module, "efl_player_length_get");
+    private static double length_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Layout)wrapper).GetLength();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_length_get_delegate efl_player_length_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_seekable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_seekable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate> efl_player_seekable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate>(_Module, "efl_player_seekable_get");
+    private static bool seekable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_seekable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetSeekable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_seekable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_seekable_get_delegate efl_player_seekable_get_static_delegate;
+
+
+    private delegate  void efl_player_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_start_api_delegate> efl_player_start_ptr = new Efl.Eo.FunctionWrapper<efl_player_start_api_delegate>(_Module, "efl_player_start");
+    private static  void start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Layout)wrapper).Start();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_start_delegate efl_player_start_static_delegate;
+
+
+    private delegate  void efl_player_stop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_stop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate> efl_player_stop_ptr = new Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate>(_Module, "efl_player_stop");
+    private static  void stop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_stop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Layout)wrapper).Stop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_stop_delegate efl_player_stop_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_color_class_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_color_class_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_get_api_delegate> efl_gfx_color_class_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_get_api_delegate>(_Module, "efl_gfx_color_class_get");
+    private static bool color_class_get(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                               r = default( int);      g = default( int);      b = default( int);      a = default( int);                                             bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetColorClass( color_class,  layer,  out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                              return _ret_var;
+      } else {
+         return efl_gfx_color_class_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer,  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_class_get_delegate efl_gfx_color_class_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_color_class_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,    int r,    int g,    int b,    int a);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_color_class_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_set_api_delegate> efl_gfx_color_class_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_set_api_delegate>(_Module, "efl_gfx_color_class_set");
+    private static bool color_class_set(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetColorClass( color_class,  layer,  r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                              return _ret_var;
+      } else {
+         return efl_gfx_color_class_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer,  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_class_set_delegate efl_gfx_color_class_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_class_code_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_class_code_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_get_api_delegate> efl_gfx_color_class_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_get_api_delegate>(_Module, "efl_gfx_color_class_code_get");
+    private static  System.String color_class_code_get(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetColorClassCode( color_class,  layer);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_gfx_color_class_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer);
+      }
+   }
+   private static efl_gfx_color_class_code_get_delegate efl_gfx_color_class_code_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_color_class_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_color_class_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_set_api_delegate> efl_gfx_color_class_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_set_api_delegate>(_Module, "efl_gfx_color_class_code_set");
+    private static bool color_class_code_set(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetColorClassCode( color_class,  layer,  colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_color_class_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer,  colorcode);
+      }
+   }
+   private static efl_gfx_color_class_code_set_delegate efl_gfx_color_class_code_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_class_description_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_class_description_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_description_get_api_delegate> efl_gfx_color_class_description_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_description_get_api_delegate>(_Module, "efl_gfx_color_class_description_get");
+    private static  System.String color_class_description_get(System.IntPtr obj, System.IntPtr pd,   System.String color_class)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_description_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetColorClassDescription( color_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_color_class_description_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class);
+      }
+   }
+   private static efl_gfx_color_class_description_get_delegate efl_gfx_color_class_description_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_class_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+
+
+    public delegate  void efl_gfx_color_class_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_del_api_delegate> efl_gfx_color_class_del_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_del_api_delegate>(_Module, "efl_gfx_color_class_del");
+    private static  void color_class_del(System.IntPtr obj, System.IntPtr pd,   System.String color_class)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).DelColorClass( color_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_class_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class);
+      }
+   }
+   private static efl_gfx_color_class_del_delegate efl_gfx_color_class_del_static_delegate;
+
+
+    private delegate  void efl_gfx_color_class_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_color_class_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_clear_api_delegate> efl_gfx_color_class_clear_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_clear_api_delegate>(_Module, "efl_gfx_color_class_clear");
+    private static  void color_class_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Layout)wrapper).ClearColorClass();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_color_class_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_class_clear_delegate efl_gfx_color_class_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_size_class_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,   out  int minw,   out  int minh,   out  int maxw,   out  int maxh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_size_class_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,   out  int minw,   out  int minh,   out  int maxw,   out  int maxh);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_size_class_get_api_delegate> efl_gfx_size_class_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_size_class_get_api_delegate>(_Module, "efl_gfx_size_class_get");
+    private static bool size_class_get(System.IntPtr obj, System.IntPtr pd,   System.String size_class,  out  int minw,  out  int minh,  out  int maxw,  out  int maxh)
+   {
+      Eina.Log.Debug("function efl_gfx_size_class_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   minw = default( int);      minh = default( int);      maxw = default( int);      maxh = default( int);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetSizeClass( size_class,  out minw,  out minh,  out maxw,  out maxh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_size_class_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size_class,  out minw,  out minh,  out maxw,  out maxh);
+      }
+   }
+   private static efl_gfx_size_class_get_delegate efl_gfx_size_class_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_size_class_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,    int minw,    int minh,    int maxw,    int maxh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_size_class_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,    int minw,    int minh,    int maxw,    int maxh);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_size_class_set_api_delegate> efl_gfx_size_class_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_size_class_set_api_delegate>(_Module, "efl_gfx_size_class_set");
+    private static bool size_class_set(System.IntPtr obj, System.IntPtr pd,   System.String size_class,   int minw,   int minh,   int maxw,   int maxh)
+   {
+      Eina.Log.Debug("function efl_gfx_size_class_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetSizeClass( size_class,  minw,  minh,  maxw,  maxh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_size_class_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size_class,  minw,  minh,  maxw,  maxh);
+      }
+   }
+   private static efl_gfx_size_class_set_delegate efl_gfx_size_class_set_static_delegate;
+
+
+    private delegate  void efl_gfx_size_class_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class);
+
+
+    public delegate  void efl_gfx_size_class_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_size_class_del_api_delegate> efl_gfx_size_class_del_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_size_class_del_api_delegate>(_Module, "efl_gfx_size_class_del");
+    private static  void size_class_del(System.IntPtr obj, System.IntPtr pd,   System.String size_class)
+   {
+      Eina.Log.Debug("function efl_gfx_size_class_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).DelSizeClass( size_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_size_class_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size_class);
+      }
+   }
+   private static efl_gfx_size_class_del_delegate efl_gfx_size_class_del_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_text_class_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_text_class_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_text_class_get_api_delegate> efl_gfx_text_class_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_text_class_get_api_delegate>(_Module, "efl_gfx_text_class_get");
+    private static bool text_class_get(System.IntPtr obj, System.IntPtr pd,   System.String text_class,  out  System.String font,  out Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_gfx_text_class_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                        System.String _out_font = default( System.String);
+      size = default(Efl.Font.Size);                           bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetTextClass( text_class,  out _out_font,  out size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            font = _out_font;
+                              return _ret_var;
+      } else {
+         return efl_gfx_text_class_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text_class,  out font,  out size);
+      }
+   }
+   private static efl_gfx_text_class_get_delegate efl_gfx_text_class_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_text_class_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_text_class_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_text_class_set_api_delegate> efl_gfx_text_class_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_text_class_set_api_delegate>(_Module, "efl_gfx_text_class_set");
+    private static bool text_class_set(System.IntPtr obj, System.IntPtr pd,   System.String text_class,   System.String font,  Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_gfx_text_class_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).SetTextClass( text_class,  font,  size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_text_class_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text_class,  font,  size);
+      }
+   }
+   private static efl_gfx_text_class_set_delegate efl_gfx_text_class_set_static_delegate;
+
+
+    private delegate  void efl_gfx_text_class_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class);
+
+
+    public delegate  void efl_gfx_text_class_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_text_class_del_api_delegate> efl_gfx_text_class_del_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_text_class_del_api_delegate>(_Module, "efl_gfx_text_class_del");
+    private static  void text_class_del(System.IntPtr obj, System.IntPtr pd,   System.String text_class)
+   {
+      Eina.Log.Debug("function efl_gfx_text_class_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).DelTextClass( text_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_text_class_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text_class);
+      }
+   }
+   private static efl_gfx_text_class_del_delegate efl_gfx_text_class_del_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_calc_auto_update_hints_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_calc_auto_update_hints_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate> efl_layout_calc_auto_update_hints_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_get");
+    private static bool calc_auto_update_hints_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetCalcAutoUpdateHints();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_get_delegate efl_layout_calc_auto_update_hints_get_static_delegate;
+
+
+    private delegate  void efl_layout_calc_auto_update_hints_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool update);
+
+
+    public delegate  void efl_layout_calc_auto_update_hints_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool update);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate> efl_layout_calc_auto_update_hints_set_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_set");
+    private static  void calc_auto_update_hints_set(System.IntPtr obj, System.IntPtr pd,  bool update)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetCalcAutoUpdateHints( update);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  update);
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_set_delegate efl_layout_calc_auto_update_hints_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal restricted);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal restricted);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate> efl_layout_calc_size_min_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate>(_Module, "efl_layout_calc_size_min");
+    private static Eina.Size2D_StructInternal calc_size_min(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal restricted)
+   {
+      Eina.Log.Debug("function efl_layout_calc_size_min was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_restricted = Eina.Size2D_StructConversion.ToManaged(restricted);
+                     Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Layout)wrapper).CalcSizeMin( _in_restricted);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_size_min_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  restricted);
+      }
+   }
+   private static efl_layout_calc_size_min_delegate efl_layout_calc_size_min_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate> efl_layout_calc_parts_extends_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate>(_Module, "efl_layout_calc_parts_extends");
+    private static Eina.Rect_StructInternal calc_parts_extends(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_parts_extends was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Layout)wrapper).CalcPartsExtends();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_parts_extends_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_parts_extends_delegate efl_layout_calc_parts_extends_static_delegate;
+
+
+    private delegate  int efl_layout_calc_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate> efl_layout_calc_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate>(_Module, "efl_layout_calc_freeze");
+    private static  int calc_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Layout)wrapper).FreezeCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_freeze_delegate efl_layout_calc_freeze_static_delegate;
+
+
+    private delegate  int efl_layout_calc_thaw_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_thaw_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate> efl_layout_calc_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate>(_Module, "efl_layout_calc_thaw");
+    private static  int calc_thaw(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_thaw was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Layout)wrapper).ThawCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_thaw_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_thaw_delegate efl_layout_calc_thaw_static_delegate;
+
+
+    private delegate  void efl_layout_calc_force_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_layout_calc_force_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate> efl_layout_calc_force_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate>(_Module, "efl_layout_calc_force");
+    private static  void calc_force(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_force was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Layout)wrapper).CalcForce();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_layout_calc_force_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_force_delegate efl_layout_calc_force_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate> efl_layout_group_size_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate>(_Module, "efl_layout_group_size_min_get");
+    private static Eina.Size2D_StructInternal group_size_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Layout)wrapper).GetGroupSizeMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_min_get_delegate efl_layout_group_size_min_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate> efl_layout_group_size_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate>(_Module, "efl_layout_group_size_max_get");
+    private static Eina.Size2D_StructInternal group_size_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Layout)wrapper).GetGroupSizeMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_max_get_delegate efl_layout_group_size_max_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_layout_group_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_layout_group_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate> efl_layout_group_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate>(_Module, "efl_layout_group_data_get");
+    private static  System.String group_data_get(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_layout_group_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetGroupData( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_layout_group_data_get_delegate efl_layout_group_data_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_group_part_exist_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_group_part_exist_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate> efl_layout_group_part_exist_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate>(_Module, "efl_layout_group_part_exist_get");
+    private static bool part_exist_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_layout_group_part_exist_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetPartExist( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_part_exist_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_layout_group_part_exist_get_delegate efl_layout_group_part_exist_get_static_delegate;
+
+
+    private delegate  void efl_layout_signal_message_send_delegate(System.IntPtr obj, System.IntPtr pd,    int id,    Eina.ValueNative msg);
+
+
+    public delegate  void efl_layout_signal_message_send_api_delegate(System.IntPtr obj,    int id,    Eina.ValueNative msg);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate> efl_layout_signal_message_send_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate>(_Module, "efl_layout_signal_message_send");
+    private static  void message_send(System.IntPtr obj, System.IntPtr pd,   int id,   Eina.ValueNative msg)
+   {
+      Eina.Log.Debug("function efl_layout_signal_message_send was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Layout)wrapper).MessageSend( id,  msg);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_message_send_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id,  msg);
+      }
+   }
+   private static efl_layout_signal_message_send_delegate efl_layout_signal_message_send_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate> efl_layout_signal_callback_add_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate>(_Module, "efl_layout_signal_callback_add");
+    private static bool signal_callback_add(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).AddSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_add_delegate efl_layout_signal_callback_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate> efl_layout_signal_callback_del_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate>(_Module, "efl_layout_signal_callback_del");
+    private static bool signal_callback_del(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).DelSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_del_delegate efl_layout_signal_callback_del_static_delegate;
+
+
+    private delegate  void efl_layout_signal_emit_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+
+
+    public delegate  void efl_layout_signal_emit_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate> efl_layout_signal_emit_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate>(_Module, "efl_layout_signal_emit");
+    private static  void signal_emit(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source)
+   {
+      Eina.Log.Debug("function efl_layout_signal_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Layout)wrapper).EmitSignal( emission,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_emit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source);
+      }
+   }
+   private static efl_layout_signal_emit_delegate efl_layout_signal_emit_static_delegate;
+
+
+    private delegate  void efl_layout_signal_process_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+
+
+    public delegate  void efl_layout_signal_process_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate> efl_layout_signal_process_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate>(_Module, "efl_layout_signal_process");
+    private static  void signal_process(System.IntPtr obj, System.IntPtr pd,  bool recurse)
+   {
+      Eina.Log.Debug("function efl_layout_signal_process was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SignalProcess( recurse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_signal_process_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  recurse);
+      }
+   }
+   private static efl_layout_signal_process_delegate efl_layout_signal_process_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_layout_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_layout_part.eo.cs
new file mode 100755 (executable)
index 0000000..bff0c04
--- /dev/null
@@ -0,0 +1,1169 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Common class for part proxy objects for <see cref="Efl.Canvas.Layout"/>.
+/// As an <see cref="Efl.Part"/> implementation class, all objects of this class are meant to be used for one and only one function call. In pseudo-code, the use of object of this type looks like the following: rect = layout.part(&quot;somepart&quot;).geometry_get();
+/// 1.20</summary>
+[LayoutPartNativeInherit]
+public class LayoutPart : Efl.Object, Efl.Eo.IWrapper,Efl.Gfx.Entity,Efl.Ui.Drag
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.LayoutPartNativeInherit nativeInherit = new Efl.Canvas.LayoutPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPart))
+            return Efl.Canvas.LayoutPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_canvas_layout_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPart(Efl.Object parent= null
+         ) :
+      base(efl_canvas_layout_part_class_get(), typeof(LayoutPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object VisibilityChangedEvtKey = new object();
+   /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   public event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_VisibilityChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibilityChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibilityChangedEvt.</summary>
+   public void On_VisibilityChangedEvt(Efl.Gfx.EntityVisibilityChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args>)eventHandlers[VisibilityChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibilityChangedEvt_delegate;
+   private void on_VisibilityChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityVisibilityChangedEvt_Args args = new Efl.Gfx.EntityVisibilityChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_VisibilityChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(Efl.Gfx.EntityPositionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args>)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityPositionChangedEvt_Args args = new Efl.Gfx.EntityPositionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(Efl.Gfx.EntitySizeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args>)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntitySizeChangedEvt_Args args = new Efl.Gfx.EntitySizeChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_VisibilityChangedEvt_delegate = new Efl.EventCb(on_VisibilityChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+   }
+   /// <summary>The name and value of the current state of this part (read-only).
+   /// This is the state name as it appears in EDC description blocks. A state has both a name and a value (double). The default state is &quot;default&quot; 0.0, but this function will return &quot;&quot; if the part is invalid.
+   /// 1.20</summary>
+   /// <param name="state">The name of the state.
+   /// 1.20</param>
+   /// <param name="val">The value of the state.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetState( out  System.String state,  out double val) {
+                                           Efl.Canvas.LayoutPartNativeInherit.efl_canvas_layout_part_state_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out state,  out val);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Returns the type of the part.
+   /// 1.20</summary>
+   /// <returns>One of the types or <c>none</c> if not an existing part.
+   /// 1.20</returns>
+   virtual public Efl.Canvas.LayoutPartType GetPartType() {
+       var _ret_var = Efl.Canvas.LayoutPartNativeInherit.efl_canvas_layout_part_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+   /// <returns>A 2D coordinate in pixel units.</returns>
+   virtual public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+   /// <param name="pos">A 2D coordinate in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+   /// <returns>A 2D size in pixel units.</returns>
+   virtual public Eina.Size2D GetSize() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Changes the size of the given object.
+   /// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+   /// <param name="size">A 2D size in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <returns>The X,Y position and W,H size, in pixels.</returns>
+   virtual public Eina.Rect GetGeometry() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetGeometry( Eina.Rect rect) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+   /// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+   virtual public bool GetVisible() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Shows or hides this object.</summary>
+   /// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetVisible( bool v) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+   /// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+   virtual public double GetScale() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scaling factor of an object.</summary>
+   /// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+   /// <returns></returns>
+   virtual public  void SetScale( double scale) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the draggable object location.
+   /// 1.20</summary>
+   /// <param name="dx">The x relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetDragValue( out double dx,  out double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out dx,  out dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the draggable object location.
+   /// This places the draggable object at the given location.
+   /// 1.20</summary>
+   /// <param name="dx">The x relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool SetDragValue( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the size of the dradgable object.
+   /// 1.20</summary>
+   /// <param name="dw">The drag relative width, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dh">The drag relative height, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetDragSize( out double dw,  out double dh) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out dw,  out dh);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the size of the draggable object.
+   /// 1.20</summary>
+   /// <param name="dw">The drag relative width, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dh">The drag relative height, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool SetDragSize( double dw,  double dh) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dw,  dh);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the draggable direction.
+   /// 1.20</summary>
+   /// <returns>The direction(s) premitted for drag.
+   /// 1.20</returns>
+   virtual public Efl.Ui.DragDir GetDragDir() {
+       var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_dir_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets the x and y step increments for the draggable object.
+   /// 1.20</summary>
+   /// <param name="dx">The x step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetDragStep( out double dx,  out double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_step_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out dx,  out dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the x,y step increments for a draggable object.
+   /// 1.20</summary>
+   /// <param name="dx">The x step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool SetDragStep( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_step_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the x,y page step increments for the draggable object.
+   /// 1.20</summary>
+   /// <param name="dx">The x page step increment
+   /// 1.20</param>
+   /// <param name="dy">The y page step increment
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetDragPage( out double dx,  out double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_page_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out dx,  out dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the x,y page step increment values.
+   /// 1.20</summary>
+   /// <param name="dx">The x page step increment
+   /// 1.20</param>
+   /// <param name="dy">The y page step increment
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool SetDragPage( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_page_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Moves the draggable by <c>dx</c>,<c>dy</c> steps.
+   /// This moves the draggable part by <c>dx</c>,<c>dy</c> steps where the step increment is the amount set by <see cref="Efl.Ui.Drag.GetDragStep"/>.
+   /// 
+   /// <c>dx</c> and <c>dy</c> can be positive or negative numbers, integer values are recommended.
+   /// 1.20</summary>
+   /// <param name="dx">The number of steps horizontally.
+   /// 1.20</param>
+   /// <param name="dy">The number of steps vertically.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool MoveDragStep( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_step_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Moves the draggable by <c>dx</c>,<c>dy</c> pages.
+   /// This moves the draggable by <c>dx</c>,<c>dy</c> pages. The increment is defined by <see cref="Efl.Ui.Drag.GetDragPage"/>.
+   /// 
+   /// <c>dx</c> and <c>dy</c> can be positive or negative numbers, integer values are recommended.
+   /// 
+   /// Warning: Paging is bugged!
+   /// 1.20</summary>
+   /// <param name="dx">The number of pages horizontally.
+   /// 1.20</param>
+   /// <param name="dy">The number of pages vertically.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool MoveDragPage( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_page_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Type of this part in the layout.
+/// 1.20</summary>
+/// <value>One of the types or <c>none</c> if not an existing part.
+/// 1.20</value>
+   public Efl.Canvas.LayoutPartType PartType {
+      get { return GetPartType(); }
+   }
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   public Eina.Size2D Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   public Eina.Rect Geometry {
+      get { return GetGeometry(); }
+      set { SetGeometry( value); }
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   public bool Visible {
+      get { return GetVisible(); }
+      set { SetVisible( value); }
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   public double Scale {
+      get { return GetScale(); }
+      set { SetScale( value); }
+   }
+   /// <summary>Determines the draggable directions (read-only).
+/// The draggable directions are defined in the EDC file, inside the &quot;draggable&quot; section, by the attributes <c>x</c> and <c>y</c>. See the EDC reference documentation for more information.
+/// 1.20</summary>
+/// <value>The direction(s) premitted for drag.
+/// 1.20</value>
+   public Efl.Ui.DragDir DragDir {
+      get { return GetDragDir(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPart.efl_canvas_layout_part_class_get();
+   }
+}
+public class LayoutPartNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_layout_part_state_get_static_delegate == null)
+      efl_canvas_layout_part_state_get_static_delegate = new efl_canvas_layout_part_state_get_delegate(state_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_state_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_state_get_static_delegate)});
+      if (efl_canvas_layout_part_type_get_static_delegate == null)
+      efl_canvas_layout_part_type_get_static_delegate = new efl_canvas_layout_part_type_get_delegate(part_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_type_get_static_delegate)});
+      if (efl_gfx_entity_position_get_static_delegate == null)
+      efl_gfx_entity_position_get_static_delegate = new efl_gfx_entity_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_get_static_delegate)});
+      if (efl_gfx_entity_position_set_static_delegate == null)
+      efl_gfx_entity_position_set_static_delegate = new efl_gfx_entity_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_set_static_delegate)});
+      if (efl_gfx_entity_size_get_static_delegate == null)
+      efl_gfx_entity_size_get_static_delegate = new efl_gfx_entity_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_get_static_delegate)});
+      if (efl_gfx_entity_size_set_static_delegate == null)
+      efl_gfx_entity_size_set_static_delegate = new efl_gfx_entity_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_set_static_delegate)});
+      if (efl_gfx_entity_geometry_get_static_delegate == null)
+      efl_gfx_entity_geometry_get_static_delegate = new efl_gfx_entity_geometry_get_delegate(geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_get_static_delegate)});
+      if (efl_gfx_entity_geometry_set_static_delegate == null)
+      efl_gfx_entity_geometry_set_static_delegate = new efl_gfx_entity_geometry_set_delegate(geometry_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_set_static_delegate)});
+      if (efl_gfx_entity_visible_get_static_delegate == null)
+      efl_gfx_entity_visible_get_static_delegate = new efl_gfx_entity_visible_get_delegate(visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_get_static_delegate)});
+      if (efl_gfx_entity_visible_set_static_delegate == null)
+      efl_gfx_entity_visible_set_static_delegate = new efl_gfx_entity_visible_set_delegate(visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_set_static_delegate)});
+      if (efl_gfx_entity_scale_get_static_delegate == null)
+      efl_gfx_entity_scale_get_static_delegate = new efl_gfx_entity_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_get_static_delegate)});
+      if (efl_gfx_entity_scale_set_static_delegate == null)
+      efl_gfx_entity_scale_set_static_delegate = new efl_gfx_entity_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_set_static_delegate)});
+      if (efl_ui_drag_value_get_static_delegate == null)
+      efl_ui_drag_value_get_static_delegate = new efl_ui_drag_value_get_delegate(drag_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_value_get_static_delegate)});
+      if (efl_ui_drag_value_set_static_delegate == null)
+      efl_ui_drag_value_set_static_delegate = new efl_ui_drag_value_set_delegate(drag_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_value_set_static_delegate)});
+      if (efl_ui_drag_size_get_static_delegate == null)
+      efl_ui_drag_size_get_static_delegate = new efl_ui_drag_size_get_delegate(drag_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_size_get_static_delegate)});
+      if (efl_ui_drag_size_set_static_delegate == null)
+      efl_ui_drag_size_set_static_delegate = new efl_ui_drag_size_set_delegate(drag_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_size_set_static_delegate)});
+      if (efl_ui_drag_dir_get_static_delegate == null)
+      efl_ui_drag_dir_get_static_delegate = new efl_ui_drag_dir_get_delegate(drag_dir_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_dir_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_dir_get_static_delegate)});
+      if (efl_ui_drag_step_get_static_delegate == null)
+      efl_ui_drag_step_get_static_delegate = new efl_ui_drag_step_get_delegate(drag_step_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_step_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_step_get_static_delegate)});
+      if (efl_ui_drag_step_set_static_delegate == null)
+      efl_ui_drag_step_set_static_delegate = new efl_ui_drag_step_set_delegate(drag_step_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_step_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_step_set_static_delegate)});
+      if (efl_ui_drag_page_get_static_delegate == null)
+      efl_ui_drag_page_get_static_delegate = new efl_ui_drag_page_get_delegate(drag_page_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_page_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_page_get_static_delegate)});
+      if (efl_ui_drag_page_set_static_delegate == null)
+      efl_ui_drag_page_set_static_delegate = new efl_ui_drag_page_set_delegate(drag_page_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_page_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_page_set_static_delegate)});
+      if (efl_ui_drag_step_move_static_delegate == null)
+      efl_ui_drag_step_move_static_delegate = new efl_ui_drag_step_move_delegate(drag_step_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_step_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_step_move_static_delegate)});
+      if (efl_ui_drag_page_move_static_delegate == null)
+      efl_ui_drag_page_move_static_delegate = new efl_ui_drag_page_move_delegate(drag_page_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_page_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_page_move_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.LayoutPart.efl_canvas_layout_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPart.efl_canvas_layout_part_class_get();
+   }
+
+
+    private delegate  void efl_canvas_layout_part_state_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String state,   out double val);
+
+
+    public delegate  void efl_canvas_layout_part_state_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String state,   out double val);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_state_get_api_delegate> efl_canvas_layout_part_state_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_state_get_api_delegate>(_Module, "efl_canvas_layout_part_state_get");
+    private static  void state_get(System.IntPtr obj, System.IntPtr pd,  out  System.String state,  out double val)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_state_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_state = default( System.String);
+      val = default(double);                     
+         try {
+            ((LayoutPart)wrapper).GetState( out _out_state,  out val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      state = _out_state;
+                              } else {
+         efl_canvas_layout_part_state_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out state,  out val);
+      }
+   }
+   private static efl_canvas_layout_part_state_get_delegate efl_canvas_layout_part_state_get_static_delegate;
+
+
+    private delegate Efl.Canvas.LayoutPartType efl_canvas_layout_part_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Canvas.LayoutPartType efl_canvas_layout_part_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_type_get_api_delegate> efl_canvas_layout_part_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_type_get_api_delegate>(_Module, "efl_canvas_layout_part_type_get");
+    private static Efl.Canvas.LayoutPartType part_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.LayoutPartType _ret_var = default(Efl.Canvas.LayoutPartType);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetPartType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_layout_part_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_layout_part_type_get_delegate efl_canvas_layout_part_type_get_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate> efl_gfx_entity_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate>(_Module, "efl_gfx_entity_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_position_get_delegate efl_gfx_entity_position_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_gfx_entity_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate> efl_gfx_entity_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate>(_Module, "efl_gfx_entity_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((LayoutPart)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_gfx_entity_position_set_delegate efl_gfx_entity_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate> efl_gfx_entity_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate>(_Module, "efl_gfx_entity_size_get");
+    private static Eina.Size2D_StructInternal size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_size_get_delegate efl_gfx_entity_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_entity_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate> efl_gfx_entity_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate>(_Module, "efl_gfx_entity_size_set");
+    private static  void size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((LayoutPart)wrapper).SetSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_entity_size_set_delegate efl_gfx_entity_size_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate> efl_gfx_entity_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate>(_Module, "efl_gfx_entity_geometry_get");
+    private static Eina.Rect_StructInternal geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_geometry_get_delegate efl_gfx_entity_geometry_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_geometry_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect);
+
+
+    public delegate  void efl_gfx_entity_geometry_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate> efl_gfx_entity_geometry_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate>(_Module, "efl_gfx_entity_geometry_set");
+    private static  void geometry_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                     
+         try {
+            ((LayoutPart)wrapper).SetGeometry( _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_geometry_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect);
+      }
+   }
+   private static efl_gfx_entity_geometry_set_delegate efl_gfx_entity_geometry_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_entity_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_entity_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate> efl_gfx_entity_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate>(_Module, "efl_gfx_entity_visible_get");
+    private static bool visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_visible_get_delegate efl_gfx_entity_visible_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_gfx_entity_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate> efl_gfx_entity_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate>(_Module, "efl_gfx_entity_visible_set");
+    private static  void visible_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPart)wrapper).SetVisible( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_gfx_entity_visible_set_delegate efl_gfx_entity_visible_set_static_delegate;
+
+
+    private delegate double efl_gfx_entity_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_entity_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate> efl_gfx_entity_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate>(_Module, "efl_gfx_entity_scale_get");
+    private static double scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_scale_get_delegate efl_gfx_entity_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_entity_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate> efl_gfx_entity_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate>(_Module, "efl_gfx_entity_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPart)wrapper).SetScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_entity_scale_set_delegate efl_gfx_entity_scale_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_value_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dx,   out double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_value_get_api_delegate(System.IntPtr obj,   out double dx,   out double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_value_get_api_delegate> efl_ui_drag_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_value_get_api_delegate>(_Module, "efl_ui_drag_value_get");
+    private static bool drag_value_get(System.IntPtr obj, System.IntPtr pd,  out double dx,  out double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dx = default(double);      dy = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetDragValue( out dx,  out dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dx,  out dy);
+      }
+   }
+   private static efl_ui_drag_value_get_delegate efl_ui_drag_value_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_value_set_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_value_set_api_delegate> efl_ui_drag_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_value_set_api_delegate>(_Module, "efl_ui_drag_value_set");
+    private static bool drag_value_set(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).SetDragValue( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_value_set_delegate efl_ui_drag_value_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dw,   out double dh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_size_get_api_delegate(System.IntPtr obj,   out double dw,   out double dh);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_size_get_api_delegate> efl_ui_drag_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_size_get_api_delegate>(_Module, "efl_ui_drag_size_get");
+    private static bool drag_size_get(System.IntPtr obj, System.IntPtr pd,  out double dw,  out double dh)
+   {
+      Eina.Log.Debug("function efl_ui_drag_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dw = default(double);      dh = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetDragSize( out dw,  out dh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dw,  out dh);
+      }
+   }
+   private static efl_ui_drag_size_get_delegate efl_ui_drag_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dw,   double dh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_size_set_api_delegate(System.IntPtr obj,   double dw,   double dh);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_size_set_api_delegate> efl_ui_drag_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_size_set_api_delegate>(_Module, "efl_ui_drag_size_set");
+    private static bool drag_size_set(System.IntPtr obj, System.IntPtr pd,  double dw,  double dh)
+   {
+      Eina.Log.Debug("function efl_ui_drag_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).SetDragSize( dw,  dh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dw,  dh);
+      }
+   }
+   private static efl_ui_drag_size_set_delegate efl_ui_drag_size_set_static_delegate;
+
+
+    private delegate Efl.Ui.DragDir efl_ui_drag_dir_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.DragDir efl_ui_drag_dir_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_dir_get_api_delegate> efl_ui_drag_dir_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_dir_get_api_delegate>(_Module, "efl_ui_drag_dir_get");
+    private static Efl.Ui.DragDir drag_dir_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_drag_dir_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.DragDir _ret_var = default(Efl.Ui.DragDir);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetDragDir();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_drag_dir_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_drag_dir_get_delegate efl_ui_drag_dir_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_step_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dx,   out double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_step_get_api_delegate(System.IntPtr obj,   out double dx,   out double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_step_get_api_delegate> efl_ui_drag_step_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_step_get_api_delegate>(_Module, "efl_ui_drag_step_get");
+    private static bool drag_step_get(System.IntPtr obj, System.IntPtr pd,  out double dx,  out double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_step_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dx = default(double);      dy = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetDragStep( out dx,  out dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_step_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dx,  out dy);
+      }
+   }
+   private static efl_ui_drag_step_get_delegate efl_ui_drag_step_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_step_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_step_set_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_step_set_api_delegate> efl_ui_drag_step_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_step_set_api_delegate>(_Module, "efl_ui_drag_step_set");
+    private static bool drag_step_set(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_step_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).SetDragStep( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_step_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_step_set_delegate efl_ui_drag_step_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_page_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dx,   out double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_page_get_api_delegate(System.IntPtr obj,   out double dx,   out double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_page_get_api_delegate> efl_ui_drag_page_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_page_get_api_delegate>(_Module, "efl_ui_drag_page_get");
+    private static bool drag_page_get(System.IntPtr obj, System.IntPtr pd,  out double dx,  out double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_page_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dx = default(double);      dy = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).GetDragPage( out dx,  out dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_page_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dx,  out dy);
+      }
+   }
+   private static efl_ui_drag_page_get_delegate efl_ui_drag_page_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_page_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_page_set_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_page_set_api_delegate> efl_ui_drag_page_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_page_set_api_delegate>(_Module, "efl_ui_drag_page_set");
+    private static bool drag_page_set(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_page_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).SetDragPage( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_page_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_page_set_delegate efl_ui_drag_page_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_step_move_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_step_move_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_step_move_api_delegate> efl_ui_drag_step_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_step_move_api_delegate>(_Module, "efl_ui_drag_step_move");
+    private static bool drag_step_move(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_step_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).MoveDragStep( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_step_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_step_move_delegate efl_ui_drag_step_move_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_page_move_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_page_move_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_page_move_api_delegate> efl_ui_drag_page_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_page_move_api_delegate>(_Module, "efl_ui_drag_page_move");
+    private static bool drag_page_move(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_page_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPart)wrapper).MoveDragPage( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_page_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_page_move_delegate efl_ui_drag_page_move_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_box.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_box.eo.cs
new file mode 100755 (executable)
index 0000000..d8a7dfd
--- /dev/null
@@ -0,0 +1,930 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Represents a Box created as part of a layout.
+/// Its lifetime is limited to one function call only, unless an extra reference is explicitly held.</summary>
+[LayoutPartBoxNativeInherit]
+public class LayoutPartBox : Efl.Canvas.LayoutPart, Efl.Eo.IWrapper,Efl.Container,Efl.Pack,Efl.PackLinear,Efl.Ui.Direction,Efl.Ui.DirectionReadonly
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.LayoutPartBoxNativeInherit nativeInherit = new Efl.Canvas.LayoutPartBoxNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartBox))
+            return Efl.Canvas.LayoutPartBoxNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_canvas_layout_part_box_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartBox(Efl.Object parent= null
+         ) :
+      base(efl_canvas_layout_part_box_class_get(), typeof(LayoutPartBox), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartBox(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartBox(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartBox static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartBox(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartBox.efl_canvas_layout_part_box_class_get();
+   }
+}
+public class LayoutPartBoxNativeInherit : Efl.Canvas.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.LayoutPartBox.efl_canvas_layout_part_box_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartBox.efl_canvas_layout_part_box_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((LayoutPartBox)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartBox)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((LayoutPartBox)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutPartBox)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartBox)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_external.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_external.eo.cs
new file mode 100755 (executable)
index 0000000..4332e7b
--- /dev/null
@@ -0,0 +1,257 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Class representing an external part in Edje layouts.
+/// An object of this type is an Efl.Part object, which means its lifecycle is limited to only one function call.
+/// 
+/// An external part contains one object, which can be retrieved with <see cref="Efl.Content.GetContent"/>. Do not delete this object. Just like for other parts Edje is in charge of the visibility, geometry, clip, etc.
+/// 
+/// Common usage in pseudo-C would be as follows: Eo *widget = efl_content_get(efl_part(layout, &quot;extpartname&quot;)); efl_text_set(widget, &quot;hello&quot;);
+/// 
+/// Note that as a shortcut the widget&apos;s functions can be called directly on this part object. In C++: efl::eo::downcast&lt;efl::Text&gt;(layout.part(&quot;title&quot;)).text_set(&quot;hello&quot;); Or in pseudo-C: efl_text_set(efl_part(layout, &quot;title&quot;), &quot;hello&quot;); Or in pseudo-script: layout[&quot;title&quot;].text = &quot;hello&quot;;
+/// 1.20</summary>
+[LayoutPartExternalNativeInherit]
+public class LayoutPartExternal : Efl.Canvas.LayoutPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.LayoutPartExternalNativeInherit nativeInherit = new Efl.Canvas.LayoutPartExternalNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartExternal))
+            return Efl.Canvas.LayoutPartExternalNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_canvas_layout_part_external_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartExternal(Efl.Object parent= null
+         ) :
+      base(efl_canvas_layout_part_external_class_get(), typeof(LayoutPartExternal), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartExternal(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartExternal(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartExternal static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartExternal(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartExternal.efl_canvas_layout_part_external_class_get();
+   }
+}
+public class LayoutPartExternalNativeInherit : Efl.Canvas.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.LayoutPartExternal.efl_canvas_layout_part_external_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartExternal.efl_canvas_layout_part_external_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartExternal)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartExternal)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartExternal)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_swallow.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_swallow.eo.cs
new file mode 100755 (executable)
index 0000000..4a4d73f
--- /dev/null
@@ -0,0 +1,250 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Represents a SWALLOW part of an Edje object.
+/// Its lifetime is limited to one function call only, unless an extra reference is explicitely held.</summary>
+[LayoutPartSwallowNativeInherit]
+public class LayoutPartSwallow : Efl.Canvas.LayoutPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.LayoutPartSwallowNativeInherit nativeInherit = new Efl.Canvas.LayoutPartSwallowNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartSwallow))
+            return Efl.Canvas.LayoutPartSwallowNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_canvas_layout_part_swallow_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartSwallow(Efl.Object parent= null
+         ) :
+      base(efl_canvas_layout_part_swallow_class_get(), typeof(LayoutPartSwallow), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartSwallow(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartSwallow(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartSwallow static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartSwallow(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartSwallow.efl_canvas_layout_part_swallow_class_get();
+   }
+}
+public class LayoutPartSwallowNativeInherit : Efl.Canvas.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.LayoutPartSwallow.efl_canvas_layout_part_swallow_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartSwallow.efl_canvas_layout_part_swallow_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartSwallow)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartSwallow)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartSwallow)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_table.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_table.eo.cs
new file mode 100755 (executable)
index 0000000..682d0a2
--- /dev/null
@@ -0,0 +1,1294 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Represents a Table created as part of a layout.
+/// Can not be deleted, this is only a representation of an internal object of an EFL layout.</summary>
+[LayoutPartTableNativeInherit]
+public class LayoutPartTable : Efl.Canvas.LayoutPart, Efl.Eo.IWrapper,Efl.Container,Efl.Pack,Efl.PackLinear,Efl.PackTable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.LayoutPartTableNativeInherit nativeInherit = new Efl.Canvas.LayoutPartTableNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartTable))
+            return Efl.Canvas.LayoutPartTableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_canvas_layout_part_table_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartTable(Efl.Object parent= null
+         ) :
+      base(efl_canvas_layout_part_table_class_get(), typeof(LayoutPartTable), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartTable(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartTable(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartTable static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartTable(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Position and span of the <c>subobj</c> in this container, may be modified to move the <c>subobj</c></summary>
+   /// <param name="subobj">Child object</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">Column span</param>
+   /// <param name="rowspan">Row span</param>
+   /// <returns>Returns false if item is not a child</returns>
+   virtual public bool GetTablePosition( Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  out col,  out row,  out colspan,  out rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void GetTableSize( out  int cols,  out  int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out cols,  out rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void SetTableSize(  int cols,   int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cols,  rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gird columns property</summary>
+   /// <returns>Number of columns</returns>
+   virtual public  int GetTableColumns() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_columns_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is horizontal</summary>
+   /// <param name="cols">Number of columns</param>
+   /// <returns></returns>
+   virtual public  void SetTableColumns(  int cols) {
+                         Efl.PackTableNativeInherit.efl_pack_table_columns_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cols);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Table rows property</summary>
+   /// <returns>Number of rows</returns>
+   virtual public  int GetTableRows() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_rows_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is vertical</summary>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void SetTableRows(  int rows) {
+                         Efl.PackTableNativeInherit.efl_pack_table_rows_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), rows);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   virtual public  void GetTableDirection( out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out primary,  out secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   virtual public  void SetTableDirection( Efl.Ui.Dir primary,  Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), primary,  secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pack object at a given location in the table.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">A child object to pack in this table.</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">0 means 1, -1 means <see cref="Efl.PackTable.TableColumns"/></param>
+   /// <param name="rowspan">0 means 1, -1 means <see cref="Efl.PackTable.TableRows"/></param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool PackTable( Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  col,  row,  colspan,  rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Returns all objects at a given position in this table.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="below">If <c>true</c> get objects spanning over this cell.</param>
+   /// <returns>Iterator to table contents</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> GetTableContents(  int col,   int row,  bool below) {
+                                                             var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_contents_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), col,  row,  below);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns a child at a given position, see <see cref="Efl.PackTable.GetTableContents"/>.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <returns>Child object</returns>
+   virtual public Efl.Gfx.Entity GetTableContent(  int col,   int row) {
+                                           var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), col,  row);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gird columns property</summary>
+/// <value>Number of columns</value>
+   public  int TableColumns {
+      get { return GetTableColumns(); }
+      set { SetTableColumns( value); }
+   }
+   /// <summary>Table rows property</summary>
+/// <value>Number of rows</value>
+   public  int TableRows {
+      get { return GetTableRows(); }
+      set { SetTableRows( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartTable.efl_canvas_layout_part_table_class_get();
+   }
+}
+public class LayoutPartTableNativeInherit : Efl.Canvas.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_pack_table_position_get_static_delegate == null)
+      efl_pack_table_position_get_static_delegate = new efl_pack_table_position_get_delegate(table_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_position_get_static_delegate)});
+      if (efl_pack_table_size_get_static_delegate == null)
+      efl_pack_table_size_get_static_delegate = new efl_pack_table_size_get_delegate(table_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_get_static_delegate)});
+      if (efl_pack_table_size_set_static_delegate == null)
+      efl_pack_table_size_set_static_delegate = new efl_pack_table_size_set_delegate(table_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_set_static_delegate)});
+      if (efl_pack_table_columns_get_static_delegate == null)
+      efl_pack_table_columns_get_static_delegate = new efl_pack_table_columns_get_delegate(table_columns_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_get_static_delegate)});
+      if (efl_pack_table_columns_set_static_delegate == null)
+      efl_pack_table_columns_set_static_delegate = new efl_pack_table_columns_set_delegate(table_columns_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_set_static_delegate)});
+      if (efl_pack_table_rows_get_static_delegate == null)
+      efl_pack_table_rows_get_static_delegate = new efl_pack_table_rows_get_delegate(table_rows_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_get_static_delegate)});
+      if (efl_pack_table_rows_set_static_delegate == null)
+      efl_pack_table_rows_set_static_delegate = new efl_pack_table_rows_set_delegate(table_rows_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_set_static_delegate)});
+      if (efl_pack_table_direction_get_static_delegate == null)
+      efl_pack_table_direction_get_static_delegate = new efl_pack_table_direction_get_delegate(table_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_get_static_delegate)});
+      if (efl_pack_table_direction_set_static_delegate == null)
+      efl_pack_table_direction_set_static_delegate = new efl_pack_table_direction_set_delegate(table_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_set_static_delegate)});
+      if (efl_pack_table_static_delegate == null)
+      efl_pack_table_static_delegate = new efl_pack_table_delegate(pack_table);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_static_delegate)});
+      if (efl_pack_table_contents_get_static_delegate == null)
+      efl_pack_table_contents_get_static_delegate = new efl_pack_table_contents_get_delegate(table_contents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_contents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_contents_get_static_delegate)});
+      if (efl_pack_table_content_get_static_delegate == null)
+      efl_pack_table_content_get_static_delegate = new efl_pack_table_content_get_delegate(table_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_content_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.LayoutPartTable.efl_canvas_layout_part_table_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartTable.efl_canvas_layout_part_table_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((LayoutPartTable)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartTable)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((LayoutPartTable)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutPartTable)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_position_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_position_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate> efl_pack_table_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate>(_Module, "efl_pack_table_position_get");
+    private static bool table_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   col = default( int);      row = default( int);      colspan = default( int);      rowspan = default( int);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTablePosition( subobj,  out col,  out row,  out colspan,  out rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  out col,  out row,  out colspan,  out rowspan);
+      }
+   }
+   private static efl_pack_table_position_get_delegate efl_pack_table_position_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int cols,   out  int rows);
+
+
+    public delegate  void efl_pack_table_size_get_api_delegate(System.IntPtr obj,   out  int cols,   out  int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate> efl_pack_table_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate>(_Module, "efl_pack_table_size_get");
+    private static  void table_size_get(System.IntPtr obj, System.IntPtr pd,  out  int cols,  out  int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           cols = default( int);      rows = default( int);                     
+         try {
+            ((LayoutPartTable)wrapper).GetTableSize( out cols,  out rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cols,  out rows);
+      }
+   }
+   private static efl_pack_table_size_get_delegate efl_pack_table_size_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols,    int rows);
+
+
+    public delegate  void efl_pack_table_size_set_api_delegate(System.IntPtr obj,    int cols,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate> efl_pack_table_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate>(_Module, "efl_pack_table_size_set");
+    private static  void table_size_set(System.IntPtr obj, System.IntPtr pd,   int cols,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartTable)wrapper).SetTableSize( cols,  rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols,  rows);
+      }
+   }
+   private static efl_pack_table_size_set_delegate efl_pack_table_size_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_columns_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_columns_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate> efl_pack_table_columns_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate>(_Module, "efl_pack_table_columns_get");
+    private static  int table_columns_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableColumns();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_columns_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_columns_get_delegate efl_pack_table_columns_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_columns_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols);
+
+
+    public delegate  void efl_pack_table_columns_set_api_delegate(System.IntPtr obj,    int cols);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate> efl_pack_table_columns_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate>(_Module, "efl_pack_table_columns_set");
+    private static  void table_columns_set(System.IntPtr obj, System.IntPtr pd,   int cols)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartTable)wrapper).SetTableColumns( cols);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_columns_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols);
+      }
+   }
+   private static efl_pack_table_columns_set_delegate efl_pack_table_columns_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_rows_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_rows_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate> efl_pack_table_rows_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate>(_Module, "efl_pack_table_rows_get");
+    private static  int table_rows_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableRows();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_rows_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_rows_get_delegate efl_pack_table_rows_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_rows_set_delegate(System.IntPtr obj, System.IntPtr pd,    int rows);
+
+
+    public delegate  void efl_pack_table_rows_set_api_delegate(System.IntPtr obj,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate> efl_pack_table_rows_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate>(_Module, "efl_pack_table_rows_set");
+    private static  void table_rows_set(System.IntPtr obj, System.IntPtr pd,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartTable)wrapper).SetTableRows( rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_rows_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rows);
+      }
+   }
+   private static efl_pack_table_rows_set_delegate efl_pack_table_rows_set_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_get_api_delegate(System.IntPtr obj,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate> efl_pack_table_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate>(_Module, "efl_pack_table_direction_get");
+    private static  void table_direction_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           primary = default(Efl.Ui.Dir);      secondary = default(Efl.Ui.Dir);                     
+         try {
+            ((LayoutPartTable)wrapper).GetTableDirection( out primary,  out secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out primary,  out secondary);
+      }
+   }
+   private static efl_pack_table_direction_get_delegate efl_pack_table_direction_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate> efl_pack_table_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate>(_Module, "efl_pack_table_direction_set");
+    private static  void table_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir primary,  Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartTable)wrapper).SetTableDirection( primary,  secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  primary,  secondary);
+      }
+   }
+   private static efl_pack_table_direction_set_delegate efl_pack_table_direction_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate> efl_pack_table_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate>(_Module, "efl_pack_table");
+    private static bool pack_table(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackTable( subobj,  col,  row,  colspan,  rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  col,  row,  colspan,  rowspan);
+      }
+   }
+   private static efl_pack_table_delegate efl_pack_table_static_delegate;
+
+
+    private delegate  System.IntPtr efl_pack_table_contents_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+
+
+    public delegate  System.IntPtr efl_pack_table_contents_get_api_delegate(System.IntPtr obj,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate> efl_pack_table_contents_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate>(_Module, "efl_pack_table_contents_get");
+    private static  System.IntPtr table_contents_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row,  bool below)
+   {
+      Eina.Log.Debug("function efl_pack_table_contents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableContents( col,  row,  below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_pack_table_contents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row,  below);
+      }
+   }
+   private static efl_pack_table_contents_get_delegate efl_pack_table_contents_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_table_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_table_content_get_api_delegate(System.IntPtr obj,    int col,    int row);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate> efl_pack_table_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate>(_Module, "efl_pack_table_content_get");
+    private static Efl.Gfx.Entity table_content_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row)
+   {
+      Eina.Log.Debug("function efl_pack_table_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableContent( col,  row);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_table_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row);
+      }
+   }
+   private static efl_pack_table_content_get_delegate efl_pack_table_content_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_text.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_layout_part_text.eo.cs
new file mode 100755 (executable)
index 0000000..a070456
--- /dev/null
@@ -0,0 +1,4706 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Represents a TEXT part of a layout
+/// Its lifetime is limited to one function call only, unless an extra reference is explicitly held.</summary>
+[LayoutPartTextNativeInherit]
+public class LayoutPartText : Efl.Canvas.LayoutPart, Efl.Eo.IWrapper,Efl.Text,Efl.TextCursor,Efl.TextFont,Efl.TextFormat,Efl.TextMarkup,Efl.TextMarkupInteractive,Efl.TextStyle
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.LayoutPartTextNativeInherit nativeInherit = new Efl.Canvas.LayoutPartTextNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartText))
+            return Efl.Canvas.LayoutPartTextNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_canvas_layout_part_text_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartText(Efl.Object parent= null
+         ) :
+      base(efl_canvas_layout_part_text_class_get(), typeof(LayoutPartText), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartText(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartText(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartText static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartText(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Sizing policy for text parts.
+   /// This will determine whether to consider height or width constraints, if text-specific behaviors occur (such as ellipsis, line-wrapping etc.</summary>
+   /// <returns></returns>
+   virtual public Efl.Canvas.LayoutPartTextExpand GetTextExpand() {
+       var _ret_var = Efl.Canvas.LayoutPartTextNativeInherit.efl_canvas_layout_part_text_expand_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sizing policy for text parts.
+   /// This will determine whether to consider height or width constraints, if text-specific behaviors occur (such as ellipsis, line-wrapping etc.</summary>
+   /// <param name="type"></param>
+   /// <returns></returns>
+   virtual public  void SetTextExpand( Efl.Canvas.LayoutPartTextExpand type) {
+                         Efl.Canvas.LayoutPartTextNativeInherit.efl_canvas_layout_part_text_expand_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The object&apos;s main cursor.
+   /// 1.18</summary>
+   /// <param name="get_type">Cursor type
+   /// 1.20</param>
+   /// <returns>Text cursor object
+   /// 1.20</returns>
+   virtual public Efl.TextCursorCursor GetTextCursor( Efl.TextCursorGetType get_type) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), get_type);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Cursor position
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns>Cursor position
+   /// 1.20</returns>
+   virtual public  int GetCursorPosition( Efl.TextCursorCursor cur) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Cursor position
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="position">Cursor position
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetCursorPosition( Efl.TextCursorCursor cur,   int position) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur,  position);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The content of the cursor (the character under the cursor)
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns>The unicode codepoint of the character
+   /// 1.20</returns>
+   virtual public Eina.Unicode GetCursorContent( Efl.TextCursorCursor cur) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the geometry of two cursors (&quot;split cursor&quot;), if logical cursor is between LTR/RTL text, also considering paragraph direction. Upper cursor is shown for the text of the same direction as paragraph, lower cursor - for opposite.
+   /// Split cursor geometry is valid only  in &apos;|&apos; cursor mode. In this case <c>true</c> is returned and <c>cx2</c>, <c>cy2</c>, <c>cw2</c>, <c>ch2</c> are set.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="ctype">The type of the cursor.
+   /// 1.20</param>
+   /// <param name="cx">The x of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cy">The y of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cw">The width of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="ch">The height of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cx2">The x of the lower cursor
+   /// 1.20</param>
+   /// <param name="cy2">The y of the lower cursor
+   /// 1.20</param>
+   /// <param name="cw2">The width of the lower cursor
+   /// 1.20</param>
+   /// <param name="ch2">The height of the lower cursor
+   /// 1.20</param>
+   /// <returns><c>true</c> if split cursor, <c>false</c> otherwise.
+   /// 1.20</returns>
+   virtual public bool GetCursorGeometry( Efl.TextCursorCursor cur,  Efl.TextCursorType ctype,  out  int cx,  out  int cy,  out  int cw,  out  int ch,  out  int cx2,  out  int cy2,  out  int cw2,  out  int ch2) {
+                                                                                                                                                                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                              return _ret_var;
+ }
+   /// <summary>Create new cursor
+   /// 1.20</summary>
+   /// <returns>Cursor object
+   /// 1.20</returns>
+   virtual public Efl.TextCursorCursor NewCursor() {
+       var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Free existing cursor
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorFree( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_free_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Check if two cursors are equal
+   /// 1.20</summary>
+   /// <param name="cur1">Cursor 1 object
+   /// 1.20</param>
+   /// <param name="cur2">Cursor 2 object
+   /// 1.20</param>
+   /// <returns><c>true</c> if cursors are equal, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool CursorEqual( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_equal_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur1,  cur2);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Compare two cursors
+   /// 1.20</summary>
+   /// <param name="cur1">Cursor 1 object
+   /// 1.20</param>
+   /// <param name="cur2">Cursor 2 object
+   /// 1.20</param>
+   /// <returns>Difference between cursors
+   /// 1.20</returns>
+   virtual public  int CursorCompare( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_compare_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur1,  cur2);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Copy existing cursor
+   /// 1.20</summary>
+   /// <param name="dst">Destination cursor
+   /// 1.20</param>
+   /// <param name="src">Source cursor
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorCopy( Efl.TextCursorCursor dst,  Efl.TextCursorCursor src) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_copy_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dst,  src);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Advances to the next character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorCharNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_next_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the previous character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorCharPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_prev_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the next grapheme cluster
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorClusterNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_cluster_next_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the previous grapheme cluster
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorClusterPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_cluster_prev_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the first character in this paragraph
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorParagraphCharFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_char_first_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the last character in this paragraph
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorParagraphCharLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_char_last_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current word start
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorWordStart( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_word_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current word end
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorWordEnd( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_word_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current line first character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorLineCharFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_line_char_first_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current line last character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorLineCharLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_line_char_last_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current paragraph first character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorParagraphFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_first_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current paragraph last character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorParagraphLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_last_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the start of the next text node
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorParagraphNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_next_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the end of the previous text node
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorParagraphPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_prev_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Jump the cursor by the given number of lines
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="by">Number of lines
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorLineJumpBy( Efl.TextCursorCursor cur,   int by) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_line_jump_by_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur,  by);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set cursor coordinates
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="x">X coord to set by.
+   /// 1.20</param>
+   /// <param name="y">Y coord to set by.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetCursorCoord( Efl.TextCursorCursor cur,   int x,   int y) {
+                                                             Efl.TextCursorNativeInherit.efl_text_cursor_coord_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Set cursor coordinates according to grapheme clusters. It does not allow to put a cursor to the middle of a grapheme cluster.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="x">X coord to set by.
+   /// 1.20</param>
+   /// <param name="y">Y coord to set by.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetCursorClusterCoord( Efl.TextCursorCursor cur,   int x,   int y) {
+                                                             Efl.TextCursorNativeInherit.efl_text_cursor_cluster_coord_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Adds text to the current cursor position and set the cursor to *after* the start of the text just added.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="text">Text to append (UTF-8 format).
+   /// 1.20</param>
+   /// <returns>Length of the appended text.
+   /// 1.20</returns>
+   virtual public  int CursorTextInsert( Efl.TextCursorCursor cur,   System.String text) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_text_insert_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur,  text);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Deletes a single character from position pointed by given cursor.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void CursorCharDelete( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_delete_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieve the font family and size in use on a given text object.
+   /// This function allows the font name and size of a text object to be queried. Remember that the font name string is still owned by Evas and should not have free() called on it by the caller of the function.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetFont( out  System.String font,  out Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out font,  out size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the font family, filename and size for a given text object.
+   /// This function allows the font name and size of a text object to be set. The font string has to follow fontconfig&apos;s convention for naming fonts, as it&apos;s the underlying library used to query system fonts by Evas (see the fc-list command&apos;s output, on your system, to get an idea). Alternatively, youe can use the full path to a font file.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>, <see cref="Efl.TextFont.GetFontSource"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFont(  System.String font,  Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font,  size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+   /// See <see cref="Efl.TextFont.GetFont"/> for more details.
+   /// 1.20</summary>
+   /// <returns>The font file&apos;s path.
+   /// 1.20</returns>
+   virtual public  System.String GetFontSource() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_source_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the font (source) file to be used on a given text object.
+   /// This function allows the font file to be explicitly set for a given text object, overriding system lookup, which will first occur in the given file&apos;s contents.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font_source">The font file&apos;s path.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontSource(  System.String font_source) {
+                         Efl.TextFontNativeInherit.efl_text_font_source_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font_source);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <returns>Font name fallbacks
+   /// 1.20</returns>
+   virtual public  System.String GetFontFallbacks() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_fallbacks_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <param name="font_fallbacks">Font name fallbacks
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontFallbacks(  System.String font_fallbacks) {
+                         Efl.TextFontNativeInherit.efl_text_font_fallbacks_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font_fallbacks);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font weight
+   /// 1.20</returns>
+   virtual public Efl.TextFontWeight GetFontWeight() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_weight_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="font_weight">Font weight
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontWeight( Efl.TextFontWeight font_weight) {
+                         Efl.TextFontNativeInherit.efl_text_font_weight_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font_weight);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font slant
+   /// 1.20</returns>
+   virtual public Efl.TextFontSlant GetFontSlant() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_slant_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="style">Font slant
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontSlant( Efl.TextFontSlant style) {
+                         Efl.TextFontNativeInherit.efl_text_font_slant_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font width
+   /// 1.20</returns>
+   virtual public Efl.TextFontWidth GetFontWidth() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_width_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="width">Font width
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontWidth( Efl.TextFontWidth width) {
+                         Efl.TextFontNativeInherit.efl_text_font_width_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <returns>Language
+   /// 1.20</returns>
+   virtual public  System.String GetFontLang() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_lang_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <param name="lang">Language
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontLang(  System.String lang) {
+                         Efl.TextFontNativeInherit.efl_text_font_lang_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), lang);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <returns>Scalable
+   /// 1.20</returns>
+   virtual public Efl.TextFontBitmapScalable GetFontBitmapScalable() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <param name="scalable">Scalable
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontBitmapScalable( Efl.TextFontBitmapScalable scalable) {
+                         Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <returns>Ellipsis value
+   /// 1.20</returns>
+   virtual public double GetEllipsis() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_ellipsis_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <param name="value">Ellipsis value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetEllipsis( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_ellipsis_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <returns>Wrap mode
+   /// 1.20</returns>
+   virtual public Efl.TextFormatWrap GetWrap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_wrap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <param name="wrap">Wrap mode
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetWrap( Efl.TextFormatWrap wrap) {
+                         Efl.TextFormatNativeInherit.efl_text_wrap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), wrap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <returns><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetMultiline() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_multiline_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMultiline( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_multiline_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Alignment type
+   /// 1.20</returns>
+   virtual public Efl.TextFormatHorizontalAlignmentAutoType GetHalignAutoType() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_auto_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Alignment type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetHalignAutoType( Efl.TextFormatHorizontalAlignmentAutoType value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_auto_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Horizontal alignment value
+   /// 1.20</returns>
+   virtual public double GetHalign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Horizontal alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetHalign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <returns>Vertical alignment value
+   /// 1.20</returns>
+   virtual public double GetValign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_valign_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Vertical alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetValign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_valign_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <returns>Line gap value
+   /// 1.20</returns>
+   virtual public double GetLinegap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linegap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <param name="value">Line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetLinegap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linegap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <returns>Relative line gap value
+   /// 1.20</returns>
+   virtual public double GetLinerelgap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linerelgap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <param name="value">Relative line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetLinerelgap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linerelgap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <returns>Tapstops value
+   /// 1.20</returns>
+   virtual public  int GetTabstops() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_tabstops_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <param name="value">Tapstops value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetTabstops(  int value) {
+                         Efl.TextFormatNativeInherit.efl_text_tabstops_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <returns><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetPassword() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_password_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetPassword( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_password_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <returns>Replacement character
+   /// 1.20</returns>
+   virtual public  System.String GetReplacementChar() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_replacement_char_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <param name="repch">Replacement character
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetReplacementChar(  System.String repch) {
+                         Efl.TextFormatNativeInherit.efl_text_replacement_char_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), repch);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   virtual public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup of a given range in the text
+   /// 1.22</summary>
+   /// <param name="start"></param>
+   /// <param name="end"></param>
+   /// <returns>The markup-text representation set to this text of a given range
+   /// 1.22</returns>
+   virtual public  System.String GetMarkupRange( Efl.TextCursorCursor start,  Efl.TextCursorCursor end) {
+                                           var _ret_var = Efl.TextMarkupInteractiveNativeInherit.efl_text_markup_interactive_markup_range_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Markup of a given range in the text
+   /// 1.22</summary>
+   /// <param name="start"></param>
+   /// <param name="end"></param>
+   /// <param name="markup">The markup-text representation set to this text of a given range
+   /// 1.22</param>
+   /// <returns></returns>
+   virtual public  void SetMarkupRange( Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String markup) {
+                                                             Efl.TextMarkupInteractiveNativeInherit.efl_text_markup_interactive_markup_range_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start,  end,  markup);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Inserts a markup text to the text object in a given cursor position
+   /// 1.22</summary>
+   /// <param name="cur">Cursor position to insert markup
+   /// 1.22</param>
+   /// <param name="markup">The markup text to insert
+   /// 1.22</param>
+   /// <returns></returns>
+   virtual public  void CursorMarkupInsert( Efl.TextCursorCursor cur,   System.String markup) {
+                                           Efl.TextMarkupInteractiveNativeInherit.efl_text_markup_interactive_cursor_markup_insert_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur,  markup);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetNormalColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetNormalColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <returns>Backing type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleBackingType GetBackingType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_backing_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <param name="type">Backing type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetBackingType( Efl.TextStyleBackingType type) {
+                         Efl.TextStyleNativeInherit.efl_text_backing_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetBackingColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetBackingColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <returns>Underline type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleUnderlineType GetUnderlineType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <param name="type">Underline type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineType( Efl.TextStyleUnderlineType type) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetUnderlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <returns>Height
+   /// 1.20</returns>
+   virtual public double GetUnderlineHeight() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_height_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <param name="height">Height
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineHeight( double height) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_height_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), height);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetUnderlineDashedColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineDashedColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Width
+   /// 1.20</returns>
+   virtual public  int GetUnderlineDashedWidth() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <param name="width">Width
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineDashedWidth(  int width) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Gap
+   /// 1.20</returns>
+   virtual public  int GetUnderlineDashedGap() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <param name="gap">Gap
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineDashedGap(  int gap) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), gap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetUnderline2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderline2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <returns>Strikethrough type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleStrikethroughType GetStrikethroughType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_strikethrough_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <param name="type">Strikethrough type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetStrikethroughType( Efl.TextStyleStrikethroughType type) {
+                         Efl.TextStyleNativeInherit.efl_text_strikethrough_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetStrikethroughColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetStrikethroughColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <returns>Effect type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleEffectType GetEffectType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_effect_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <param name="type">Effect type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetEffectType( Efl.TextStyleEffectType type) {
+                         Efl.TextStyleNativeInherit.efl_text_effect_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetOutlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetOutlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <returns>Shadow direction
+   /// 1.20</returns>
+   virtual public Efl.TextStyleShadowDirection GetShadowDirection() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_shadow_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <param name="type">Shadow direction
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetShadowDirection( Efl.TextStyleShadowDirection type) {
+                         Efl.TextStyleNativeInherit.efl_text_shadow_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetShadowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetShadowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetGlowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetGlowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetGlow2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetGlow2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <returns>Filter code
+   /// 1.20</returns>
+   virtual public  System.String GetGfxFilter() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_gfx_filter_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <param name="code">Filter code
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetGfxFilter(  System.String code) {
+                         Efl.TextStyleNativeInherit.efl_text_gfx_filter_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), code);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Sizing policy for text parts.
+/// This will determine whether to consider height or width constraints, if text-specific behaviors occur (such as ellipsis, line-wrapping etc.</summary>
+/// <value></value>
+   public Efl.Canvas.LayoutPartTextExpand TextExpand {
+      get { return GetTextExpand(); }
+      set { SetTextExpand( value); }
+   }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+/// See <see cref="Efl.TextFont.GetFont"/> for more details.
+/// 1.20</summary>
+/// <value>The font file&apos;s path.
+/// 1.20</value>
+   public  System.String FontSource {
+      get { return GetFontSource(); }
+      set { SetFontSource( value); }
+   }
+   /// <summary>Comma-separated list of font fallbacks
+/// Will be used in case the primary font isn&apos;t available.
+/// 1.20</summary>
+/// <value>Font name fallbacks
+/// 1.20</value>
+   public  System.String FontFallbacks {
+      get { return GetFontFallbacks(); }
+      set { SetFontFallbacks( value); }
+   }
+   /// <summary>Type of weight of the displayed font
+/// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+/// 1.20</summary>
+/// <value>Font weight
+/// 1.20</value>
+   public Efl.TextFontWeight FontWeight {
+      get { return GetFontWeight(); }
+      set { SetFontWeight( value); }
+   }
+   /// <summary>Type of slant of the displayed font
+/// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+/// 1.20</summary>
+/// <value>Font slant
+/// 1.20</value>
+   public Efl.TextFontSlant FontSlant {
+      get { return GetFontSlant(); }
+      set { SetFontSlant( value); }
+   }
+   /// <summary>Type of width of the displayed font
+/// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+/// 1.20</summary>
+/// <value>Font width
+/// 1.20</value>
+   public Efl.TextFontWidth FontWidth {
+      get { return GetFontWidth(); }
+      set { SetFontWidth( value); }
+   }
+   /// <summary>Specific language of the displayed font
+/// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+/// 1.20</summary>
+/// <value>Language
+/// 1.20</value>
+   public  System.String FontLang {
+      get { return GetFontLang(); }
+      set { SetFontLang( value); }
+   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+/// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+/// 1.20</summary>
+/// <value>Scalable
+/// 1.20</value>
+   public Efl.TextFontBitmapScalable FontBitmapScalable {
+      get { return GetFontBitmapScalable(); }
+      set { SetFontBitmapScalable( value); }
+   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+/// 1.20</summary>
+/// <value>Ellipsis value
+/// 1.20</value>
+   public double Ellipsis {
+      get { return GetEllipsis(); }
+      set { SetEllipsis( value); }
+   }
+   /// <summary>Wrap mode for use in the text
+/// 1.20</summary>
+/// <value>Wrap mode
+/// 1.20</value>
+   public Efl.TextFormatWrap Wrap {
+      get { return GetWrap(); }
+      set { SetWrap( value); }
+   }
+   /// <summary>Multiline is enabled or not
+/// 1.20</summary>
+/// <value><c>true</c> if multiline is enabled, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Multiline {
+      get { return GetMultiline(); }
+      set { SetMultiline( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Alignment type
+/// 1.20</value>
+   public Efl.TextFormatHorizontalAlignmentAutoType HalignAutoType {
+      get { return GetHalignAutoType(); }
+      set { SetHalignAutoType( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Horizontal alignment value
+/// 1.20</value>
+   public double Halign {
+      get { return GetHalign(); }
+      set { SetHalign( value); }
+   }
+   /// <summary>Vertical alignment of text
+/// 1.20</summary>
+/// <value>Vertical alignment value
+/// 1.20</value>
+   public double Valign {
+      get { return GetValign(); }
+      set { SetValign( value); }
+   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+/// <c>value</c> is absolute size.
+/// 1.20</summary>
+/// <value>Line gap value
+/// 1.20</value>
+   public double Linegap {
+      get { return GetLinegap(); }
+      set { SetLinegap( value); }
+   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+/// The original line gap value is multiplied by <c>value</c>.
+/// 1.20</summary>
+/// <value>Relative line gap value
+/// 1.20</value>
+   public double Linerelgap {
+      get { return GetLinerelgap(); }
+      set { SetLinerelgap( value); }
+   }
+   /// <summary>Tabstops value
+/// 1.20</summary>
+/// <value>Tapstops value
+/// 1.20</value>
+   public  int Tabstops {
+      get { return GetTabstops(); }
+      set { SetTabstops( value); }
+   }
+   /// <summary>Whether text is a password
+/// 1.20</summary>
+/// <value><c>true</c> if the text is a password, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Password {
+      get { return GetPassword(); }
+      set { SetPassword( value); }
+   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+/// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+/// 1.20</summary>
+/// <value>Replacement character
+/// 1.20</value>
+   public  System.String ReplacementChar {
+      get { return GetReplacementChar(); }
+      set { SetReplacementChar( value); }
+   }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+   /// <summary>Enable or disable backing type
+/// 1.20</summary>
+/// <value>Backing type
+/// 1.20</value>
+   public Efl.TextStyleBackingType BackingType {
+      get { return GetBackingType(); }
+      set { SetBackingType( value); }
+   }
+   /// <summary>Sets an underline style on the text
+/// 1.20</summary>
+/// <value>Underline type
+/// 1.20</value>
+   public Efl.TextStyleUnderlineType UnderlineType {
+      get { return GetUnderlineType(); }
+      set { SetUnderlineType( value); }
+   }
+   /// <summary>Height of underline style
+/// 1.20</summary>
+/// <value>Height
+/// 1.20</value>
+   public double UnderlineHeight {
+      get { return GetUnderlineHeight(); }
+      set { SetUnderlineHeight( value); }
+   }
+   /// <summary>Width of dashed underline style
+/// 1.20</summary>
+/// <value>Width
+/// 1.20</value>
+   public  int UnderlineDashedWidth {
+      get { return GetUnderlineDashedWidth(); }
+      set { SetUnderlineDashedWidth( value); }
+   }
+   /// <summary>Gap of dashed underline style
+/// 1.20</summary>
+/// <value>Gap
+/// 1.20</value>
+   public  int UnderlineDashedGap {
+      get { return GetUnderlineDashedGap(); }
+      set { SetUnderlineDashedGap( value); }
+   }
+   /// <summary>Type of strikethrough style
+/// 1.20</summary>
+/// <value>Strikethrough type
+/// 1.20</value>
+   public Efl.TextStyleStrikethroughType StrikethroughType {
+      get { return GetStrikethroughType(); }
+      set { SetStrikethroughType( value); }
+   }
+   /// <summary>Type of effect used for the displayed text
+/// 1.20</summary>
+/// <value>Effect type
+/// 1.20</value>
+   public Efl.TextStyleEffectType EffectType {
+      get { return GetEffectType(); }
+      set { SetEffectType( value); }
+   }
+   /// <summary>Direction of shadow effect
+/// 1.20</summary>
+/// <value>Shadow direction
+/// 1.20</value>
+   public Efl.TextStyleShadowDirection ShadowDirection {
+      get { return GetShadowDirection(); }
+      set { SetShadowDirection( value); }
+   }
+   /// <summary>Program that applies a special filter
+/// See <see cref="Efl.Gfx.Filter"/>.
+/// 1.20</summary>
+/// <value>Filter code
+/// 1.20</value>
+   public  System.String GfxFilter {
+      get { return GetGfxFilter(); }
+      set { SetGfxFilter( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartText.efl_canvas_layout_part_text_class_get();
+   }
+}
+public class LayoutPartTextNativeInherit : Efl.Canvas.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_layout_part_text_expand_get_static_delegate == null)
+      efl_canvas_layout_part_text_expand_get_static_delegate = new efl_canvas_layout_part_text_expand_get_delegate(text_expand_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_expand_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_expand_get_static_delegate)});
+      if (efl_canvas_layout_part_text_expand_set_static_delegate == null)
+      efl_canvas_layout_part_text_expand_set_static_delegate = new efl_canvas_layout_part_text_expand_set_delegate(text_expand_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_layout_part_text_expand_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_layout_part_text_expand_set_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_cursor_get_static_delegate == null)
+      efl_text_cursor_get_static_delegate = new efl_text_cursor_get_delegate(text_cursor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_get_static_delegate)});
+      if (efl_text_cursor_position_get_static_delegate == null)
+      efl_text_cursor_position_get_static_delegate = new efl_text_cursor_position_get_delegate(cursor_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_position_get_static_delegate)});
+      if (efl_text_cursor_position_set_static_delegate == null)
+      efl_text_cursor_position_set_static_delegate = new efl_text_cursor_position_set_delegate(cursor_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_position_set_static_delegate)});
+      if (efl_text_cursor_content_get_static_delegate == null)
+      efl_text_cursor_content_get_static_delegate = new efl_text_cursor_content_get_delegate(cursor_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_content_get_static_delegate)});
+      if (efl_text_cursor_geometry_get_static_delegate == null)
+      efl_text_cursor_geometry_get_static_delegate = new efl_text_cursor_geometry_get_delegate(cursor_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_geometry_get_static_delegate)});
+      if (efl_text_cursor_new_static_delegate == null)
+      efl_text_cursor_new_static_delegate = new efl_text_cursor_new_delegate(cursor_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_new"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_new_static_delegate)});
+      if (efl_text_cursor_free_static_delegate == null)
+      efl_text_cursor_free_static_delegate = new efl_text_cursor_free_delegate(cursor_free);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_free"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_free_static_delegate)});
+      if (efl_text_cursor_equal_static_delegate == null)
+      efl_text_cursor_equal_static_delegate = new efl_text_cursor_equal_delegate(cursor_equal);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_equal"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_equal_static_delegate)});
+      if (efl_text_cursor_compare_static_delegate == null)
+      efl_text_cursor_compare_static_delegate = new efl_text_cursor_compare_delegate(cursor_compare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_compare"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_compare_static_delegate)});
+      if (efl_text_cursor_copy_static_delegate == null)
+      efl_text_cursor_copy_static_delegate = new efl_text_cursor_copy_delegate(cursor_copy);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_copy"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_copy_static_delegate)});
+      if (efl_text_cursor_char_next_static_delegate == null)
+      efl_text_cursor_char_next_static_delegate = new efl_text_cursor_char_next_delegate(cursor_char_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_next_static_delegate)});
+      if (efl_text_cursor_char_prev_static_delegate == null)
+      efl_text_cursor_char_prev_static_delegate = new efl_text_cursor_char_prev_delegate(cursor_char_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_prev_static_delegate)});
+      if (efl_text_cursor_cluster_next_static_delegate == null)
+      efl_text_cursor_cluster_next_static_delegate = new efl_text_cursor_cluster_next_delegate(cursor_cluster_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_next_static_delegate)});
+      if (efl_text_cursor_cluster_prev_static_delegate == null)
+      efl_text_cursor_cluster_prev_static_delegate = new efl_text_cursor_cluster_prev_delegate(cursor_cluster_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_prev_static_delegate)});
+      if (efl_text_cursor_paragraph_char_first_static_delegate == null)
+      efl_text_cursor_paragraph_char_first_static_delegate = new efl_text_cursor_paragraph_char_first_delegate(cursor_paragraph_char_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_char_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_char_first_static_delegate)});
+      if (efl_text_cursor_paragraph_char_last_static_delegate == null)
+      efl_text_cursor_paragraph_char_last_static_delegate = new efl_text_cursor_paragraph_char_last_delegate(cursor_paragraph_char_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_char_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_char_last_static_delegate)});
+      if (efl_text_cursor_word_start_static_delegate == null)
+      efl_text_cursor_word_start_static_delegate = new efl_text_cursor_word_start_delegate(cursor_word_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_word_start"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_word_start_static_delegate)});
+      if (efl_text_cursor_word_end_static_delegate == null)
+      efl_text_cursor_word_end_static_delegate = new efl_text_cursor_word_end_delegate(cursor_word_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_word_end"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_word_end_static_delegate)});
+      if (efl_text_cursor_line_char_first_static_delegate == null)
+      efl_text_cursor_line_char_first_static_delegate = new efl_text_cursor_line_char_first_delegate(cursor_line_char_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_char_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_char_first_static_delegate)});
+      if (efl_text_cursor_line_char_last_static_delegate == null)
+      efl_text_cursor_line_char_last_static_delegate = new efl_text_cursor_line_char_last_delegate(cursor_line_char_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_char_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_char_last_static_delegate)});
+      if (efl_text_cursor_paragraph_first_static_delegate == null)
+      efl_text_cursor_paragraph_first_static_delegate = new efl_text_cursor_paragraph_first_delegate(cursor_paragraph_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_first_static_delegate)});
+      if (efl_text_cursor_paragraph_last_static_delegate == null)
+      efl_text_cursor_paragraph_last_static_delegate = new efl_text_cursor_paragraph_last_delegate(cursor_paragraph_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_last_static_delegate)});
+      if (efl_text_cursor_paragraph_next_static_delegate == null)
+      efl_text_cursor_paragraph_next_static_delegate = new efl_text_cursor_paragraph_next_delegate(cursor_paragraph_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_next_static_delegate)});
+      if (efl_text_cursor_paragraph_prev_static_delegate == null)
+      efl_text_cursor_paragraph_prev_static_delegate = new efl_text_cursor_paragraph_prev_delegate(cursor_paragraph_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_prev_static_delegate)});
+      if (efl_text_cursor_line_jump_by_static_delegate == null)
+      efl_text_cursor_line_jump_by_static_delegate = new efl_text_cursor_line_jump_by_delegate(cursor_line_jump_by);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_jump_by"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_jump_by_static_delegate)});
+      if (efl_text_cursor_coord_set_static_delegate == null)
+      efl_text_cursor_coord_set_static_delegate = new efl_text_cursor_coord_set_delegate(cursor_coord_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_coord_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_coord_set_static_delegate)});
+      if (efl_text_cursor_cluster_coord_set_static_delegate == null)
+      efl_text_cursor_cluster_coord_set_static_delegate = new efl_text_cursor_cluster_coord_set_delegate(cursor_cluster_coord_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_coord_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_coord_set_static_delegate)});
+      if (efl_text_cursor_text_insert_static_delegate == null)
+      efl_text_cursor_text_insert_static_delegate = new efl_text_cursor_text_insert_delegate(cursor_text_insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_text_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_text_insert_static_delegate)});
+      if (efl_text_cursor_char_delete_static_delegate == null)
+      efl_text_cursor_char_delete_static_delegate = new efl_text_cursor_char_delete_delegate(cursor_char_delete);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_delete"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_delete_static_delegate)});
+      if (efl_text_font_get_static_delegate == null)
+      efl_text_font_get_static_delegate = new efl_text_font_get_delegate(font_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_get_static_delegate)});
+      if (efl_text_font_set_static_delegate == null)
+      efl_text_font_set_static_delegate = new efl_text_font_set_delegate(font_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_set_static_delegate)});
+      if (efl_text_font_source_get_static_delegate == null)
+      efl_text_font_source_get_static_delegate = new efl_text_font_source_get_delegate(font_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_get_static_delegate)});
+      if (efl_text_font_source_set_static_delegate == null)
+      efl_text_font_source_set_static_delegate = new efl_text_font_source_set_delegate(font_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_set_static_delegate)});
+      if (efl_text_font_fallbacks_get_static_delegate == null)
+      efl_text_font_fallbacks_get_static_delegate = new efl_text_font_fallbacks_get_delegate(font_fallbacks_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_get_static_delegate)});
+      if (efl_text_font_fallbacks_set_static_delegate == null)
+      efl_text_font_fallbacks_set_static_delegate = new efl_text_font_fallbacks_set_delegate(font_fallbacks_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_set_static_delegate)});
+      if (efl_text_font_weight_get_static_delegate == null)
+      efl_text_font_weight_get_static_delegate = new efl_text_font_weight_get_delegate(font_weight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_get_static_delegate)});
+      if (efl_text_font_weight_set_static_delegate == null)
+      efl_text_font_weight_set_static_delegate = new efl_text_font_weight_set_delegate(font_weight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_set_static_delegate)});
+      if (efl_text_font_slant_get_static_delegate == null)
+      efl_text_font_slant_get_static_delegate = new efl_text_font_slant_get_delegate(font_slant_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_get_static_delegate)});
+      if (efl_text_font_slant_set_static_delegate == null)
+      efl_text_font_slant_set_static_delegate = new efl_text_font_slant_set_delegate(font_slant_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_set_static_delegate)});
+      if (efl_text_font_width_get_static_delegate == null)
+      efl_text_font_width_get_static_delegate = new efl_text_font_width_get_delegate(font_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_get_static_delegate)});
+      if (efl_text_font_width_set_static_delegate == null)
+      efl_text_font_width_set_static_delegate = new efl_text_font_width_set_delegate(font_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_set_static_delegate)});
+      if (efl_text_font_lang_get_static_delegate == null)
+      efl_text_font_lang_get_static_delegate = new efl_text_font_lang_get_delegate(font_lang_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_get_static_delegate)});
+      if (efl_text_font_lang_set_static_delegate == null)
+      efl_text_font_lang_set_static_delegate = new efl_text_font_lang_set_delegate(font_lang_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_set_static_delegate)});
+      if (efl_text_font_bitmap_scalable_get_static_delegate == null)
+      efl_text_font_bitmap_scalable_get_static_delegate = new efl_text_font_bitmap_scalable_get_delegate(font_bitmap_scalable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_get_static_delegate)});
+      if (efl_text_font_bitmap_scalable_set_static_delegate == null)
+      efl_text_font_bitmap_scalable_set_static_delegate = new efl_text_font_bitmap_scalable_set_delegate(font_bitmap_scalable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_set_static_delegate)});
+      if (efl_text_ellipsis_get_static_delegate == null)
+      efl_text_ellipsis_get_static_delegate = new efl_text_ellipsis_get_delegate(ellipsis_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_get_static_delegate)});
+      if (efl_text_ellipsis_set_static_delegate == null)
+      efl_text_ellipsis_set_static_delegate = new efl_text_ellipsis_set_delegate(ellipsis_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_set_static_delegate)});
+      if (efl_text_wrap_get_static_delegate == null)
+      efl_text_wrap_get_static_delegate = new efl_text_wrap_get_delegate(wrap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_get_static_delegate)});
+      if (efl_text_wrap_set_static_delegate == null)
+      efl_text_wrap_set_static_delegate = new efl_text_wrap_set_delegate(wrap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_set_static_delegate)});
+      if (efl_text_multiline_get_static_delegate == null)
+      efl_text_multiline_get_static_delegate = new efl_text_multiline_get_delegate(multiline_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_get_static_delegate)});
+      if (efl_text_multiline_set_static_delegate == null)
+      efl_text_multiline_set_static_delegate = new efl_text_multiline_set_delegate(multiline_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_set_static_delegate)});
+      if (efl_text_halign_auto_type_get_static_delegate == null)
+      efl_text_halign_auto_type_get_static_delegate = new efl_text_halign_auto_type_get_delegate(halign_auto_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_get_static_delegate)});
+      if (efl_text_halign_auto_type_set_static_delegate == null)
+      efl_text_halign_auto_type_set_static_delegate = new efl_text_halign_auto_type_set_delegate(halign_auto_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_set_static_delegate)});
+      if (efl_text_halign_get_static_delegate == null)
+      efl_text_halign_get_static_delegate = new efl_text_halign_get_delegate(halign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_get_static_delegate)});
+      if (efl_text_halign_set_static_delegate == null)
+      efl_text_halign_set_static_delegate = new efl_text_halign_set_delegate(halign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_set_static_delegate)});
+      if (efl_text_valign_get_static_delegate == null)
+      efl_text_valign_get_static_delegate = new efl_text_valign_get_delegate(valign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_get_static_delegate)});
+      if (efl_text_valign_set_static_delegate == null)
+      efl_text_valign_set_static_delegate = new efl_text_valign_set_delegate(valign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_set_static_delegate)});
+      if (efl_text_linegap_get_static_delegate == null)
+      efl_text_linegap_get_static_delegate = new efl_text_linegap_get_delegate(linegap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_get_static_delegate)});
+      if (efl_text_linegap_set_static_delegate == null)
+      efl_text_linegap_set_static_delegate = new efl_text_linegap_set_delegate(linegap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_set_static_delegate)});
+      if (efl_text_linerelgap_get_static_delegate == null)
+      efl_text_linerelgap_get_static_delegate = new efl_text_linerelgap_get_delegate(linerelgap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_get_static_delegate)});
+      if (efl_text_linerelgap_set_static_delegate == null)
+      efl_text_linerelgap_set_static_delegate = new efl_text_linerelgap_set_delegate(linerelgap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_set_static_delegate)});
+      if (efl_text_tabstops_get_static_delegate == null)
+      efl_text_tabstops_get_static_delegate = new efl_text_tabstops_get_delegate(tabstops_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_get_static_delegate)});
+      if (efl_text_tabstops_set_static_delegate == null)
+      efl_text_tabstops_set_static_delegate = new efl_text_tabstops_set_delegate(tabstops_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_set_static_delegate)});
+      if (efl_text_password_get_static_delegate == null)
+      efl_text_password_get_static_delegate = new efl_text_password_get_delegate(password_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_get_static_delegate)});
+      if (efl_text_password_set_static_delegate == null)
+      efl_text_password_set_static_delegate = new efl_text_password_set_delegate(password_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_set_static_delegate)});
+      if (efl_text_replacement_char_get_static_delegate == null)
+      efl_text_replacement_char_get_static_delegate = new efl_text_replacement_char_get_delegate(replacement_char_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_get_static_delegate)});
+      if (efl_text_replacement_char_set_static_delegate == null)
+      efl_text_replacement_char_set_static_delegate = new efl_text_replacement_char_set_delegate(replacement_char_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_set_static_delegate)});
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      if (efl_text_markup_interactive_markup_range_get_static_delegate == null)
+      efl_text_markup_interactive_markup_range_get_static_delegate = new efl_text_markup_interactive_markup_range_get_delegate(markup_range_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_interactive_markup_range_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_interactive_markup_range_get_static_delegate)});
+      if (efl_text_markup_interactive_markup_range_set_static_delegate == null)
+      efl_text_markup_interactive_markup_range_set_static_delegate = new efl_text_markup_interactive_markup_range_set_delegate(markup_range_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_interactive_markup_range_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_interactive_markup_range_set_static_delegate)});
+      if (efl_text_markup_interactive_cursor_markup_insert_static_delegate == null)
+      efl_text_markup_interactive_cursor_markup_insert_static_delegate = new efl_text_markup_interactive_cursor_markup_insert_delegate(cursor_markup_insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_interactive_cursor_markup_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_interactive_cursor_markup_insert_static_delegate)});
+      if (efl_text_normal_color_get_static_delegate == null)
+      efl_text_normal_color_get_static_delegate = new efl_text_normal_color_get_delegate(normal_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_get_static_delegate)});
+      if (efl_text_normal_color_set_static_delegate == null)
+      efl_text_normal_color_set_static_delegate = new efl_text_normal_color_set_delegate(normal_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_set_static_delegate)});
+      if (efl_text_backing_type_get_static_delegate == null)
+      efl_text_backing_type_get_static_delegate = new efl_text_backing_type_get_delegate(backing_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_get_static_delegate)});
+      if (efl_text_backing_type_set_static_delegate == null)
+      efl_text_backing_type_set_static_delegate = new efl_text_backing_type_set_delegate(backing_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_set_static_delegate)});
+      if (efl_text_backing_color_get_static_delegate == null)
+      efl_text_backing_color_get_static_delegate = new efl_text_backing_color_get_delegate(backing_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_get_static_delegate)});
+      if (efl_text_backing_color_set_static_delegate == null)
+      efl_text_backing_color_set_static_delegate = new efl_text_backing_color_set_delegate(backing_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_set_static_delegate)});
+      if (efl_text_underline_type_get_static_delegate == null)
+      efl_text_underline_type_get_static_delegate = new efl_text_underline_type_get_delegate(underline_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_get_static_delegate)});
+      if (efl_text_underline_type_set_static_delegate == null)
+      efl_text_underline_type_set_static_delegate = new efl_text_underline_type_set_delegate(underline_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_set_static_delegate)});
+      if (efl_text_underline_color_get_static_delegate == null)
+      efl_text_underline_color_get_static_delegate = new efl_text_underline_color_get_delegate(underline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_get_static_delegate)});
+      if (efl_text_underline_color_set_static_delegate == null)
+      efl_text_underline_color_set_static_delegate = new efl_text_underline_color_set_delegate(underline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_set_static_delegate)});
+      if (efl_text_underline_height_get_static_delegate == null)
+      efl_text_underline_height_get_static_delegate = new efl_text_underline_height_get_delegate(underline_height_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_get_static_delegate)});
+      if (efl_text_underline_height_set_static_delegate == null)
+      efl_text_underline_height_set_static_delegate = new efl_text_underline_height_set_delegate(underline_height_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_set_static_delegate)});
+      if (efl_text_underline_dashed_color_get_static_delegate == null)
+      efl_text_underline_dashed_color_get_static_delegate = new efl_text_underline_dashed_color_get_delegate(underline_dashed_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_get_static_delegate)});
+      if (efl_text_underline_dashed_color_set_static_delegate == null)
+      efl_text_underline_dashed_color_set_static_delegate = new efl_text_underline_dashed_color_set_delegate(underline_dashed_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_set_static_delegate)});
+      if (efl_text_underline_dashed_width_get_static_delegate == null)
+      efl_text_underline_dashed_width_get_static_delegate = new efl_text_underline_dashed_width_get_delegate(underline_dashed_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_get_static_delegate)});
+      if (efl_text_underline_dashed_width_set_static_delegate == null)
+      efl_text_underline_dashed_width_set_static_delegate = new efl_text_underline_dashed_width_set_delegate(underline_dashed_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_set_static_delegate)});
+      if (efl_text_underline_dashed_gap_get_static_delegate == null)
+      efl_text_underline_dashed_gap_get_static_delegate = new efl_text_underline_dashed_gap_get_delegate(underline_dashed_gap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_get_static_delegate)});
+      if (efl_text_underline_dashed_gap_set_static_delegate == null)
+      efl_text_underline_dashed_gap_set_static_delegate = new efl_text_underline_dashed_gap_set_delegate(underline_dashed_gap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_set_static_delegate)});
+      if (efl_text_underline2_color_get_static_delegate == null)
+      efl_text_underline2_color_get_static_delegate = new efl_text_underline2_color_get_delegate(underline2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_get_static_delegate)});
+      if (efl_text_underline2_color_set_static_delegate == null)
+      efl_text_underline2_color_set_static_delegate = new efl_text_underline2_color_set_delegate(underline2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_set_static_delegate)});
+      if (efl_text_strikethrough_type_get_static_delegate == null)
+      efl_text_strikethrough_type_get_static_delegate = new efl_text_strikethrough_type_get_delegate(strikethrough_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_get_static_delegate)});
+      if (efl_text_strikethrough_type_set_static_delegate == null)
+      efl_text_strikethrough_type_set_static_delegate = new efl_text_strikethrough_type_set_delegate(strikethrough_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_set_static_delegate)});
+      if (efl_text_strikethrough_color_get_static_delegate == null)
+      efl_text_strikethrough_color_get_static_delegate = new efl_text_strikethrough_color_get_delegate(strikethrough_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_get_static_delegate)});
+      if (efl_text_strikethrough_color_set_static_delegate == null)
+      efl_text_strikethrough_color_set_static_delegate = new efl_text_strikethrough_color_set_delegate(strikethrough_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_set_static_delegate)});
+      if (efl_text_effect_type_get_static_delegate == null)
+      efl_text_effect_type_get_static_delegate = new efl_text_effect_type_get_delegate(effect_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_get_static_delegate)});
+      if (efl_text_effect_type_set_static_delegate == null)
+      efl_text_effect_type_set_static_delegate = new efl_text_effect_type_set_delegate(effect_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_set_static_delegate)});
+      if (efl_text_outline_color_get_static_delegate == null)
+      efl_text_outline_color_get_static_delegate = new efl_text_outline_color_get_delegate(outline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_get_static_delegate)});
+      if (efl_text_outline_color_set_static_delegate == null)
+      efl_text_outline_color_set_static_delegate = new efl_text_outline_color_set_delegate(outline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_set_static_delegate)});
+      if (efl_text_shadow_direction_get_static_delegate == null)
+      efl_text_shadow_direction_get_static_delegate = new efl_text_shadow_direction_get_delegate(shadow_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_get_static_delegate)});
+      if (efl_text_shadow_direction_set_static_delegate == null)
+      efl_text_shadow_direction_set_static_delegate = new efl_text_shadow_direction_set_delegate(shadow_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_set_static_delegate)});
+      if (efl_text_shadow_color_get_static_delegate == null)
+      efl_text_shadow_color_get_static_delegate = new efl_text_shadow_color_get_delegate(shadow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_get_static_delegate)});
+      if (efl_text_shadow_color_set_static_delegate == null)
+      efl_text_shadow_color_set_static_delegate = new efl_text_shadow_color_set_delegate(shadow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_set_static_delegate)});
+      if (efl_text_glow_color_get_static_delegate == null)
+      efl_text_glow_color_get_static_delegate = new efl_text_glow_color_get_delegate(glow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_get_static_delegate)});
+      if (efl_text_glow_color_set_static_delegate == null)
+      efl_text_glow_color_set_static_delegate = new efl_text_glow_color_set_delegate(glow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_set_static_delegate)});
+      if (efl_text_glow2_color_get_static_delegate == null)
+      efl_text_glow2_color_get_static_delegate = new efl_text_glow2_color_get_delegate(glow2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_get_static_delegate)});
+      if (efl_text_glow2_color_set_static_delegate == null)
+      efl_text_glow2_color_set_static_delegate = new efl_text_glow2_color_set_delegate(glow2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_set_static_delegate)});
+      if (efl_text_gfx_filter_get_static_delegate == null)
+      efl_text_gfx_filter_get_static_delegate = new efl_text_gfx_filter_get_delegate(gfx_filter_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_get_static_delegate)});
+      if (efl_text_gfx_filter_set_static_delegate == null)
+      efl_text_gfx_filter_set_static_delegate = new efl_text_gfx_filter_set_delegate(gfx_filter_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.LayoutPartText.efl_canvas_layout_part_text_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.LayoutPartText.efl_canvas_layout_part_text_class_get();
+   }
+
+
+    private delegate Efl.Canvas.LayoutPartTextExpand efl_canvas_layout_part_text_expand_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Canvas.LayoutPartTextExpand efl_canvas_layout_part_text_expand_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_expand_get_api_delegate> efl_canvas_layout_part_text_expand_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_expand_get_api_delegate>(_Module, "efl_canvas_layout_part_text_expand_get");
+    private static Efl.Canvas.LayoutPartTextExpand text_expand_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_expand_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.LayoutPartTextExpand _ret_var = default(Efl.Canvas.LayoutPartTextExpand);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetTextExpand();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_layout_part_text_expand_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_layout_part_text_expand_get_delegate efl_canvas_layout_part_text_expand_get_static_delegate;
+
+
+    private delegate  void efl_canvas_layout_part_text_expand_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Canvas.LayoutPartTextExpand type);
+
+
+    public delegate  void efl_canvas_layout_part_text_expand_set_api_delegate(System.IntPtr obj,   Efl.Canvas.LayoutPartTextExpand type);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_expand_set_api_delegate> efl_canvas_layout_part_text_expand_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_layout_part_text_expand_set_api_delegate>(_Module, "efl_canvas_layout_part_text_expand_set");
+    private static  void text_expand_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.LayoutPartTextExpand type)
+   {
+      Eina.Log.Debug("function efl_canvas_layout_part_text_expand_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetTextExpand( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_layout_part_text_expand_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_canvas_layout_part_text_expand_set_delegate efl_canvas_layout_part_text_expand_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    private delegate Efl.TextCursorCursor efl_text_cursor_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorGetType get_type);
+
+
+    public delegate Efl.TextCursorCursor efl_text_cursor_get_api_delegate(System.IntPtr obj,   Efl.TextCursorGetType get_type);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_get_api_delegate> efl_text_cursor_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_get_api_delegate>(_Module, "efl_text_cursor_get");
+    private static Efl.TextCursorCursor text_cursor_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorGetType get_type)
+   {
+      Eina.Log.Debug("function efl_text_cursor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.TextCursorCursor _ret_var = default(Efl.TextCursorCursor);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetTextCursor( get_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  get_type);
+      }
+   }
+   private static efl_text_cursor_get_delegate efl_text_cursor_get_static_delegate;
+
+
+    private delegate  int efl_text_cursor_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  int efl_text_cursor_position_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_position_get_api_delegate> efl_text_cursor_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_position_get_api_delegate>(_Module, "efl_text_cursor_position_get");
+    private static  int cursor_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetCursorPosition( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_position_get_delegate efl_text_cursor_position_get_static_delegate;
+
+
+    private delegate  void efl_text_cursor_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int position);
+
+
+    public delegate  void efl_text_cursor_position_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int position);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_position_set_api_delegate> efl_text_cursor_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_position_set_api_delegate>(_Module, "efl_text_cursor_position_set");
+    private static  void cursor_position_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int position)
+   {
+      Eina.Log.Debug("function efl_text_cursor_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartText)wrapper).SetCursorPosition( cur,  position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  position);
+      }
+   }
+   private static efl_text_cursor_position_set_delegate efl_text_cursor_position_set_static_delegate;
+
+
+    private delegate Eina.Unicode efl_text_cursor_content_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate Eina.Unicode efl_text_cursor_content_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_content_get_api_delegate> efl_text_cursor_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_content_get_api_delegate>(_Module, "efl_text_cursor_content_get");
+    private static Eina.Unicode cursor_content_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Unicode _ret_var = default(Eina.Unicode);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetCursorContent( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_content_get_delegate efl_text_cursor_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_cursor_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,   Efl.TextCursorType ctype,   out  int cx,   out  int cy,   out  int cw,   out  int ch,   out  int cx2,   out  int cy2,   out  int cw2,   out  int ch2);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_cursor_geometry_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,   Efl.TextCursorType ctype,   out  int cx,   out  int cy,   out  int cw,   out  int ch,   out  int cx2,   out  int cy2,   out  int cw2,   out  int ch2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_geometry_get_api_delegate> efl_text_cursor_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_geometry_get_api_delegate>(_Module, "efl_text_cursor_geometry_get");
+    private static bool cursor_geometry_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,  Efl.TextCursorType ctype,  out  int cx,  out  int cy,  out  int cw,  out  int ch,  out  int cx2,  out  int cy2,  out  int cw2,  out  int ch2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                       cx = default( int);      cy = default( int);      cw = default( int);      ch = default( int);      cx2 = default( int);      cy2 = default( int);      cw2 = default( int);      ch2 = default( int);                                                                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetCursorGeometry( cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                              return _ret_var;
+      } else {
+         return efl_text_cursor_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+      }
+   }
+   private static efl_text_cursor_geometry_get_delegate efl_text_cursor_geometry_get_static_delegate;
+
+
+    private delegate Efl.TextCursorCursor efl_text_cursor_new_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextCursorCursor efl_text_cursor_new_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_new_api_delegate> efl_text_cursor_new_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_new_api_delegate>(_Module, "efl_text_cursor_new");
+    private static Efl.TextCursorCursor cursor_new(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_cursor_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextCursorCursor _ret_var = default(Efl.TextCursorCursor);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).NewCursor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_cursor_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_cursor_new_delegate efl_text_cursor_new_static_delegate;
+
+
+    private delegate  void efl_text_cursor_free_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_free_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_free_api_delegate> efl_text_cursor_free_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_free_api_delegate>(_Module, "efl_text_cursor_free");
+    private static  void cursor_free(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_free was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorFree( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_free_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_free_delegate efl_text_cursor_free_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_cursor_equal_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_cursor_equal_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_equal_api_delegate> efl_text_cursor_equal_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_equal_api_delegate>(_Module, "efl_text_cursor_equal");
+    private static bool cursor_equal(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_equal was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).CursorEqual( cur1,  cur2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_equal_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur1,  cur2);
+      }
+   }
+   private static efl_text_cursor_equal_delegate efl_text_cursor_equal_static_delegate;
+
+
+    private delegate  int efl_text_cursor_compare_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+
+
+    public delegate  int efl_text_cursor_compare_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_compare_api_delegate> efl_text_cursor_compare_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_compare_api_delegate>(_Module, "efl_text_cursor_compare");
+    private static  int cursor_compare(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_compare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).CursorCompare( cur1,  cur2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_compare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur1,  cur2);
+      }
+   }
+   private static efl_text_cursor_compare_delegate efl_text_cursor_compare_static_delegate;
+
+
+    private delegate  void efl_text_cursor_copy_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor dst,   Efl.TextCursorCursor src);
+
+
+    public delegate  void efl_text_cursor_copy_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor dst,   Efl.TextCursorCursor src);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_copy_api_delegate> efl_text_cursor_copy_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_copy_api_delegate>(_Module, "efl_text_cursor_copy");
+    private static  void cursor_copy(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor dst,  Efl.TextCursorCursor src)
+   {
+      Eina.Log.Debug("function efl_text_cursor_copy was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartText)wrapper).CursorCopy( dst,  src);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_copy_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dst,  src);
+      }
+   }
+   private static efl_text_cursor_copy_delegate efl_text_cursor_copy_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_next_api_delegate> efl_text_cursor_char_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_next_api_delegate>(_Module, "efl_text_cursor_char_next");
+    private static  void cursor_char_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorCharNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_next_delegate efl_text_cursor_char_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_prev_api_delegate> efl_text_cursor_char_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_prev_api_delegate>(_Module, "efl_text_cursor_char_prev");
+    private static  void cursor_char_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorCharPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_prev_delegate efl_text_cursor_char_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_cluster_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_next_api_delegate> efl_text_cursor_cluster_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_next_api_delegate>(_Module, "efl_text_cursor_cluster_next");
+    private static  void cursor_cluster_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorClusterNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_cluster_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_cluster_next_delegate efl_text_cursor_cluster_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_cluster_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_prev_api_delegate> efl_text_cursor_cluster_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_prev_api_delegate>(_Module, "efl_text_cursor_cluster_prev");
+    private static  void cursor_cluster_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorClusterPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_cluster_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_cluster_prev_delegate efl_text_cursor_cluster_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_char_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_char_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_first_api_delegate> efl_text_cursor_paragraph_char_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_first_api_delegate>(_Module, "efl_text_cursor_paragraph_char_first");
+    private static  void cursor_paragraph_char_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_char_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorParagraphCharFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_char_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_char_first_delegate efl_text_cursor_paragraph_char_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_char_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_char_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_last_api_delegate> efl_text_cursor_paragraph_char_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_last_api_delegate>(_Module, "efl_text_cursor_paragraph_char_last");
+    private static  void cursor_paragraph_char_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_char_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorParagraphCharLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_char_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_char_last_delegate efl_text_cursor_paragraph_char_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_word_start_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_word_start_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_word_start_api_delegate> efl_text_cursor_word_start_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_word_start_api_delegate>(_Module, "efl_text_cursor_word_start");
+    private static  void cursor_word_start(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_word_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorWordStart( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_word_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_word_start_delegate efl_text_cursor_word_start_static_delegate;
+
+
+    private delegate  void efl_text_cursor_word_end_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_word_end_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_word_end_api_delegate> efl_text_cursor_word_end_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_word_end_api_delegate>(_Module, "efl_text_cursor_word_end");
+    private static  void cursor_word_end(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_word_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorWordEnd( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_word_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_word_end_delegate efl_text_cursor_word_end_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_char_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_line_char_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_first_api_delegate> efl_text_cursor_line_char_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_first_api_delegate>(_Module, "efl_text_cursor_line_char_first");
+    private static  void cursor_line_char_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_char_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorLineCharFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_line_char_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_line_char_first_delegate efl_text_cursor_line_char_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_char_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_line_char_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_last_api_delegate> efl_text_cursor_line_char_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_last_api_delegate>(_Module, "efl_text_cursor_line_char_last");
+    private static  void cursor_line_char_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_char_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorLineCharLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_line_char_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_line_char_last_delegate efl_text_cursor_line_char_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_first_api_delegate> efl_text_cursor_paragraph_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_first_api_delegate>(_Module, "efl_text_cursor_paragraph_first");
+    private static  void cursor_paragraph_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorParagraphFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_first_delegate efl_text_cursor_paragraph_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_last_api_delegate> efl_text_cursor_paragraph_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_last_api_delegate>(_Module, "efl_text_cursor_paragraph_last");
+    private static  void cursor_paragraph_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorParagraphLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_last_delegate efl_text_cursor_paragraph_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_next_api_delegate> efl_text_cursor_paragraph_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_next_api_delegate>(_Module, "efl_text_cursor_paragraph_next");
+    private static  void cursor_paragraph_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorParagraphNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_next_delegate efl_text_cursor_paragraph_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_prev_api_delegate> efl_text_cursor_paragraph_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_prev_api_delegate>(_Module, "efl_text_cursor_paragraph_prev");
+    private static  void cursor_paragraph_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorParagraphPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_prev_delegate efl_text_cursor_paragraph_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_jump_by_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int by);
+
+
+    public delegate  void efl_text_cursor_line_jump_by_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int by);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_jump_by_api_delegate> efl_text_cursor_line_jump_by_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_jump_by_api_delegate>(_Module, "efl_text_cursor_line_jump_by");
+    private static  void cursor_line_jump_by(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int by)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_jump_by was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartText)wrapper).CursorLineJumpBy( cur,  by);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_line_jump_by_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  by);
+      }
+   }
+   private static efl_text_cursor_line_jump_by_delegate efl_text_cursor_line_jump_by_static_delegate;
+
+
+    private delegate  void efl_text_cursor_coord_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int x,    int y);
+
+
+    public delegate  void efl_text_cursor_coord_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_coord_set_api_delegate> efl_text_cursor_coord_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_coord_set_api_delegate>(_Module, "efl_text_cursor_coord_set");
+    private static  void cursor_coord_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_text_cursor_coord_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutPartText)wrapper).SetCursorCoord( cur,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_cursor_coord_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  x,  y);
+      }
+   }
+   private static efl_text_cursor_coord_set_delegate efl_text_cursor_coord_set_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_coord_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int x,    int y);
+
+
+    public delegate  void efl_text_cursor_cluster_coord_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_coord_set_api_delegate> efl_text_cursor_cluster_coord_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_coord_set_api_delegate>(_Module, "efl_text_cursor_cluster_coord_set");
+    private static  void cursor_cluster_coord_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_coord_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutPartText)wrapper).SetCursorClusterCoord( cur,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_cursor_cluster_coord_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  x,  y);
+      }
+   }
+   private static efl_text_cursor_cluster_coord_set_delegate efl_text_cursor_cluster_coord_set_static_delegate;
+
+
+    private delegate  int efl_text_cursor_text_insert_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  int efl_text_cursor_text_insert_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_text_insert_api_delegate> efl_text_cursor_text_insert_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_text_insert_api_delegate>(_Module, "efl_text_cursor_text_insert");
+    private static  int cursor_text_insert(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_cursor_text_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).CursorTextInsert( cur,  text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_text_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  text);
+      }
+   }
+   private static efl_text_cursor_text_insert_delegate efl_text_cursor_text_insert_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_delete_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_delete_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_delete_api_delegate> efl_text_cursor_char_delete_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_delete_api_delegate>(_Module, "efl_text_cursor_char_delete");
+    private static  void cursor_char_delete(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_delete was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).CursorCharDelete( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_delete_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_delete_delegate efl_text_cursor_char_delete_static_delegate;
+
+
+    private delegate  void efl_text_font_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate> efl_text_font_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate>(_Module, "efl_text_font_get");
+    private static  void font_get(System.IntPtr obj, System.IntPtr pd,  out  System.String font,  out Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_font = default( System.String);
+      size = default(Efl.Font.Size);                     
+         try {
+            ((LayoutPartText)wrapper).GetFont( out _out_font,  out size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      font = _out_font;
+                              } else {
+         efl_text_font_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out font,  out size);
+      }
+   }
+   private static efl_text_font_get_delegate efl_text_font_get_static_delegate;
+
+
+    private delegate  void efl_text_font_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate> efl_text_font_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate>(_Module, "efl_text_font_set");
+    private static  void font_set(System.IntPtr obj, System.IntPtr pd,   System.String font,  Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartText)wrapper).SetFont( font,  size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_font_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font,  size);
+      }
+   }
+   private static efl_text_font_set_delegate efl_text_font_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_source_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_source_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate> efl_text_font_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate>(_Module, "efl_text_font_source_get");
+    private static  System.String font_source_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetFontSource();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_source_get_delegate efl_text_font_source_get_static_delegate;
+
+
+    private delegate  void efl_text_font_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+
+
+    public delegate  void efl_text_font_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate> efl_text_font_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate>(_Module, "efl_text_font_source_set");
+    private static  void font_source_set(System.IntPtr obj, System.IntPtr pd,   System.String font_source)
+   {
+      Eina.Log.Debug("function efl_text_font_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetFontSource( font_source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_source);
+      }
+   }
+   private static efl_text_font_source_set_delegate efl_text_font_source_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_fallbacks_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_fallbacks_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate> efl_text_font_fallbacks_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate>(_Module, "efl_text_font_fallbacks_get");
+    private static  System.String font_fallbacks_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetFontFallbacks();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_fallbacks_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_fallbacks_get_delegate efl_text_font_fallbacks_get_static_delegate;
+
+
+    private delegate  void efl_text_font_fallbacks_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+
+
+    public delegate  void efl_text_font_fallbacks_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate> efl_text_font_fallbacks_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate>(_Module, "efl_text_font_fallbacks_set");
+    private static  void font_fallbacks_set(System.IntPtr obj, System.IntPtr pd,   System.String font_fallbacks)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetFontFallbacks( font_fallbacks);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_fallbacks_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_fallbacks);
+      }
+   }
+   private static efl_text_font_fallbacks_set_delegate efl_text_font_fallbacks_set_static_delegate;
+
+
+    private delegate Efl.TextFontWeight efl_text_font_weight_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWeight efl_text_font_weight_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate> efl_text_font_weight_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate>(_Module, "efl_text_font_weight_get");
+    private static Efl.TextFontWeight font_weight_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWeight _ret_var = default(Efl.TextFontWeight);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetFontWeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_weight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_weight_get_delegate efl_text_font_weight_get_static_delegate;
+
+
+    private delegate  void efl_text_font_weight_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWeight font_weight);
+
+
+    public delegate  void efl_text_font_weight_set_api_delegate(System.IntPtr obj,   Efl.TextFontWeight font_weight);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate> efl_text_font_weight_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate>(_Module, "efl_text_font_weight_set");
+    private static  void font_weight_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWeight font_weight)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetFontWeight( font_weight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_weight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_weight);
+      }
+   }
+   private static efl_text_font_weight_set_delegate efl_text_font_weight_set_static_delegate;
+
+
+    private delegate Efl.TextFontSlant efl_text_font_slant_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontSlant efl_text_font_slant_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate> efl_text_font_slant_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate>(_Module, "efl_text_font_slant_get");
+    private static Efl.TextFontSlant font_slant_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontSlant _ret_var = default(Efl.TextFontSlant);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetFontSlant();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_slant_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_slant_get_delegate efl_text_font_slant_get_static_delegate;
+
+
+    private delegate  void efl_text_font_slant_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontSlant style);
+
+
+    public delegate  void efl_text_font_slant_set_api_delegate(System.IntPtr obj,   Efl.TextFontSlant style);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate> efl_text_font_slant_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate>(_Module, "efl_text_font_slant_set");
+    private static  void font_slant_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontSlant style)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetFontSlant( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_slant_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_text_font_slant_set_delegate efl_text_font_slant_set_static_delegate;
+
+
+    private delegate Efl.TextFontWidth efl_text_font_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWidth efl_text_font_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate> efl_text_font_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate>(_Module, "efl_text_font_width_get");
+    private static Efl.TextFontWidth font_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWidth _ret_var = default(Efl.TextFontWidth);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetFontWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_width_get_delegate efl_text_font_width_get_static_delegate;
+
+
+    private delegate  void efl_text_font_width_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWidth width);
+
+
+    public delegate  void efl_text_font_width_set_api_delegate(System.IntPtr obj,   Efl.TextFontWidth width);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate> efl_text_font_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate>(_Module, "efl_text_font_width_set");
+    private static  void font_width_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWidth width)
+   {
+      Eina.Log.Debug("function efl_text_font_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetFontWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_font_width_set_delegate efl_text_font_width_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_lang_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_lang_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate> efl_text_font_lang_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate>(_Module, "efl_text_font_lang_get");
+    private static  System.String font_lang_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetFontLang();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_lang_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_lang_get_delegate efl_text_font_lang_get_static_delegate;
+
+
+    private delegate  void efl_text_font_lang_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+
+
+    public delegate  void efl_text_font_lang_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate> efl_text_font_lang_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate>(_Module, "efl_text_font_lang_set");
+    private static  void font_lang_set(System.IntPtr obj, System.IntPtr pd,   System.String lang)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetFontLang( lang);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_lang_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  lang);
+      }
+   }
+   private static efl_text_font_lang_set_delegate efl_text_font_lang_set_static_delegate;
+
+
+    private delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate> efl_text_font_bitmap_scalable_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate>(_Module, "efl_text_font_bitmap_scalable_get");
+    private static Efl.TextFontBitmapScalable font_bitmap_scalable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontBitmapScalable _ret_var = default(Efl.TextFontBitmapScalable);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetFontBitmapScalable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_bitmap_scalable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_bitmap_scalable_get_delegate efl_text_font_bitmap_scalable_get_static_delegate;
+
+
+    private delegate  void efl_text_font_bitmap_scalable_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontBitmapScalable scalable);
+
+
+    public delegate  void efl_text_font_bitmap_scalable_set_api_delegate(System.IntPtr obj,   Efl.TextFontBitmapScalable scalable);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate> efl_text_font_bitmap_scalable_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate>(_Module, "efl_text_font_bitmap_scalable_set");
+    private static  void font_bitmap_scalable_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontBitmapScalable scalable)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetFontBitmapScalable( scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_bitmap_scalable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scalable);
+      }
+   }
+   private static efl_text_font_bitmap_scalable_set_delegate efl_text_font_bitmap_scalable_set_static_delegate;
+
+
+    private delegate double efl_text_ellipsis_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_ellipsis_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate> efl_text_ellipsis_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate>(_Module, "efl_text_ellipsis_get");
+    private static double ellipsis_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetEllipsis();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_ellipsis_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_ellipsis_get_delegate efl_text_ellipsis_get_static_delegate;
+
+
+    private delegate  void efl_text_ellipsis_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_ellipsis_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate> efl_text_ellipsis_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate>(_Module, "efl_text_ellipsis_set");
+    private static  void ellipsis_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetEllipsis( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_ellipsis_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_ellipsis_set_delegate efl_text_ellipsis_set_static_delegate;
+
+
+    private delegate Efl.TextFormatWrap efl_text_wrap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatWrap efl_text_wrap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate> efl_text_wrap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate>(_Module, "efl_text_wrap_get");
+    private static Efl.TextFormatWrap wrap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_wrap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatWrap _ret_var = default(Efl.TextFormatWrap);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetWrap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_wrap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_wrap_get_delegate efl_text_wrap_get_static_delegate;
+
+
+    private delegate  void efl_text_wrap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatWrap wrap);
+
+
+    public delegate  void efl_text_wrap_set_api_delegate(System.IntPtr obj,   Efl.TextFormatWrap wrap);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate> efl_text_wrap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate>(_Module, "efl_text_wrap_set");
+    private static  void wrap_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatWrap wrap)
+   {
+      Eina.Log.Debug("function efl_text_wrap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetWrap( wrap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_wrap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  wrap);
+      }
+   }
+   private static efl_text_wrap_set_delegate efl_text_wrap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_multiline_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_multiline_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate> efl_text_multiline_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate>(_Module, "efl_text_multiline_get");
+    private static bool multiline_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_multiline_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetMultiline();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_multiline_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_multiline_get_delegate efl_text_multiline_get_static_delegate;
+
+
+    private delegate  void efl_text_multiline_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_multiline_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate> efl_text_multiline_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate>(_Module, "efl_text_multiline_set");
+    private static  void multiline_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_multiline_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetMultiline( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_multiline_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_multiline_set_delegate efl_text_multiline_set_static_delegate;
+
+
+    private delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate> efl_text_halign_auto_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate>(_Module, "efl_text_halign_auto_type_get");
+    private static Efl.TextFormatHorizontalAlignmentAutoType halign_auto_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatHorizontalAlignmentAutoType _ret_var = default(Efl.TextFormatHorizontalAlignmentAutoType);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetHalignAutoType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_auto_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_auto_type_get_delegate efl_text_halign_auto_type_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_auto_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatHorizontalAlignmentAutoType value);
+
+
+    public delegate  void efl_text_halign_auto_type_set_api_delegate(System.IntPtr obj,   Efl.TextFormatHorizontalAlignmentAutoType value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate> efl_text_halign_auto_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate>(_Module, "efl_text_halign_auto_type_set");
+    private static  void halign_auto_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatHorizontalAlignmentAutoType value)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetHalignAutoType( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_auto_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_auto_type_set_delegate efl_text_halign_auto_type_set_static_delegate;
+
+
+    private delegate double efl_text_halign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_halign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate> efl_text_halign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate>(_Module, "efl_text_halign_get");
+    private static double halign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetHalign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_get_delegate efl_text_halign_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_halign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate> efl_text_halign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate>(_Module, "efl_text_halign_set");
+    private static  void halign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_halign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetHalign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_set_delegate efl_text_halign_set_static_delegate;
+
+
+    private delegate double efl_text_valign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_valign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate> efl_text_valign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate>(_Module, "efl_text_valign_get");
+    private static double valign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_valign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetValign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_valign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_valign_get_delegate efl_text_valign_get_static_delegate;
+
+
+    private delegate  void efl_text_valign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_valign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate> efl_text_valign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate>(_Module, "efl_text_valign_set");
+    private static  void valign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_valign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetValign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_valign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_valign_set_delegate efl_text_valign_set_static_delegate;
+
+
+    private delegate double efl_text_linegap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linegap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate> efl_text_linegap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate>(_Module, "efl_text_linegap_get");
+    private static double linegap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linegap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetLinegap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linegap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linegap_get_delegate efl_text_linegap_get_static_delegate;
+
+
+    private delegate  void efl_text_linegap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linegap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate> efl_text_linegap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate>(_Module, "efl_text_linegap_set");
+    private static  void linegap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linegap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetLinegap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linegap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linegap_set_delegate efl_text_linegap_set_static_delegate;
+
+
+    private delegate double efl_text_linerelgap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linerelgap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate> efl_text_linerelgap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate>(_Module, "efl_text_linerelgap_get");
+    private static double linerelgap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetLinerelgap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linerelgap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linerelgap_get_delegate efl_text_linerelgap_get_static_delegate;
+
+
+    private delegate  void efl_text_linerelgap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linerelgap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate> efl_text_linerelgap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate>(_Module, "efl_text_linerelgap_set");
+    private static  void linerelgap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetLinerelgap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linerelgap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linerelgap_set_delegate efl_text_linerelgap_set_static_delegate;
+
+
+    private delegate  int efl_text_tabstops_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_tabstops_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate> efl_text_tabstops_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate>(_Module, "efl_text_tabstops_get");
+    private static  int tabstops_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetTabstops();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_tabstops_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_tabstops_get_delegate efl_text_tabstops_get_static_delegate;
+
+
+    private delegate  void efl_text_tabstops_set_delegate(System.IntPtr obj, System.IntPtr pd,    int value);
+
+
+    public delegate  void efl_text_tabstops_set_api_delegate(System.IntPtr obj,    int value);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate> efl_text_tabstops_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate>(_Module, "efl_text_tabstops_set");
+    private static  void tabstops_set(System.IntPtr obj, System.IntPtr pd,   int value)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetTabstops( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_tabstops_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_tabstops_set_delegate efl_text_tabstops_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_password_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_password_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate> efl_text_password_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate>(_Module, "efl_text_password_get");
+    private static bool password_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_password_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetPassword();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_password_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_password_get_delegate efl_text_password_get_static_delegate;
+
+
+    private delegate  void efl_text_password_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_password_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate> efl_text_password_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate>(_Module, "efl_text_password_set");
+    private static  void password_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_password_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetPassword( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_password_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_password_set_delegate efl_text_password_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_replacement_char_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_replacement_char_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate> efl_text_replacement_char_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate>(_Module, "efl_text_replacement_char_get");
+    private static  System.String replacement_char_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetReplacementChar();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_replacement_char_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_replacement_char_get_delegate efl_text_replacement_char_get_static_delegate;
+
+
+    private delegate  void efl_text_replacement_char_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+
+
+    public delegate  void efl_text_replacement_char_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate> efl_text_replacement_char_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate>(_Module, "efl_text_replacement_char_set");
+    private static  void replacement_char_set(System.IntPtr obj, System.IntPtr pd,   System.String repch)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetReplacementChar( repch);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_replacement_char_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repch);
+      }
+   }
+   private static efl_text_replacement_char_set_delegate efl_text_replacement_char_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_text_markup_interactive_markup_range_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_text_markup_interactive_markup_range_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_get_api_delegate> efl_text_markup_interactive_markup_range_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_get_api_delegate>(_Module, "efl_text_markup_interactive_markup_range_get");
+    private static  System.String markup_range_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end)
+   {
+      Eina.Log.Debug("function efl_text_markup_interactive_markup_range_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetMarkupRange( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_markup_interactive_markup_range_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_text_markup_interactive_markup_range_get_delegate efl_text_markup_interactive_markup_range_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_interactive_markup_range_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_interactive_markup_range_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_set_api_delegate> efl_text_markup_interactive_markup_range_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_set_api_delegate>(_Module, "efl_text_markup_interactive_markup_range_set");
+    private static  void markup_range_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_interactive_markup_range_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutPartText)wrapper).SetMarkupRange( start,  end,  markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_markup_interactive_markup_range_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end,  markup);
+      }
+   }
+   private static efl_text_markup_interactive_markup_range_set_delegate efl_text_markup_interactive_markup_range_set_static_delegate;
+
+
+    private delegate  void efl_text_markup_interactive_cursor_markup_insert_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_interactive_cursor_markup_insert_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_interactive_cursor_markup_insert_api_delegate> efl_text_markup_interactive_cursor_markup_insert_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_interactive_cursor_markup_insert_api_delegate>(_Module, "efl_text_markup_interactive_cursor_markup_insert");
+    private static  void cursor_markup_insert(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_interactive_cursor_markup_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartText)wrapper).CursorMarkupInsert( cur,  markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_markup_interactive_cursor_markup_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  markup);
+      }
+   }
+   private static efl_text_markup_interactive_cursor_markup_insert_delegate efl_text_markup_interactive_cursor_markup_insert_static_delegate;
+
+
+    private delegate  void efl_text_normal_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_normal_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate> efl_text_normal_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate>(_Module, "efl_text_normal_color_get");
+    private static  void normal_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetNormalColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_normal_color_get_delegate efl_text_normal_color_get_static_delegate;
+
+
+    private delegate  void efl_text_normal_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_normal_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate> efl_text_normal_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate>(_Module, "efl_text_normal_color_set");
+    private static  void normal_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetNormalColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_normal_color_set_delegate efl_text_normal_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleBackingType efl_text_backing_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleBackingType efl_text_backing_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate> efl_text_backing_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate>(_Module, "efl_text_backing_type_get");
+    private static Efl.TextStyleBackingType backing_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleBackingType _ret_var = default(Efl.TextStyleBackingType);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetBackingType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_backing_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_backing_type_get_delegate efl_text_backing_type_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleBackingType type);
+
+
+    public delegate  void efl_text_backing_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleBackingType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate> efl_text_backing_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate>(_Module, "efl_text_backing_type_set");
+    private static  void backing_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleBackingType type)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetBackingType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_backing_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_backing_type_set_delegate efl_text_backing_type_set_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_backing_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate> efl_text_backing_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate>(_Module, "efl_text_backing_color_get");
+    private static  void backing_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetBackingColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_backing_color_get_delegate efl_text_backing_color_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_backing_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate> efl_text_backing_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate>(_Module, "efl_text_backing_color_set");
+    private static  void backing_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetBackingColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_backing_color_set_delegate efl_text_backing_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate> efl_text_underline_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate>(_Module, "efl_text_underline_type_get");
+    private static Efl.TextStyleUnderlineType underline_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleUnderlineType _ret_var = default(Efl.TextStyleUnderlineType);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetUnderlineType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_type_get_delegate efl_text_underline_type_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleUnderlineType type);
+
+
+    public delegate  void efl_text_underline_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleUnderlineType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate> efl_text_underline_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate>(_Module, "efl_text_underline_type_set");
+    private static  void underline_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleUnderlineType type)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetUnderlineType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_underline_type_set_delegate efl_text_underline_type_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate> efl_text_underline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate>(_Module, "efl_text_underline_color_get");
+    private static  void underline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetUnderlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_color_get_delegate efl_text_underline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate> efl_text_underline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate>(_Module, "efl_text_underline_color_set");
+    private static  void underline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetUnderlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_color_set_delegate efl_text_underline_color_set_static_delegate;
+
+
+    private delegate double efl_text_underline_height_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_underline_height_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate> efl_text_underline_height_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate>(_Module, "efl_text_underline_height_get");
+    private static double underline_height_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetUnderlineHeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_height_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_height_get_delegate efl_text_underline_height_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_height_set_delegate(System.IntPtr obj, System.IntPtr pd,   double height);
+
+
+    public delegate  void efl_text_underline_height_set_api_delegate(System.IntPtr obj,   double height);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate> efl_text_underline_height_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate>(_Module, "efl_text_underline_height_set");
+    private static  void underline_height_set(System.IntPtr obj, System.IntPtr pd,  double height)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetUnderlineHeight( height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_height_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  height);
+      }
+   }
+   private static efl_text_underline_height_set_delegate efl_text_underline_height_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate> efl_text_underline_dashed_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate>(_Module, "efl_text_underline_dashed_color_get");
+    private static  void underline_dashed_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetUnderlineDashedColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_dashed_color_get_delegate efl_text_underline_dashed_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate> efl_text_underline_dashed_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate>(_Module, "efl_text_underline_dashed_color_set");
+    private static  void underline_dashed_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetUnderlineDashedColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_dashed_color_set_delegate efl_text_underline_dashed_color_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate> efl_text_underline_dashed_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate>(_Module, "efl_text_underline_dashed_width_get");
+    private static  int underline_dashed_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetUnderlineDashedWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_width_get_delegate efl_text_underline_dashed_width_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_width_set_delegate(System.IntPtr obj, System.IntPtr pd,    int width);
+
+
+    public delegate  void efl_text_underline_dashed_width_set_api_delegate(System.IntPtr obj,    int width);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate> efl_text_underline_dashed_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate>(_Module, "efl_text_underline_dashed_width_set");
+    private static  void underline_dashed_width_set(System.IntPtr obj, System.IntPtr pd,   int width)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetUnderlineDashedWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_underline_dashed_width_set_delegate efl_text_underline_dashed_width_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_gap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_gap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate> efl_text_underline_dashed_gap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate>(_Module, "efl_text_underline_dashed_gap_get");
+    private static  int underline_dashed_gap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetUnderlineDashedGap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_gap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_gap_get_delegate efl_text_underline_dashed_gap_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_gap_set_delegate(System.IntPtr obj, System.IntPtr pd,    int gap);
+
+
+    public delegate  void efl_text_underline_dashed_gap_set_api_delegate(System.IntPtr obj,    int gap);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate> efl_text_underline_dashed_gap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate>(_Module, "efl_text_underline_dashed_gap_set");
+    private static  void underline_dashed_gap_set(System.IntPtr obj, System.IntPtr pd,   int gap)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetUnderlineDashedGap( gap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_gap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gap);
+      }
+   }
+   private static efl_text_underline_dashed_gap_set_delegate efl_text_underline_dashed_gap_set_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate> efl_text_underline2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate>(_Module, "efl_text_underline2_color_get");
+    private static  void underline2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetUnderline2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline2_color_get_delegate efl_text_underline2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate> efl_text_underline2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate>(_Module, "efl_text_underline2_color_set");
+    private static  void underline2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetUnderline2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline2_color_set_delegate efl_text_underline2_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate> efl_text_strikethrough_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate>(_Module, "efl_text_strikethrough_type_get");
+    private static Efl.TextStyleStrikethroughType strikethrough_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleStrikethroughType _ret_var = default(Efl.TextStyleStrikethroughType);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetStrikethroughType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_strikethrough_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_strikethrough_type_get_delegate efl_text_strikethrough_type_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleStrikethroughType type);
+
+
+    public delegate  void efl_text_strikethrough_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleStrikethroughType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate> efl_text_strikethrough_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate>(_Module, "efl_text_strikethrough_type_set");
+    private static  void strikethrough_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleStrikethroughType type)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetStrikethroughType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_strikethrough_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_strikethrough_type_set_delegate efl_text_strikethrough_type_set_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate> efl_text_strikethrough_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate>(_Module, "efl_text_strikethrough_color_get");
+    private static  void strikethrough_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetStrikethroughColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_strikethrough_color_get_delegate efl_text_strikethrough_color_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate> efl_text_strikethrough_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate>(_Module, "efl_text_strikethrough_color_set");
+    private static  void strikethrough_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetStrikethroughColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_strikethrough_color_set_delegate efl_text_strikethrough_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleEffectType efl_text_effect_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleEffectType efl_text_effect_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate> efl_text_effect_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate>(_Module, "efl_text_effect_type_get");
+    private static Efl.TextStyleEffectType effect_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleEffectType _ret_var = default(Efl.TextStyleEffectType);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetEffectType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_effect_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_effect_type_get_delegate efl_text_effect_type_get_static_delegate;
+
+
+    private delegate  void efl_text_effect_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleEffectType type);
+
+
+    public delegate  void efl_text_effect_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleEffectType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate> efl_text_effect_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate>(_Module, "efl_text_effect_type_set");
+    private static  void effect_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleEffectType type)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetEffectType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_effect_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_effect_type_set_delegate efl_text_effect_type_set_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_outline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate> efl_text_outline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate>(_Module, "efl_text_outline_color_get");
+    private static  void outline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetOutlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_outline_color_get_delegate efl_text_outline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_outline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate> efl_text_outline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate>(_Module, "efl_text_outline_color_set");
+    private static  void outline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetOutlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_outline_color_set_delegate efl_text_outline_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate> efl_text_shadow_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate>(_Module, "efl_text_shadow_direction_get");
+    private static Efl.TextStyleShadowDirection shadow_direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleShadowDirection _ret_var = default(Efl.TextStyleShadowDirection);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetShadowDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_shadow_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_shadow_direction_get_delegate efl_text_shadow_direction_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleShadowDirection type);
+
+
+    public delegate  void efl_text_shadow_direction_set_api_delegate(System.IntPtr obj,   Efl.TextStyleShadowDirection type);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate> efl_text_shadow_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate>(_Module, "efl_text_shadow_direction_set");
+    private static  void shadow_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleShadowDirection type)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetShadowDirection( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_shadow_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_shadow_direction_set_delegate efl_text_shadow_direction_set_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_shadow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate> efl_text_shadow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate>(_Module, "efl_text_shadow_color_get");
+    private static  void shadow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetShadowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_shadow_color_get_delegate efl_text_shadow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_shadow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate> efl_text_shadow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate>(_Module, "efl_text_shadow_color_set");
+    private static  void shadow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetShadowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_shadow_color_set_delegate efl_text_shadow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate> efl_text_glow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate>(_Module, "efl_text_glow_color_get");
+    private static  void glow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetGlowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow_color_get_delegate efl_text_glow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate> efl_text_glow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate>(_Module, "efl_text_glow_color_set");
+    private static  void glow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetGlowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow_color_set_delegate efl_text_glow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate> efl_text_glow2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate>(_Module, "efl_text_glow2_color_get");
+    private static  void glow2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((LayoutPartText)wrapper).GetGlow2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow2_color_get_delegate efl_text_glow2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate> efl_text_glow2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate>(_Module, "efl_text_glow2_color_set");
+    private static  void glow2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((LayoutPartText)wrapper).SetGlow2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow2_color_set_delegate efl_text_glow2_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_gfx_filter_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_gfx_filter_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate> efl_text_gfx_filter_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate>(_Module, "efl_text_gfx_filter_get");
+    private static  System.String gfx_filter_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetGfxFilter();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_gfx_filter_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_gfx_filter_get_delegate efl_text_gfx_filter_get_static_delegate;
+
+
+    private delegate  void efl_text_gfx_filter_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+
+
+    public delegate  void efl_text_gfx_filter_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate> efl_text_gfx_filter_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate>(_Module, "efl_text_gfx_filter_set");
+    private static  void gfx_filter_set(System.IntPtr obj, System.IntPtr pd,   System.String code)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetGfxFilter( code);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_gfx_filter_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code);
+      }
+   }
+   private static efl_text_gfx_filter_set_delegate efl_text_gfx_filter_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Canvas { 
+/// <summary>Text layout policy to enforce. If none is set, min/max descriptions are taken in considerations solely.</summary>
+public enum LayoutPartTextExpand
+{
+/// <summary>No policy. Use default description parameters.</summary>
+None = 0,
+/// <summary></summary>
+MinX = 1,
+/// <summary></summary>
+MinY = 2,
+/// <summary></summary>
+MaxX = 4,
+/// <summary></summary>
+MaxY = 8,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_object.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_object.eo.cs
new file mode 100755 (executable)
index 0000000..10553b4
--- /dev/null
@@ -0,0 +1,5871 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Object.AnimatorTickEvt"/>.</summary>
+public class ObjectAnimatorTickEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.EventAnimatorTick arg { get; set; }
+}
+/// <summary>Efl canvas object abstract class</summary>
+[ObjectNativeInherit]
+public class Object : Efl.LoopConsumer, Efl.Eo.IWrapper,Efl.Canvas.Pointer,Efl.Gfx.Color,Efl.Gfx.Entity,Efl.Gfx.Hint,Efl.Gfx.Mapping,Efl.Gfx.Stack,Efl.Input.Interface,Efl.Ui.I18n
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.ObjectNativeInherit nativeInherit = new Efl.Canvas.ObjectNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Object))
+            return Efl.Canvas.ObjectNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_object_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Object(Efl.Object parent= null
+         ) :
+      base(efl_canvas_object_class_get(), typeof(Object), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Object(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Object(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Object static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Object(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object AnimatorTickEvtKey = new object();
+   /// <summary>Animator tick synchronized with screen vsync if possible.</summary>
+   public event EventHandler<Efl.Canvas.ObjectAnimatorTickEvt_Args> AnimatorTickEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_OBJECT_EVENT_ANIMATOR_TICK";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_AnimatorTickEvt_delegate)) {
+               eventHandlers.AddHandler(AnimatorTickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_OBJECT_EVENT_ANIMATOR_TICK";
+            if (remove_cpp_event_handler(key, this.evt_AnimatorTickEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnimatorTickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnimatorTickEvt.</summary>
+   public void On_AnimatorTickEvt(Efl.Canvas.ObjectAnimatorTickEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.ObjectAnimatorTickEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.ObjectAnimatorTickEvt_Args>)eventHandlers[AnimatorTickEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnimatorTickEvt_delegate;
+   private void on_AnimatorTickEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.ObjectAnimatorTickEvt_Args args = new Efl.Canvas.ObjectAnimatorTickEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_AnimatorTickEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object VisibilityChangedEvtKey = new object();
+   /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   public event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_VisibilityChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibilityChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibilityChangedEvt.</summary>
+   public void On_VisibilityChangedEvt(Efl.Gfx.EntityVisibilityChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args>)eventHandlers[VisibilityChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibilityChangedEvt_delegate;
+   private void on_VisibilityChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityVisibilityChangedEvt_Args args = new Efl.Gfx.EntityVisibilityChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_VisibilityChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(Efl.Gfx.EntityPositionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args>)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityPositionChangedEvt_Args args = new Efl.Gfx.EntityPositionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(Efl.Gfx.EntitySizeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args>)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntitySizeChangedEvt_Args args = new Efl.Gfx.EntitySizeChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object HintsChangedEvtKey = new object();
+   /// <summary>Object hints changed.</summary>
+   public event EventHandler HintsChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_HINTS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_HintsChangedEvt_delegate)) {
+               eventHandlers.AddHandler(HintsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_HINTS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_HintsChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(HintsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event HintsChangedEvt.</summary>
+   public void On_HintsChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[HintsChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_HintsChangedEvt_delegate;
+   private void on_HintsChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_HintsChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StackingChangedEvtKey = new object();
+   /// <summary>Object stacking was changed.</summary>
+   public event EventHandler StackingChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_StackingChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StackingChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StackingChangedEvt.</summary>
+   public void On_StackingChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StackingChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StackingChangedEvt_delegate;
+   private void on_StackingChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StackingChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerMoveEvtKey = new object();
+   /// <summary>Main pointer move (current and previous positions are known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerMoveEvt_Args> PointerMoveEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_MOVE";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerMoveEvt_delegate)) {
+               eventHandlers.AddHandler(PointerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_MOVE";
+            if (remove_cpp_event_handler(key, this.evt_PointerMoveEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerMoveEvt.</summary>
+   public void On_PointerMoveEvt(Efl.Input.InterfacePointerMoveEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerMoveEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerMoveEvt_Args>)eventHandlers[PointerMoveEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerMoveEvt_delegate;
+   private void on_PointerMoveEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerMoveEvt_Args args = new Efl.Input.InterfacePointerMoveEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerMoveEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerDownEvtKey = new object();
+   /// <summary>Main pointer button pressed (button id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerDownEvt_Args> PointerDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerDownEvt_delegate)) {
+               eventHandlers.AddHandler(PointerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_PointerDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerDownEvt.</summary>
+   public void On_PointerDownEvt(Efl.Input.InterfacePointerDownEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerDownEvt_Args>)eventHandlers[PointerDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerDownEvt_delegate;
+   private void on_PointerDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerDownEvt_Args args = new Efl.Input.InterfacePointerDownEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerUpEvtKey = new object();
+   /// <summary>Main pointer button released (button id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerUpEvt_Args> PointerUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_UP";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerUpEvt_delegate)) {
+               eventHandlers.AddHandler(PointerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_UP";
+            if (remove_cpp_event_handler(key, this.evt_PointerUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerUpEvt.</summary>
+   public void On_PointerUpEvt(Efl.Input.InterfacePointerUpEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerUpEvt_Args>)eventHandlers[PointerUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerUpEvt_delegate;
+   private void on_PointerUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerUpEvt_Args args = new Efl.Input.InterfacePointerUpEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerCancelEvtKey = new object();
+   /// <summary>Main pointer button press was cancelled (button id is known). This can happen in rare cases when the window manager passes the focus to a more urgent window, for instance. You probably don&apos;t need to listen to this event, as it will be accompanied by an up event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerCancelEvt_Args> PointerCancelEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_CANCEL";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerCancelEvt_delegate)) {
+               eventHandlers.AddHandler(PointerCancelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_CANCEL";
+            if (remove_cpp_event_handler(key, this.evt_PointerCancelEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerCancelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerCancelEvt.</summary>
+   public void On_PointerCancelEvt(Efl.Input.InterfacePointerCancelEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerCancelEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerCancelEvt_Args>)eventHandlers[PointerCancelEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerCancelEvt_delegate;
+   private void on_PointerCancelEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerCancelEvt_Args args = new Efl.Input.InterfacePointerCancelEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerCancelEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerInEvtKey = new object();
+   /// <summary>Pointer entered a window or a widget.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerInEvt_Args> PointerInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_IN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerInEvt_delegate)) {
+               eventHandlers.AddHandler(PointerInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_IN";
+            if (remove_cpp_event_handler(key, this.evt_PointerInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerInEvt.</summary>
+   public void On_PointerInEvt(Efl.Input.InterfacePointerInEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerInEvt_Args>)eventHandlers[PointerInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerInEvt_delegate;
+   private void on_PointerInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerInEvt_Args args = new Efl.Input.InterfacePointerInEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerOutEvtKey = new object();
+   /// <summary>Pointer left a window or a widget.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerOutEvt_Args> PointerOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_OUT";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerOutEvt_delegate)) {
+               eventHandlers.AddHandler(PointerOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_OUT";
+            if (remove_cpp_event_handler(key, this.evt_PointerOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerOutEvt.</summary>
+   public void On_PointerOutEvt(Efl.Input.InterfacePointerOutEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerOutEvt_Args>)eventHandlers[PointerOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerOutEvt_delegate;
+   private void on_PointerOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerOutEvt_Args args = new Efl.Input.InterfacePointerOutEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerWheelEvtKey = new object();
+   /// <summary>Mouse wheel event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerWheelEvt_Args> PointerWheelEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_WHEEL";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerWheelEvt_delegate)) {
+               eventHandlers.AddHandler(PointerWheelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_WHEEL";
+            if (remove_cpp_event_handler(key, this.evt_PointerWheelEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerWheelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerWheelEvt.</summary>
+   public void On_PointerWheelEvt(Efl.Input.InterfacePointerWheelEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerWheelEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerWheelEvt_Args>)eventHandlers[PointerWheelEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerWheelEvt_delegate;
+   private void on_PointerWheelEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerWheelEvt_Args args = new Efl.Input.InterfacePointerWheelEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerWheelEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerAxisEvtKey = new object();
+   /// <summary>Pen or other axis event update.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerAxisEvt_Args> PointerAxisEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_AXIS";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerAxisEvt_delegate)) {
+               eventHandlers.AddHandler(PointerAxisEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_AXIS";
+            if (remove_cpp_event_handler(key, this.evt_PointerAxisEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerAxisEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerAxisEvt.</summary>
+   public void On_PointerAxisEvt(Efl.Input.InterfacePointerAxisEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerAxisEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerAxisEvt_Args>)eventHandlers[PointerAxisEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerAxisEvt_delegate;
+   private void on_PointerAxisEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerAxisEvt_Args args = new Efl.Input.InterfacePointerAxisEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerAxisEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FingerMoveEvtKey = new object();
+   /// <summary>Finger moved (current and previous positions are known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFingerMoveEvt_Args> FingerMoveEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_MOVE";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FingerMoveEvt_delegate)) {
+               eventHandlers.AddHandler(FingerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_MOVE";
+            if (remove_cpp_event_handler(key, this.evt_FingerMoveEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FingerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FingerMoveEvt.</summary>
+   public void On_FingerMoveEvt(Efl.Input.InterfaceFingerMoveEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFingerMoveEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFingerMoveEvt_Args>)eventHandlers[FingerMoveEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FingerMoveEvt_delegate;
+   private void on_FingerMoveEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFingerMoveEvt_Args args = new Efl.Input.InterfaceFingerMoveEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_FingerMoveEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FingerDownEvtKey = new object();
+   /// <summary>Finger pressed (finger id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFingerDownEvt_Args> FingerDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FingerDownEvt_delegate)) {
+               eventHandlers.AddHandler(FingerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_FingerDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FingerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FingerDownEvt.</summary>
+   public void On_FingerDownEvt(Efl.Input.InterfaceFingerDownEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFingerDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFingerDownEvt_Args>)eventHandlers[FingerDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FingerDownEvt_delegate;
+   private void on_FingerDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFingerDownEvt_Args args = new Efl.Input.InterfaceFingerDownEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_FingerDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FingerUpEvtKey = new object();
+   /// <summary>Finger released (finger id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFingerUpEvt_Args> FingerUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_UP";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FingerUpEvt_delegate)) {
+               eventHandlers.AddHandler(FingerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_UP";
+            if (remove_cpp_event_handler(key, this.evt_FingerUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FingerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FingerUpEvt.</summary>
+   public void On_FingerUpEvt(Efl.Input.InterfaceFingerUpEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFingerUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFingerUpEvt_Args>)eventHandlers[FingerUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FingerUpEvt_delegate;
+   private void on_FingerUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFingerUpEvt_Args args = new Efl.Input.InterfaceFingerUpEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_FingerUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object KeyDownEvtKey = new object();
+   /// <summary>Keyboard key press.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceKeyDownEvt_Args> KeyDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_KeyDownEvt_delegate)) {
+               eventHandlers.AddHandler(KeyDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_KeyDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(KeyDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event KeyDownEvt.</summary>
+   public void On_KeyDownEvt(Efl.Input.InterfaceKeyDownEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceKeyDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceKeyDownEvt_Args>)eventHandlers[KeyDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_KeyDownEvt_delegate;
+   private void on_KeyDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceKeyDownEvt_Args args = new Efl.Input.InterfaceKeyDownEvt_Args();
+      args.arg = new Efl.Input.Key(evt.Info);
+      try {
+         On_KeyDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object KeyUpEvtKey = new object();
+   /// <summary>Keyboard key release.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceKeyUpEvt_Args> KeyUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_UP";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_KeyUpEvt_delegate)) {
+               eventHandlers.AddHandler(KeyUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_UP";
+            if (remove_cpp_event_handler(key, this.evt_KeyUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(KeyUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event KeyUpEvt.</summary>
+   public void On_KeyUpEvt(Efl.Input.InterfaceKeyUpEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceKeyUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceKeyUpEvt_Args>)eventHandlers[KeyUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_KeyUpEvt_delegate;
+   private void on_KeyUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceKeyUpEvt_Args args = new Efl.Input.InterfaceKeyUpEvt_Args();
+      args.arg = new Efl.Input.Key(evt.Info);
+      try {
+         On_KeyUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object HoldEvtKey = new object();
+   /// <summary>All input events are on hold or resumed.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceHoldEvt_Args> HoldEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_HOLD";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_HoldEvt_delegate)) {
+               eventHandlers.AddHandler(HoldEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_HOLD";
+            if (remove_cpp_event_handler(key, this.evt_HoldEvt_delegate)) { 
+               eventHandlers.RemoveHandler(HoldEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event HoldEvt.</summary>
+   public void On_HoldEvt(Efl.Input.InterfaceHoldEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceHoldEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceHoldEvt_Args>)eventHandlers[HoldEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_HoldEvt_delegate;
+   private void on_HoldEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceHoldEvt_Args args = new Efl.Input.InterfaceHoldEvt_Args();
+      args.arg = new Efl.Input.Hold(evt.Info);
+      try {
+         On_HoldEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FocusInEvtKey = new object();
+   /// <summary>A focus in event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFocusInEvt_Args> FocusInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_IN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FocusInEvt_delegate)) {
+               eventHandlers.AddHandler(FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_IN";
+            if (remove_cpp_event_handler(key, this.evt_FocusInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusInEvt.</summary>
+   public void On_FocusInEvt(Efl.Input.InterfaceFocusInEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFocusInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFocusInEvt_Args>)eventHandlers[FocusInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusInEvt_delegate;
+   private void on_FocusInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFocusInEvt_Args args = new Efl.Input.InterfaceFocusInEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_FocusInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FocusOutEvtKey = new object();
+   /// <summary>A focus out event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFocusOutEvt_Args> FocusOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_OUT";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FocusOutEvt_delegate)) {
+               eventHandlers.AddHandler(FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_OUT";
+            if (remove_cpp_event_handler(key, this.evt_FocusOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusOutEvt.</summary>
+   public void On_FocusOutEvt(Efl.Input.InterfaceFocusOutEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFocusOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFocusOutEvt_Args>)eventHandlers[FocusOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusOutEvt_delegate;
+   private void on_FocusOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFocusOutEvt_Args args = new Efl.Input.InterfaceFocusOutEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_FocusOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_AnimatorTickEvt_delegate = new Efl.EventCb(on_AnimatorTickEvt_NativeCallback);
+      evt_VisibilityChangedEvt_delegate = new Efl.EventCb(on_VisibilityChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+      evt_HintsChangedEvt_delegate = new Efl.EventCb(on_HintsChangedEvt_NativeCallback);
+      evt_StackingChangedEvt_delegate = new Efl.EventCb(on_StackingChangedEvt_NativeCallback);
+      evt_PointerMoveEvt_delegate = new Efl.EventCb(on_PointerMoveEvt_NativeCallback);
+      evt_PointerDownEvt_delegate = new Efl.EventCb(on_PointerDownEvt_NativeCallback);
+      evt_PointerUpEvt_delegate = new Efl.EventCb(on_PointerUpEvt_NativeCallback);
+      evt_PointerCancelEvt_delegate = new Efl.EventCb(on_PointerCancelEvt_NativeCallback);
+      evt_PointerInEvt_delegate = new Efl.EventCb(on_PointerInEvt_NativeCallback);
+      evt_PointerOutEvt_delegate = new Efl.EventCb(on_PointerOutEvt_NativeCallback);
+      evt_PointerWheelEvt_delegate = new Efl.EventCb(on_PointerWheelEvt_NativeCallback);
+      evt_PointerAxisEvt_delegate = new Efl.EventCb(on_PointerAxisEvt_NativeCallback);
+      evt_FingerMoveEvt_delegate = new Efl.EventCb(on_FingerMoveEvt_NativeCallback);
+      evt_FingerDownEvt_delegate = new Efl.EventCb(on_FingerDownEvt_NativeCallback);
+      evt_FingerUpEvt_delegate = new Efl.EventCb(on_FingerUpEvt_NativeCallback);
+      evt_KeyDownEvt_delegate = new Efl.EventCb(on_KeyDownEvt_NativeCallback);
+      evt_KeyUpEvt_delegate = new Efl.EventCb(on_KeyUpEvt_NativeCallback);
+      evt_HoldEvt_delegate = new Efl.EventCb(on_HoldEvt_NativeCallback);
+      evt_FocusInEvt_delegate = new Efl.EventCb(on_FocusInEvt_NativeCallback);
+      evt_FocusOutEvt_delegate = new Efl.EventCb(on_FocusOutEvt_NativeCallback);
+   }
+   /// <summary>Low-level pointer behaviour by device. See <see cref="Efl.Canvas.Object.GetPointerMode"/> and <see cref="Efl.Canvas.Object.SetPointerMode"/> for more explanation.
+   /// 1.19</summary>
+   /// <param name="dev">The pointer device to set/get the mode. Use <c>null</c> for the default pointer.</param>
+   /// <returns>The pointer mode</returns>
+   virtual public Efl.Input.ObjectPointerMode GetPointerModeByDevice( Efl.Input.Device dev) {
+                         var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_pointer_mode_by_device_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dev);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Low-level pointer behaviour by device. See <see cref="Efl.Canvas.Object.GetPointerMode"/> and <see cref="Efl.Canvas.Object.SetPointerMode"/> for more explanation.
+   /// 1.19</summary>
+   /// <param name="dev">The pointer device to set/get the mode. Use <c>null</c> for the default pointer.</param>
+   /// <param name="pointer_mode">The pointer mode</param>
+   /// <returns><c>true</c> if pointer mode was set, <c>false</c> otherwise</returns>
+   virtual public bool SetPointerModeByDevice( Efl.Input.Device dev,  Efl.Input.ObjectPointerMode pointer_mode) {
+                                           var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_pointer_mode_by_device_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dev,  pointer_mode);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Low-level pointer behaviour.
+   /// This function has a direct effect on event callbacks related to pointers (mouse, ...).
+   /// 
+   /// If the value is <see cref="Efl.Input.ObjectPointerMode.AutoGrab"/> (default), then when mouse is pressed down over this object, events will be restricted to it as source, mouse moves, for example, will be emitted even when the pointer goes outside this objects geometry.
+   /// 
+   /// If the value is <see cref="Efl.Input.ObjectPointerMode.NoGrab"/>, then events will be emitted just when inside this object area.
+   /// 
+   /// The default value is <see cref="Efl.Input.ObjectPointerMode.AutoGrab"/>. See also: <see cref="Efl.Canvas.Object.GetPointerModeByDevice"/> and <see cref="Efl.Canvas.Object.GetPointerModeByDevice"/> Note: This function will only set/get the mode for the default pointer.</summary>
+   /// <returns>Input pointer mode</returns>
+   virtual public Efl.Input.ObjectPointerMode GetPointerMode() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_pointer_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Low-level pointer behaviour.
+   /// This function has a direct effect on event callbacks related to pointers (mouse, ...).
+   /// 
+   /// If the value is <see cref="Efl.Input.ObjectPointerMode.AutoGrab"/> (default), then when mouse is pressed down over this object, events will be restricted to it as source, mouse moves, for example, will be emitted even when the pointer goes outside this objects geometry.
+   /// 
+   /// If the value is <see cref="Efl.Input.ObjectPointerMode.NoGrab"/>, then events will be emitted just when inside this object area.
+   /// 
+   /// The default value is <see cref="Efl.Input.ObjectPointerMode.AutoGrab"/>. See also: <see cref="Efl.Canvas.Object.GetPointerModeByDevice"/> and <see cref="Efl.Canvas.Object.GetPointerModeByDevice"/> Note: This function will only set/get the mode for the default pointer.</summary>
+   /// <param name="pointer_mode">Input pointer mode</param>
+   /// <returns><c>true</c> if pointer behaviour was set, <c>false</c> otherwise</returns>
+   virtual public bool SetPointerMode( Efl.Input.ObjectPointerMode pointer_mode) {
+                         var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_pointer_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pointer_mode);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Render mode to be used for compositing the Evas object.
+   /// Only two modes are supported: - <see cref="Efl.Gfx.RenderOp.Blend"/> means the object will be merged on top of objects below it using simple alpha compositing. - <see cref="Efl.Gfx.RenderOp.Copy"/> means this object&apos;s pixels will replace everything that is below, making this object opaque.
+   /// 
+   /// Please do not assume that <see cref="Efl.Gfx.RenderOp.Copy"/> mode can be used to &quot;poke&quot; holes in a window (to see through it), as only the compositor can ensure that. Copy mode should only be used with otherwise opaque widgets or inside non-window surfaces (eg. a transparent background inside a buffer canvas).</summary>
+   /// <returns>Blend or copy.</returns>
+   virtual public Efl.Gfx.RenderOp GetRenderOp() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_render_op_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Render mode to be used for compositing the Evas object.
+   /// Only two modes are supported: - <see cref="Efl.Gfx.RenderOp.Blend"/> means the object will be merged on top of objects below it using simple alpha compositing. - <see cref="Efl.Gfx.RenderOp.Copy"/> means this object&apos;s pixels will replace everything that is below, making this object opaque.
+   /// 
+   /// Please do not assume that <see cref="Efl.Gfx.RenderOp.Copy"/> mode can be used to &quot;poke&quot; holes in a window (to see through it), as only the compositor can ensure that. Copy mode should only be used with otherwise opaque widgets or inside non-window surfaces (eg. a transparent background inside a buffer canvas).</summary>
+   /// <param name="render_op">Blend or copy.</param>
+   /// <returns></returns>
+   virtual public  void SetRenderOp( Efl.Gfx.RenderOp render_op) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_render_op_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), render_op);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the object clipping <c>obj</c> (if any).
+   /// This function returns the object clipping <c>obj</c>. If <c>obj</c> is not being clipped at all, <c>null</c> is returned. The object <c>obj</c> must be a valid Evas_Object.</summary>
+   /// <returns>The object to clip <c>obj</c> by.</returns>
+   virtual public Efl.Canvas.Object GetClipper() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_clipper_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Clip one object to another.
+   /// This function will clip the object <c>obj</c> to the area occupied by the object <c>clip</c>. This means the object <c>obj</c> will only be visible within the area occupied by the clipping object (<c>clip</c>).
+   /// 
+   /// The color of the object being clipped will be multiplied by the color of the clipping one, so the resulting color for the former will be &quot;RESULT = (OBJ * CLIP) / (255 * 255)&quot;, per color element (red, green, blue and alpha).
+   /// 
+   /// Clipping is recursive, so clipping objects may be clipped by others, and their color will in term be multiplied. You may not set up circular clipping lists (i.e. object 1 clips object 2, which clips object 1): the behavior of Evas is undefined in this case.
+   /// 
+   /// Objects which do not clip others are visible in the canvas as normal; those that clip one or more objects become invisible themselves, only affecting what they clip. If an object ceases to have other objects being clipped by it, it will become visible again.
+   /// 
+   /// The visibility of an object affects the objects that are clipped by it, so if the object clipping others is not shown (as in <see cref="Efl.Gfx.Entity.Visible"/>), the objects clipped by it will not be shown  either.
+   /// 
+   /// If <c>obj</c> was being clipped by another object when this function is  called, it gets implicitly removed from the old clipper&apos;s domain and is made now to be clipped by its new clipper.
+   /// 
+   /// If <c>clip</c> is <c>null</c>, this call will disable clipping for the object i.e. its visibility and color get detached from the previous clipper. If it wasn&apos;t, this has no effect.
+   /// 
+   /// Note: Only rectangle and image (masks) objects can be used as clippers. Anything else will result in undefined behaviour.</summary>
+   /// <param name="clipper">The object to clip <c>obj</c> by.</param>
+   /// <returns></returns>
+   virtual public  void SetClipper( Efl.Canvas.Object clipper) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_clipper_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), clipper);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Determine whether an object is set to repeat events.</summary>
+   /// <returns>Whether <c>obj</c> is to repeat events (<c>true</c>) or not (<c>false</c>).</returns>
+   virtual public bool GetRepeatEvents() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_repeat_events_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether an Evas object is to repeat events.
+   /// If <c>repeat</c> is <c>true</c>, it will make events on <c>obj</c> to also be repeated for the next lower object in the objects&apos; stack (see see <see cref="Efl.Gfx.Stack.GetBelow"/>).
+   /// 
+   /// If <c>repeat</c> is <c>false</c>, events occurring on <c>obj</c> will be processed only on it.</summary>
+   /// <param name="repeat">Whether <c>obj</c> is to repeat events (<c>true</c>) or not (<c>false</c>).</param>
+   /// <returns></returns>
+   virtual public  void SetRepeatEvents( bool repeat) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_repeat_events_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), repeat);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Indicates that this object is the keyboard event receiver on its canvas.
+   /// Changing focus only affects where (key) input events go. There can be only one object focused at any time. If <c>focus</c> is <c>true</c>, <c>obj</c> will be set as the currently focused object and it will receive all keyboard events that are not exclusive key grabs on other objects. See also <see cref="Efl.Canvas.Object.CheckSeatFocus"/>, <see cref="Efl.Canvas.Object.AddSeatFocus"/>, <see cref="Efl.Canvas.Object.DelSeatFocus"/>.</summary>
+   /// <returns><c>true</c> when set as focused or <c>false</c> otherwise.</returns>
+   virtual public bool GetKeyFocus() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_key_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates that this object is the keyboard event receiver on its canvas.
+   /// Changing focus only affects where (key) input events go. There can be only one object focused at any time. If <c>focus</c> is <c>true</c>, <c>obj</c> will be set as the currently focused object and it will receive all keyboard events that are not exclusive key grabs on other objects. See also <see cref="Efl.Canvas.Object.CheckSeatFocus"/>, <see cref="Efl.Canvas.Object.AddSeatFocus"/>, <see cref="Efl.Canvas.Object.DelSeatFocus"/>.</summary>
+   /// <param name="focus"><c>true</c> when set as focused or <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetKeyFocus( bool focus) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_key_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Check if this object is focused.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if focused by at least one seat or <c>false</c> otherwise.</returns>
+   virtual public bool GetSeatFocus() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_seat_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Determine whether an object is set to use precise point collision detection.</summary>
+   /// <returns>Whether to use precise point collision detection or not. The default value is false.</returns>
+   virtual public bool GetPreciseIsInside() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_precise_is_inside_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether to use precise (usually expensive) point collision detection for a given Evas object.
+   /// Use this function to make Evas treat objects&apos; transparent areas as not belonging to it with regard to mouse pointer events. By default, all of the object&apos;s boundary rectangle will be taken in account for them.
+   /// 
+   /// Warning: By using precise point collision detection you&apos;ll be making Evas more resource intensive.</summary>
+   /// <param name="precise">Whether to use precise point collision detection or not. The default value is false.</param>
+   /// <returns></returns>
+   virtual public  void SetPreciseIsInside( bool precise) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_precise_is_inside_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), precise);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieve whether an Evas object is set to propagate events.
+   /// See also <see cref="Efl.Canvas.Object.GetRepeatEvents"/>, <see cref="Efl.Canvas.Object.GetPassEvents"/>.</summary>
+   /// <returns>Whether to propagate events (<c>true</c>) or not (<c>false</c>).</returns>
+   virtual public bool GetPropagateEvents() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_propagate_events_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether events on a smart object&apos;s member should be propagated up to its parent.
+   /// This function has no effect if <c>obj</c> is not a member of a smart object.
+   /// 
+   /// If <c>prop</c> is <c>true</c>, events occurring on this object will be propagated on to the smart object of which <c>obj</c> is a member. If <c>prop</c> is <c>false</c>, events occurring on this object will not be propagated on to the smart object of which <c>obj</c> is a member. The default value is <c>true</c>.
+   /// 
+   /// See also <see cref="Efl.Canvas.Object.SetRepeatEvents"/>, <see cref="Efl.Canvas.Object.SetPassEvents"/>.</summary>
+   /// <param name="propagate">Whether to propagate events (<c>true</c>) or not (<c>false</c>).</param>
+   /// <returns></returns>
+   virtual public  void SetPropagateEvents( bool propagate) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_propagate_events_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), propagate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Determine whether an object is set to pass (ignore) events.
+   /// See also <see cref="Efl.Canvas.Object.GetRepeatEvents"/>, <see cref="Efl.Canvas.Object.GetPropagateEvents"/>.</summary>
+   /// <returns>Whether <c>obj</c> is to pass events (<c>true</c>) or not (<c>false</c>).</returns>
+   virtual public bool GetPassEvents() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_pass_events_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether an Evas object is to pass (ignore) events.
+   /// If <c>pass</c> is <c>true</c>, it will make events on <c>obj</c> to be ignored. They will be triggered on the next lower object (that is not set to pass events), instead (see <see cref="Efl.Gfx.Stack.GetBelow"/>).
+   /// 
+   /// If <c>pass</c> is <c>false</c> events will be processed on that object as normal.
+   /// 
+   /// See also <see cref="Efl.Canvas.Object.SetRepeatEvents"/>, <see cref="Efl.Canvas.Object.SetPropagateEvents"/></summary>
+   /// <param name="pass">Whether <c>obj</c> is to pass events (<c>true</c>) or not (<c>false</c>).</param>
+   /// <returns></returns>
+   virtual public  void SetPassEvents( bool pass) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_pass_events_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pass);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given Evas object is to be drawn anti_aliased.</summary>
+   /// <returns><c>true</c> if the object is to be anti_aliased, <c>false</c> otherwise.</returns>
+   virtual public bool GetAntiAlias() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_anti_alias_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets whether or not the given Evas object is to be drawn anti-aliased.</summary>
+   /// <param name="anti_alias"><c>true</c> if the object is to be anti_aliased, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetAntiAlias( bool anti_alias) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_anti_alias_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), anti_alias);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Return a list of objects currently clipped by <c>obj</c>.
+   /// This returns the internal list handle containing all objects clipped by the object <c>obj</c>. If none are clipped by it, the call returns <c>null</c>. This list is only valid until the clip list is changed and should be fetched again with another call to this function if any objects being clipped by this object are unclipped, clipped by a new object, deleted or get the clipper deleted. These operations will invalidate the list returned, so it should not be used anymore after that point. Any use of the list after this may have undefined results, possibly leading to crashes.
+   /// 
+   /// See also <see cref="Efl.Canvas.Object.Clipper"/>.</summary>
+   /// <returns>An iterator over the list of objects clipped by <c>obj</c>.</returns>
+   virtual public Eina.Iterator<Efl.Canvas.Object> GetClippedObjects() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_clipped_objects_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Canvas.Object>(_ret_var, false, false);
+ }
+   /// <summary>Gets the parent smart object of a given Evas object, if it has one.
+   /// This can be different from <see cref="Efl.Object.Parent"/> because this one is used internally for rendering and the normal parent is what the user expects to be the parent.
+   /// 1.18</summary>
+   /// <returns>The parent smart object of <c>obj</c> or <c>null</c>.</returns>
+   virtual public Efl.Canvas.Object GetRenderParent() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_render_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This handles text paragraph direction of the given object. Even if the given object is not textblock or text, its smart child objects can inherit the paragraph direction from the given object. The default paragraph direction is <c>inherit</c>.</summary>
+   /// <returns>Paragraph direction for the given object.</returns>
+   virtual public Efl.TextBidirectionalType GetParagraphDirection() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_paragraph_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This handles text paragraph direction of the given object. Even if the given object is not textblock or text, its smart child objects can inherit the paragraph direction from the given object. The default paragraph direction is <c>inherit</c>.</summary>
+   /// <param name="dir">Paragraph direction for the given object.</param>
+   /// <returns></returns>
+   virtual public  void SetParagraphDirection( Efl.TextBidirectionalType dir) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_paragraph_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the state of the &quot;no-render&quot; flag, which means, when true, that an object should never be rendered on the canvas.
+   /// This flag can be used to avoid rendering visible clippers on the canvas, even if they currently don&apos;t clip any object.
+   /// 1.15</summary>
+   /// <returns>Enable &quot;no-render&quot; mode.</returns>
+   virtual public bool GetNoRender() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_no_render_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Disable all rendering on the canvas.
+   /// This flag will be used to indicate to Evas that this object should never be rendered on the canvas under any circumstances. In particular, this is useful to avoid drawing clipper objects (or masks) even when they don&apos;t clip any object. This can also be used to replace the old source_visible flag with proxy objects.
+   /// 
+   /// This is different to the visible property, as even visible objects marked as &quot;no-render&quot; will never appear on screen. But those objects can still be used as proxy sources or clippers. When hidden, all &quot;no-render&quot; objects will completely disappear from the canvas, and hide their clippees or be invisible when used as proxy sources.
+   /// 1.15</summary>
+   /// <param name="enable">Enable &quot;no-render&quot; mode.</param>
+   /// <returns></returns>
+   virtual public  void SetNoRender( bool enable) {
+                         Efl.Canvas.ObjectNativeInherit.efl_canvas_object_no_render_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns whether the coords are logically inside the object.
+   /// When this function is called it will return a value of either <c>false</c> or <c>true</c>, depending on if the coords are inside the object&apos;s current geometry.
+   /// 
+   /// A return value of <c>true</c> indicates the position is logically inside the object, and <c>false</c> implies it is logically outside the object.
+   /// 
+   /// If <c>e</c> is not a valid object, the return value is undefined.</summary>
+   /// <param name="pos">The position in pixels.</param>
+   /// <returns><c>true</c> if the coords are inside the object, <c>false</c> otherwise</returns>
+   virtual public bool GetCoordsInside( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_coords_inside_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Check if this object is focused by a given seat
+   /// 1.19</summary>
+   /// <param name="seat">The seat to check if the object is focused. Use <c>null</c> for the default seat.</param>
+   /// <returns><c>true</c> if focused or <c>false</c> otherwise.</returns>
+   virtual public bool CheckSeatFocus( Efl.Input.Device seat) {
+                         var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_seat_focus_check_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Add a seat to the focus list.
+   /// Evas allows the Efl.Canvas.Object to be focused by multiple seats at the same time. This function adds a new seat to the focus list. In other words, after the seat is added to the list this object will now be also focused by this new seat.
+   /// 
+   /// Note: The old focus APIs still work, however they will only act on the default seat.
+   /// 1.19</summary>
+   /// <param name="seat">The seat that should be added to the focus list. Use <c>null</c> for the default seat.</param>
+   /// <returns><c>true</c> if the focus has been set or <c>false</c> otherwise.</returns>
+   virtual public bool AddSeatFocus( Efl.Input.Device seat) {
+                         var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_seat_focus_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Remove a seat from the focus list.
+   /// 1.19</summary>
+   /// <param name="seat">The seat that should be removed from the focus list. Use <c>null</c> for the default seat.</param>
+   /// <returns><c>true</c> if the seat was removed from the focus list or <c>false</c> otherwise.</returns>
+   virtual public bool DelSeatFocus( Efl.Input.Device seat) {
+                         var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_seat_focus_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the number of objects clipped by <c>obj</c></summary>
+   /// <returns>The number of objects clipped by <c>obj</c></returns>
+   virtual public  uint ClippedObjectsCount() {
+       var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_clipped_objects_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Requests <c>keyname</c> key events be directed to <c>obj</c>.
+   /// Key grabs allow one or more objects to receive key events for specific key strokes even if other objects have focus. Whenever a key is grabbed, only the objects grabbing it will get the events for the given keys.
+   /// 
+   /// <c>keyname</c> is a platform dependent symbolic name for the key pressed.
+   /// 
+   /// <c>modifiers</c> and <c>not_modifiers</c> are bit masks of all the modifiers that must and mustn&apos;t, respectively, be pressed along with <c>keyname</c> key in order to trigger this new key grab. Modifiers can be things such as Shift and Ctrl as well as user defined types via @ref evas_key_modifier_add. <c>exclusive</c> will make the given object the only one permitted to grab the given key. If given <c>true</c>, subsequent calls on this function with different <c>obj</c> arguments will fail, unless the key is ungrabbed again.
+   /// 
+   /// Warning: Providing impossible modifier sets creates undefined behavior.</summary>
+   /// <param name="keyname">The key to request events for.</param>
+   /// <param name="modifiers">A combination of modifier keys that must be present to trigger the event.</param>
+   /// <param name="not_modifiers">A combination of modifier keys that must not be present to trigger the event.</param>
+   /// <param name="exclusive">Request that the <c>obj</c> is the only object receiving the <c>keyname</c> events.</param>
+   /// <returns><c>true</c> if the call succeeded, <c>false</c> otherwise.</returns>
+   virtual public bool GrabKey(  System.String keyname,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers,  bool exclusive) {
+                                                                               var _ret_var = Efl.Canvas.ObjectNativeInherit.efl_canvas_object_key_grab_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), keyname,  modifiers,  not_modifiers,  exclusive);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Removes the grab on <c>keyname</c> key events by <c>obj</c>.
+   /// Removes a key grab on <c>obj</c> if <c>keyname</c>, <c>modifiers</c>, and <c>not_modifiers</c> match.
+   /// 
+   /// See also <see cref="Efl.Canvas.Object.GrabKey"/>, <see cref="Efl.Canvas.Object.GetKeyFocus"/>, <see cref="Efl.Canvas.Object.SetKeyFocus"/>, and the legacy API evas_focus_get.</summary>
+   /// <param name="keyname">The key the grab is set for.</param>
+   /// <param name="modifiers">A mask of modifiers that must be present to trigger the event.</param>
+   /// <param name="not_modifiers">A mask of modifiers that must not not be present to trigger the event.</param>
+   /// <returns></returns>
+   virtual public  void UngrabKey(  System.String keyname,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers) {
+                                                             Efl.Canvas.ObjectNativeInherit.efl_canvas_object_key_ungrab_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), keyname,  modifiers,  not_modifiers);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Returns whether the mouse pointer is logically inside the canvas.
+   /// When this function is called it will return a value of either <c>false</c> or <c>true</c>, depending on whether a pointer,in or pointer,out event has been called previously.
+   /// 
+   /// A return value of <c>true</c> indicates the mouse is logically inside the canvas, and <c>false</c> implies it is logically outside the canvas.
+   /// 
+   /// A canvas begins with the mouse being assumed outside (<c>false</c>).</summary>
+   /// <param name="seat">The seat to consider, if <c>null</c> then the default seat will be used.</param>
+   /// <returns><c>true</c> if the mouse pointer is inside the canvas, <c>false</c> otherwise</returns>
+   virtual public bool GetPointerInside( Efl.Input.Device seat) {
+                         var _ret_var = Efl.Canvas.PointerNativeInherit.efl_canvas_pointer_inside_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieves the general/main color of the given Evas object.
+   /// Retrieves the main color&apos;s RGB component (and alpha channel) values, which range from 0 to 255. For the alpha channel, which defines the object&apos;s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.
+   /// 
+   /// Usually youll use this attribute for text and rectangle objects, where the main color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.
+   /// 
+   /// All newly created Evas rectangles get the default color values of 255 255 255 255 (opaque white).
+   /// 
+   /// Use null pointers on the components you&apos;re not interested in: they&apos;ll be ignored by the function.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void GetColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets the general/main color of the given Evas object to the given one.
+   /// See also <see cref="Efl.Gfx.Color.GetColor"/> (for an example)
+   /// 
+   /// These color values are expected to be premultiplied by alpha.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void SetColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+   /// <returns>the hex color code.</returns>
+   virtual public  System.String GetColorCode() {
+       var _ret_var = Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the color of given Evas object to the given hex color code(#RRGGBBAA). e.g. efl_gfx_color_code_set(obj, &quot;#FFCCAACC&quot;);</summary>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns></returns>
+   virtual public  void SetColorCode(  System.String colorcode) {
+                         Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+   /// <returns>A 2D coordinate in pixel units.</returns>
+   virtual public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+   /// <param name="pos">A 2D coordinate in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+   /// <returns>A 2D size in pixel units.</returns>
+   virtual public Eina.Size2D GetSize() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Changes the size of the given object.
+   /// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+   /// <param name="size">A 2D size in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <returns>The X,Y position and W,H size, in pixels.</returns>
+   virtual public Eina.Rect GetGeometry() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetGeometry( Eina.Rect rect) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+   /// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+   virtual public bool GetVisible() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Shows or hides this object.</summary>
+   /// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetVisible( bool v) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+   /// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+   virtual public double GetScale() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scaling factor of an object.</summary>
+   /// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+   /// <returns></returns>
+   virtual public  void SetScale( double scale) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines the aspect ratio to respect when scaling this object.
+   /// The aspect ratio is defined as the width / height ratio of the object. Depending on the object and its container, this hint may or may not be fully respected.
+   /// 
+   /// If any of the given aspect ratio terms are 0, the object&apos;s container will ignore the aspect and scale this object to occupy the whole available area, for any given policy.</summary>
+   /// <param name="mode">Mode of interpretation.</param>
+   /// <param name="sz">Base size to use for aspecting.</param>
+   /// <returns></returns>
+   virtual public  void GetHintAspect( out Efl.Gfx.HintAspect mode,  out Eina.Size2D sz) {
+                         var _out_sz = new Eina.Size2D_StructInternal();
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_aspect_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out mode,  out _out_sz);
+      Eina.Error.RaiseIfUnhandledException();
+            sz = Eina.Size2D_StructConversion.ToManaged(_out_sz);
+                   }
+   /// <summary>Defines the aspect ratio to respect when scaling this object.
+   /// The aspect ratio is defined as the width / height ratio of the object. Depending on the object and its container, this hint may or may not be fully respected.
+   /// 
+   /// If any of the given aspect ratio terms are 0, the object&apos;s container will ignore the aspect and scale this object to occupy the whole available area, for any given policy.</summary>
+   /// <param name="mode">Mode of interpretation.</param>
+   /// <param name="sz">Base size to use for aspecting.</param>
+   /// <returns></returns>
+   virtual public  void SetHintAspect( Efl.Gfx.HintAspect mode,  Eina.Size2D sz) {
+             var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                              Efl.Gfx.HintNativeInherit.efl_gfx_hint_aspect_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode,  _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints on the object&apos;s maximum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Values -1 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <returns>Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</returns>
+   virtual public Eina.Size2D GetHintSizeMax() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Hints on the object&apos;s maximum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Values -1 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <param name="sz">Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</param>
+   /// <returns></returns>
+   virtual public  void SetHintSizeMax( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hints on the object&apos;s minimum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Value 0 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+   /// <returns>Minimum size (hint) in pixels.</returns>
+   virtual public Eina.Size2D GetHintSizeMin() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Hints on the object&apos;s minimum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Value 0 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+   /// <param name="sz">Minimum size (hint) in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetHintSizeMin( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_min_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the &quot;intrinsic&quot; minimum size of this object.</summary>
+   /// <returns>Minimum size (hint) in pixels.</returns>
+   virtual public Eina.Size2D GetHintSizeRestrictedMin() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_restricted_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>This function is protected as it is meant for widgets to indicate their &quot;intrinsic&quot; minimum size.</summary>
+   /// <param name="sz">Minimum size (hint) in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetHintSizeRestrictedMin( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_restricted_min_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Read-only minimum size combining both <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> and <see cref="Efl.Gfx.Hint.HintSizeMin"/> hints.
+   /// <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> is intended for mostly internal usage and widget developers, and <see cref="Efl.Gfx.Hint.HintSizeMin"/> is intended to be set from application side. <see cref="Efl.Gfx.Hint.GetHintSizeCombinedMin"/> combines both values by taking their repective maximum (in both width and height), and is used internally to get an object&apos;s minimum size.</summary>
+   /// <returns>Minimum size (hint) in pixels.</returns>
+   virtual public Eina.Size2D GetHintSizeCombinedMin() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_combined_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Hints for an object&apos;s margin or padding space.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <param name="l">Integer to specify left padding.</param>
+   /// <param name="r">Integer to specify right padding.</param>
+   /// <param name="t">Integer to specify top padding.</param>
+   /// <param name="b">Integer to specify bottom padding.</param>
+   /// <returns></returns>
+   virtual public  void GetHintMargin( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.HintNativeInherit.efl_gfx_hint_margin_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Hints for an object&apos;s margin or padding space.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <param name="l">Integer to specify left padding.</param>
+   /// <param name="r">Integer to specify right padding.</param>
+   /// <param name="t">Integer to specify top padding.</param>
+   /// <param name="b">Integer to specify bottom padding.</param>
+   /// <returns></returns>
+   virtual public  void SetHintMargin(  int l,   int r,   int t,   int b) {
+                                                                               Efl.Gfx.HintNativeInherit.efl_gfx_hint_margin_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l,  r,  t,  b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Hints for an object&apos;s weight.
+   /// This is a hint on how a container object should resize a given child within its area. Containers may adhere to the simpler logic of just expanding the child object&apos;s dimensions to fit its own (see the <see cref="Efl.Gfx.Constants.HintExpand"/> helper weight macro) or the complete one of taking each child&apos;s weight hint as real weights to how much of its size to allocate for them in each axis. A container is supposed to, after normalizing the weights of its children (with weight  hints), distribut the space it has to layout them by those factors -- most weighted children get larger in this process than the least ones.
+   /// 
+   /// Accepted values are zero or positive values. Some containers might use this hint as a boolean, but some others might consider it as a proportion, see documentation of each container.
+   /// 
+   /// Note: Default weight hint values are 0.0, for both axis.</summary>
+   /// <param name="x">Non-negative double value to use as horizontal weight hint.</param>
+   /// <param name="y">Non-negative double value to use as vertical weight hint.</param>
+   /// <returns></returns>
+   virtual public  void GetHintWeight( out double x,  out double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_weight_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s weight.
+   /// This is a hint on how a container object should resize a given child within its area. Containers may adhere to the simpler logic of just expanding the child object&apos;s dimensions to fit its own (see the <see cref="Efl.Gfx.Constants.HintExpand"/> helper weight macro) or the complete one of taking each child&apos;s weight hint as real weights to how much of its size to allocate for them in each axis. A container is supposed to, after normalizing the weights of its children (with weight  hints), distribut the space it has to layout them by those factors -- most weighted children get larger in this process than the least ones.
+   /// 
+   /// Accepted values are zero or positive values. Some containers might use this hint as a boolean, but some others might consider it as a proportion, see documentation of each container.
+   /// 
+   /// Note: Default weight hint values are 0.0, for both axis.</summary>
+   /// <param name="x">Non-negative double value to use as horizontal weight hint.</param>
+   /// <param name="y">Non-negative double value to use as vertical weight hint.</param>
+   /// <returns></returns>
+   virtual public  void SetHintWeight( double x,  double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_weight_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s alignment.
+   /// These are hints on how to align an object inside the boundaries of a container/manager. Accepted values are in the 0.0 to 1.0 range.
+   /// 
+   /// For the horizontal component, 0.0 means to the left, 1.0 means to the right. Analogously, for the vertical component, 0.0 to the top, 1.0 means to the bottom.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default alignment hint values are 0.5, for both axes.</summary>
+   /// <param name="x">Double, ranging from 0.0 to 1.0.</param>
+   /// <param name="y">Double, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void GetHintAlign( out double x,  out double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s alignment.
+   /// These are hints on how to align an object inside the boundaries of a container/manager. Accepted values are in the 0.0 to 1.0 range.
+   /// 
+   /// For the horizontal component, 0.0 means to the left, 1.0 means to the right. Analogously, for the vertical component, 0.0 to the top, 1.0 means to the bottom.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default alignment hint values are 0.5, for both axes.</summary>
+   /// <param name="x">Double, ranging from 0.0 to 1.0.</param>
+   /// <param name="y">Double, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void SetHintAlign( double x,  double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s fill property that used to specify &quot;justify&quot; or &quot;fill&quot; by some users. <see cref="Efl.Gfx.Hint.GetHintFill"/> specify whether to fill the space inside the boundaries of a container/manager.
+   /// Maximum hints should be enforced with higher priority, if they are set. Also, any <see cref="Efl.Gfx.Hint.GetHintMargin"/> set on objects should add up to the object space on the final scene composition.
+   /// 
+   /// See documentation of possible users: in Evas, they are the <see cref="Efl.Ui.Box"/> &quot;box&quot; and <see cref="Efl.Ui.Table"/> &quot;table&quot; smart objects.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default fill hint values are true, for both axes.</summary>
+   /// <param name="x"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as horizontal fill hint.</param>
+   /// <param name="y"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as vertical fill hint.</param>
+   /// <returns></returns>
+   virtual public  void GetHintFill( out bool x,  out bool y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s fill property that used to specify &quot;justify&quot; or &quot;fill&quot; by some users. <see cref="Efl.Gfx.Hint.GetHintFill"/> specify whether to fill the space inside the boundaries of a container/manager.
+   /// Maximum hints should be enforced with higher priority, if they are set. Also, any <see cref="Efl.Gfx.Hint.GetHintMargin"/> set on objects should add up to the object space on the final scene composition.
+   /// 
+   /// See documentation of possible users: in Evas, they are the <see cref="Efl.Ui.Box"/> &quot;box&quot; and <see cref="Efl.Ui.Table"/> &quot;table&quot; smart objects.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default fill hint values are true, for both axes.</summary>
+   /// <param name="x"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as horizontal fill hint.</param>
+   /// <param name="y"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as vertical fill hint.</param>
+   /// <returns></returns>
+   virtual public  void SetHintFill( bool x,  bool y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Number of points of a map.
+   /// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+   /// 1.20</summary>
+   /// <returns>The number of points of map
+   /// 1.20</returns>
+   virtual public  int GetMappingPointCount() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_point_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Number of points of a map.
+   /// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+   /// 1.20</summary>
+   /// <param name="count">The number of points of map
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMappingPointCount(  int count) {
+                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_point_count_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), count);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Clockwise state of a map (read-only).
+   /// This determines if the output points (X and Y. Z is not used) are clockwise or counter-clockwise. This can be used for &quot;back-face culling&quot;. This is where you hide objects that &quot;face away&quot; from you. In this case objects that are not clockwise.
+   /// 1.20</summary>
+   /// <returns><c>true</c> if clockwise, <c>false</c> if counter clockwise
+   /// 1.20</returns>
+   virtual public bool GetMappingClockwise() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_clockwise_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Smoothing state for map rendering.
+   /// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+   /// 1.20</summary>
+   /// <returns><c>true</c> by default.
+   /// 1.20</returns>
+   virtual public bool GetMappingSmooth() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_smooth_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Smoothing state for map rendering.
+   /// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+   /// 1.20</summary>
+   /// <param name="smooth"><c>true</c> by default.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMappingSmooth( bool smooth) {
+                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_smooth_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), smooth);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Alpha flag for map rendering.
+   /// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+   /// 
+   /// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+   /// 1.20</summary>
+   /// <returns><c>true</c> by default.
+   /// 1.20</returns>
+   virtual public bool GetMappingAlpha() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_alpha_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alpha flag for map rendering.
+   /// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+   /// 
+   /// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+   /// 1.20</summary>
+   /// <param name="alpha"><c>true</c> by default.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMappingAlpha( bool alpha) {
+                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_alpha_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), alpha);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A point&apos;s absolute coordinate on the canvas.
+   /// This sets/gets the fixed point&apos;s coordinate in the map. Note that points describe the outline of a quadrangle and are ordered either clockwise or counter-clockwise. Try to keep your quadrangles concave and non-complex. Though these polygon modes may work, they may not render a desired set of output. The quadrangle will use points 0 and 1 , 1 and 2, 2 and 3, and 3 and 0 to describe the edges of the quadrangle.
+   /// 
+   /// The X and Y and Z coordinates are in canvas units. Z is optional and may or may not be honored in drawing. Z is a hint and does not affect the X and Y rendered coordinates. It may be used for calculating fills with perspective correct rendering.
+   /// 
+   /// Remember all coordinates are canvas global ones as with move and resize in the canvas.
+   /// 
+   /// This property can be read to get the 4 points positions on the canvas, or set to manually place them.
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="x">Point X coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="y">Point Y coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="z">Point Z coordinate hint (pre-perspective transform).
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetMappingCoordAbsolute(  int idx,  out double x,  out double y,  out double z) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_coord_absolute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), idx,  out x,  out y,  out z);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>A point&apos;s absolute coordinate on the canvas.
+   /// This sets/gets the fixed point&apos;s coordinate in the map. Note that points describe the outline of a quadrangle and are ordered either clockwise or counter-clockwise. Try to keep your quadrangles concave and non-complex. Though these polygon modes may work, they may not render a desired set of output. The quadrangle will use points 0 and 1 , 1 and 2, 2 and 3, and 3 and 0 to describe the edges of the quadrangle.
+   /// 
+   /// The X and Y and Z coordinates are in canvas units. Z is optional and may or may not be honored in drawing. Z is a hint and does not affect the X and Y rendered coordinates. It may be used for calculating fills with perspective correct rendering.
+   /// 
+   /// Remember all coordinates are canvas global ones as with move and resize in the canvas.
+   /// 
+   /// This property can be read to get the 4 points positions on the canvas, or set to manually place them.
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="x">Point X coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="y">Point Y coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="z">Point Z coordinate hint (pre-perspective transform).
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMappingCoordAbsolute(  int idx,  double x,  double y,  double z) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_coord_absolute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), idx,  x,  y,  z);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Map point&apos;s U and V texture source point.
+   /// This sets/gets the U and V coordinates for the point. This determines which coordinate in the source image is mapped to the given point, much like OpenGL and textures. Valid values range from 0.0 to 1.0.
+   /// 
+   /// By default the points are set in a clockwise order, as such: - 0: top-left, i.e. (0.0, 0.0), - 1: top-right, i.e. (1.0, 0.0), - 2: bottom-right, i.e. (1.0, 1.0), - 3: bottom-left, i.e. (0.0, 1.0).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="u">Relative X coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="v">Relative Y coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetMappingUv(  int idx,  out double u,  out double v) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_uv_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), idx,  out u,  out v);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Map point&apos;s U and V texture source point.
+   /// This sets/gets the U and V coordinates for the point. This determines which coordinate in the source image is mapped to the given point, much like OpenGL and textures. Valid values range from 0.0 to 1.0.
+   /// 
+   /// By default the points are set in a clockwise order, as such: - 0: top-left, i.e. (0.0, 0.0), - 1: top-right, i.e. (1.0, 0.0), - 2: bottom-right, i.e. (1.0, 1.0), - 3: bottom-left, i.e. (0.0, 1.0).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="u">Relative X coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="v">Relative Y coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMappingUv(  int idx,  double u,  double v) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_uv_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), idx,  u,  v);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Color of a vertex in the map.
+   /// This sets the color of the vertex in the map. Colors will be linearly interpolated between vertex points through the map. Color will multiply the &quot;texture&quot; pixels (like GL_MODULATE in OpenGL). The default color of a vertex in a map is white solid (255, 255, 255, 255) which means it will have no affect on modifying the texture pixels.
+   /// 
+   /// The color values must be premultiplied (ie. <c>a</c> &gt;= {<c>r</c>, <c>g</c>, <c>b</c>}).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included). -1 can be used to set the color for all points, but it is invalid for get().
+   /// 1.20</param>
+   /// <param name="r">Red (0 - 255)
+   /// 1.20</param>
+   /// <param name="g">Green (0 - 255)
+   /// 1.20</param>
+   /// <param name="b">Blue (0 - 255)
+   /// 1.20</param>
+   /// <param name="a">Alpha (0 - 255)
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetMappingColor(  int idx,  out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), idx,  out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Color of a vertex in the map.
+   /// This sets the color of the vertex in the map. Colors will be linearly interpolated between vertex points through the map. Color will multiply the &quot;texture&quot; pixels (like GL_MODULATE in OpenGL). The default color of a vertex in a map is white solid (255, 255, 255, 255) which means it will have no affect on modifying the texture pixels.
+   /// 
+   /// The color values must be premultiplied (ie. <c>a</c> &gt;= {<c>r</c>, <c>g</c>, <c>b</c>}).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included). -1 can be used to set the color for all points, but it is invalid for get().
+   /// 1.20</param>
+   /// <param name="r">Red (0 - 255)
+   /// 1.20</param>
+   /// <param name="g">Green (0 - 255)
+   /// 1.20</param>
+   /// <param name="b">Blue (0 - 255)
+   /// 1.20</param>
+   /// <param name="a">Alpha (0 - 255)
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMappingColor(  int idx,   int r,   int g,   int b,   int a) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), idx,  r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Read-only property indicating whether an object is mapped.
+   /// This will be <c>true</c> if any transformation is applied to this object.
+   /// 1.20</summary>
+   /// <returns><c>true</c> if the object is mapped.
+   /// 1.20</returns>
+   virtual public bool HasMapping() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_has_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets the map transformation to its default state.
+   /// This will reset all transformations to identity, meaning the points&apos; colors, positions and UV coordinates will be reset to their default values. <see cref="Efl.Gfx.Mapping.HasMapping"/> will then return <c>false</c>. This function will not modify the values of <see cref="Efl.Gfx.Mapping.MappingSmooth"/> or <see cref="Efl.Gfx.Mapping.MappingAlpha"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void ResetMapping() {
+       Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Apply a translation to the object using map.
+   /// This does not change the real geometry of the object but will affect its visible position.
+   /// 1.20</summary>
+   /// <param name="dx">Distance in pixels along the X axis.
+   /// 1.20</param>
+   /// <param name="dy">Distance in pixels along the Y axis.
+   /// 1.20</param>
+   /// <param name="dz">Distance in pixels along the Z axis.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Translate( double dx,  double dy,  double dz) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_translate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy,  dz);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Apply a rotation to the object.
+   /// This rotates the object clockwise by <c>degrees</c> degrees, around the center specified by the relative position (<c>cx</c>, <c>cy</c>) in the <c>pivot</c> object. If <c>pivot</c> is <c>null</c> then this object is used as its own pivot center. 360 degrees is a full rotation, equivalent to no rotation. Negative values for <c>degrees</c> will rotate clockwise by that amount.
+   /// 
+   /// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly.
+   /// 
+   /// By default, the center is at (0.5, 0.5). 0.0 means left or top while 1.0 means right or bottom of the <c>pivot</c> object.
+   /// 1.20</summary>
+   /// <param name="degrees">CCW rotation in degrees.
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Rotate( double degrees,  Efl.Gfx.Entity pivot,  double cx,  double cy) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), degrees,  pivot,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Rotate the object around 3 axes in 3D.
+   /// This will rotate in 3D, not just around the &quot;Z&quot; axis as is the case with <see cref="Efl.Gfx.Mapping.Rotate"/>. You can rotate around the X, Y and Z axes. The Z axis points &quot;into&quot; the screen with low values at the screen and higher values further away. The X axis runs from left to right on the screen and the Y axis from top to bottom.
+   /// 
+   /// As with <see cref="Efl.Gfx.Mapping.Rotate"/>, you provide a pivot and center point to rotate around (in 3D). The Z coordinate of this center point is an absolute value, and not a relative one like X and Y, as objects are flat in a 2D space.
+   /// 1.20</summary>
+   /// <param name="dx">Rotation in degrees around X axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dy">Rotation in degrees around Y axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dz">Rotation in degrees around Z axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Rotate3d( double dx,  double dy,  double dz,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz) {
+                                                                                                                                     Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_3d_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy,  dz,  pivot,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Rotate the object in 3D using a unit quaternion.
+   /// This is similar to <see cref="Efl.Gfx.Mapping.Rotate3d"/> but uses a unit quaternion (also known as versor) rather than a direct angle-based rotation around a center point. Use this to avoid gimbal locks.
+   /// 
+   /// As with <see cref="Efl.Gfx.Mapping.Rotate"/>, you provide a pivot and center point to rotate around (in 3D). The Z coordinate of this center point is an absolute value, and not a relative one like X and Y, as objects are flat in a 2D space.
+   /// 1.20</summary>
+   /// <param name="qx">The x component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qy">The y component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qz">The z component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qw">The w component of the real part of the quaternion.
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void RotateQuat( double qx,  double qy,  double qz,  double qw,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz) {
+                                                                                                                                                       Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_quat_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), qx,  qy,  qz,  qw,  pivot,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                       }
+   /// <summary>Apply a zoom to the object.
+   /// This zooms the points of the map from a center point. That center is defined by <c>cx</c> and <c>cy</c>. The <c>zoomx</c> and <c>zoomy</c> parameters specify how much to zoom in the X and Y direction respectively. A value of 1.0 means &quot;don&apos;t zoom&quot;. 2.0 means &quot;double the size&quot;. 0.5 is &quot;half the size&quot; etc.
+   /// 
+   /// By default, the center is at (0.5, 0.5). 0.0 means left or top while 1.0 means right or bottom.
+   /// 1.20</summary>
+   /// <param name="zoomx">Zoom in X direction
+   /// 1.20</param>
+   /// <param name="zoomy">Zoom in Y direction
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Zoom( double zoomx,  double zoomy,  Efl.Gfx.Entity pivot,  double cx,  double cy) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_zoom_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), zoomx,  zoomy,  pivot,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Apply a lighting effect on the object.
+   /// This is used to apply lighting calculations (from a single light source) to a given mapped object. The R, G and B values of each vertex will be modified to reflect the lighting based on the light point coordinates, the light color and the ambient color, and at what angle the map is facing the light source. A surface should have its points be declared in a clockwise fashion if the face is &quot;facing&quot; towards you (as opposed to away from you) as faces have a &quot;logical&quot; side for lighting.
+   /// 
+   /// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly. The Z position is absolute. If the <c>pivot</c> is <c>null</c> then this object will be its own pivot.
+   /// 1.20</summary>
+   /// <param name="pivot">A pivot object for the light point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="lx">X relative coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="ly">Y relative coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="lz">Z absolute coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="lr">Light red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lg">Light green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lb">Light blue value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ar">Ambient color red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ag">Ambient color green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ab">Ambient color blue value (0 - 255).
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Lighting3d( Efl.Gfx.Entity pivot,  double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab) {
+                                                                                                                                                                                           Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_lighting_3d_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pivot,  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                               }
+   /// <summary>Apply a perspective transform to the map
+   /// This applies a given perspective (3D) to the map coordinates. X, Y and Z values are used. The px and py points specify the &quot;infinite distance&quot; point in the 3D conversion (where all lines converge to like when artists draw 3D by hand). The <c>z0</c> value specifies the z value at which there is a 1:1 mapping between spatial coordinates and screen coordinates. Any points on this z value will not have their X and Y values modified in the transform. Those further away (Z value higher) will shrink into the distance, and those under this value will expand and become bigger. The <c>foc</c> value determines the &quot;focal length&quot; of the camera. This is in reality the distance between the camera lens plane itself (at or closer than this rendering results are undefined) and the &quot;z0&quot; z value. This allows for some &quot;depth&quot; control and <c>foc</c> must be greater than 0.
+   /// 
+   /// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly. The Z position is absolute. If the <c>pivot</c> is <c>null</c> then this object will be its own pivot.
+   /// 1.20</summary>
+   /// <param name="pivot">A pivot object for the infinite point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="px">The perspective distance X relative coordinate.
+   /// 1.20</param>
+   /// <param name="py">The perspective distance Y relative coordinate.
+   /// 1.20</param>
+   /// <param name="z0">The &quot;0&quot; Z plane value.
+   /// 1.20</param>
+   /// <param name="foc">The focal distance, must be greater than 0.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Perspective3d( Efl.Gfx.Entity pivot,  double px,  double py,  double z0,  double foc) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_perspective_3d_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pivot,  px,  py,  z0,  foc);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Apply a rotation to the object, using absolute coordinates.
+   /// This rotates the object clockwise by <c>degrees</c> degrees, around the center specified by the relative position (<c>cx</c>, <c>cy</c>) in the <c>pivot</c> object. If <c>pivot</c> is <c>null</c> then this object is used as its own pivot center. 360 degrees is a full rotation, equivalent to no rotation. Negative values for <c>degrees</c> will rotate clockwise by that amount.
+   /// 
+   /// The given coordinates are absolute values in pixels. See also <see cref="Efl.Gfx.Mapping.Rotate"/> for a relative coordinate version.
+   /// 1.20</summary>
+   /// <param name="degrees">CCW rotation in degrees.
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void RotateAbsolute( double degrees,  double cx,  double cy) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_absolute_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), degrees,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Rotate the object around 3 axes in 3D, using absolute coordinates.
+   /// This will rotate in 3D and not just around the &quot;Z&quot; axis as the case with <see cref="Efl.Gfx.Mapping.Rotate"/>. This will rotate around the X, Y and Z axes. The Z axis points &quot;into&quot; the screen with low values at the screen and higher values further away. The X axis runs from left to right on the screen and the Y axis from top to bottom.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Rotate3d"/> for a pivot-based 3D rotation.
+   /// 1.20</summary>
+   /// <param name="dx">Rotation in degrees around X axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dy">Rotation in degrees around Y axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dz">Rotation in degrees around Z axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Rotate3dAbsolute( double dx,  double dy,  double dz,  double cx,  double cy,  double cz) {
+                                                                                                                   Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_3d_absolute_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dx,  dy,  dz,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Rotate the object in 3D using a unit quaternion, using absolute coordinates.
+   /// This is similar to <see cref="Efl.Gfx.Mapping.Rotate3d"/> but uses a unit quaternion (also known as versor) rather than a direct angle-based rotation around a center point. Use this to avoid gimbal locks.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.RotateQuat"/> for a pivot-based 3D rotation.
+   /// 1.20</summary>
+   /// <param name="qx">The x component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qy">The y component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qz">The z component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qw">The w component of the real part of the quaternion.
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void RotateQuatAbsolute( double qx,  double qy,  double qz,  double qw,  double cx,  double cy,  double cz) {
+                                                                                                                                     Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_quat_absolute_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), qx,  qy,  qz,  qw,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Apply a zoom to the object, using absolute coordinates.
+   /// This zooms the points of the map from a center point. That center is defined by <c>cx</c> and <c>cy</c>. The <c>zoomx</c> and <c>zoomy</c> parameters specify how much to zoom in the X and Y direction respectively. A value of 1.0 means &quot;don&apos;t zoom&quot;. 2.0 means &quot;double the size&quot;. 0.5 is &quot;half the size&quot; etc.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Zoom"/> for a pivot-based zoom.
+   /// 1.20</summary>
+   /// <param name="zoomx">Zoom in X direction
+   /// 1.20</param>
+   /// <param name="zoomy">Zoom in Y direction
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void ZoomAbsolute( double zoomx,  double zoomy,  double cx,  double cy) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_zoom_absolute_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), zoomx,  zoomy,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Apply a lighting effect to the object.
+   /// This is used to apply lighting calculations (from a single light source) to a given mapped object. The RGB values of each vertex will be modified to reflect the lighting based on the light point coordinates, the light color, the ambient color and at what angle the map is facing the light source. A surface should have its points be declared in a clockwise fashion if the face is &quot;facing&quot; towards you (as opposed to away from you) as faces have a &quot;logical&quot; side for lighting.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Lighting3d"/> for a pivot-based lighting effect.
+   /// 1.20</summary>
+   /// <param name="lx">X absolute coordinate in pixels of the light point.
+   /// 1.20</param>
+   /// <param name="ly">y absolute coordinate in pixels of the light point.
+   /// 1.20</param>
+   /// <param name="lz">Z absolute coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="lr">Light red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lg">Light green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lb">Light blue value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ar">Ambient color red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ag">Ambient color green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ab">Ambient color blue value (0 - 255).
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Lighting3dAbsolute( double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab) {
+                                                                                                                                                                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_lighting_3d_absolute_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                   }
+   /// <summary>Apply a perspective transform to the map
+   /// This applies a given perspective (3D) to the map coordinates. X, Y and Z values are used. The px and py points specify the &quot;infinite distance&quot; point in the 3D conversion (where all lines converge to like when artists draw 3D by hand). The <c>z0</c> value specifies the z value at which there is a 1:1 mapping between spatial coordinates and screen coordinates. Any points on this z value will not have their X and Y values modified in the transform. Those further away (Z value higher) will shrink into the distance, and those less than this value will expand and become bigger. The <c>foc</c> value determines the &quot;focal length&quot; of the camera. This is in reality the distance between the camera lens plane itself (at or closer than this rendering results are undefined) and the &quot;z0&quot; z value. This allows for some &quot;depth&quot; control and <c>foc</c> must be greater than 0.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Perspective3d"/> for a pivot-based perspective effect.
+   /// 1.20</summary>
+   /// <param name="px">The perspective distance X relative coordinate.
+   /// 1.20</param>
+   /// <param name="py">The perspective distance Y relative coordinate.
+   /// 1.20</param>
+   /// <param name="z0">The &quot;0&quot; Z plane value.
+   /// 1.20</param>
+   /// <param name="foc">The focal distance, must be greater than 0.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Perspective3dAbsolute( double px,  double py,  double z0,  double foc) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_perspective_3d_absolute_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), px,  py,  z0,  foc);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+   /// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+   /// <returns>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</returns>
+   virtual public  short GetLayer() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the layer of its canvas that the given object will be part of.
+   /// If you don&apos;t use this function, you&apos;ll be dealing with an unique layer of objects (the default one). Additional layers are handy when you don&apos;t want a set of objects to interfere with another set with regard to stacking. Two layers are completely disjoint in that matter.
+   /// 
+   /// This is a low-level function, which you&apos;d be using when something should be always on top, for example.
+   /// 
+   /// Warning: Don&apos;t change the layer of smart objects&apos; children. Smart objects have a layer of their own, which should contain all their child objects.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/></summary>
+   /// <param name="l">The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetLayer(  short l) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   virtual public Efl.Gfx.Stack GetBelow() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   virtual public Efl.Gfx.Stack GetAbove() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stack <c>obj</c> immediately <c>below</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>below</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>below</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="below">The object below which to stack</param>
+   /// <returns></returns>
+   virtual public  void StackBelow( Efl.Gfx.Stack below) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), below);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Raise <c>obj</c> to the top of its layer.
+   /// <c>obj</c> will, then, be the highest one in the layer it belongs to. Object on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.LowerToBottom"/></summary>
+   /// <returns></returns>
+   virtual public  void RaiseToTop() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_raise_to_top_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stack <c>obj</c> immediately <c>above</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>above</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>above</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="above">The object above which to stack</param>
+   /// <returns></returns>
+   virtual public  void StackAbove( Efl.Gfx.Stack above) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), above);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Lower <c>obj</c> to the bottom of its layer.
+   /// <c>obj</c> will, then, be the lowest one in the layer it belongs to. Objects on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.RaiseToTop"/></summary>
+   /// <returns></returns>
+   virtual public  void LowerToBottom() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Check if input events from a given seat is enabled.
+   /// 1.19</summary>
+   /// <param name="seat">The seat to act on.
+   /// 1.19</param>
+   /// <returns><c>true</c> to enable events for a seat or <c>false</c> otherwise.
+   /// 1.19</returns>
+   virtual public bool GetSeatEventFilter( Efl.Input.Device seat) {
+                         var _ret_var = Efl.Input.InterfaceNativeInherit.efl_input_seat_event_filter_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Add or remove a given seat to the filter list. If the filter list is empty this object will report mouse, keyboard and focus events from any seat, otherwise those events will only be reported if the event comes from a seat that is in the list.
+   /// 1.19</summary>
+   /// <param name="seat">The seat to act on.
+   /// 1.19</param>
+   /// <param name="enable"><c>true</c> to enable events for a seat or <c>false</c> otherwise.
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetSeatEventFilter( Efl.Input.Device seat,  bool enable) {
+                                           Efl.Input.InterfaceNativeInherit.efl_input_seat_event_filter_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat,  enable);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Whether this object should be mirrored.
+   /// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+   /// <returns><c>true</c> for RTL, <c>false</c> for LTR (default).</returns>
+   virtual public bool GetMirrored() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_mirrored_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether this object should be mirrored.
+   /// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+   /// <param name="rtl"><c>true</c> for RTL, <c>false</c> for LTR (default).</param>
+   /// <returns></returns>
+   virtual public  void SetMirrored( bool rtl) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_mirrored_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), rtl);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+   /// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+   /// 
+   /// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+   /// <returns>Whether the widget uses automatic mirroring</returns>
+   virtual public bool GetMirroredAutomatic() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_mirrored_automatic_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+   /// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+   /// 
+   /// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+   /// <param name="automatic">Whether the widget uses automatic mirroring</param>
+   /// <returns></returns>
+   virtual public  void SetMirroredAutomatic( bool automatic) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_mirrored_automatic_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), automatic);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the language for this object.</summary>
+   /// <returns>The current language.</returns>
+   virtual public  System.String GetLanguage() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_language_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the language for this object.</summary>
+   /// <param name="language">The current language.</param>
+   /// <returns></returns>
+   virtual public  void SetLanguage(  System.String language) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_language_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), language);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Low-level pointer behaviour.
+/// This function has a direct effect on event callbacks related to pointers (mouse, ...).
+/// 
+/// If the value is <see cref="Efl.Input.ObjectPointerMode.AutoGrab"/> (default), then when mouse is pressed down over this object, events will be restricted to it as source, mouse moves, for example, will be emitted even when the pointer goes outside this objects geometry.
+/// 
+/// If the value is <see cref="Efl.Input.ObjectPointerMode.NoGrab"/>, then events will be emitted just when inside this object area.
+/// 
+/// The default value is <see cref="Efl.Input.ObjectPointerMode.AutoGrab"/>. See also: <see cref="Efl.Canvas.Object.GetPointerModeByDevice"/> and <see cref="Efl.Canvas.Object.GetPointerModeByDevice"/> Note: This function will only set/get the mode for the default pointer.</summary>
+/// <value>Input pointer mode</value>
+   public Efl.Input.ObjectPointerMode PointerMode {
+      get { return GetPointerMode(); }
+      set { SetPointerMode( value); }
+   }
+   /// <summary>Render mode to be used for compositing the Evas object.
+/// Only two modes are supported: - <see cref="Efl.Gfx.RenderOp.Blend"/> means the object will be merged on top of objects below it using simple alpha compositing. - <see cref="Efl.Gfx.RenderOp.Copy"/> means this object&apos;s pixels will replace everything that is below, making this object opaque.
+/// 
+/// Please do not assume that <see cref="Efl.Gfx.RenderOp.Copy"/> mode can be used to &quot;poke&quot; holes in a window (to see through it), as only the compositor can ensure that. Copy mode should only be used with otherwise opaque widgets or inside non-window surfaces (eg. a transparent background inside a buffer canvas).</summary>
+/// <value>Blend or copy.</value>
+   public Efl.Gfx.RenderOp RenderOp {
+      get { return GetRenderOp(); }
+      set { SetRenderOp( value); }
+   }
+   /// <summary>Get the object clipping <c>obj</c> (if any).
+/// This function returns the object clipping <c>obj</c>. If <c>obj</c> is not being clipped at all, <c>null</c> is returned. The object <c>obj</c> must be a valid Evas_Object.</summary>
+/// <value>The object to clip <c>obj</c> by.</value>
+   public Efl.Canvas.Object Clipper {
+      get { return GetClipper(); }
+      set { SetClipper( value); }
+   }
+   /// <summary>Determine whether an object is set to repeat events.</summary>
+/// <value>Whether <c>obj</c> is to repeat events (<c>true</c>) or not (<c>false</c>).</value>
+   public bool RepeatEvents {
+      get { return GetRepeatEvents(); }
+      set { SetRepeatEvents( value); }
+   }
+   /// <summary>Indicates that this object is the keyboard event receiver on its canvas.
+/// Changing focus only affects where (key) input events go. There can be only one object focused at any time. If <c>focus</c> is <c>true</c>, <c>obj</c> will be set as the currently focused object and it will receive all keyboard events that are not exclusive key grabs on other objects. See also <see cref="Efl.Canvas.Object.CheckSeatFocus"/>, <see cref="Efl.Canvas.Object.AddSeatFocus"/>, <see cref="Efl.Canvas.Object.DelSeatFocus"/>.</summary>
+/// <value><c>true</c> when set as focused or <c>false</c> otherwise.</value>
+   public bool KeyFocus {
+      get { return GetKeyFocus(); }
+      set { SetKeyFocus( value); }
+   }
+   /// <summary>Check if this object is focused.
+/// 1.19</summary>
+/// <value><c>true</c> if focused by at least one seat or <c>false</c> otherwise.</value>
+   public bool SeatFocus {
+      get { return GetSeatFocus(); }
+   }
+   /// <summary>Determine whether an object is set to use precise point collision detection.</summary>
+/// <value>Whether to use precise point collision detection or not. The default value is false.</value>
+   public bool PreciseIsInside {
+      get { return GetPreciseIsInside(); }
+      set { SetPreciseIsInside( value); }
+   }
+   /// <summary>Retrieve whether an Evas object is set to propagate events.
+/// See also <see cref="Efl.Canvas.Object.GetRepeatEvents"/>, <see cref="Efl.Canvas.Object.GetPassEvents"/>.</summary>
+/// <value>Whether to propagate events (<c>true</c>) or not (<c>false</c>).</value>
+   public bool PropagateEvents {
+      get { return GetPropagateEvents(); }
+      set { SetPropagateEvents( value); }
+   }
+   /// <summary>Determine whether an object is set to pass (ignore) events.
+/// See also <see cref="Efl.Canvas.Object.GetRepeatEvents"/>, <see cref="Efl.Canvas.Object.GetPropagateEvents"/>.</summary>
+/// <value>Whether <c>obj</c> is to pass events (<c>true</c>) or not (<c>false</c>).</value>
+   public bool PassEvents {
+      get { return GetPassEvents(); }
+      set { SetPassEvents( value); }
+   }
+   /// <summary>Retrieves whether or not the given Evas object is to be drawn anti_aliased.</summary>
+/// <value><c>true</c> if the object is to be anti_aliased, <c>false</c> otherwise.</value>
+   public bool AntiAlias {
+      get { return GetAntiAlias(); }
+      set { SetAntiAlias( value); }
+   }
+   /// <summary>Return a list of objects currently clipped by <c>obj</c>.
+/// This returns the internal list handle containing all objects clipped by the object <c>obj</c>. If none are clipped by it, the call returns <c>null</c>. This list is only valid until the clip list is changed and should be fetched again with another call to this function if any objects being clipped by this object are unclipped, clipped by a new object, deleted or get the clipper deleted. These operations will invalidate the list returned, so it should not be used anymore after that point. Any use of the list after this may have undefined results, possibly leading to crashes.
+/// 
+/// See also <see cref="Efl.Canvas.Object.Clipper"/>.</summary>
+/// <value>An iterator over the list of objects clipped by <c>obj</c>.</value>
+   public Eina.Iterator<Efl.Canvas.Object> ClippedObjects {
+      get { return GetClippedObjects(); }
+   }
+   /// <summary>Gets the parent smart object of a given Evas object, if it has one.
+/// This can be different from <see cref="Efl.Object.Parent"/> because this one is used internally for rendering and the normal parent is what the user expects to be the parent.
+/// 1.18</summary>
+/// <value>The parent smart object of <c>obj</c> or <c>null</c>.</value>
+   public Efl.Canvas.Object RenderParent {
+      get { return GetRenderParent(); }
+   }
+   /// <summary>This handles text paragraph direction of the given object. Even if the given object is not textblock or text, its smart child objects can inherit the paragraph direction from the given object. The default paragraph direction is <c>inherit</c>.</summary>
+/// <value>Paragraph direction for the given object.</value>
+   public Efl.TextBidirectionalType ParagraphDirection {
+      get { return GetParagraphDirection(); }
+      set { SetParagraphDirection( value); }
+   }
+   /// <summary>Returns the state of the &quot;no-render&quot; flag, which means, when true, that an object should never be rendered on the canvas.
+/// This flag can be used to avoid rendering visible clippers on the canvas, even if they currently don&apos;t clip any object.
+/// 1.15</summary>
+/// <value>Enable &quot;no-render&quot; mode.</value>
+   public bool NoRender {
+      get { return GetNoRender(); }
+      set { SetNoRender( value); }
+   }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <value>the hex color code.</value>
+   public  System.String ColorCode {
+      get { return GetColorCode(); }
+      set { SetColorCode( value); }
+   }
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   public Eina.Size2D Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   public Eina.Rect Geometry {
+      get { return GetGeometry(); }
+      set { SetGeometry( value); }
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   public bool Visible {
+      get { return GetVisible(); }
+      set { SetVisible( value); }
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   public double Scale {
+      get { return GetScale(); }
+      set { SetScale( value); }
+   }
+   /// <summary>Hints on the object&apos;s maximum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Values -1 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+/// <value>Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</value>
+   public Eina.Size2D HintSizeMax {
+      get { return GetHintSizeMax(); }
+      set { SetHintSizeMax( value); }
+   }
+   /// <summary>Hints on the object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Value 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   public Eina.Size2D HintSizeMin {
+      get { return GetHintSizeMin(); }
+      set { SetHintSizeMin( value); }
+   }
+   /// <summary>Internal hints for an object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Values 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is internal and meant for widget developers to define the absolute minimum size of the object. EFL itself sets this size internally, so any change to it from an application might be ignored. Use <see cref="Efl.Gfx.Hint.HintSizeMin"/> instead.</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   public Eina.Size2D HintSizeRestrictedMin {
+      get { return GetHintSizeRestrictedMin(); }
+      set { SetHintSizeRestrictedMin( value); }
+   }
+   /// <summary>Read-only minimum size combining both <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> and <see cref="Efl.Gfx.Hint.HintSizeMin"/> hints.
+/// <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> is intended for mostly internal usage and widget developers, and <see cref="Efl.Gfx.Hint.HintSizeMin"/> is intended to be set from application side. <see cref="Efl.Gfx.Hint.GetHintSizeCombinedMin"/> combines both values by taking their repective maximum (in both width and height), and is used internally to get an object&apos;s minimum size.</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   public Eina.Size2D HintSizeCombinedMin {
+      get { return GetHintSizeCombinedMin(); }
+   }
+   /// <summary>Number of points of a map.
+/// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+/// 1.20</summary>
+/// <value>The number of points of map
+/// 1.20</value>
+   public  int MappingPointCount {
+      get { return GetMappingPointCount(); }
+      set { SetMappingPointCount( value); }
+   }
+   /// <summary>Clockwise state of a map (read-only).
+/// This determines if the output points (X and Y. Z is not used) are clockwise or counter-clockwise. This can be used for &quot;back-face culling&quot;. This is where you hide objects that &quot;face away&quot; from you. In this case objects that are not clockwise.
+/// 1.20</summary>
+/// <value><c>true</c> if clockwise, <c>false</c> if counter clockwise
+/// 1.20</value>
+   public bool MappingClockwise {
+      get { return GetMappingClockwise(); }
+   }
+   /// <summary>Smoothing state for map rendering.
+/// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+/// 1.20</summary>
+/// <value><c>true</c> by default.
+/// 1.20</value>
+   public bool MappingSmooth {
+      get { return GetMappingSmooth(); }
+      set { SetMappingSmooth( value); }
+   }
+   /// <summary>Alpha flag for map rendering.
+/// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+/// 
+/// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+/// 1.20</summary>
+/// <value><c>true</c> by default.
+/// 1.20</value>
+   public bool MappingAlpha {
+      get { return GetMappingAlpha(); }
+      set { SetMappingAlpha( value); }
+   }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+/// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+/// <value>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</value>
+   public  short Layer {
+      get { return GetLayer(); }
+      set { SetLayer( value); }
+   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Below {
+      get { return GetBelow(); }
+   }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Above {
+      get { return GetAbove(); }
+   }
+   /// <summary>Whether this object should be mirrored.
+/// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+/// <value><c>true</c> for RTL, <c>false</c> for LTR (default).</value>
+   public bool Mirrored {
+      get { return GetMirrored(); }
+      set { SetMirrored( value); }
+   }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+/// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+/// 
+/// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+/// <value>Whether the widget uses automatic mirroring</value>
+   public bool MirroredAutomatic {
+      get { return GetMirroredAutomatic(); }
+      set { SetMirroredAutomatic( value); }
+   }
+   /// <summary>The (human) language for this object.</summary>
+/// <value>The current language.</value>
+   public  System.String Language {
+      get { return GetLanguage(); }
+      set { SetLanguage( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Object.efl_canvas_object_class_get();
+   }
+}
+public class ObjectNativeInherit : Efl.LoopConsumerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_object_pointer_mode_by_device_get_static_delegate == null)
+      efl_canvas_object_pointer_mode_by_device_get_static_delegate = new efl_canvas_object_pointer_mode_by_device_get_delegate(pointer_mode_by_device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_pointer_mode_by_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_pointer_mode_by_device_get_static_delegate)});
+      if (efl_canvas_object_pointer_mode_by_device_set_static_delegate == null)
+      efl_canvas_object_pointer_mode_by_device_set_static_delegate = new efl_canvas_object_pointer_mode_by_device_set_delegate(pointer_mode_by_device_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_pointer_mode_by_device_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_pointer_mode_by_device_set_static_delegate)});
+      if (efl_canvas_object_pointer_mode_get_static_delegate == null)
+      efl_canvas_object_pointer_mode_get_static_delegate = new efl_canvas_object_pointer_mode_get_delegate(pointer_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_pointer_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_pointer_mode_get_static_delegate)});
+      if (efl_canvas_object_pointer_mode_set_static_delegate == null)
+      efl_canvas_object_pointer_mode_set_static_delegate = new efl_canvas_object_pointer_mode_set_delegate(pointer_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_pointer_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_pointer_mode_set_static_delegate)});
+      if (efl_canvas_object_render_op_get_static_delegate == null)
+      efl_canvas_object_render_op_get_static_delegate = new efl_canvas_object_render_op_get_delegate(render_op_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_render_op_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_render_op_get_static_delegate)});
+      if (efl_canvas_object_render_op_set_static_delegate == null)
+      efl_canvas_object_render_op_set_static_delegate = new efl_canvas_object_render_op_set_delegate(render_op_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_render_op_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_render_op_set_static_delegate)});
+      if (efl_canvas_object_clipper_get_static_delegate == null)
+      efl_canvas_object_clipper_get_static_delegate = new efl_canvas_object_clipper_get_delegate(clipper_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_clipper_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_clipper_get_static_delegate)});
+      if (efl_canvas_object_clipper_set_static_delegate == null)
+      efl_canvas_object_clipper_set_static_delegate = new efl_canvas_object_clipper_set_delegate(clipper_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_clipper_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_clipper_set_static_delegate)});
+      if (efl_canvas_object_repeat_events_get_static_delegate == null)
+      efl_canvas_object_repeat_events_get_static_delegate = new efl_canvas_object_repeat_events_get_delegate(repeat_events_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_repeat_events_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_repeat_events_get_static_delegate)});
+      if (efl_canvas_object_repeat_events_set_static_delegate == null)
+      efl_canvas_object_repeat_events_set_static_delegate = new efl_canvas_object_repeat_events_set_delegate(repeat_events_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_repeat_events_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_repeat_events_set_static_delegate)});
+      if (efl_canvas_object_key_focus_get_static_delegate == null)
+      efl_canvas_object_key_focus_get_static_delegate = new efl_canvas_object_key_focus_get_delegate(key_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_key_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_key_focus_get_static_delegate)});
+      if (efl_canvas_object_key_focus_set_static_delegate == null)
+      efl_canvas_object_key_focus_set_static_delegate = new efl_canvas_object_key_focus_set_delegate(key_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_key_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_key_focus_set_static_delegate)});
+      if (efl_canvas_object_seat_focus_get_static_delegate == null)
+      efl_canvas_object_seat_focus_get_static_delegate = new efl_canvas_object_seat_focus_get_delegate(seat_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_seat_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_seat_focus_get_static_delegate)});
+      if (efl_canvas_object_precise_is_inside_get_static_delegate == null)
+      efl_canvas_object_precise_is_inside_get_static_delegate = new efl_canvas_object_precise_is_inside_get_delegate(precise_is_inside_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_precise_is_inside_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_precise_is_inside_get_static_delegate)});
+      if (efl_canvas_object_precise_is_inside_set_static_delegate == null)
+      efl_canvas_object_precise_is_inside_set_static_delegate = new efl_canvas_object_precise_is_inside_set_delegate(precise_is_inside_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_precise_is_inside_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_precise_is_inside_set_static_delegate)});
+      if (efl_canvas_object_propagate_events_get_static_delegate == null)
+      efl_canvas_object_propagate_events_get_static_delegate = new efl_canvas_object_propagate_events_get_delegate(propagate_events_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_propagate_events_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_propagate_events_get_static_delegate)});
+      if (efl_canvas_object_propagate_events_set_static_delegate == null)
+      efl_canvas_object_propagate_events_set_static_delegate = new efl_canvas_object_propagate_events_set_delegate(propagate_events_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_propagate_events_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_propagate_events_set_static_delegate)});
+      if (efl_canvas_object_pass_events_get_static_delegate == null)
+      efl_canvas_object_pass_events_get_static_delegate = new efl_canvas_object_pass_events_get_delegate(pass_events_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_pass_events_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_pass_events_get_static_delegate)});
+      if (efl_canvas_object_pass_events_set_static_delegate == null)
+      efl_canvas_object_pass_events_set_static_delegate = new efl_canvas_object_pass_events_set_delegate(pass_events_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_pass_events_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_pass_events_set_static_delegate)});
+      if (efl_canvas_object_anti_alias_get_static_delegate == null)
+      efl_canvas_object_anti_alias_get_static_delegate = new efl_canvas_object_anti_alias_get_delegate(anti_alias_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_anti_alias_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_anti_alias_get_static_delegate)});
+      if (efl_canvas_object_anti_alias_set_static_delegate == null)
+      efl_canvas_object_anti_alias_set_static_delegate = new efl_canvas_object_anti_alias_set_delegate(anti_alias_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_anti_alias_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_anti_alias_set_static_delegate)});
+      if (efl_canvas_object_clipped_objects_get_static_delegate == null)
+      efl_canvas_object_clipped_objects_get_static_delegate = new efl_canvas_object_clipped_objects_get_delegate(clipped_objects_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_clipped_objects_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_clipped_objects_get_static_delegate)});
+      if (efl_canvas_object_render_parent_get_static_delegate == null)
+      efl_canvas_object_render_parent_get_static_delegate = new efl_canvas_object_render_parent_get_delegate(render_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_render_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_render_parent_get_static_delegate)});
+      if (efl_canvas_object_paragraph_direction_get_static_delegate == null)
+      efl_canvas_object_paragraph_direction_get_static_delegate = new efl_canvas_object_paragraph_direction_get_delegate(paragraph_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_paragraph_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_paragraph_direction_get_static_delegate)});
+      if (efl_canvas_object_paragraph_direction_set_static_delegate == null)
+      efl_canvas_object_paragraph_direction_set_static_delegate = new efl_canvas_object_paragraph_direction_set_delegate(paragraph_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_paragraph_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_paragraph_direction_set_static_delegate)});
+      if (efl_canvas_object_no_render_get_static_delegate == null)
+      efl_canvas_object_no_render_get_static_delegate = new efl_canvas_object_no_render_get_delegate(no_render_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_no_render_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_no_render_get_static_delegate)});
+      if (efl_canvas_object_no_render_set_static_delegate == null)
+      efl_canvas_object_no_render_set_static_delegate = new efl_canvas_object_no_render_set_delegate(no_render_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_no_render_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_no_render_set_static_delegate)});
+      if (efl_canvas_object_coords_inside_get_static_delegate == null)
+      efl_canvas_object_coords_inside_get_static_delegate = new efl_canvas_object_coords_inside_get_delegate(coords_inside_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_coords_inside_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_coords_inside_get_static_delegate)});
+      if (efl_canvas_object_seat_focus_check_static_delegate == null)
+      efl_canvas_object_seat_focus_check_static_delegate = new efl_canvas_object_seat_focus_check_delegate(seat_focus_check);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_seat_focus_check"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_seat_focus_check_static_delegate)});
+      if (efl_canvas_object_seat_focus_add_static_delegate == null)
+      efl_canvas_object_seat_focus_add_static_delegate = new efl_canvas_object_seat_focus_add_delegate(seat_focus_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_seat_focus_add"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_seat_focus_add_static_delegate)});
+      if (efl_canvas_object_seat_focus_del_static_delegate == null)
+      efl_canvas_object_seat_focus_del_static_delegate = new efl_canvas_object_seat_focus_del_delegate(seat_focus_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_seat_focus_del"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_seat_focus_del_static_delegate)});
+      if (efl_canvas_object_clipped_objects_count_static_delegate == null)
+      efl_canvas_object_clipped_objects_count_static_delegate = new efl_canvas_object_clipped_objects_count_delegate(clipped_objects_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_clipped_objects_count"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_clipped_objects_count_static_delegate)});
+      if (efl_canvas_object_key_grab_static_delegate == null)
+      efl_canvas_object_key_grab_static_delegate = new efl_canvas_object_key_grab_delegate(key_grab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_key_grab"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_key_grab_static_delegate)});
+      if (efl_canvas_object_key_ungrab_static_delegate == null)
+      efl_canvas_object_key_ungrab_static_delegate = new efl_canvas_object_key_ungrab_delegate(key_ungrab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_object_key_ungrab"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_object_key_ungrab_static_delegate)});
+      if (efl_canvas_pointer_inside_get_static_delegate == null)
+      efl_canvas_pointer_inside_get_static_delegate = new efl_canvas_pointer_inside_get_delegate(pointer_inside_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_pointer_inside_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_pointer_inside_get_static_delegate)});
+      if (efl_gfx_color_get_static_delegate == null)
+      efl_gfx_color_get_static_delegate = new efl_gfx_color_get_delegate(color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_get_static_delegate)});
+      if (efl_gfx_color_set_static_delegate == null)
+      efl_gfx_color_set_static_delegate = new efl_gfx_color_set_delegate(color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_set_static_delegate)});
+      if (efl_gfx_color_code_get_static_delegate == null)
+      efl_gfx_color_code_get_static_delegate = new efl_gfx_color_code_get_delegate(color_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_get_static_delegate)});
+      if (efl_gfx_color_code_set_static_delegate == null)
+      efl_gfx_color_code_set_static_delegate = new efl_gfx_color_code_set_delegate(color_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_set_static_delegate)});
+      if (efl_gfx_entity_position_get_static_delegate == null)
+      efl_gfx_entity_position_get_static_delegate = new efl_gfx_entity_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_get_static_delegate)});
+      if (efl_gfx_entity_position_set_static_delegate == null)
+      efl_gfx_entity_position_set_static_delegate = new efl_gfx_entity_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_set_static_delegate)});
+      if (efl_gfx_entity_size_get_static_delegate == null)
+      efl_gfx_entity_size_get_static_delegate = new efl_gfx_entity_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_get_static_delegate)});
+      if (efl_gfx_entity_size_set_static_delegate == null)
+      efl_gfx_entity_size_set_static_delegate = new efl_gfx_entity_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_set_static_delegate)});
+      if (efl_gfx_entity_geometry_get_static_delegate == null)
+      efl_gfx_entity_geometry_get_static_delegate = new efl_gfx_entity_geometry_get_delegate(geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_get_static_delegate)});
+      if (efl_gfx_entity_geometry_set_static_delegate == null)
+      efl_gfx_entity_geometry_set_static_delegate = new efl_gfx_entity_geometry_set_delegate(geometry_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_set_static_delegate)});
+      if (efl_gfx_entity_visible_get_static_delegate == null)
+      efl_gfx_entity_visible_get_static_delegate = new efl_gfx_entity_visible_get_delegate(visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_get_static_delegate)});
+      if (efl_gfx_entity_visible_set_static_delegate == null)
+      efl_gfx_entity_visible_set_static_delegate = new efl_gfx_entity_visible_set_delegate(visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_set_static_delegate)});
+      if (efl_gfx_entity_scale_get_static_delegate == null)
+      efl_gfx_entity_scale_get_static_delegate = new efl_gfx_entity_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_get_static_delegate)});
+      if (efl_gfx_entity_scale_set_static_delegate == null)
+      efl_gfx_entity_scale_set_static_delegate = new efl_gfx_entity_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_set_static_delegate)});
+      if (efl_gfx_hint_aspect_get_static_delegate == null)
+      efl_gfx_hint_aspect_get_static_delegate = new efl_gfx_hint_aspect_get_delegate(hint_aspect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_aspect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_aspect_get_static_delegate)});
+      if (efl_gfx_hint_aspect_set_static_delegate == null)
+      efl_gfx_hint_aspect_set_static_delegate = new efl_gfx_hint_aspect_set_delegate(hint_aspect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_aspect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_aspect_set_static_delegate)});
+      if (efl_gfx_hint_size_max_get_static_delegate == null)
+      efl_gfx_hint_size_max_get_static_delegate = new efl_gfx_hint_size_max_get_delegate(hint_size_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_max_get_static_delegate)});
+      if (efl_gfx_hint_size_max_set_static_delegate == null)
+      efl_gfx_hint_size_max_set_static_delegate = new efl_gfx_hint_size_max_set_delegate(hint_size_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_max_set_static_delegate)});
+      if (efl_gfx_hint_size_min_get_static_delegate == null)
+      efl_gfx_hint_size_min_get_static_delegate = new efl_gfx_hint_size_min_get_delegate(hint_size_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_min_get_static_delegate)});
+      if (efl_gfx_hint_size_min_set_static_delegate == null)
+      efl_gfx_hint_size_min_set_static_delegate = new efl_gfx_hint_size_min_set_delegate(hint_size_min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_min_set_static_delegate)});
+      if (efl_gfx_hint_size_restricted_min_get_static_delegate == null)
+      efl_gfx_hint_size_restricted_min_get_static_delegate = new efl_gfx_hint_size_restricted_min_get_delegate(hint_size_restricted_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_restricted_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_restricted_min_get_static_delegate)});
+      if (efl_gfx_hint_size_restricted_min_set_static_delegate == null)
+      efl_gfx_hint_size_restricted_min_set_static_delegate = new efl_gfx_hint_size_restricted_min_set_delegate(hint_size_restricted_min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_restricted_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_restricted_min_set_static_delegate)});
+      if (efl_gfx_hint_size_combined_min_get_static_delegate == null)
+      efl_gfx_hint_size_combined_min_get_static_delegate = new efl_gfx_hint_size_combined_min_get_delegate(hint_size_combined_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_combined_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_combined_min_get_static_delegate)});
+      if (efl_gfx_hint_margin_get_static_delegate == null)
+      efl_gfx_hint_margin_get_static_delegate = new efl_gfx_hint_margin_get_delegate(hint_margin_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_margin_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_margin_get_static_delegate)});
+      if (efl_gfx_hint_margin_set_static_delegate == null)
+      efl_gfx_hint_margin_set_static_delegate = new efl_gfx_hint_margin_set_delegate(hint_margin_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_margin_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_margin_set_static_delegate)});
+      if (efl_gfx_hint_weight_get_static_delegate == null)
+      efl_gfx_hint_weight_get_static_delegate = new efl_gfx_hint_weight_get_delegate(hint_weight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_weight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_weight_get_static_delegate)});
+      if (efl_gfx_hint_weight_set_static_delegate == null)
+      efl_gfx_hint_weight_set_static_delegate = new efl_gfx_hint_weight_set_delegate(hint_weight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_weight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_weight_set_static_delegate)});
+      if (efl_gfx_hint_align_get_static_delegate == null)
+      efl_gfx_hint_align_get_static_delegate = new efl_gfx_hint_align_get_delegate(hint_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_align_get_static_delegate)});
+      if (efl_gfx_hint_align_set_static_delegate == null)
+      efl_gfx_hint_align_set_static_delegate = new efl_gfx_hint_align_set_delegate(hint_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_align_set_static_delegate)});
+      if (efl_gfx_hint_fill_get_static_delegate == null)
+      efl_gfx_hint_fill_get_static_delegate = new efl_gfx_hint_fill_get_delegate(hint_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_fill_get_static_delegate)});
+      if (efl_gfx_hint_fill_set_static_delegate == null)
+      efl_gfx_hint_fill_set_static_delegate = new efl_gfx_hint_fill_set_delegate(hint_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_fill_set_static_delegate)});
+      if (efl_gfx_mapping_point_count_get_static_delegate == null)
+      efl_gfx_mapping_point_count_get_static_delegate = new efl_gfx_mapping_point_count_get_delegate(mapping_point_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_point_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_point_count_get_static_delegate)});
+      if (efl_gfx_mapping_point_count_set_static_delegate == null)
+      efl_gfx_mapping_point_count_set_static_delegate = new efl_gfx_mapping_point_count_set_delegate(mapping_point_count_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_point_count_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_point_count_set_static_delegate)});
+      if (efl_gfx_mapping_clockwise_get_static_delegate == null)
+      efl_gfx_mapping_clockwise_get_static_delegate = new efl_gfx_mapping_clockwise_get_delegate(mapping_clockwise_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_clockwise_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_clockwise_get_static_delegate)});
+      if (efl_gfx_mapping_smooth_get_static_delegate == null)
+      efl_gfx_mapping_smooth_get_static_delegate = new efl_gfx_mapping_smooth_get_delegate(mapping_smooth_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_smooth_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_smooth_get_static_delegate)});
+      if (efl_gfx_mapping_smooth_set_static_delegate == null)
+      efl_gfx_mapping_smooth_set_static_delegate = new efl_gfx_mapping_smooth_set_delegate(mapping_smooth_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_smooth_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_smooth_set_static_delegate)});
+      if (efl_gfx_mapping_alpha_get_static_delegate == null)
+      efl_gfx_mapping_alpha_get_static_delegate = new efl_gfx_mapping_alpha_get_delegate(mapping_alpha_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_alpha_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_alpha_get_static_delegate)});
+      if (efl_gfx_mapping_alpha_set_static_delegate == null)
+      efl_gfx_mapping_alpha_set_static_delegate = new efl_gfx_mapping_alpha_set_delegate(mapping_alpha_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_alpha_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_alpha_set_static_delegate)});
+      if (efl_gfx_mapping_coord_absolute_get_static_delegate == null)
+      efl_gfx_mapping_coord_absolute_get_static_delegate = new efl_gfx_mapping_coord_absolute_get_delegate(mapping_coord_absolute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_coord_absolute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_coord_absolute_get_static_delegate)});
+      if (efl_gfx_mapping_coord_absolute_set_static_delegate == null)
+      efl_gfx_mapping_coord_absolute_set_static_delegate = new efl_gfx_mapping_coord_absolute_set_delegate(mapping_coord_absolute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_coord_absolute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_coord_absolute_set_static_delegate)});
+      if (efl_gfx_mapping_uv_get_static_delegate == null)
+      efl_gfx_mapping_uv_get_static_delegate = new efl_gfx_mapping_uv_get_delegate(mapping_uv_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_uv_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_uv_get_static_delegate)});
+      if (efl_gfx_mapping_uv_set_static_delegate == null)
+      efl_gfx_mapping_uv_set_static_delegate = new efl_gfx_mapping_uv_set_delegate(mapping_uv_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_uv_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_uv_set_static_delegate)});
+      if (efl_gfx_mapping_color_get_static_delegate == null)
+      efl_gfx_mapping_color_get_static_delegate = new efl_gfx_mapping_color_get_delegate(mapping_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_color_get_static_delegate)});
+      if (efl_gfx_mapping_color_set_static_delegate == null)
+      efl_gfx_mapping_color_set_static_delegate = new efl_gfx_mapping_color_set_delegate(mapping_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_color_set_static_delegate)});
+      if (efl_gfx_mapping_has_static_delegate == null)
+      efl_gfx_mapping_has_static_delegate = new efl_gfx_mapping_has_delegate(mapping_has);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_has"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_has_static_delegate)});
+      if (efl_gfx_mapping_reset_static_delegate == null)
+      efl_gfx_mapping_reset_static_delegate = new efl_gfx_mapping_reset_delegate(mapping_reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_reset_static_delegate)});
+      if (efl_gfx_mapping_translate_static_delegate == null)
+      efl_gfx_mapping_translate_static_delegate = new efl_gfx_mapping_translate_delegate(translate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_translate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_translate_static_delegate)});
+      if (efl_gfx_mapping_rotate_static_delegate == null)
+      efl_gfx_mapping_rotate_static_delegate = new efl_gfx_mapping_rotate_delegate(rotate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_static_delegate)});
+      if (efl_gfx_mapping_rotate_3d_static_delegate == null)
+      efl_gfx_mapping_rotate_3d_static_delegate = new efl_gfx_mapping_rotate_3d_delegate(rotate_3d);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_3d"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_3d_static_delegate)});
+      if (efl_gfx_mapping_rotate_quat_static_delegate == null)
+      efl_gfx_mapping_rotate_quat_static_delegate = new efl_gfx_mapping_rotate_quat_delegate(rotate_quat);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_quat"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_quat_static_delegate)});
+      if (efl_gfx_mapping_zoom_static_delegate == null)
+      efl_gfx_mapping_zoom_static_delegate = new efl_gfx_mapping_zoom_delegate(zoom);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_zoom"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_zoom_static_delegate)});
+      if (efl_gfx_mapping_lighting_3d_static_delegate == null)
+      efl_gfx_mapping_lighting_3d_static_delegate = new efl_gfx_mapping_lighting_3d_delegate(lighting_3d);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_lighting_3d"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_lighting_3d_static_delegate)});
+      if (efl_gfx_mapping_perspective_3d_static_delegate == null)
+      efl_gfx_mapping_perspective_3d_static_delegate = new efl_gfx_mapping_perspective_3d_delegate(perspective_3d);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_perspective_3d"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_perspective_3d_static_delegate)});
+      if (efl_gfx_mapping_rotate_absolute_static_delegate == null)
+      efl_gfx_mapping_rotate_absolute_static_delegate = new efl_gfx_mapping_rotate_absolute_delegate(rotate_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_absolute_static_delegate)});
+      if (efl_gfx_mapping_rotate_3d_absolute_static_delegate == null)
+      efl_gfx_mapping_rotate_3d_absolute_static_delegate = new efl_gfx_mapping_rotate_3d_absolute_delegate(rotate_3d_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_3d_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_3d_absolute_static_delegate)});
+      if (efl_gfx_mapping_rotate_quat_absolute_static_delegate == null)
+      efl_gfx_mapping_rotate_quat_absolute_static_delegate = new efl_gfx_mapping_rotate_quat_absolute_delegate(rotate_quat_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_quat_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_quat_absolute_static_delegate)});
+      if (efl_gfx_mapping_zoom_absolute_static_delegate == null)
+      efl_gfx_mapping_zoom_absolute_static_delegate = new efl_gfx_mapping_zoom_absolute_delegate(zoom_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_zoom_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_zoom_absolute_static_delegate)});
+      if (efl_gfx_mapping_lighting_3d_absolute_static_delegate == null)
+      efl_gfx_mapping_lighting_3d_absolute_static_delegate = new efl_gfx_mapping_lighting_3d_absolute_delegate(lighting_3d_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_lighting_3d_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_lighting_3d_absolute_static_delegate)});
+      if (efl_gfx_mapping_perspective_3d_absolute_static_delegate == null)
+      efl_gfx_mapping_perspective_3d_absolute_static_delegate = new efl_gfx_mapping_perspective_3d_absolute_delegate(perspective_3d_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_perspective_3d_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_perspective_3d_absolute_static_delegate)});
+      if (efl_gfx_stack_layer_get_static_delegate == null)
+      efl_gfx_stack_layer_get_static_delegate = new efl_gfx_stack_layer_get_delegate(layer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_get_static_delegate)});
+      if (efl_gfx_stack_layer_set_static_delegate == null)
+      efl_gfx_stack_layer_set_static_delegate = new efl_gfx_stack_layer_set_delegate(layer_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_set_static_delegate)});
+      if (efl_gfx_stack_below_get_static_delegate == null)
+      efl_gfx_stack_below_get_static_delegate = new efl_gfx_stack_below_get_delegate(below_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_get_static_delegate)});
+      if (efl_gfx_stack_above_get_static_delegate == null)
+      efl_gfx_stack_above_get_static_delegate = new efl_gfx_stack_above_get_delegate(above_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_get_static_delegate)});
+      if (efl_gfx_stack_below_static_delegate == null)
+      efl_gfx_stack_below_static_delegate = new efl_gfx_stack_below_delegate(stack_below);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_static_delegate)});
+      if (efl_gfx_stack_raise_to_top_static_delegate == null)
+      efl_gfx_stack_raise_to_top_static_delegate = new efl_gfx_stack_raise_to_top_delegate(raise_to_top);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_raise_to_top"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_raise_to_top_static_delegate)});
+      if (efl_gfx_stack_above_static_delegate == null)
+      efl_gfx_stack_above_static_delegate = new efl_gfx_stack_above_delegate(stack_above);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_static_delegate)});
+      if (efl_gfx_stack_lower_to_bottom_static_delegate == null)
+      efl_gfx_stack_lower_to_bottom_static_delegate = new efl_gfx_stack_lower_to_bottom_delegate(lower_to_bottom);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_lower_to_bottom"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_lower_to_bottom_static_delegate)});
+      if (efl_input_seat_event_filter_get_static_delegate == null)
+      efl_input_seat_event_filter_get_static_delegate = new efl_input_seat_event_filter_get_delegate(seat_event_filter_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_seat_event_filter_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_seat_event_filter_get_static_delegate)});
+      if (efl_input_seat_event_filter_set_static_delegate == null)
+      efl_input_seat_event_filter_set_static_delegate = new efl_input_seat_event_filter_set_delegate(seat_event_filter_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_seat_event_filter_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_seat_event_filter_set_static_delegate)});
+      if (efl_ui_mirrored_get_static_delegate == null)
+      efl_ui_mirrored_get_static_delegate = new efl_ui_mirrored_get_delegate(mirrored_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_get_static_delegate)});
+      if (efl_ui_mirrored_set_static_delegate == null)
+      efl_ui_mirrored_set_static_delegate = new efl_ui_mirrored_set_delegate(mirrored_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_set_static_delegate)});
+      if (efl_ui_mirrored_automatic_get_static_delegate == null)
+      efl_ui_mirrored_automatic_get_static_delegate = new efl_ui_mirrored_automatic_get_delegate(mirrored_automatic_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_automatic_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_automatic_get_static_delegate)});
+      if (efl_ui_mirrored_automatic_set_static_delegate == null)
+      efl_ui_mirrored_automatic_set_static_delegate = new efl_ui_mirrored_automatic_set_delegate(mirrored_automatic_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_automatic_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_automatic_set_static_delegate)});
+      if (efl_ui_language_get_static_delegate == null)
+      efl_ui_language_get_static_delegate = new efl_ui_language_get_delegate(language_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_language_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_language_get_static_delegate)});
+      if (efl_ui_language_set_static_delegate == null)
+      efl_ui_language_set_static_delegate = new efl_ui_language_set_delegate(language_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_language_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_language_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Object.efl_canvas_object_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Object.efl_canvas_object_class_get();
+   }
+
+
+    private delegate Efl.Input.ObjectPointerMode efl_canvas_object_pointer_mode_by_device_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+
+
+    public delegate Efl.Input.ObjectPointerMode efl_canvas_object_pointer_mode_by_device_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_by_device_get_api_delegate> efl_canvas_object_pointer_mode_by_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_by_device_get_api_delegate>(_Module, "efl_canvas_object_pointer_mode_by_device_get");
+    private static Efl.Input.ObjectPointerMode pointer_mode_by_device_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device dev)
+   {
+      Eina.Log.Debug("function efl_canvas_object_pointer_mode_by_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Input.ObjectPointerMode _ret_var = default(Efl.Input.ObjectPointerMode);
+         try {
+            _ret_var = ((Object)wrapper).GetPointerModeByDevice( dev);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_object_pointer_mode_by_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dev);
+      }
+   }
+   private static efl_canvas_object_pointer_mode_by_device_get_delegate efl_canvas_object_pointer_mode_by_device_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_pointer_mode_by_device_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev,   Efl.Input.ObjectPointerMode pointer_mode);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_pointer_mode_by_device_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev,   Efl.Input.ObjectPointerMode pointer_mode);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_by_device_set_api_delegate> efl_canvas_object_pointer_mode_by_device_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_by_device_set_api_delegate>(_Module, "efl_canvas_object_pointer_mode_by_device_set");
+    private static bool pointer_mode_by_device_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device dev,  Efl.Input.ObjectPointerMode pointer_mode)
+   {
+      Eina.Log.Debug("function efl_canvas_object_pointer_mode_by_device_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).SetPointerModeByDevice( dev,  pointer_mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_object_pointer_mode_by_device_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dev,  pointer_mode);
+      }
+   }
+   private static efl_canvas_object_pointer_mode_by_device_set_delegate efl_canvas_object_pointer_mode_by_device_set_static_delegate;
+
+
+    private delegate Efl.Input.ObjectPointerMode efl_canvas_object_pointer_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Input.ObjectPointerMode efl_canvas_object_pointer_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_get_api_delegate> efl_canvas_object_pointer_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_get_api_delegate>(_Module, "efl_canvas_object_pointer_mode_get");
+    private static Efl.Input.ObjectPointerMode pointer_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_pointer_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.ObjectPointerMode _ret_var = default(Efl.Input.ObjectPointerMode);
+         try {
+            _ret_var = ((Object)wrapper).GetPointerMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_pointer_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_pointer_mode_get_delegate efl_canvas_object_pointer_mode_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_pointer_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.ObjectPointerMode pointer_mode);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_pointer_mode_set_api_delegate(System.IntPtr obj,   Efl.Input.ObjectPointerMode pointer_mode);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_set_api_delegate> efl_canvas_object_pointer_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_pointer_mode_set_api_delegate>(_Module, "efl_canvas_object_pointer_mode_set");
+    private static bool pointer_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.ObjectPointerMode pointer_mode)
+   {
+      Eina.Log.Debug("function efl_canvas_object_pointer_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).SetPointerMode( pointer_mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_object_pointer_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pointer_mode);
+      }
+   }
+   private static efl_canvas_object_pointer_mode_set_delegate efl_canvas_object_pointer_mode_set_static_delegate;
+
+
+    private delegate Efl.Gfx.RenderOp efl_canvas_object_render_op_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.RenderOp efl_canvas_object_render_op_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_render_op_get_api_delegate> efl_canvas_object_render_op_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_render_op_get_api_delegate>(_Module, "efl_canvas_object_render_op_get");
+    private static Efl.Gfx.RenderOp render_op_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_render_op_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.RenderOp _ret_var = default(Efl.Gfx.RenderOp);
+         try {
+            _ret_var = ((Object)wrapper).GetRenderOp();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_render_op_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_render_op_get_delegate efl_canvas_object_render_op_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_render_op_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.RenderOp render_op);
+
+
+    public delegate  void efl_canvas_object_render_op_set_api_delegate(System.IntPtr obj,   Efl.Gfx.RenderOp render_op);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_render_op_set_api_delegate> efl_canvas_object_render_op_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_render_op_set_api_delegate>(_Module, "efl_canvas_object_render_op_set");
+    private static  void render_op_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.RenderOp render_op)
+   {
+      Eina.Log.Debug("function efl_canvas_object_render_op_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetRenderOp( render_op);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_render_op_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  render_op);
+      }
+   }
+   private static efl_canvas_object_render_op_set_delegate efl_canvas_object_render_op_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_canvas_object_clipper_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_canvas_object_clipper_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_clipper_get_api_delegate> efl_canvas_object_clipper_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_clipper_get_api_delegate>(_Module, "efl_canvas_object_clipper_get");
+    private static Efl.Canvas.Object clipper_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_clipper_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Object)wrapper).GetClipper();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_clipper_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_clipper_get_delegate efl_canvas_object_clipper_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_clipper_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object clipper);
+
+
+    public delegate  void efl_canvas_object_clipper_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object clipper);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_clipper_set_api_delegate> efl_canvas_object_clipper_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_clipper_set_api_delegate>(_Module, "efl_canvas_object_clipper_set");
+    private static  void clipper_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object clipper)
+   {
+      Eina.Log.Debug("function efl_canvas_object_clipper_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetClipper( clipper);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_clipper_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  clipper);
+      }
+   }
+   private static efl_canvas_object_clipper_set_delegate efl_canvas_object_clipper_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_repeat_events_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_repeat_events_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_repeat_events_get_api_delegate> efl_canvas_object_repeat_events_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_repeat_events_get_api_delegate>(_Module, "efl_canvas_object_repeat_events_get");
+    private static bool repeat_events_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_repeat_events_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetRepeatEvents();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_repeat_events_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_repeat_events_get_delegate efl_canvas_object_repeat_events_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_repeat_events_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool repeat);
+
+
+    public delegate  void efl_canvas_object_repeat_events_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool repeat);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_repeat_events_set_api_delegate> efl_canvas_object_repeat_events_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_repeat_events_set_api_delegate>(_Module, "efl_canvas_object_repeat_events_set");
+    private static  void repeat_events_set(System.IntPtr obj, System.IntPtr pd,  bool repeat)
+   {
+      Eina.Log.Debug("function efl_canvas_object_repeat_events_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetRepeatEvents( repeat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_repeat_events_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repeat);
+      }
+   }
+   private static efl_canvas_object_repeat_events_set_delegate efl_canvas_object_repeat_events_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_key_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_key_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_key_focus_get_api_delegate> efl_canvas_object_key_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_key_focus_get_api_delegate>(_Module, "efl_canvas_object_key_focus_get");
+    private static bool key_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_key_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetKeyFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_key_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_key_focus_get_delegate efl_canvas_object_key_focus_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_key_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+
+
+    public delegate  void efl_canvas_object_key_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_key_focus_set_api_delegate> efl_canvas_object_key_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_key_focus_set_api_delegate>(_Module, "efl_canvas_object_key_focus_set");
+    private static  void key_focus_set(System.IntPtr obj, System.IntPtr pd,  bool focus)
+   {
+      Eina.Log.Debug("function efl_canvas_object_key_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetKeyFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_key_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_canvas_object_key_focus_set_delegate efl_canvas_object_key_focus_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_seat_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_seat_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_get_api_delegate> efl_canvas_object_seat_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_get_api_delegate>(_Module, "efl_canvas_object_seat_focus_get");
+    private static bool seat_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_seat_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetSeatFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_seat_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_seat_focus_get_delegate efl_canvas_object_seat_focus_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_precise_is_inside_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_precise_is_inside_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_precise_is_inside_get_api_delegate> efl_canvas_object_precise_is_inside_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_precise_is_inside_get_api_delegate>(_Module, "efl_canvas_object_precise_is_inside_get");
+    private static bool precise_is_inside_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_precise_is_inside_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetPreciseIsInside();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_precise_is_inside_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_precise_is_inside_get_delegate efl_canvas_object_precise_is_inside_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_precise_is_inside_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool precise);
+
+
+    public delegate  void efl_canvas_object_precise_is_inside_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool precise);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_precise_is_inside_set_api_delegate> efl_canvas_object_precise_is_inside_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_precise_is_inside_set_api_delegate>(_Module, "efl_canvas_object_precise_is_inside_set");
+    private static  void precise_is_inside_set(System.IntPtr obj, System.IntPtr pd,  bool precise)
+   {
+      Eina.Log.Debug("function efl_canvas_object_precise_is_inside_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetPreciseIsInside( precise);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_precise_is_inside_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  precise);
+      }
+   }
+   private static efl_canvas_object_precise_is_inside_set_delegate efl_canvas_object_precise_is_inside_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_propagate_events_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_propagate_events_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_propagate_events_get_api_delegate> efl_canvas_object_propagate_events_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_propagate_events_get_api_delegate>(_Module, "efl_canvas_object_propagate_events_get");
+    private static bool propagate_events_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_propagate_events_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetPropagateEvents();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_propagate_events_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_propagate_events_get_delegate efl_canvas_object_propagate_events_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_propagate_events_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool propagate);
+
+
+    public delegate  void efl_canvas_object_propagate_events_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool propagate);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_propagate_events_set_api_delegate> efl_canvas_object_propagate_events_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_propagate_events_set_api_delegate>(_Module, "efl_canvas_object_propagate_events_set");
+    private static  void propagate_events_set(System.IntPtr obj, System.IntPtr pd,  bool propagate)
+   {
+      Eina.Log.Debug("function efl_canvas_object_propagate_events_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetPropagateEvents( propagate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_propagate_events_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  propagate);
+      }
+   }
+   private static efl_canvas_object_propagate_events_set_delegate efl_canvas_object_propagate_events_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_pass_events_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_pass_events_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_pass_events_get_api_delegate> efl_canvas_object_pass_events_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_pass_events_get_api_delegate>(_Module, "efl_canvas_object_pass_events_get");
+    private static bool pass_events_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_pass_events_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetPassEvents();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_pass_events_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_pass_events_get_delegate efl_canvas_object_pass_events_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_pass_events_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool pass);
+
+
+    public delegate  void efl_canvas_object_pass_events_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool pass);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_pass_events_set_api_delegate> efl_canvas_object_pass_events_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_pass_events_set_api_delegate>(_Module, "efl_canvas_object_pass_events_set");
+    private static  void pass_events_set(System.IntPtr obj, System.IntPtr pd,  bool pass)
+   {
+      Eina.Log.Debug("function efl_canvas_object_pass_events_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetPassEvents( pass);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_pass_events_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pass);
+      }
+   }
+   private static efl_canvas_object_pass_events_set_delegate efl_canvas_object_pass_events_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_anti_alias_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_anti_alias_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_anti_alias_get_api_delegate> efl_canvas_object_anti_alias_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_anti_alias_get_api_delegate>(_Module, "efl_canvas_object_anti_alias_get");
+    private static bool anti_alias_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_anti_alias_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetAntiAlias();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_anti_alias_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_anti_alias_get_delegate efl_canvas_object_anti_alias_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_anti_alias_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool anti_alias);
+
+
+    public delegate  void efl_canvas_object_anti_alias_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool anti_alias);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_anti_alias_set_api_delegate> efl_canvas_object_anti_alias_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_anti_alias_set_api_delegate>(_Module, "efl_canvas_object_anti_alias_set");
+    private static  void anti_alias_set(System.IntPtr obj, System.IntPtr pd,  bool anti_alias)
+   {
+      Eina.Log.Debug("function efl_canvas_object_anti_alias_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetAntiAlias( anti_alias);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_anti_alias_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  anti_alias);
+      }
+   }
+   private static efl_canvas_object_anti_alias_set_delegate efl_canvas_object_anti_alias_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_object_clipped_objects_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_object_clipped_objects_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_clipped_objects_get_api_delegate> efl_canvas_object_clipped_objects_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_clipped_objects_get_api_delegate>(_Module, "efl_canvas_object_clipped_objects_get");
+    private static  System.IntPtr clipped_objects_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_clipped_objects_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Canvas.Object> _ret_var = default(Eina.Iterator<Efl.Canvas.Object>);
+         try {
+            _ret_var = ((Object)wrapper).GetClippedObjects();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_canvas_object_clipped_objects_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_clipped_objects_get_delegate efl_canvas_object_clipped_objects_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_canvas_object_render_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_canvas_object_render_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_render_parent_get_api_delegate> efl_canvas_object_render_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_render_parent_get_api_delegate>(_Module, "efl_canvas_object_render_parent_get");
+    private static Efl.Canvas.Object render_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_render_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Object)wrapper).GetRenderParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_render_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_render_parent_get_delegate efl_canvas_object_render_parent_get_static_delegate;
+
+
+    private delegate Efl.TextBidirectionalType efl_canvas_object_paragraph_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextBidirectionalType efl_canvas_object_paragraph_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_paragraph_direction_get_api_delegate> efl_canvas_object_paragraph_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_paragraph_direction_get_api_delegate>(_Module, "efl_canvas_object_paragraph_direction_get");
+    private static Efl.TextBidirectionalType paragraph_direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_paragraph_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextBidirectionalType _ret_var = default(Efl.TextBidirectionalType);
+         try {
+            _ret_var = ((Object)wrapper).GetParagraphDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_paragraph_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_paragraph_direction_get_delegate efl_canvas_object_paragraph_direction_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_paragraph_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextBidirectionalType dir);
+
+
+    public delegate  void efl_canvas_object_paragraph_direction_set_api_delegate(System.IntPtr obj,   Efl.TextBidirectionalType dir);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_paragraph_direction_set_api_delegate> efl_canvas_object_paragraph_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_paragraph_direction_set_api_delegate>(_Module, "efl_canvas_object_paragraph_direction_set");
+    private static  void paragraph_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextBidirectionalType dir)
+   {
+      Eina.Log.Debug("function efl_canvas_object_paragraph_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetParagraphDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_paragraph_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_canvas_object_paragraph_direction_set_delegate efl_canvas_object_paragraph_direction_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_no_render_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_no_render_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_no_render_get_api_delegate> efl_canvas_object_no_render_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_no_render_get_api_delegate>(_Module, "efl_canvas_object_no_render_get");
+    private static bool no_render_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_no_render_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetNoRender();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_no_render_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_no_render_get_delegate efl_canvas_object_no_render_get_static_delegate;
+
+
+    private delegate  void efl_canvas_object_no_render_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_canvas_object_no_render_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_no_render_set_api_delegate> efl_canvas_object_no_render_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_no_render_set_api_delegate>(_Module, "efl_canvas_object_no_render_set");
+    private static  void no_render_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function efl_canvas_object_no_render_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetNoRender( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_object_no_render_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static efl_canvas_object_no_render_set_delegate efl_canvas_object_no_render_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_coords_inside_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_coords_inside_get_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_coords_inside_get_api_delegate> efl_canvas_object_coords_inside_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_coords_inside_get_api_delegate>(_Module, "efl_canvas_object_coords_inside_get");
+    private static bool coords_inside_get(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_canvas_object_coords_inside_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetCoordsInside( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_object_coords_inside_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_canvas_object_coords_inside_get_delegate efl_canvas_object_coords_inside_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_seat_focus_check_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_seat_focus_check_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_check_api_delegate> efl_canvas_object_seat_focus_check_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_check_api_delegate>(_Module, "efl_canvas_object_seat_focus_check");
+    private static bool seat_focus_check(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_canvas_object_seat_focus_check was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).CheckSeatFocus( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_object_seat_focus_check_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_canvas_object_seat_focus_check_delegate efl_canvas_object_seat_focus_check_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_seat_focus_add_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_seat_focus_add_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_add_api_delegate> efl_canvas_object_seat_focus_add_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_add_api_delegate>(_Module, "efl_canvas_object_seat_focus_add");
+    private static bool seat_focus_add(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_canvas_object_seat_focus_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).AddSeatFocus( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_object_seat_focus_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_canvas_object_seat_focus_add_delegate efl_canvas_object_seat_focus_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_seat_focus_del_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_seat_focus_del_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_del_api_delegate> efl_canvas_object_seat_focus_del_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_seat_focus_del_api_delegate>(_Module, "efl_canvas_object_seat_focus_del");
+    private static bool seat_focus_del(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_canvas_object_seat_focus_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).DelSeatFocus( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_object_seat_focus_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_canvas_object_seat_focus_del_delegate efl_canvas_object_seat_focus_del_static_delegate;
+
+
+    private delegate  uint efl_canvas_object_clipped_objects_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_canvas_object_clipped_objects_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_clipped_objects_count_api_delegate> efl_canvas_object_clipped_objects_count_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_clipped_objects_count_api_delegate>(_Module, "efl_canvas_object_clipped_objects_count");
+    private static  uint clipped_objects_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_object_clipped_objects_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Object)wrapper).ClippedObjectsCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_object_clipped_objects_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_object_clipped_objects_count_delegate efl_canvas_object_clipped_objects_count_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_object_key_grab_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String keyname,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers,  [MarshalAs(UnmanagedType.U1)]  bool exclusive);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_object_key_grab_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String keyname,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers,  [MarshalAs(UnmanagedType.U1)]  bool exclusive);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_key_grab_api_delegate> efl_canvas_object_key_grab_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_key_grab_api_delegate>(_Module, "efl_canvas_object_key_grab");
+    private static bool key_grab(System.IntPtr obj, System.IntPtr pd,   System.String keyname,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers,  bool exclusive)
+   {
+      Eina.Log.Debug("function efl_canvas_object_key_grab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GrabKey( keyname,  modifiers,  not_modifiers,  exclusive);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_canvas_object_key_grab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  keyname,  modifiers,  not_modifiers,  exclusive);
+      }
+   }
+   private static efl_canvas_object_key_grab_delegate efl_canvas_object_key_grab_static_delegate;
+
+
+    private delegate  void efl_canvas_object_key_ungrab_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String keyname,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers);
+
+
+    public delegate  void efl_canvas_object_key_ungrab_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String keyname,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_object_key_ungrab_api_delegate> efl_canvas_object_key_ungrab_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_object_key_ungrab_api_delegate>(_Module, "efl_canvas_object_key_ungrab");
+    private static  void key_ungrab(System.IntPtr obj, System.IntPtr pd,   System.String keyname,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers)
+   {
+      Eina.Log.Debug("function efl_canvas_object_key_ungrab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Object)wrapper).UngrabKey( keyname,  modifiers,  not_modifiers);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_canvas_object_key_ungrab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  keyname,  modifiers,  not_modifiers);
+      }
+   }
+   private static efl_canvas_object_key_ungrab_delegate efl_canvas_object_key_ungrab_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_pointer_inside_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_pointer_inside_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_pointer_inside_get_api_delegate> efl_canvas_pointer_inside_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_pointer_inside_get_api_delegate>(_Module, "efl_canvas_pointer_inside_get");
+    private static bool pointer_inside_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_canvas_pointer_inside_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetPointerInside( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_pointer_inside_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_canvas_pointer_inside_get_delegate efl_canvas_pointer_inside_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate> efl_gfx_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate>(_Module, "efl_gfx_color_get");
+    private static  void color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((Object)wrapper).GetColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_get_delegate efl_gfx_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate> efl_gfx_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate>(_Module, "efl_gfx_color_set");
+    private static  void color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Object)wrapper).SetColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_set_delegate efl_gfx_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate> efl_gfx_color_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate>(_Module, "efl_gfx_color_code_get");
+    private static  System.String color_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Object)wrapper).GetColorCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_color_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_code_get_delegate efl_gfx_color_code_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    public delegate  void efl_gfx_color_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate> efl_gfx_color_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate>(_Module, "efl_gfx_color_code_set");
+    private static  void color_code_set(System.IntPtr obj, System.IntPtr pd,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetColorCode( colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  colorcode);
+      }
+   }
+   private static efl_gfx_color_code_set_delegate efl_gfx_color_code_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate> efl_gfx_entity_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate>(_Module, "efl_gfx_entity_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Object)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_position_get_delegate efl_gfx_entity_position_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_gfx_entity_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate> efl_gfx_entity_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate>(_Module, "efl_gfx_entity_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Object)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_gfx_entity_position_set_delegate efl_gfx_entity_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate> efl_gfx_entity_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate>(_Module, "efl_gfx_entity_size_get");
+    private static Eina.Size2D_StructInternal size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Object)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_size_get_delegate efl_gfx_entity_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_entity_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate> efl_gfx_entity_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate>(_Module, "efl_gfx_entity_size_set");
+    private static  void size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Object)wrapper).SetSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_entity_size_set_delegate efl_gfx_entity_size_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate> efl_gfx_entity_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate>(_Module, "efl_gfx_entity_geometry_get");
+    private static Eina.Rect_StructInternal geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Object)wrapper).GetGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_geometry_get_delegate efl_gfx_entity_geometry_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_geometry_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect);
+
+
+    public delegate  void efl_gfx_entity_geometry_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate> efl_gfx_entity_geometry_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate>(_Module, "efl_gfx_entity_geometry_set");
+    private static  void geometry_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                     
+         try {
+            ((Object)wrapper).SetGeometry( _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_geometry_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect);
+      }
+   }
+   private static efl_gfx_entity_geometry_set_delegate efl_gfx_entity_geometry_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_entity_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_entity_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate> efl_gfx_entity_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate>(_Module, "efl_gfx_entity_visible_get");
+    private static bool visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_visible_get_delegate efl_gfx_entity_visible_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_gfx_entity_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate> efl_gfx_entity_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate>(_Module, "efl_gfx_entity_visible_set");
+    private static  void visible_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetVisible( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_gfx_entity_visible_set_delegate efl_gfx_entity_visible_set_static_delegate;
+
+
+    private delegate double efl_gfx_entity_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_entity_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate> efl_gfx_entity_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate>(_Module, "efl_gfx_entity_scale_get");
+    private static double scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Object)wrapper).GetScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_scale_get_delegate efl_gfx_entity_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_entity_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate> efl_gfx_entity_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate>(_Module, "efl_gfx_entity_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_entity_scale_set_delegate efl_gfx_entity_scale_set_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_aspect_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Gfx.HintAspect mode,   out Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_aspect_get_api_delegate(System.IntPtr obj,   out Efl.Gfx.HintAspect mode,   out Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_get_api_delegate> efl_gfx_hint_aspect_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_get_api_delegate>(_Module, "efl_gfx_hint_aspect_get");
+    private static  void hint_aspect_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Gfx.HintAspect mode,  out Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_aspect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           mode = default(Efl.Gfx.HintAspect);      Eina.Size2D _out_sz = default(Eina.Size2D);
+                     
+         try {
+            ((Object)wrapper).GetHintAspect( out mode,  out _out_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            sz = Eina.Size2D_StructConversion.ToInternal(_out_sz);
+                        } else {
+         efl_gfx_hint_aspect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out mode,  out sz);
+      }
+   }
+   private static efl_gfx_hint_aspect_get_delegate efl_gfx_hint_aspect_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_aspect_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.HintAspect mode,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_aspect_set_api_delegate(System.IntPtr obj,   Efl.Gfx.HintAspect mode,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_set_api_delegate> efl_gfx_hint_aspect_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_set_api_delegate>(_Module, "efl_gfx_hint_aspect_set");
+    private static  void hint_aspect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.HintAspect mode,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_aspect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                                 
+         try {
+            ((Object)wrapper).SetHintAspect( mode,  _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_aspect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode,  sz);
+      }
+   }
+   private static efl_gfx_hint_aspect_set_delegate efl_gfx_hint_aspect_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_get_api_delegate> efl_gfx_hint_size_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_get_api_delegate>(_Module, "efl_gfx_hint_size_max_get");
+    private static Eina.Size2D_StructInternal hint_size_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Object)wrapper).GetHintSizeMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_max_get_delegate efl_gfx_hint_size_max_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_size_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_size_max_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_set_api_delegate> efl_gfx_hint_size_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_set_api_delegate>(_Module, "efl_gfx_hint_size_max_set");
+    private static  void hint_size_max_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Object)wrapper).SetHintSizeMax( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_hint_size_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_hint_size_max_set_delegate efl_gfx_hint_size_max_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_get_api_delegate> efl_gfx_hint_size_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_get_api_delegate>(_Module, "efl_gfx_hint_size_min_get");
+    private static Eina.Size2D_StructInternal hint_size_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Object)wrapper).GetHintSizeMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_min_get_delegate efl_gfx_hint_size_min_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_size_min_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_size_min_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_set_api_delegate> efl_gfx_hint_size_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_set_api_delegate>(_Module, "efl_gfx_hint_size_min_set");
+    private static  void hint_size_min_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Object)wrapper).SetHintSizeMin( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_hint_size_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_hint_size_min_set_delegate efl_gfx_hint_size_min_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_restricted_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_restricted_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_get_api_delegate> efl_gfx_hint_size_restricted_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_get_api_delegate>(_Module, "efl_gfx_hint_size_restricted_min_get");
+    private static Eina.Size2D_StructInternal hint_size_restricted_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_restricted_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Object)wrapper).GetHintSizeRestrictedMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_restricted_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_restricted_min_get_delegate efl_gfx_hint_size_restricted_min_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_size_restricted_min_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_size_restricted_min_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_set_api_delegate> efl_gfx_hint_size_restricted_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_set_api_delegate>(_Module, "efl_gfx_hint_size_restricted_min_set");
+    private static  void hint_size_restricted_min_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_restricted_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Object)wrapper).SetHintSizeRestrictedMin( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_hint_size_restricted_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_hint_size_restricted_min_set_delegate efl_gfx_hint_size_restricted_min_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_combined_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_combined_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_combined_min_get_api_delegate> efl_gfx_hint_size_combined_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_combined_min_get_api_delegate>(_Module, "efl_gfx_hint_size_combined_min_get");
+    private static Eina.Size2D_StructInternal hint_size_combined_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_combined_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Object)wrapper).GetHintSizeCombinedMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_combined_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_combined_min_get_delegate efl_gfx_hint_size_combined_min_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_margin_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_hint_margin_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_get_api_delegate> efl_gfx_hint_margin_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_get_api_delegate>(_Module, "efl_gfx_hint_margin_get");
+    private static  void hint_margin_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_margin_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((Object)wrapper).GetHintMargin( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_hint_margin_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_hint_margin_get_delegate efl_gfx_hint_margin_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_margin_set_delegate(System.IntPtr obj, System.IntPtr pd,    int l,    int r,    int t,    int b);
+
+
+    public delegate  void efl_gfx_hint_margin_set_api_delegate(System.IntPtr obj,    int l,    int r,    int t,    int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_set_api_delegate> efl_gfx_hint_margin_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_set_api_delegate>(_Module, "efl_gfx_hint_margin_set");
+    private static  void hint_margin_set(System.IntPtr obj, System.IntPtr pd,   int l,   int r,   int t,   int b)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_margin_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Object)wrapper).SetHintMargin( l,  r,  t,  b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_hint_margin_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l,  r,  t,  b);
+      }
+   }
+   private static efl_gfx_hint_margin_set_delegate efl_gfx_hint_margin_set_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_weight_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_hint_weight_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_get_api_delegate> efl_gfx_hint_weight_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_get_api_delegate>(_Module, "efl_gfx_hint_weight_get");
+    private static  void hint_weight_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_weight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Object)wrapper).GetHintWeight( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_weight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_hint_weight_get_delegate efl_gfx_hint_weight_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_weight_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_hint_weight_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_set_api_delegate> efl_gfx_hint_weight_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_set_api_delegate>(_Module, "efl_gfx_hint_weight_set");
+    private static  void hint_weight_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_weight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Object)wrapper).SetHintWeight( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_weight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_hint_weight_set_delegate efl_gfx_hint_weight_set_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_hint_align_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_align_get_api_delegate> efl_gfx_hint_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_align_get_api_delegate>(_Module, "efl_gfx_hint_align_get");
+    private static  void hint_align_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Object)wrapper).GetHintAlign( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_hint_align_get_delegate efl_gfx_hint_align_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_hint_align_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_align_set_api_delegate> efl_gfx_hint_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_align_set_api_delegate>(_Module, "efl_gfx_hint_align_set");
+    private static  void hint_align_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Object)wrapper).SetHintAlign( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_hint_align_set_delegate efl_gfx_hint_align_set_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_fill_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool x,  [MarshalAs(UnmanagedType.U1)]  out bool y);
+
+
+    public delegate  void efl_gfx_hint_fill_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool x,  [MarshalAs(UnmanagedType.U1)]  out bool y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_get_api_delegate> efl_gfx_hint_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_get_api_delegate>(_Module, "efl_gfx_hint_fill_get");
+    private static  void hint_fill_get(System.IntPtr obj, System.IntPtr pd,  out bool x,  out bool y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(bool);      y = default(bool);                     
+         try {
+            ((Object)wrapper).GetHintFill( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_hint_fill_get_delegate efl_gfx_hint_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool x,  [MarshalAs(UnmanagedType.U1)]  bool y);
+
+
+    public delegate  void efl_gfx_hint_fill_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool x,  [MarshalAs(UnmanagedType.U1)]  bool y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_set_api_delegate> efl_gfx_hint_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_set_api_delegate>(_Module, "efl_gfx_hint_fill_set");
+    private static  void hint_fill_set(System.IntPtr obj, System.IntPtr pd,  bool x,  bool y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Object)wrapper).SetHintFill( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_hint_fill_set_delegate efl_gfx_hint_fill_set_static_delegate;
+
+
+    private delegate  int efl_gfx_mapping_point_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_mapping_point_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_get_api_delegate> efl_gfx_mapping_point_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_get_api_delegate>(_Module, "efl_gfx_mapping_point_count_get");
+    private static  int mapping_point_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_point_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Object)wrapper).GetMappingPointCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_point_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_point_count_get_delegate efl_gfx_mapping_point_count_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_point_count_set_delegate(System.IntPtr obj, System.IntPtr pd,    int count);
+
+
+    public delegate  void efl_gfx_mapping_point_count_set_api_delegate(System.IntPtr obj,    int count);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_set_api_delegate> efl_gfx_mapping_point_count_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_set_api_delegate>(_Module, "efl_gfx_mapping_point_count_set");
+    private static  void mapping_point_count_set(System.IntPtr obj, System.IntPtr pd,   int count)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_point_count_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetMappingPointCount( count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_mapping_point_count_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  count);
+      }
+   }
+   private static efl_gfx_mapping_point_count_set_delegate efl_gfx_mapping_point_count_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_clockwise_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_clockwise_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_clockwise_get_api_delegate> efl_gfx_mapping_clockwise_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_clockwise_get_api_delegate>(_Module, "efl_gfx_mapping_clockwise_get");
+    private static bool mapping_clockwise_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_clockwise_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetMappingClockwise();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_clockwise_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_clockwise_get_delegate efl_gfx_mapping_clockwise_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_smooth_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_smooth_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_get_api_delegate> efl_gfx_mapping_smooth_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_get_api_delegate>(_Module, "efl_gfx_mapping_smooth_get");
+    private static bool mapping_smooth_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_smooth_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetMappingSmooth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_smooth_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_smooth_get_delegate efl_gfx_mapping_smooth_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_smooth_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool smooth);
+
+
+    public delegate  void efl_gfx_mapping_smooth_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool smooth);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_set_api_delegate> efl_gfx_mapping_smooth_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_set_api_delegate>(_Module, "efl_gfx_mapping_smooth_set");
+    private static  void mapping_smooth_set(System.IntPtr obj, System.IntPtr pd,  bool smooth)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_smooth_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetMappingSmooth( smooth);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_mapping_smooth_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  smooth);
+      }
+   }
+   private static efl_gfx_mapping_smooth_set_delegate efl_gfx_mapping_smooth_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_alpha_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_alpha_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_get_api_delegate> efl_gfx_mapping_alpha_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_get_api_delegate>(_Module, "efl_gfx_mapping_alpha_get");
+    private static bool mapping_alpha_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_alpha_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetMappingAlpha();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_alpha_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_alpha_get_delegate efl_gfx_mapping_alpha_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_alpha_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+
+
+    public delegate  void efl_gfx_mapping_alpha_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_set_api_delegate> efl_gfx_mapping_alpha_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_set_api_delegate>(_Module, "efl_gfx_mapping_alpha_set");
+    private static  void mapping_alpha_set(System.IntPtr obj, System.IntPtr pd,  bool alpha)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_alpha_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetMappingAlpha( alpha);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_mapping_alpha_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  alpha);
+      }
+   }
+   private static efl_gfx_mapping_alpha_set_delegate efl_gfx_mapping_alpha_set_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_coord_absolute_get_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   out double x,   out double y,   out double z);
+
+
+    public delegate  void efl_gfx_mapping_coord_absolute_get_api_delegate(System.IntPtr obj,    int idx,   out double x,   out double y,   out double z);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_get_api_delegate> efl_gfx_mapping_coord_absolute_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_get_api_delegate>(_Module, "efl_gfx_mapping_coord_absolute_get");
+    private static  void mapping_coord_absolute_get(System.IntPtr obj, System.IntPtr pd,   int idx,  out double x,  out double y,  out double z)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_coord_absolute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                             x = default(double);      y = default(double);      z = default(double);                                 
+         try {
+            ((Object)wrapper).GetMappingCoordAbsolute( idx,  out x,  out y,  out z);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_coord_absolute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  out x,  out y,  out z);
+      }
+   }
+   private static efl_gfx_mapping_coord_absolute_get_delegate efl_gfx_mapping_coord_absolute_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_coord_absolute_set_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   double x,   double y,   double z);
+
+
+    public delegate  void efl_gfx_mapping_coord_absolute_set_api_delegate(System.IntPtr obj,    int idx,   double x,   double y,   double z);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_set_api_delegate> efl_gfx_mapping_coord_absolute_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_set_api_delegate>(_Module, "efl_gfx_mapping_coord_absolute_set");
+    private static  void mapping_coord_absolute_set(System.IntPtr obj, System.IntPtr pd,   int idx,  double x,  double y,  double z)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_coord_absolute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Object)wrapper).SetMappingCoordAbsolute( idx,  x,  y,  z);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_coord_absolute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  x,  y,  z);
+      }
+   }
+   private static efl_gfx_mapping_coord_absolute_set_delegate efl_gfx_mapping_coord_absolute_set_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_uv_get_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   out double u,   out double v);
+
+
+    public delegate  void efl_gfx_mapping_uv_get_api_delegate(System.IntPtr obj,    int idx,   out double u,   out double v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_get_api_delegate> efl_gfx_mapping_uv_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_get_api_delegate>(_Module, "efl_gfx_mapping_uv_get");
+    private static  void mapping_uv_get(System.IntPtr obj, System.IntPtr pd,   int idx,  out double u,  out double v)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_uv_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       u = default(double);      v = default(double);                           
+         try {
+            ((Object)wrapper).GetMappingUv( idx,  out u,  out v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_uv_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  out u,  out v);
+      }
+   }
+   private static efl_gfx_mapping_uv_get_delegate efl_gfx_mapping_uv_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_uv_set_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   double u,   double v);
+
+
+    public delegate  void efl_gfx_mapping_uv_set_api_delegate(System.IntPtr obj,    int idx,   double u,   double v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_set_api_delegate> efl_gfx_mapping_uv_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_set_api_delegate>(_Module, "efl_gfx_mapping_uv_set");
+    private static  void mapping_uv_set(System.IntPtr obj, System.IntPtr pd,   int idx,  double u,  double v)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_uv_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Object)wrapper).SetMappingUv( idx,  u,  v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_uv_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  u,  v);
+      }
+   }
+   private static efl_gfx_mapping_uv_set_delegate efl_gfx_mapping_uv_set_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_color_get_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_mapping_color_get_api_delegate(System.IntPtr obj,    int idx,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_get_api_delegate> efl_gfx_mapping_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_get_api_delegate>(_Module, "efl_gfx_mapping_color_get");
+    private static  void mapping_color_get(System.IntPtr obj, System.IntPtr pd,   int idx,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   r = default( int);      g = default( int);      b = default( int);      a = default( int);                                       
+         try {
+            ((Object)wrapper).GetMappingColor( idx,  out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_mapping_color_get_delegate efl_gfx_mapping_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_mapping_color_set_api_delegate(System.IntPtr obj,    int idx,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_set_api_delegate> efl_gfx_mapping_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_set_api_delegate>(_Module, "efl_gfx_mapping_color_set");
+    private static  void mapping_color_set(System.IntPtr obj, System.IntPtr pd,   int idx,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((Object)wrapper).SetMappingColor( idx,  r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_mapping_color_set_delegate efl_gfx_mapping_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_has_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_has_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_has_api_delegate> efl_gfx_mapping_has_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_has_api_delegate>(_Module, "efl_gfx_mapping_has");
+    private static bool mapping_has(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_has was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).HasMapping();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_has_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_has_delegate efl_gfx_mapping_has_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_mapping_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_reset_api_delegate> efl_gfx_mapping_reset_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_reset_api_delegate>(_Module, "efl_gfx_mapping_reset");
+    private static  void mapping_reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).ResetMapping();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_mapping_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_reset_delegate efl_gfx_mapping_reset_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_translate_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy,   double dz);
+
+
+    public delegate  void efl_gfx_mapping_translate_api_delegate(System.IntPtr obj,   double dx,   double dy,   double dz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_translate_api_delegate> efl_gfx_mapping_translate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_translate_api_delegate>(_Module, "efl_gfx_mapping_translate");
+    private static  void translate(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy,  double dz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_translate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Object)wrapper).Translate( dx,  dy,  dz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_translate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy,  dz);
+      }
+   }
+   private static efl_gfx_mapping_translate_delegate efl_gfx_mapping_translate_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_delegate(System.IntPtr obj, System.IntPtr pd,   double degrees, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_rotate_api_delegate(System.IntPtr obj,   double degrees, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_api_delegate> efl_gfx_mapping_rotate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_api_delegate>(_Module, "efl_gfx_mapping_rotate");
+    private static  void rotate(System.IntPtr obj, System.IntPtr pd,  double degrees,  Efl.Gfx.Entity pivot,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Object)wrapper).Rotate( degrees,  pivot,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_rotate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  degrees,  pivot,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_rotate_delegate efl_gfx_mapping_rotate_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_3d_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy,   double dz, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_3d_api_delegate(System.IntPtr obj,   double dx,   double dy,   double dz, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_api_delegate> efl_gfx_mapping_rotate_3d_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_api_delegate>(_Module, "efl_gfx_mapping_rotate_3d");
+    private static  void rotate_3d(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy,  double dz,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_3d was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((Object)wrapper).Rotate3d( dx,  dy,  dz,  pivot,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_mapping_rotate_3d_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy,  dz,  pivot,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_3d_delegate efl_gfx_mapping_rotate_3d_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_quat_delegate(System.IntPtr obj, System.IntPtr pd,   double qx,   double qy,   double qz,   double qw, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_quat_api_delegate(System.IntPtr obj,   double qx,   double qy,   double qz,   double qw, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_api_delegate> efl_gfx_mapping_rotate_quat_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_api_delegate>(_Module, "efl_gfx_mapping_rotate_quat");
+    private static  void rotate_quat(System.IntPtr obj, System.IntPtr pd,  double qx,  double qy,  double qz,  double qw,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_quat was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                  
+         try {
+            ((Object)wrapper).RotateQuat( qx,  qy,  qz,  qw,  pivot,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                            } else {
+         efl_gfx_mapping_rotate_quat_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  qx,  qy,  qz,  qw,  pivot,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_quat_delegate efl_gfx_mapping_rotate_quat_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_zoom_delegate(System.IntPtr obj, System.IntPtr pd,   double zoomx,   double zoomy, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_zoom_api_delegate(System.IntPtr obj,   double zoomx,   double zoomy, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_api_delegate> efl_gfx_mapping_zoom_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_api_delegate>(_Module, "efl_gfx_mapping_zoom");
+    private static  void zoom(System.IntPtr obj, System.IntPtr pd,  double zoomx,  double zoomy,  Efl.Gfx.Entity pivot,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_zoom was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((Object)wrapper).Zoom( zoomx,  zoomy,  pivot,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_zoom_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  zoomx,  zoomy,  pivot,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_zoom_delegate efl_gfx_mapping_zoom_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_lighting_3d_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+
+
+    public delegate  void efl_gfx_mapping_lighting_3d_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_api_delegate> efl_gfx_mapping_lighting_3d_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_api_delegate>(_Module, "efl_gfx_mapping_lighting_3d");
+    private static  void lighting_3d(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity pivot,  double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_lighting_3d was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                                                      
+         try {
+            ((Object)wrapper).Lighting3d( pivot,  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                                    } else {
+         efl_gfx_mapping_lighting_3d_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pivot,  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      }
+   }
+   private static efl_gfx_mapping_lighting_3d_delegate efl_gfx_mapping_lighting_3d_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_perspective_3d_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double px,   double py,   double z0,   double foc);
+
+
+    public delegate  void efl_gfx_mapping_perspective_3d_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double px,   double py,   double z0,   double foc);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_api_delegate> efl_gfx_mapping_perspective_3d_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_api_delegate>(_Module, "efl_gfx_mapping_perspective_3d");
+    private static  void perspective_3d(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity pivot,  double px,  double py,  double z0,  double foc)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_perspective_3d was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((Object)wrapper).Perspective3d( pivot,  px,  py,  z0,  foc);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_perspective_3d_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pivot,  px,  py,  z0,  foc);
+      }
+   }
+   private static efl_gfx_mapping_perspective_3d_delegate efl_gfx_mapping_perspective_3d_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double degrees,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_rotate_absolute_api_delegate(System.IntPtr obj,   double degrees,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_absolute_api_delegate> efl_gfx_mapping_rotate_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_absolute_api_delegate>(_Module, "efl_gfx_mapping_rotate_absolute");
+    private static  void rotate_absolute(System.IntPtr obj, System.IntPtr pd,  double degrees,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Object)wrapper).RotateAbsolute( degrees,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_rotate_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  degrees,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_rotate_absolute_delegate efl_gfx_mapping_rotate_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_3d_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy,   double dz,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_3d_absolute_api_delegate(System.IntPtr obj,   double dx,   double dy,   double dz,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_absolute_api_delegate> efl_gfx_mapping_rotate_3d_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_absolute_api_delegate>(_Module, "efl_gfx_mapping_rotate_3d_absolute");
+    private static  void rotate_3d_absolute(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy,  double dz,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_3d_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((Object)wrapper).Rotate3dAbsolute( dx,  dy,  dz,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_mapping_rotate_3d_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy,  dz,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_3d_absolute_delegate efl_gfx_mapping_rotate_3d_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_quat_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double qx,   double qy,   double qz,   double qw,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_quat_absolute_api_delegate(System.IntPtr obj,   double qx,   double qy,   double qz,   double qw,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_absolute_api_delegate> efl_gfx_mapping_rotate_quat_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_absolute_api_delegate>(_Module, "efl_gfx_mapping_rotate_quat_absolute");
+    private static  void rotate_quat_absolute(System.IntPtr obj, System.IntPtr pd,  double qx,  double qy,  double qz,  double qw,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_quat_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((Object)wrapper).RotateQuatAbsolute( qx,  qy,  qz,  qw,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_mapping_rotate_quat_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  qx,  qy,  qz,  qw,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_quat_absolute_delegate efl_gfx_mapping_rotate_quat_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_zoom_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double zoomx,   double zoomy,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_zoom_absolute_api_delegate(System.IntPtr obj,   double zoomx,   double zoomy,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_absolute_api_delegate> efl_gfx_mapping_zoom_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_absolute_api_delegate>(_Module, "efl_gfx_mapping_zoom_absolute");
+    private static  void zoom_absolute(System.IntPtr obj, System.IntPtr pd,  double zoomx,  double zoomy,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_zoom_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Object)wrapper).ZoomAbsolute( zoomx,  zoomy,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_zoom_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  zoomx,  zoomy,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_zoom_absolute_delegate efl_gfx_mapping_zoom_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_lighting_3d_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+
+
+    public delegate  void efl_gfx_mapping_lighting_3d_absolute_api_delegate(System.IntPtr obj,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_absolute_api_delegate> efl_gfx_mapping_lighting_3d_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_absolute_api_delegate>(_Module, "efl_gfx_mapping_lighting_3d_absolute");
+    private static  void lighting_3d_absolute(System.IntPtr obj, System.IntPtr pd,  double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_lighting_3d_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                                    
+         try {
+            ((Object)wrapper).Lighting3dAbsolute( lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                        } else {
+         efl_gfx_mapping_lighting_3d_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      }
+   }
+   private static efl_gfx_mapping_lighting_3d_absolute_delegate efl_gfx_mapping_lighting_3d_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_perspective_3d_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double px,   double py,   double z0,   double foc);
+
+
+    public delegate  void efl_gfx_mapping_perspective_3d_absolute_api_delegate(System.IntPtr obj,   double px,   double py,   double z0,   double foc);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_absolute_api_delegate> efl_gfx_mapping_perspective_3d_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_absolute_api_delegate>(_Module, "efl_gfx_mapping_perspective_3d_absolute");
+    private static  void perspective_3d_absolute(System.IntPtr obj, System.IntPtr pd,  double px,  double py,  double z0,  double foc)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_perspective_3d_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Object)wrapper).Perspective3dAbsolute( px,  py,  z0,  foc);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_perspective_3d_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  px,  py,  z0,  foc);
+      }
+   }
+   private static efl_gfx_mapping_perspective_3d_absolute_delegate efl_gfx_mapping_perspective_3d_absolute_static_delegate;
+
+
+    private delegate  short efl_gfx_stack_layer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  short efl_gfx_stack_layer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate> efl_gfx_stack_layer_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate>(_Module, "efl_gfx_stack_layer_get");
+    private static  short layer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   short _ret_var = default( short);
+         try {
+            _ret_var = ((Object)wrapper).GetLayer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_layer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_layer_get_delegate efl_gfx_stack_layer_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_layer_set_delegate(System.IntPtr obj, System.IntPtr pd,    short l);
+
+
+    public delegate  void efl_gfx_stack_layer_set_api_delegate(System.IntPtr obj,    short l);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate> efl_gfx_stack_layer_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate>(_Module, "efl_gfx_stack_layer_set");
+    private static  void layer_set(System.IntPtr obj, System.IntPtr pd,   short l)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetLayer( l);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_layer_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l);
+      }
+   }
+   private static efl_gfx_stack_layer_set_delegate efl_gfx_stack_layer_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_below_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_below_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate> efl_gfx_stack_below_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate>(_Module, "efl_gfx_stack_below_get");
+    private static Efl.Gfx.Stack below_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Object)wrapper).GetBelow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_below_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_below_get_delegate efl_gfx_stack_below_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_above_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_above_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate> efl_gfx_stack_above_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate>(_Module, "efl_gfx_stack_above_get");
+    private static Efl.Gfx.Stack above_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Object)wrapper).GetAbove();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_above_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_above_get_delegate efl_gfx_stack_above_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_below_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+
+
+    public delegate  void efl_gfx_stack_below_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate> efl_gfx_stack_below_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate>(_Module, "efl_gfx_stack_below");
+    private static  void stack_below(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack below)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).StackBelow( below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_below_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  below);
+      }
+   }
+   private static efl_gfx_stack_below_delegate efl_gfx_stack_below_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_raise_to_top_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_raise_to_top_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate> efl_gfx_stack_raise_to_top_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate>(_Module, "efl_gfx_stack_raise_to_top");
+    private static  void raise_to_top(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_raise_to_top was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).RaiseToTop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_raise_to_top_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_raise_to_top_delegate efl_gfx_stack_raise_to_top_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_above_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+
+
+    public delegate  void efl_gfx_stack_above_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate> efl_gfx_stack_above_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate>(_Module, "efl_gfx_stack_above");
+    private static  void stack_above(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack above)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).StackAbove( above);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_above_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  above);
+      }
+   }
+   private static efl_gfx_stack_above_delegate efl_gfx_stack_above_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_lower_to_bottom_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_lower_to_bottom_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate> efl_gfx_stack_lower_to_bottom_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate>(_Module, "efl_gfx_stack_lower_to_bottom");
+    private static  void lower_to_bottom(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_lower_to_bottom was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).LowerToBottom();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_lower_to_bottom_delegate efl_gfx_stack_lower_to_bottom_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_seat_event_filter_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_seat_event_filter_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_get_api_delegate> efl_input_seat_event_filter_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_get_api_delegate>(_Module, "efl_input_seat_event_filter_get");
+    private static bool seat_event_filter_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_seat_event_filter_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetSeatEventFilter( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_input_seat_event_filter_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_input_seat_event_filter_get_delegate efl_input_seat_event_filter_get_static_delegate;
+
+
+    private delegate  void efl_input_seat_event_filter_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_input_seat_event_filter_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_set_api_delegate> efl_input_seat_event_filter_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_set_api_delegate>(_Module, "efl_input_seat_event_filter_set");
+    private static  void seat_event_filter_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat,  bool enable)
+   {
+      Eina.Log.Debug("function efl_input_seat_event_filter_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Object)wrapper).SetSeatEventFilter( seat,  enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_input_seat_event_filter_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat,  enable);
+      }
+   }
+   private static efl_input_seat_event_filter_set_delegate efl_input_seat_event_filter_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_mirrored_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_mirrored_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_get_api_delegate> efl_ui_mirrored_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_get_api_delegate>(_Module, "efl_ui_mirrored_get");
+    private static bool mirrored_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetMirrored();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_mirrored_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_mirrored_get_delegate efl_ui_mirrored_get_static_delegate;
+
+
+    private delegate  void efl_ui_mirrored_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool rtl);
+
+
+    public delegate  void efl_ui_mirrored_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool rtl);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_set_api_delegate> efl_ui_mirrored_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_set_api_delegate>(_Module, "efl_ui_mirrored_set");
+    private static  void mirrored_set(System.IntPtr obj, System.IntPtr pd,  bool rtl)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetMirrored( rtl);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_mirrored_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rtl);
+      }
+   }
+   private static efl_ui_mirrored_set_delegate efl_ui_mirrored_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_mirrored_automatic_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_mirrored_automatic_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_get_api_delegate> efl_ui_mirrored_automatic_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_get_api_delegate>(_Module, "efl_ui_mirrored_automatic_get");
+    private static bool mirrored_automatic_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_automatic_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetMirroredAutomatic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_mirrored_automatic_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_mirrored_automatic_get_delegate efl_ui_mirrored_automatic_get_static_delegate;
+
+
+    private delegate  void efl_ui_mirrored_automatic_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+
+
+    public delegate  void efl_ui_mirrored_automatic_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_set_api_delegate> efl_ui_mirrored_automatic_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_set_api_delegate>(_Module, "efl_ui_mirrored_automatic_set");
+    private static  void mirrored_automatic_set(System.IntPtr obj, System.IntPtr pd,  bool automatic)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_automatic_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetMirroredAutomatic( automatic);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_mirrored_automatic_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  automatic);
+      }
+   }
+   private static efl_ui_mirrored_automatic_set_delegate efl_ui_mirrored_automatic_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_language_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_language_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_language_get_api_delegate> efl_ui_language_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_language_get_api_delegate>(_Module, "efl_ui_language_get");
+    private static  System.String language_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_language_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Object)wrapper).GetLanguage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_language_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_language_get_delegate efl_ui_language_get_static_delegate;
+
+
+    private delegate  void efl_ui_language_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String language);
+
+
+    public delegate  void efl_ui_language_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String language);
+    public static Efl.Eo.FunctionWrapper<efl_ui_language_set_api_delegate> efl_ui_language_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_language_set_api_delegate>(_Module, "efl_ui_language_set");
+    private static  void language_set(System.IntPtr obj, System.IntPtr pd,   System.String language)
+   {
+      Eina.Log.Debug("function efl_ui_language_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetLanguage( language);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_language_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  language);
+      }
+   }
+   private static efl_ui_language_set_delegate efl_ui_language_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Canvas { 
+/// <summary>Information of animation events</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ObjectAnimationEvent
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator ObjectAnimationEvent(IntPtr ptr)
+   {
+      var tmp = (ObjectAnimationEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(ObjectAnimationEvent_StructInternal));
+      return ObjectAnimationEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ObjectAnimationEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ObjectAnimationEvent_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ObjectAnimationEvent(ObjectAnimationEvent_StructInternal struct_)
+   {
+      return ObjectAnimationEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ObjectAnimationEvent_StructInternal(ObjectAnimationEvent struct_)
+   {
+      return ObjectAnimationEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ObjectAnimationEvent</summary>
+public static class ObjectAnimationEvent_StructConversion
+{
+   internal static ObjectAnimationEvent_StructInternal ToInternal(ObjectAnimationEvent _external_struct)
+   {
+      var _internal_struct = new ObjectAnimationEvent_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static ObjectAnimationEvent ToManaged(ObjectAnimationEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new ObjectAnimationEvent();
+
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { 
+/// <summary>EFL event animator tick data structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EventAnimatorTick
+{
+   /// <summary>Area of the canvas that will be pushed to screen.</summary>
+   public Eina.Rect Update_area;
+   ///<summary>Constructor for EventAnimatorTick.</summary>
+   public EventAnimatorTick(
+      Eina.Rect Update_area=default(Eina.Rect)   )
+   {
+      this.Update_area = Update_area;
+   }
+public static implicit operator EventAnimatorTick(IntPtr ptr)
+   {
+      var tmp = (EventAnimatorTick_StructInternal)Marshal.PtrToStructure(ptr, typeof(EventAnimatorTick_StructInternal));
+      return EventAnimatorTick_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct EventAnimatorTick.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EventAnimatorTick_StructInternal
+{
+   
+   public Eina.Rect_StructInternal Update_area;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator EventAnimatorTick(EventAnimatorTick_StructInternal struct_)
+   {
+      return EventAnimatorTick_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator EventAnimatorTick_StructInternal(EventAnimatorTick struct_)
+   {
+      return EventAnimatorTick_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct EventAnimatorTick</summary>
+public static class EventAnimatorTick_StructConversion
+{
+   internal static EventAnimatorTick_StructInternal ToInternal(EventAnimatorTick _external_struct)
+   {
+      var _internal_struct = new EventAnimatorTick_StructInternal();
+
+      _internal_struct.Update_area = Eina.Rect_StructConversion.ToInternal(_external_struct.Update_area);
+
+      return _internal_struct;
+   }
+
+   internal static EventAnimatorTick ToManaged(EventAnimatorTick_StructInternal _internal_struct)
+   {
+      var _external_struct = new EventAnimatorTick();
+
+      _external_struct.Update_area = Eina.Rect_StructConversion.ToManaged(_internal_struct.Update_area);
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_pointer.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_pointer.eo.cs
new file mode 100755 (executable)
index 0000000..c0d0fdd
--- /dev/null
@@ -0,0 +1,156 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Efl Canvas Pointer interface</summary>
+[PointerNativeInherit]
+public interface Pointer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Returns whether the mouse pointer is logically inside the canvas.
+/// When this function is called it will return a value of either <c>false</c> or <c>true</c>, depending on whether a pointer,in or pointer,out event has been called previously.
+/// 
+/// A return value of <c>true</c> indicates the mouse is logically inside the canvas, and <c>false</c> implies it is logically outside the canvas.
+/// 
+/// A canvas begins with the mouse being assumed outside (<c>false</c>).</summary>
+/// <param name="seat">The seat to consider, if <c>null</c> then the default seat will be used.</param>
+/// <returns><c>true</c> if the mouse pointer is inside the canvas, <c>false</c> otherwise</returns>
+bool GetPointerInside( Efl.Input.Device seat);
+   }
+/// <summary>Efl Canvas Pointer interface</summary>
+sealed public class PointerConcrete : 
+
+Pointer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PointerConcrete))
+            return Efl.Canvas.PointerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_canvas_pointer_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PointerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PointerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PointerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PointerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Returns whether the mouse pointer is logically inside the canvas.
+   /// When this function is called it will return a value of either <c>false</c> or <c>true</c>, depending on whether a pointer,in or pointer,out event has been called previously.
+   /// 
+   /// A return value of <c>true</c> indicates the mouse is logically inside the canvas, and <c>false</c> implies it is logically outside the canvas.
+   /// 
+   /// A canvas begins with the mouse being assumed outside (<c>false</c>).</summary>
+   /// <param name="seat">The seat to consider, if <c>null</c> then the default seat will be used.</param>
+   /// <returns><c>true</c> if the mouse pointer is inside the canvas, <c>false</c> otherwise</returns>
+   public bool GetPointerInside( Efl.Input.Device seat) {
+                         var _ret_var = Efl.Canvas.PointerNativeInherit.efl_canvas_pointer_inside_get_ptr.Value.Delegate(this.NativeHandle, seat);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+}
+public class PointerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_pointer_inside_get_static_delegate == null)
+      efl_canvas_pointer_inside_get_static_delegate = new efl_canvas_pointer_inside_get_delegate(pointer_inside_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_pointer_inside_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_pointer_inside_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.PointerConcrete.efl_canvas_pointer_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.PointerConcrete.efl_canvas_pointer_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_pointer_inside_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_pointer_inside_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_pointer_inside_get_api_delegate> efl_canvas_pointer_inside_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_pointer_inside_get_api_delegate>(_Module, "efl_canvas_pointer_inside_get");
+    private static bool pointer_inside_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_canvas_pointer_inside_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetPointerInside( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_pointer_inside_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_canvas_pointer_inside_get_delegate efl_canvas_pointer_inside_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_polygon.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_polygon.eo.cs
new file mode 100755 (executable)
index 0000000..c68a3dc
--- /dev/null
@@ -0,0 +1,160 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Low-level polygon object</summary>
+[PolygonNativeInherit]
+public class Polygon : Efl.Canvas.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.PolygonNativeInherit nativeInherit = new Efl.Canvas.PolygonNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Polygon))
+            return Efl.Canvas.PolygonNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_polygon_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Polygon(Efl.Object parent= null
+         ) :
+      base(efl_canvas_polygon_class_get(), typeof(Polygon), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Polygon(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Polygon(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Polygon static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Polygon(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Adds the given point to the given evas polygon object.</summary>
+   /// <param name="pos">A point coordinate.</param>
+   /// <returns></returns>
+   virtual public  void AddPoint( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Canvas.PolygonNativeInherit.efl_canvas_polygon_point_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Removes all of the points from the given evas polygon object.</summary>
+   /// <returns></returns>
+   virtual public  void ClearPoints() {
+       Efl.Canvas.PolygonNativeInherit.efl_canvas_polygon_points_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Polygon.efl_canvas_polygon_class_get();
+   }
+}
+public class PolygonNativeInherit : Efl.Canvas.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_polygon_point_add_static_delegate == null)
+      efl_canvas_polygon_point_add_static_delegate = new efl_canvas_polygon_point_add_delegate(point_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_polygon_point_add"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_polygon_point_add_static_delegate)});
+      if (efl_canvas_polygon_points_clear_static_delegate == null)
+      efl_canvas_polygon_points_clear_static_delegate = new efl_canvas_polygon_points_clear_delegate(points_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_polygon_points_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_polygon_points_clear_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Polygon.efl_canvas_polygon_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Polygon.efl_canvas_polygon_class_get();
+   }
+
+
+    private delegate  void efl_canvas_polygon_point_add_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_canvas_polygon_point_add_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_polygon_point_add_api_delegate> efl_canvas_polygon_point_add_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_polygon_point_add_api_delegate>(_Module, "efl_canvas_polygon_point_add");
+    private static  void point_add(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_canvas_polygon_point_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Polygon)wrapper).AddPoint( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_polygon_point_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_canvas_polygon_point_add_delegate efl_canvas_polygon_point_add_static_delegate;
+
+
+    private delegate  void efl_canvas_polygon_points_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_canvas_polygon_points_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_polygon_points_clear_api_delegate> efl_canvas_polygon_points_clear_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_polygon_points_clear_api_delegate>(_Module, "efl_canvas_polygon_points_clear");
+    private static  void points_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_polygon_points_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Polygon)wrapper).ClearPoints();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_canvas_polygon_points_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_polygon_points_clear_delegate efl_canvas_polygon_points_clear_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_proxy.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_proxy.eo.cs
new file mode 100755 (executable)
index 0000000..f6fdcf5
--- /dev/null
@@ -0,0 +1,364 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Low-level proxy image object.
+/// A proxy is a special kind of image containing the pixels from a source object attached to it. It can be used to apply some sort of image transformation to any object (eg. filters, map or zoom).</summary>
+[ProxyNativeInherit]
+public class Proxy : Efl.Canvas.ImageInternal, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.ProxyNativeInherit nativeInherit = new Efl.Canvas.ProxyNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Proxy))
+            return Efl.Canvas.ProxyNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_proxy_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Proxy(Efl.Object parent= null
+         ) :
+      base(efl_canvas_proxy_class_get(), typeof(Proxy), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Proxy(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Proxy(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Proxy static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Proxy(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The source object for this proxy.
+   /// The proxy object will mirror the rendering contents of a given source object in its drawing region, without affecting that source in any way. The source must be another valid <see cref="Efl.Canvas.Object"/>. Other effects may be applied to the proxy, such as a map (see <see cref="Efl.Gfx.Mapping"/>) to create a reflection of the original object (for example).
+   /// 
+   /// Any existing source object will be removed after this call.
+   /// 
+   /// Note: This property should be set as soon as creating a proxy object, otherwise the proxy will do nothing.
+   /// 
+   /// Warning: You cannot set a proxy as another proxy&apos;s source.</summary>
+   /// <returns>Source object to use for the proxy.</returns>
+   virtual public Efl.Canvas.Object GetSource() {
+       var _ret_var = Efl.Canvas.ProxyNativeInherit.efl_canvas_proxy_source_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The source object for this proxy.
+   /// The proxy object will mirror the rendering contents of a given source object in its drawing region, without affecting that source in any way. The source must be another valid <see cref="Efl.Canvas.Object"/>. Other effects may be applied to the proxy, such as a map (see <see cref="Efl.Gfx.Mapping"/>) to create a reflection of the original object (for example).
+   /// 
+   /// Any existing source object will be removed after this call.
+   /// 
+   /// Note: This property should be set as soon as creating a proxy object, otherwise the proxy will do nothing.
+   /// 
+   /// Warning: You cannot set a proxy as another proxy&apos;s source.</summary>
+   /// <param name="src">Source object to use for the proxy.</param>
+   /// <returns>Returns <c>true</c> in case of success.</returns>
+   virtual public bool SetSource( Efl.Canvas.Object src) {
+                         var _ret_var = Efl.Canvas.ProxyNativeInherit.efl_canvas_proxy_source_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), src);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Clip this proxy object with the source object&apos;s clipper.
+   /// Use this if you want to overlay an existing object with its proxy, and apply some sort of transformation on it.
+   /// 
+   /// <c>true</c> means both objects will share the same clip.
+   /// 1.8</summary>
+   /// <returns>Whether <c>obj</c> is clipped by the source clipper (<c>true</c>) or not (<c>false</c>).</returns>
+   virtual public bool GetSourceClip() {
+       var _ret_var = Efl.Canvas.ProxyNativeInherit.efl_canvas_proxy_source_clip_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Clip this proxy object with the source object&apos;s clipper.
+   /// Use this if you want to overlay an existing object with its proxy, and apply some sort of transformation on it.
+   /// 
+   /// <c>true</c> means both objects will share the same clip.
+   /// 1.8</summary>
+   /// <param name="source_clip">Whether <c>obj</c> is clipped by the source clipper (<c>true</c>) or not (<c>false</c>).</param>
+   /// <returns></returns>
+   virtual public  void SetSourceClip( bool source_clip) {
+                         Efl.Canvas.ProxyNativeInherit.efl_canvas_proxy_source_clip_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), source_clip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines whether the events on this object are repeated to the source.
+   /// If <c>source</c> is <c>true</c>, it will make events on <c>obj</c> to also be repeated for the source object (see <see cref="Efl.Canvas.Proxy.SetSource"/>). Even the <c>obj</c> and source geometries are different, the event position will be transformed to the source object&apos;s space.
+   /// 
+   /// If <c>source</c> is <c>false</c>, events occurring on <c>obj</c> will be processed only on it.
+   /// 1.8</summary>
+   /// <returns>Whether this object should pass events (<c>true</c>) or not (<c>false</c>) to its source.</returns>
+   virtual public bool GetSourceEvents() {
+       var _ret_var = Efl.Canvas.ProxyNativeInherit.efl_canvas_proxy_source_events_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Defines whether the events on this object are repeated to the source.
+   /// If <c>source</c> is <c>true</c>, it will make events on <c>obj</c> to also be repeated for the source object (see <see cref="Efl.Canvas.Proxy.SetSource"/>). Even the <c>obj</c> and source geometries are different, the event position will be transformed to the source object&apos;s space.
+   /// 
+   /// If <c>source</c> is <c>false</c>, events occurring on <c>obj</c> will be processed only on it.
+   /// 1.8</summary>
+   /// <param name="repeat">Whether this object should pass events (<c>true</c>) or not (<c>false</c>) to its source.</param>
+   /// <returns></returns>
+   virtual public  void SetSourceEvents( bool repeat) {
+                         Efl.Canvas.ProxyNativeInherit.efl_canvas_proxy_source_events_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), repeat);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The source object for this proxy.
+/// The proxy object will mirror the rendering contents of a given source object in its drawing region, without affecting that source in any way. The source must be another valid <see cref="Efl.Canvas.Object"/>. Other effects may be applied to the proxy, such as a map (see <see cref="Efl.Gfx.Mapping"/>) to create a reflection of the original object (for example).
+/// 
+/// Any existing source object will be removed after this call.
+/// 
+/// Note: This property should be set as soon as creating a proxy object, otherwise the proxy will do nothing.
+/// 
+/// Warning: You cannot set a proxy as another proxy&apos;s source.</summary>
+/// <value>Source object to use for the proxy.</value>
+   public Efl.Canvas.Object Source {
+      get { return GetSource(); }
+      set { SetSource( value); }
+   }
+   /// <summary>Clip this proxy object with the source object&apos;s clipper.
+/// Use this if you want to overlay an existing object with its proxy, and apply some sort of transformation on it.
+/// 
+/// <c>true</c> means both objects will share the same clip.
+/// 1.8</summary>
+/// <value>Whether <c>obj</c> is clipped by the source clipper (<c>true</c>) or not (<c>false</c>).</value>
+   public bool SourceClip {
+      get { return GetSourceClip(); }
+      set { SetSourceClip( value); }
+   }
+   /// <summary>Defines whether the events on this object are repeated to the source.
+/// If <c>source</c> is <c>true</c>, it will make events on <c>obj</c> to also be repeated for the source object (see <see cref="Efl.Canvas.Proxy.SetSource"/>). Even the <c>obj</c> and source geometries are different, the event position will be transformed to the source object&apos;s space.
+/// 
+/// If <c>source</c> is <c>false</c>, events occurring on <c>obj</c> will be processed only on it.
+/// 1.8</summary>
+/// <value>Whether this object should pass events (<c>true</c>) or not (<c>false</c>) to its source.</value>
+   public bool SourceEvents {
+      get { return GetSourceEvents(); }
+      set { SetSourceEvents( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Proxy.efl_canvas_proxy_class_get();
+   }
+}
+public class ProxyNativeInherit : Efl.Canvas.ImageInternalNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_proxy_source_get_static_delegate == null)
+      efl_canvas_proxy_source_get_static_delegate = new efl_canvas_proxy_source_get_delegate(source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_proxy_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_proxy_source_get_static_delegate)});
+      if (efl_canvas_proxy_source_set_static_delegate == null)
+      efl_canvas_proxy_source_set_static_delegate = new efl_canvas_proxy_source_set_delegate(source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_proxy_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_proxy_source_set_static_delegate)});
+      if (efl_canvas_proxy_source_clip_get_static_delegate == null)
+      efl_canvas_proxy_source_clip_get_static_delegate = new efl_canvas_proxy_source_clip_get_delegate(source_clip_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_proxy_source_clip_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_proxy_source_clip_get_static_delegate)});
+      if (efl_canvas_proxy_source_clip_set_static_delegate == null)
+      efl_canvas_proxy_source_clip_set_static_delegate = new efl_canvas_proxy_source_clip_set_delegate(source_clip_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_proxy_source_clip_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_proxy_source_clip_set_static_delegate)});
+      if (efl_canvas_proxy_source_events_get_static_delegate == null)
+      efl_canvas_proxy_source_events_get_static_delegate = new efl_canvas_proxy_source_events_get_delegate(source_events_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_proxy_source_events_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_proxy_source_events_get_static_delegate)});
+      if (efl_canvas_proxy_source_events_set_static_delegate == null)
+      efl_canvas_proxy_source_events_set_static_delegate = new efl_canvas_proxy_source_events_set_delegate(source_events_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_proxy_source_events_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_proxy_source_events_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Proxy.efl_canvas_proxy_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Proxy.efl_canvas_proxy_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_canvas_proxy_source_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_canvas_proxy_source_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_get_api_delegate> efl_canvas_proxy_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_get_api_delegate>(_Module, "efl_canvas_proxy_source_get");
+    private static Efl.Canvas.Object source_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_proxy_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Proxy)wrapper).GetSource();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_proxy_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_proxy_source_get_delegate efl_canvas_proxy_source_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_proxy_source_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object src);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_proxy_source_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object src);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_set_api_delegate> efl_canvas_proxy_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_set_api_delegate>(_Module, "efl_canvas_proxy_source_set");
+    private static bool source_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object src)
+   {
+      Eina.Log.Debug("function efl_canvas_proxy_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Proxy)wrapper).SetSource( src);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_proxy_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  src);
+      }
+   }
+   private static efl_canvas_proxy_source_set_delegate efl_canvas_proxy_source_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_proxy_source_clip_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_proxy_source_clip_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_clip_get_api_delegate> efl_canvas_proxy_source_clip_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_clip_get_api_delegate>(_Module, "efl_canvas_proxy_source_clip_get");
+    private static bool source_clip_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_proxy_source_clip_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Proxy)wrapper).GetSourceClip();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_proxy_source_clip_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_proxy_source_clip_get_delegate efl_canvas_proxy_source_clip_get_static_delegate;
+
+
+    private delegate  void efl_canvas_proxy_source_clip_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool source_clip);
+
+
+    public delegate  void efl_canvas_proxy_source_clip_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool source_clip);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_clip_set_api_delegate> efl_canvas_proxy_source_clip_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_clip_set_api_delegate>(_Module, "efl_canvas_proxy_source_clip_set");
+    private static  void source_clip_set(System.IntPtr obj, System.IntPtr pd,  bool source_clip)
+   {
+      Eina.Log.Debug("function efl_canvas_proxy_source_clip_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Proxy)wrapper).SetSourceClip( source_clip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_proxy_source_clip_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  source_clip);
+      }
+   }
+   private static efl_canvas_proxy_source_clip_set_delegate efl_canvas_proxy_source_clip_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_proxy_source_events_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_proxy_source_events_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_events_get_api_delegate> efl_canvas_proxy_source_events_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_events_get_api_delegate>(_Module, "efl_canvas_proxy_source_events_get");
+    private static bool source_events_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_proxy_source_events_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Proxy)wrapper).GetSourceEvents();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_proxy_source_events_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_proxy_source_events_get_delegate efl_canvas_proxy_source_events_get_static_delegate;
+
+
+    private delegate  void efl_canvas_proxy_source_events_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool repeat);
+
+
+    public delegate  void efl_canvas_proxy_source_events_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool repeat);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_events_set_api_delegate> efl_canvas_proxy_source_events_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_proxy_source_events_set_api_delegate>(_Module, "efl_canvas_proxy_source_events_set");
+    private static  void source_events_set(System.IntPtr obj, System.IntPtr pd,  bool repeat)
+   {
+      Eina.Log.Debug("function efl_canvas_proxy_source_events_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Proxy)wrapper).SetSourceEvents( repeat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_proxy_source_events_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repeat);
+      }
+   }
+   private static efl_canvas_proxy_source_events_set_delegate efl_canvas_proxy_source_events_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_rectangle.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_rectangle.eo.cs
new file mode 100755 (executable)
index 0000000..65515e5
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Evas canvas rectangle class</summary>
+[RectangleNativeInherit]
+public class Rectangle : Efl.Canvas.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.RectangleNativeInherit nativeInherit = new Efl.Canvas.RectangleNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Rectangle))
+            return Efl.Canvas.RectangleNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_rectangle_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Rectangle(Efl.Object parent= null
+         ) :
+      base(efl_canvas_rectangle_class_get(), typeof(Rectangle), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Rectangle(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Rectangle(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Rectangle static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Rectangle(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Rectangle.efl_canvas_rectangle_class_get();
+   }
+}
+public class RectangleNativeInherit : Efl.Canvas.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Rectangle.efl_canvas_rectangle_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Rectangle.efl_canvas_rectangle_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_scene.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_scene.eo.cs
new file mode 100755 (executable)
index 0000000..683e075
--- /dev/null
@@ -0,0 +1,1189 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Interface containing basic canvas-related methods and events.</summary>
+[SceneNativeInherit]
+public interface Scene : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get the maximum image size the canvas can possibly handle.
+/// This function returns the largest image or surface size that the canvas can handle in pixels, and if there is one, returns <c>true</c>. It returns <c>false</c> if no extra constraint on maximum image size exists.
+/// 
+/// The default limit is 65535x65535.</summary>
+/// <param name="max">The maximum image size (in pixels).</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool GetImageMaxSize( out Eina.Size2D max);
+   /// <summary>Get if the canvas is currently calculating group objects.</summary>
+/// <returns><c>true</c> if currently calculating group objects.</returns>
+bool GetGroupObjectsCalculating();
+   /// <summary>Get a device by name.</summary>
+/// <param name="name">The name of the seat to find.</param>
+/// <returns>The device or seat, <c>null</c> if not found.</returns>
+Efl.Input.Device GetDevice(  System.String name);
+   /// <summary>Get a seat by id.</summary>
+/// <param name="id">The id of the seat to find.</param>
+/// <returns>The seat or <c>null</c> if not found.</returns>
+Efl.Input.Device GetSeat(  int id);
+   /// <summary>Get the default seat.</summary>
+/// <returns>The default seat or <c>null</c> if one does not exist.</returns>
+Efl.Input.Device GetSeatDefault();
+   /// <summary>This function returns the current known pointer coordinates
+/// This function returns the current position of the main input pointer (mouse, pen, etc...).</summary>
+/// <param name="seat">The seat, or <c>null</c> to use the default.</param>
+/// <param name="pos">The pointer position in pixels.</param>
+/// <returns><c>true</c> if a pointer exists for the given seat, otherwise <c>false</c>.</returns>
+bool GetPointerPosition( Efl.Input.Device seat,  out Eina.Position2D pos);
+   /// <summary>Call user-provided <c>calculate</c> group functions and unset the flag signalling that the object needs to get recalculated to all group objects in the canvas.</summary>
+/// <returns></returns>
+ void CalculateGroupObjects();
+   /// <summary>Retrieve a list of objects at a given position in a canvas.
+/// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+/// 
+/// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+/// <param name="pos">The pixel position.</param>
+/// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+/// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+/// <returns>The list of objects that are over the given position in <c>e</c>.</returns>
+Eina.Iterator<Efl.Gfx.Entity> GetObjectsAtXy( Eina.Position2D pos,  bool include_pass_events_objects,  bool include_hidden_objects);
+   /// <summary>Retrieve the object stacked at the top of a given position in a canvas.
+/// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+/// 
+/// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+/// <param name="pos">The pixel position.</param>
+/// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+/// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+/// <returns>The canvas object that is over all other objects at the given position.</returns>
+Efl.Gfx.Entity GetObjectTopAtXy( Eina.Position2D pos,  bool include_pass_events_objects,  bool include_hidden_objects);
+   /// <summary>Retrieve a list of objects overlapping a given rectangular region in a canvas.
+/// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas overlapping with the given rectangular region. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+/// 
+/// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+/// <param name="rect">The rectangular region.</param>
+/// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+/// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+/// <returns>Iterator to objects</returns>
+Eina.Iterator<Efl.Gfx.Entity> GetObjectsInRectangle( Eina.Rect rect,  bool include_pass_events_objects,  bool include_hidden_objects);
+   /// <summary>Retrieve the canvas object stacked at the top of a given rectangular region in a canvas
+/// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas overlapping with the given rectangular region. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+/// 
+/// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+/// <param name="rect">The rectangular region.</param>
+/// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+/// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+/// <returns>The object that is over all other objects at the given rectangular region.</returns>
+Efl.Gfx.Entity GetObjectTopInRectangle( Eina.Rect rect,  bool include_pass_events_objects,  bool include_hidden_objects);
+   /// <summary>Iterate over the available input device seats for the canvas.
+/// A &quot;seat&quot; is the term used for a group of input devices, typically including a pointer and a keyboard. A seat object is the parent of the individual input devices.
+/// 1.20</summary>
+/// <returns>An iterator over the attached seats.</returns>
+Eina.Iterator<Efl.Input.Device> Seats();
+                                       /// <summary>Called when canvas got focus</summary>
+   event EventHandler<Efl.Canvas.SceneFocusInEvt_Args> FocusInEvt;
+   /// <summary>Called when canvas lost focus</summary>
+   event EventHandler<Efl.Canvas.SceneFocusOutEvt_Args> FocusOutEvt;
+   /// <summary>Called when object got focus</summary>
+   event EventHandler<Efl.Canvas.SceneObjectFocusInEvt_Args> ObjectFocusInEvt;
+   /// <summary>Called when object lost focus</summary>
+   event EventHandler<Efl.Canvas.SceneObjectFocusOutEvt_Args> ObjectFocusOutEvt;
+   /// <summary>Called when pre render happens</summary>
+   event EventHandler RenderPreEvt;
+   /// <summary>Called when post render happens</summary>
+   event EventHandler<Efl.Canvas.SceneRenderPostEvt_Args> RenderPostEvt;
+   /// <summary>Called when input device changed</summary>
+   event EventHandler<Efl.Canvas.SceneDeviceChangedEvt_Args> DeviceChangedEvt;
+   /// <summary>Called when input device was added</summary>
+   event EventHandler<Efl.Canvas.SceneDeviceAddedEvt_Args> DeviceAddedEvt;
+   /// <summary>Called when input device was removed</summary>
+   event EventHandler<Efl.Canvas.SceneDeviceRemovedEvt_Args> DeviceRemovedEvt;
+   /// <summary>Get if the canvas is currently calculating group objects.</summary>
+/// <value><c>true</c> if currently calculating group objects.</value>
+   bool GroupObjectsCalculating {
+      get ;
+   }
+   /// <summary>Get the default seat attached to this canvas.
+/// A canvas may have exactly one default seat.
+/// 
+/// See also <see cref="Efl.Canvas.Scene.GetDevice"/> to find a seat by name. See also <see cref="Efl.Canvas.Scene.GetSeat"/> to find a seat by id.</summary>
+/// <value>The default seat or <c>null</c> if one does not exist.</value>
+   Efl.Input.Device SeatDefault {
+      get ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.FocusInEvt"/>.</summary>
+public class SceneFocusInEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Focus arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.FocusOutEvt"/>.</summary>
+public class SceneFocusOutEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Focus arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.ObjectFocusInEvt"/>.</summary>
+public class SceneObjectFocusInEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Focus arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.ObjectFocusOutEvt"/>.</summary>
+public class SceneObjectFocusOutEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Focus arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.RenderPostEvt"/>.</summary>
+public class SceneRenderPostEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Gfx.Event.RenderPost arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.DeviceChangedEvt"/>.</summary>
+public class SceneDeviceChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Device arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.DeviceAddedEvt"/>.</summary>
+public class SceneDeviceAddedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Device arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Canvas.Scene.DeviceRemovedEvt"/>.</summary>
+public class SceneDeviceRemovedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Device arg { get; set; }
+}
+/// <summary>Interface containing basic canvas-related methods and events.</summary>
+sealed public class SceneConcrete : 
+
+Scene
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SceneConcrete))
+            return Efl.Canvas.SceneNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_canvas_scene_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SceneConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~SceneConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static SceneConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SceneConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object FocusInEvtKey = new object();
+   /// <summary>Called when canvas got focus</summary>
+   public event EventHandler<Efl.Canvas.SceneFocusInEvt_Args> FocusInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_IN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_FocusInEvt_delegate)) {
+               eventHandlers.AddHandler(FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_IN";
+            if (remove_cpp_event_handler(key, this.evt_FocusInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusInEvt.</summary>
+   public void On_FocusInEvt(Efl.Canvas.SceneFocusInEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneFocusInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneFocusInEvt_Args>)eventHandlers[FocusInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusInEvt_delegate;
+   private void on_FocusInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneFocusInEvt_Args args = new Efl.Canvas.SceneFocusInEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_FocusInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FocusOutEvtKey = new object();
+   /// <summary>Called when canvas lost focus</summary>
+   public event EventHandler<Efl.Canvas.SceneFocusOutEvt_Args> FocusOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_OUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_FocusOutEvt_delegate)) {
+               eventHandlers.AddHandler(FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_OUT";
+            if (remove_cpp_event_handler(key, this.evt_FocusOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusOutEvt.</summary>
+   public void On_FocusOutEvt(Efl.Canvas.SceneFocusOutEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneFocusOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneFocusOutEvt_Args>)eventHandlers[FocusOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusOutEvt_delegate;
+   private void on_FocusOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneFocusOutEvt_Args args = new Efl.Canvas.SceneFocusOutEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_FocusOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ObjectFocusInEvtKey = new object();
+   /// <summary>Called when object got focus</summary>
+   public event EventHandler<Efl.Canvas.SceneObjectFocusInEvt_Args> ObjectFocusInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_IN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ObjectFocusInEvt_delegate)) {
+               eventHandlers.AddHandler(ObjectFocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_IN";
+            if (remove_cpp_event_handler(key, this.evt_ObjectFocusInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ObjectFocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ObjectFocusInEvt.</summary>
+   public void On_ObjectFocusInEvt(Efl.Canvas.SceneObjectFocusInEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneObjectFocusInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneObjectFocusInEvt_Args>)eventHandlers[ObjectFocusInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ObjectFocusInEvt_delegate;
+   private void on_ObjectFocusInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneObjectFocusInEvt_Args args = new Efl.Canvas.SceneObjectFocusInEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_ObjectFocusInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ObjectFocusOutEvtKey = new object();
+   /// <summary>Called when object lost focus</summary>
+   public event EventHandler<Efl.Canvas.SceneObjectFocusOutEvt_Args> ObjectFocusOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_OUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ObjectFocusOutEvt_delegate)) {
+               eventHandlers.AddHandler(ObjectFocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_OUT";
+            if (remove_cpp_event_handler(key, this.evt_ObjectFocusOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ObjectFocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ObjectFocusOutEvt.</summary>
+   public void On_ObjectFocusOutEvt(Efl.Canvas.SceneObjectFocusOutEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneObjectFocusOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneObjectFocusOutEvt_Args>)eventHandlers[ObjectFocusOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ObjectFocusOutEvt_delegate;
+   private void on_ObjectFocusOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneObjectFocusOutEvt_Args args = new Efl.Canvas.SceneObjectFocusOutEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_ObjectFocusOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RenderPreEvtKey = new object();
+   /// <summary>Called when pre render happens</summary>
+   public event EventHandler RenderPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_PRE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RenderPreEvt_delegate)) {
+               eventHandlers.AddHandler(RenderPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_PRE";
+            if (remove_cpp_event_handler(key, this.evt_RenderPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RenderPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RenderPreEvt.</summary>
+   public void On_RenderPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RenderPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RenderPreEvt_delegate;
+   private void on_RenderPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RenderPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RenderPostEvtKey = new object();
+   /// <summary>Called when post render happens</summary>
+   public event EventHandler<Efl.Canvas.SceneRenderPostEvt_Args> RenderPostEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_POST";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RenderPostEvt_delegate)) {
+               eventHandlers.AddHandler(RenderPostEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_POST";
+            if (remove_cpp_event_handler(key, this.evt_RenderPostEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RenderPostEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RenderPostEvt.</summary>
+   public void On_RenderPostEvt(Efl.Canvas.SceneRenderPostEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneRenderPostEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneRenderPostEvt_Args>)eventHandlers[RenderPostEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RenderPostEvt_delegate;
+   private void on_RenderPostEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneRenderPostEvt_Args args = new Efl.Canvas.SceneRenderPostEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_RenderPostEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DeviceChangedEvtKey = new object();
+   /// <summary>Called when input device changed</summary>
+   public event EventHandler<Efl.Canvas.SceneDeviceChangedEvt_Args> DeviceChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DeviceChangedEvt_delegate)) {
+               eventHandlers.AddHandler(DeviceChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_DeviceChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeviceChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeviceChangedEvt.</summary>
+   public void On_DeviceChangedEvt(Efl.Canvas.SceneDeviceChangedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneDeviceChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneDeviceChangedEvt_Args>)eventHandlers[DeviceChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeviceChangedEvt_delegate;
+   private void on_DeviceChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneDeviceChangedEvt_Args args = new Efl.Canvas.SceneDeviceChangedEvt_Args();
+      args.arg = new Efl.Input.Device(evt.Info);
+      try {
+         On_DeviceChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DeviceAddedEvtKey = new object();
+   /// <summary>Called when input device was added</summary>
+   public event EventHandler<Efl.Canvas.SceneDeviceAddedEvt_Args> DeviceAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DeviceAddedEvt_delegate)) {
+               eventHandlers.AddHandler(DeviceAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_DeviceAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeviceAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeviceAddedEvt.</summary>
+   public void On_DeviceAddedEvt(Efl.Canvas.SceneDeviceAddedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneDeviceAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneDeviceAddedEvt_Args>)eventHandlers[DeviceAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeviceAddedEvt_delegate;
+   private void on_DeviceAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneDeviceAddedEvt_Args args = new Efl.Canvas.SceneDeviceAddedEvt_Args();
+      args.arg = new Efl.Input.Device(evt.Info);
+      try {
+         On_DeviceAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DeviceRemovedEvtKey = new object();
+   /// <summary>Called when input device was removed</summary>
+   public event EventHandler<Efl.Canvas.SceneDeviceRemovedEvt_Args> DeviceRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DeviceRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(DeviceRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_DeviceRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeviceRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeviceRemovedEvt.</summary>
+   public void On_DeviceRemovedEvt(Efl.Canvas.SceneDeviceRemovedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneDeviceRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneDeviceRemovedEvt_Args>)eventHandlers[DeviceRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeviceRemovedEvt_delegate;
+   private void on_DeviceRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneDeviceRemovedEvt_Args args = new Efl.Canvas.SceneDeviceRemovedEvt_Args();
+      args.arg = new Efl.Input.Device(evt.Info);
+      try {
+         On_DeviceRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_FocusInEvt_delegate = new Efl.EventCb(on_FocusInEvt_NativeCallback);
+      evt_FocusOutEvt_delegate = new Efl.EventCb(on_FocusOutEvt_NativeCallback);
+      evt_ObjectFocusInEvt_delegate = new Efl.EventCb(on_ObjectFocusInEvt_NativeCallback);
+      evt_ObjectFocusOutEvt_delegate = new Efl.EventCb(on_ObjectFocusOutEvt_NativeCallback);
+      evt_RenderPreEvt_delegate = new Efl.EventCb(on_RenderPreEvt_NativeCallback);
+      evt_RenderPostEvt_delegate = new Efl.EventCb(on_RenderPostEvt_NativeCallback);
+      evt_DeviceChangedEvt_delegate = new Efl.EventCb(on_DeviceChangedEvt_NativeCallback);
+      evt_DeviceAddedEvt_delegate = new Efl.EventCb(on_DeviceAddedEvt_NativeCallback);
+      evt_DeviceRemovedEvt_delegate = new Efl.EventCb(on_DeviceRemovedEvt_NativeCallback);
+   }
+   /// <summary>Get the maximum image size the canvas can possibly handle.
+   /// This function returns the largest image or surface size that the canvas can handle in pixels, and if there is one, returns <c>true</c>. It returns <c>false</c> if no extra constraint on maximum image size exists.
+   /// 
+   /// The default limit is 65535x65535.</summary>
+   /// <param name="max">The maximum image size (in pixels).</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool GetImageMaxSize( out Eina.Size2D max) {
+             var _out_max = new Eina.Size2D_StructInternal();
+            var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_image_max_size_get_ptr.Value.Delegate(this.NativeHandle, out _out_max);
+      Eina.Error.RaiseIfUnhandledException();
+      max = Eina.Size2D_StructConversion.ToManaged(_out_max);
+            return _ret_var;
+ }
+   /// <summary>Get if the canvas is currently calculating group objects.</summary>
+   /// <returns><c>true</c> if currently calculating group objects.</returns>
+   public bool GetGroupObjectsCalculating() {
+       var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_group_objects_calculating_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get a device by name.</summary>
+   /// <param name="name">The name of the seat to find.</param>
+   /// <returns>The device or seat, <c>null</c> if not found.</returns>
+   public Efl.Input.Device GetDevice(  System.String name) {
+                         var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_device_get_ptr.Value.Delegate(this.NativeHandle, name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get a seat by id.</summary>
+   /// <param name="id">The id of the seat to find.</param>
+   /// <returns>The seat or <c>null</c> if not found.</returns>
+   public Efl.Input.Device GetSeat(  int id) {
+                         var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_seat_get_ptr.Value.Delegate(this.NativeHandle, id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the default seat.</summary>
+   /// <returns>The default seat or <c>null</c> if one does not exist.</returns>
+   public Efl.Input.Device GetSeatDefault() {
+       var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_seat_default_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This function returns the current known pointer coordinates
+   /// This function returns the current position of the main input pointer (mouse, pen, etc...).</summary>
+   /// <param name="seat">The seat, or <c>null</c> to use the default.</param>
+   /// <param name="pos">The pointer position in pixels.</param>
+   /// <returns><c>true</c> if a pointer exists for the given seat, otherwise <c>false</c>.</returns>
+   public bool GetPointerPosition( Efl.Input.Device seat,  out Eina.Position2D pos) {
+                         var _out_pos = new Eina.Position2D_StructInternal();
+                  var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_pointer_position_get_ptr.Value.Delegate(this.NativeHandle, seat,  out _out_pos);
+      Eina.Error.RaiseIfUnhandledException();
+            pos = Eina.Position2D_StructConversion.ToManaged(_out_pos);
+                  return _ret_var;
+ }
+   /// <summary>Call user-provided <c>calculate</c> group functions and unset the flag signalling that the object needs to get recalculated to all group objects in the canvas.</summary>
+   /// <returns></returns>
+   public  void CalculateGroupObjects() {
+       Efl.Canvas.SceneNativeInherit.efl_canvas_scene_group_objects_calculate_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieve a list of objects at a given position in a canvas.
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="pos">The pixel position.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>The list of objects that are over the given position in <c>e</c>.</returns>
+   public Eina.Iterator<Efl.Gfx.Entity> GetObjectsAtXy( Eina.Position2D pos,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_objects_at_xy_get_ptr.Value.Delegate(this.NativeHandle, _in_pos,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Retrieve the object stacked at the top of a given position in a canvas.
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="pos">The pixel position.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>The canvas object that is over all other objects at the given position.</returns>
+   public Efl.Gfx.Entity GetObjectTopAtXy( Eina.Position2D pos,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_object_top_at_xy_get_ptr.Value.Delegate(this.NativeHandle, _in_pos,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Retrieve a list of objects overlapping a given rectangular region in a canvas.
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas overlapping with the given rectangular region. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="rect">The rectangular region.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>Iterator to objects</returns>
+   public Eina.Iterator<Efl.Gfx.Entity> GetObjectsInRectangle( Eina.Rect rect,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_objects_in_rectangle_get_ptr.Value.Delegate(this.NativeHandle, _in_rect,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Retrieve the canvas object stacked at the top of a given rectangular region in a canvas
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas overlapping with the given rectangular region. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="rect">The rectangular region.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>The object that is over all other objects at the given rectangular region.</returns>
+   public Efl.Gfx.Entity GetObjectTopInRectangle( Eina.Rect rect,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_object_top_in_rectangle_get_ptr.Value.Delegate(this.NativeHandle, _in_rect,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Iterate over the available input device seats for the canvas.
+   /// A &quot;seat&quot; is the term used for a group of input devices, typically including a pointer and a keyboard. A seat object is the parent of the individual input devices.
+   /// 1.20</summary>
+   /// <returns>An iterator over the attached seats.</returns>
+   public Eina.Iterator<Efl.Input.Device> Seats() {
+       var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_seats_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Input.Device>(_ret_var, true, false);
+ }
+   /// <summary>Get if the canvas is currently calculating group objects.</summary>
+/// <value><c>true</c> if currently calculating group objects.</value>
+   public bool GroupObjectsCalculating {
+      get { return GetGroupObjectsCalculating(); }
+   }
+   /// <summary>Get the default seat attached to this canvas.
+/// A canvas may have exactly one default seat.
+/// 
+/// See also <see cref="Efl.Canvas.Scene.GetDevice"/> to find a seat by name. See also <see cref="Efl.Canvas.Scene.GetSeat"/> to find a seat by id.</summary>
+/// <value>The default seat or <c>null</c> if one does not exist.</value>
+   public Efl.Input.Device SeatDefault {
+      get { return GetSeatDefault(); }
+   }
+}
+public class SceneNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_scene_image_max_size_get_static_delegate == null)
+      efl_canvas_scene_image_max_size_get_static_delegate = new efl_canvas_scene_image_max_size_get_delegate(image_max_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_image_max_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_image_max_size_get_static_delegate)});
+      if (efl_canvas_scene_group_objects_calculating_get_static_delegate == null)
+      efl_canvas_scene_group_objects_calculating_get_static_delegate = new efl_canvas_scene_group_objects_calculating_get_delegate(group_objects_calculating_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_group_objects_calculating_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_group_objects_calculating_get_static_delegate)});
+      if (efl_canvas_scene_device_get_static_delegate == null)
+      efl_canvas_scene_device_get_static_delegate = new efl_canvas_scene_device_get_delegate(device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_device_get_static_delegate)});
+      if (efl_canvas_scene_seat_get_static_delegate == null)
+      efl_canvas_scene_seat_get_static_delegate = new efl_canvas_scene_seat_get_delegate(seat_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_seat_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_seat_get_static_delegate)});
+      if (efl_canvas_scene_seat_default_get_static_delegate == null)
+      efl_canvas_scene_seat_default_get_static_delegate = new efl_canvas_scene_seat_default_get_delegate(seat_default_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_seat_default_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_seat_default_get_static_delegate)});
+      if (efl_canvas_scene_pointer_position_get_static_delegate == null)
+      efl_canvas_scene_pointer_position_get_static_delegate = new efl_canvas_scene_pointer_position_get_delegate(pointer_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_pointer_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_pointer_position_get_static_delegate)});
+      if (efl_canvas_scene_group_objects_calculate_static_delegate == null)
+      efl_canvas_scene_group_objects_calculate_static_delegate = new efl_canvas_scene_group_objects_calculate_delegate(group_objects_calculate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_group_objects_calculate"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_group_objects_calculate_static_delegate)});
+      if (efl_canvas_scene_objects_at_xy_get_static_delegate == null)
+      efl_canvas_scene_objects_at_xy_get_static_delegate = new efl_canvas_scene_objects_at_xy_get_delegate(objects_at_xy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_objects_at_xy_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_objects_at_xy_get_static_delegate)});
+      if (efl_canvas_scene_object_top_at_xy_get_static_delegate == null)
+      efl_canvas_scene_object_top_at_xy_get_static_delegate = new efl_canvas_scene_object_top_at_xy_get_delegate(object_top_at_xy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_object_top_at_xy_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_object_top_at_xy_get_static_delegate)});
+      if (efl_canvas_scene_objects_in_rectangle_get_static_delegate == null)
+      efl_canvas_scene_objects_in_rectangle_get_static_delegate = new efl_canvas_scene_objects_in_rectangle_get_delegate(objects_in_rectangle_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_objects_in_rectangle_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_objects_in_rectangle_get_static_delegate)});
+      if (efl_canvas_scene_object_top_in_rectangle_get_static_delegate == null)
+      efl_canvas_scene_object_top_in_rectangle_get_static_delegate = new efl_canvas_scene_object_top_in_rectangle_get_delegate(object_top_in_rectangle_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_object_top_in_rectangle_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_object_top_in_rectangle_get_static_delegate)});
+      if (efl_canvas_scene_seats_static_delegate == null)
+      efl_canvas_scene_seats_static_delegate = new efl_canvas_scene_seats_delegate(seats);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_seats"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_seats_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.SceneConcrete.efl_canvas_scene_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.SceneConcrete.efl_canvas_scene_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_scene_image_max_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Eina.Size2D_StructInternal max);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_scene_image_max_size_get_api_delegate(System.IntPtr obj,   out Eina.Size2D_StructInternal max);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_image_max_size_get_api_delegate> efl_canvas_scene_image_max_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_image_max_size_get_api_delegate>(_Module, "efl_canvas_scene_image_max_size_get");
+    private static bool image_max_size_get(System.IntPtr obj, System.IntPtr pd,  out Eina.Size2D_StructInternal max)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_image_max_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     Eina.Size2D _out_max = default(Eina.Size2D);
+               bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Scene)wrapper).GetImageMaxSize( out _out_max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      max = Eina.Size2D_StructConversion.ToInternal(_out_max);
+            return _ret_var;
+      } else {
+         return efl_canvas_scene_image_max_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out max);
+      }
+   }
+   private static efl_canvas_scene_image_max_size_get_delegate efl_canvas_scene_image_max_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_scene_group_objects_calculating_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_scene_group_objects_calculating_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculating_get_api_delegate> efl_canvas_scene_group_objects_calculating_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculating_get_api_delegate>(_Module, "efl_canvas_scene_group_objects_calculating_get");
+    private static bool group_objects_calculating_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_group_objects_calculating_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Scene)wrapper).GetGroupObjectsCalculating();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_scene_group_objects_calculating_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_group_objects_calculating_get_delegate efl_canvas_scene_group_objects_calculating_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_canvas_scene_device_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_canvas_scene_device_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_device_get_api_delegate> efl_canvas_scene_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_device_get_api_delegate>(_Module, "efl_canvas_scene_device_get");
+    private static Efl.Input.Device device_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Scene)wrapper).GetDevice( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_scene_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_canvas_scene_device_get_delegate efl_canvas_scene_device_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_canvas_scene_seat_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_canvas_scene_seat_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_get_api_delegate> efl_canvas_scene_seat_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_get_api_delegate>(_Module, "efl_canvas_scene_seat_get");
+    private static Efl.Input.Device seat_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_seat_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Scene)wrapper).GetSeat( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_scene_seat_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_canvas_scene_seat_get_delegate efl_canvas_scene_seat_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_canvas_scene_seat_default_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_canvas_scene_seat_default_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_default_get_api_delegate> efl_canvas_scene_seat_default_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_default_get_api_delegate>(_Module, "efl_canvas_scene_seat_default_get");
+    private static Efl.Input.Device seat_default_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_seat_default_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Scene)wrapper).GetSeatDefault();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_scene_seat_default_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_seat_default_get_delegate efl_canvas_scene_seat_default_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_scene_pointer_position_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,   out Eina.Position2D_StructInternal pos);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_scene_pointer_position_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,   out Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_pointer_position_get_api_delegate> efl_canvas_scene_pointer_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_pointer_position_get_api_delegate>(_Module, "efl_canvas_scene_pointer_position_get");
+    private static bool pointer_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat,  out Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_pointer_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 Eina.Position2D _out_pos = default(Eina.Position2D);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Scene)wrapper).GetPointerPosition( seat,  out _out_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            pos = Eina.Position2D_StructConversion.ToInternal(_out_pos);
+                  return _ret_var;
+      } else {
+         return efl_canvas_scene_pointer_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat,  out pos);
+      }
+   }
+   private static efl_canvas_scene_pointer_position_get_delegate efl_canvas_scene_pointer_position_get_static_delegate;
+
+
+    private delegate  void efl_canvas_scene_group_objects_calculate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_canvas_scene_group_objects_calculate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculate_api_delegate> efl_canvas_scene_group_objects_calculate_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculate_api_delegate>(_Module, "efl_canvas_scene_group_objects_calculate");
+    private static  void group_objects_calculate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_group_objects_calculate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Scene)wrapper).CalculateGroupObjects();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_canvas_scene_group_objects_calculate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_group_objects_calculate_delegate efl_canvas_scene_group_objects_calculate_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_scene_objects_at_xy_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+    public delegate  System.IntPtr efl_canvas_scene_objects_at_xy_get_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_at_xy_get_api_delegate> efl_canvas_scene_objects_at_xy_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_at_xy_get_api_delegate>(_Module, "efl_canvas_scene_objects_at_xy_get");
+    private static  System.IntPtr objects_at_xy_get(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_objects_at_xy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                                                         Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Scene)wrapper).GetObjectsAtXy( _in_pos,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_scene_objects_at_xy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_objects_at_xy_get_delegate efl_canvas_scene_objects_at_xy_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_canvas_scene_object_top_at_xy_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_canvas_scene_object_top_at_xy_get_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_at_xy_get_api_delegate> efl_canvas_scene_object_top_at_xy_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_at_xy_get_api_delegate>(_Module, "efl_canvas_scene_object_top_at_xy_get");
+    private static Efl.Gfx.Entity object_top_at_xy_get(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_object_top_at_xy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                                                         Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Scene)wrapper).GetObjectTopAtXy( _in_pos,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_canvas_scene_object_top_at_xy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_object_top_at_xy_get_delegate efl_canvas_scene_object_top_at_xy_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_scene_objects_in_rectangle_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+    public delegate  System.IntPtr efl_canvas_scene_objects_in_rectangle_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_in_rectangle_get_api_delegate> efl_canvas_scene_objects_in_rectangle_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_in_rectangle_get_api_delegate>(_Module, "efl_canvas_scene_objects_in_rectangle_get");
+    private static  System.IntPtr objects_in_rectangle_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_objects_in_rectangle_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                                         Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Scene)wrapper).GetObjectsInRectangle( _in_rect,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_scene_objects_in_rectangle_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_objects_in_rectangle_get_delegate efl_canvas_scene_objects_in_rectangle_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_canvas_scene_object_top_in_rectangle_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_canvas_scene_object_top_in_rectangle_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_in_rectangle_get_api_delegate> efl_canvas_scene_object_top_in_rectangle_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_in_rectangle_get_api_delegate>(_Module, "efl_canvas_scene_object_top_in_rectangle_get");
+    private static Efl.Gfx.Entity object_top_in_rectangle_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_object_top_in_rectangle_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                                         Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Scene)wrapper).GetObjectTopInRectangle( _in_rect,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_canvas_scene_object_top_in_rectangle_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_object_top_in_rectangle_get_delegate efl_canvas_scene_object_top_in_rectangle_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_scene_seats_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_scene_seats_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_seats_api_delegate> efl_canvas_scene_seats_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_seats_api_delegate>(_Module, "efl_canvas_scene_seats");
+    private static  System.IntPtr seats(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_seats was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Input.Device> _ret_var = default(Eina.Iterator<Efl.Input.Device>);
+         try {
+            _ret_var = ((Scene)wrapper).Seats();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_scene_seats_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_seats_delegate efl_canvas_scene_seats_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_snapshot.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_snapshot.eo.cs
new file mode 100755 (executable)
index 0000000..84b5b15
--- /dev/null
@@ -0,0 +1,92 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Low-level snapshot image object.
+/// A snapshot is a special kind of image containing the pixels from all the objects below it. This allows applications to save screenshots of all or part of their UI, or apply filters to parts of the UI.</summary>
+[SnapshotNativeInherit]
+public class Snapshot : Efl.Canvas.ImageInternal, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.SnapshotNativeInherit nativeInherit = new Efl.Canvas.SnapshotNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Snapshot))
+            return Efl.Canvas.SnapshotNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_snapshot_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Snapshot(Efl.Object parent= null
+         ) :
+      base(efl_canvas_snapshot_class_get(), typeof(Snapshot), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Snapshot(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Snapshot(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Snapshot static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Snapshot(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Snapshot.efl_canvas_snapshot_class_get();
+   }
+}
+public class SnapshotNativeInherit : Efl.Canvas.ImageInternalNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Snapshot.efl_canvas_snapshot_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Snapshot.efl_canvas_snapshot_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_surface.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_surface.eo.cs
new file mode 100755 (executable)
index 0000000..251b1c1
--- /dev/null
@@ -0,0 +1,171 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Native surfaces usually bound to an externally-managed buffer.
+/// The attached <see cref="Efl.Canvas.Surface.NativeBuffer"/> is entirely platform-dependent, which means some of this mixin&apos;s subclasses will not work (constructor returns <c>null</c>) on some platforms. This class is meant to be used from native code only (C or C++), with direct access to the display system or a buffer allocation system.</summary>
+[SurfaceNativeInherit]
+public class Surface : Efl.Canvas.ImageInternal, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.SurfaceNativeInherit nativeInherit = new Efl.Canvas.SurfaceNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Surface))
+            return Efl.Canvas.SurfaceNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_surface_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Surface(Efl.Object parent= null
+         ) :
+      base(efl_canvas_surface_class_get(), typeof(Surface), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Surface(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Surface(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Surface static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Surface(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>External buffer attached to this native surface.
+   /// Set to <c>null</c> to detach this surface from the external buffer.</summary>
+   /// <returns>The external buffer, depends on its type.</returns>
+   virtual public  System.IntPtr GetNativeBuffer() {
+       var _ret_var = Efl.Canvas.SurfaceNativeInherit.efl_canvas_surface_native_buffer_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the buffer. If this fails, this function returns <c>false</c>, and the surface is left without any attached buffer.</summary>
+   /// <param name="buffer">The external buffer, depends on its type.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetNativeBuffer(  System.IntPtr buffer) {
+                         var _ret_var = Efl.Canvas.SurfaceNativeInherit.efl_canvas_surface_native_buffer_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), buffer);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>External buffer attached to this native surface.
+/// Set to <c>null</c> to detach this surface from the external buffer.</summary>
+/// <value>The external buffer, depends on its type.</value>
+   public  System.IntPtr NativeBuffer {
+      get { return GetNativeBuffer(); }
+      set { SetNativeBuffer( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Surface.efl_canvas_surface_class_get();
+   }
+}
+public class SurfaceNativeInherit : Efl.Canvas.ImageInternalNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_surface_native_buffer_get_static_delegate == null)
+      efl_canvas_surface_native_buffer_get_static_delegate = new efl_canvas_surface_native_buffer_get_delegate(native_buffer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_surface_native_buffer_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_surface_native_buffer_get_static_delegate)});
+      if (efl_canvas_surface_native_buffer_set_static_delegate == null)
+      efl_canvas_surface_native_buffer_set_static_delegate = new efl_canvas_surface_native_buffer_set_delegate(native_buffer_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_surface_native_buffer_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_surface_native_buffer_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Surface.efl_canvas_surface_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Surface.efl_canvas_surface_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_canvas_surface_native_buffer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_surface_native_buffer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_surface_native_buffer_get_api_delegate> efl_canvas_surface_native_buffer_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_surface_native_buffer_get_api_delegate>(_Module, "efl_canvas_surface_native_buffer_get");
+    private static  System.IntPtr native_buffer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_surface_native_buffer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Surface)wrapper).GetNativeBuffer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_surface_native_buffer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_surface_native_buffer_get_delegate efl_canvas_surface_native_buffer_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_surface_native_buffer_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr buffer);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_surface_native_buffer_set_api_delegate(System.IntPtr obj,    System.IntPtr buffer);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_surface_native_buffer_set_api_delegate> efl_canvas_surface_native_buffer_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_surface_native_buffer_set_api_delegate>(_Module, "efl_canvas_surface_native_buffer_set");
+    private static bool native_buffer_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr buffer)
+   {
+      Eina.Log.Debug("function efl_canvas_surface_native_buffer_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Surface)wrapper).SetNativeBuffer( buffer);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_surface_native_buffer_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  buffer);
+      }
+   }
+   private static efl_canvas_surface_native_buffer_set_delegate efl_canvas_surface_native_buffer_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_surface_tbm.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_surface_tbm.eo.cs
new file mode 100755 (executable)
index 0000000..44fac11
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Native Tizen Buffer Manager surface for Efl canvas</summary>
+[SurfaceTbmNativeInherit]
+public class SurfaceTbm : Efl.Canvas.Surface, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.SurfaceTbmNativeInherit nativeInherit = new Efl.Canvas.SurfaceTbmNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SurfaceTbm))
+            return Efl.Canvas.SurfaceTbmNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_surface_tbm_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public SurfaceTbm(Efl.Object parent= null
+         ) :
+      base(efl_canvas_surface_tbm_class_get(), typeof(SurfaceTbm), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SurfaceTbm(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SurfaceTbm(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SurfaceTbm static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SurfaceTbm(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.SurfaceTbm.efl_canvas_surface_tbm_class_get();
+   }
+}
+public class SurfaceTbmNativeInherit : Efl.Canvas.SurfaceNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.SurfaceTbm.efl_canvas_surface_tbm_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.SurfaceTbm.efl_canvas_surface_tbm_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_surface_wayland.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_surface_wayland.eo.cs
new file mode 100755 (executable)
index 0000000..ec3844b
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Native Wayland surface for Efl canvas</summary>
+[SurfaceWaylandNativeInherit]
+public class SurfaceWayland : Efl.Canvas.Surface, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.SurfaceWaylandNativeInherit nativeInherit = new Efl.Canvas.SurfaceWaylandNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SurfaceWayland))
+            return Efl.Canvas.SurfaceWaylandNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_surface_wayland_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public SurfaceWayland(Efl.Object parent= null
+         ) :
+      base(efl_canvas_surface_wayland_class_get(), typeof(SurfaceWayland), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SurfaceWayland(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SurfaceWayland(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SurfaceWayland static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SurfaceWayland(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.SurfaceWayland.efl_canvas_surface_wayland_class_get();
+   }
+}
+public class SurfaceWaylandNativeInherit : Efl.Canvas.SurfaceNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.SurfaceWayland.efl_canvas_surface_wayland_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.SurfaceWayland.efl_canvas_surface_wayland_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_surface_x11.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_surface_x11.eo.cs
new file mode 100755 (executable)
index 0000000..5a56d2f
--- /dev/null
@@ -0,0 +1,230 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Native X11 surface for Efl canvas</summary>
+[SurfaceX11NativeInherit]
+public class SurfaceX11 : Efl.Canvas.Surface, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.SurfaceX11NativeInherit nativeInherit = new Efl.Canvas.SurfaceX11NativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SurfaceX11))
+            return Efl.Canvas.SurfaceX11NativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_surface_x11_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public SurfaceX11(Efl.Object parent= null
+         ) :
+      base(efl_canvas_surface_x11_class_get(), typeof(SurfaceX11), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SurfaceX11(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SurfaceX11(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SurfaceX11 static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SurfaceX11(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>This is a helper for <see cref="Efl.Canvas.Surface.NativeBuffer"/>.</summary>
+   /// <param name="visual">X11 Visual for this Pixmap.</param>
+   /// <param name="pixmap">X11 Pixmap ID.</param>
+   /// <returns></returns>
+   virtual public  void GetPixmap( out  System.IntPtr visual,  out  uint pixmap) {
+                                           Efl.Canvas.SurfaceX11NativeInherit.efl_canvas_surface_x11_pixmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out visual,  out pixmap);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This is a helper for <see cref="Efl.Canvas.Surface.NativeBuffer"/>.</summary>
+   /// <param name="visual">X11 Visual for this Pixmap.</param>
+   /// <param name="pixmap">X11 Pixmap ID.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetPixmap(  System.IntPtr visual,   uint pixmap) {
+                                           var _ret_var = Efl.Canvas.SurfaceX11NativeInherit.efl_canvas_surface_x11_pixmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), visual,  pixmap);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.SurfaceX11.efl_canvas_surface_x11_class_get();
+   }
+}
+public class SurfaceX11NativeInherit : Efl.Canvas.SurfaceNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_surface_x11_pixmap_get_static_delegate == null)
+      efl_canvas_surface_x11_pixmap_get_static_delegate = new efl_canvas_surface_x11_pixmap_get_delegate(pixmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_surface_x11_pixmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_surface_x11_pixmap_get_static_delegate)});
+      if (efl_canvas_surface_x11_pixmap_set_static_delegate == null)
+      efl_canvas_surface_x11_pixmap_set_static_delegate = new efl_canvas_surface_x11_pixmap_set_delegate(pixmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_surface_x11_pixmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_surface_x11_pixmap_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.SurfaceX11.efl_canvas_surface_x11_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.SurfaceX11.efl_canvas_surface_x11_class_get();
+   }
+
+
+    private delegate  void efl_canvas_surface_x11_pixmap_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr visual,   out  uint pixmap);
+
+
+    public delegate  void efl_canvas_surface_x11_pixmap_get_api_delegate(System.IntPtr obj,   out  System.IntPtr visual,   out  uint pixmap);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_surface_x11_pixmap_get_api_delegate> efl_canvas_surface_x11_pixmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_surface_x11_pixmap_get_api_delegate>(_Module, "efl_canvas_surface_x11_pixmap_get");
+    private static  void pixmap_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr visual,  out  uint pixmap)
+   {
+      Eina.Log.Debug("function efl_canvas_surface_x11_pixmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           visual = default( System.IntPtr);      pixmap = default( uint);                     
+         try {
+            ((SurfaceX11)wrapper).GetPixmap( out visual,  out pixmap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_canvas_surface_x11_pixmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out visual,  out pixmap);
+      }
+   }
+   private static efl_canvas_surface_x11_pixmap_get_delegate efl_canvas_surface_x11_pixmap_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_surface_x11_pixmap_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr visual,    uint pixmap);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_surface_x11_pixmap_set_api_delegate(System.IntPtr obj,    System.IntPtr visual,    uint pixmap);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_surface_x11_pixmap_set_api_delegate> efl_canvas_surface_x11_pixmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_surface_x11_pixmap_set_api_delegate>(_Module, "efl_canvas_surface_x11_pixmap_set");
+    private static bool pixmap_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr visual,   uint pixmap)
+   {
+      Eina.Log.Debug("function efl_canvas_surface_x11_pixmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SurfaceX11)wrapper).SetPixmap( visual,  pixmap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_surface_x11_pixmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  visual,  pixmap);
+      }
+   }
+   private static efl_canvas_surface_x11_pixmap_set_delegate efl_canvas_surface_x11_pixmap_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Canvas { 
+/// <summary>The type used by <see cref="Efl.Canvas.Surface.NativeBuffer"/>.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SurfaceX11Pixmap
+{
+   /// <summary>X11 Visual for this Pixmap.</summary>
+   public  System.IntPtr Visual;
+   /// <summary>X11 Pixmap ID.</summary>
+   public  uint Pixmap;
+   ///<summary>Constructor for SurfaceX11Pixmap.</summary>
+   public SurfaceX11Pixmap(
+       System.IntPtr Visual=default( System.IntPtr),
+       uint Pixmap=default( uint)   )
+   {
+      this.Visual = Visual;
+      this.Pixmap = Pixmap;
+   }
+public static implicit operator SurfaceX11Pixmap(IntPtr ptr)
+   {
+      var tmp = (SurfaceX11Pixmap_StructInternal)Marshal.PtrToStructure(ptr, typeof(SurfaceX11Pixmap_StructInternal));
+      return SurfaceX11Pixmap_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct SurfaceX11Pixmap.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SurfaceX11Pixmap_StructInternal
+{
+   
+   public  System.IntPtr Visual;
+   
+   public  uint Pixmap;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator SurfaceX11Pixmap(SurfaceX11Pixmap_StructInternal struct_)
+   {
+      return SurfaceX11Pixmap_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator SurfaceX11Pixmap_StructInternal(SurfaceX11Pixmap struct_)
+   {
+      return SurfaceX11Pixmap_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct SurfaceX11Pixmap</summary>
+public static class SurfaceX11Pixmap_StructConversion
+{
+   internal static SurfaceX11Pixmap_StructInternal ToInternal(SurfaceX11Pixmap _external_struct)
+   {
+      var _internal_struct = new SurfaceX11Pixmap_StructInternal();
+
+      _internal_struct.Visual = _external_struct.Visual;
+      _internal_struct.Pixmap = _external_struct.Pixmap;
+
+      return _internal_struct;
+   }
+
+   internal static SurfaceX11Pixmap ToManaged(SurfaceX11Pixmap_StructInternal _internal_struct)
+   {
+      var _external_struct = new SurfaceX11Pixmap();
+
+      _external_struct.Visual = _internal_struct.Visual;
+      _external_struct.Pixmap = _internal_struct.Pixmap;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_text_factory.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_text_factory.eo.cs
new file mode 100755 (executable)
index 0000000..dd83bbb
--- /dev/null
@@ -0,0 +1,158 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { 
+/// <summary>Object factory that creates Efl.Canvas.Object objects.
+/// Translates a given key to an object (item), to be later placed in a text for higher level usages. The translation implementation is left to be decided by the inheriting class, whether it is by treating the <c>key</c> as an image path, or a key associated with a real-path in a hashtable or something else entirely.
+/// 1.21</summary>
+[TextFactoryNativeInherit]
+public interface TextFactory : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Translates a given <c>key</c> to an item object, and returns the object. The returned object should be owned by the passed <c>object</c>.
+/// 1.21</summary>
+/// <param name="kw_object">The parent of the created object
+/// 1.21</param>
+/// <param name="key">Key that is associated to an item object
+/// 1.21</param>
+/// <returns></returns>
+Efl.Canvas.Object Create( Efl.Canvas.Object kw_object,   System.String key);
+   }
+/// <summary>Object factory that creates Efl.Canvas.Object objects.
+/// Translates a given key to an object (item), to be later placed in a text for higher level usages. The translation implementation is left to be decided by the inheriting class, whether it is by treating the <c>key</c> as an image path, or a key associated with a real-path in a hashtable or something else entirely.
+/// 1.21</summary>
+sealed public class TextFactoryConcrete : 
+
+TextFactory
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextFactoryConcrete))
+            return Efl.Canvas.TextFactoryNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_text_factory_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextFactoryConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextFactoryConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextFactoryConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextFactoryConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Translates a given <c>key</c> to an item object, and returns the object. The returned object should be owned by the passed <c>object</c>.
+   /// 1.21</summary>
+   /// <param name="kw_object">The parent of the created object
+   /// 1.21</param>
+   /// <param name="key">Key that is associated to an item object
+   /// 1.21</param>
+   /// <returns></returns>
+   public Efl.Canvas.Object Create( Efl.Canvas.Object kw_object,   System.String key) {
+                                           var _ret_var = Efl.Canvas.TextFactoryNativeInherit.efl_canvas_text_factory_create_ptr.Value.Delegate(this.NativeHandle, kw_object,  key);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+}
+public class TextFactoryNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_text_factory_create_static_delegate == null)
+      efl_canvas_text_factory_create_static_delegate = new efl_canvas_text_factory_create_delegate(create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_text_factory_create"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_text_factory_create_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.TextFactoryConcrete.efl_canvas_text_factory_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.TextFactoryConcrete.efl_canvas_text_factory_interface_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] private delegate Efl.Canvas.Object efl_canvas_text_factory_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] public delegate Efl.Canvas.Object efl_canvas_text_factory_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate> efl_canvas_text_factory_create_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate>(_Module, "efl_canvas_text_factory_create");
+    private static Efl.Canvas.Object create(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object kw_object,   System.String key)
+   {
+      Eina.Log.Debug("function efl_canvas_text_factory_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((TextFactory)wrapper).Create( kw_object,  key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_text_factory_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_object,  key);
+      }
+   }
+   private static efl_canvas_text_factory_create_delegate efl_canvas_text_factory_create_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_vg_container.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_vg_container.eo.cs
new file mode 100755 (executable)
index 0000000..d100ab3
--- /dev/null
@@ -0,0 +1,162 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { namespace Vg { 
+/// <summary>Efl vector graphics container class</summary>
+[ContainerNativeInherit]
+public class Container : Efl.Canvas.Vg.Node, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.Vg.ContainerNativeInherit nativeInherit = new Efl.Canvas.Vg.ContainerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Container))
+            return Efl.Canvas.Vg.ContainerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_vg_container_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Container(Efl.Object parent= null
+         ) :
+      base(efl_canvas_vg_container_class_get(), typeof(Container), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Container(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Container(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Container static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Container(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get child of container</summary>
+   /// <param name="name">Child node name</param>
+   /// <returns>Child object</returns>
+   virtual public Efl.Canvas.Vg.Node GetChild(  System.String name) {
+                         var _ret_var = Efl.Canvas.Vg.ContainerNativeInherit.efl_canvas_vg_container_child_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get all children of container</summary>
+   /// <returns>Iterator to children</returns>
+   virtual public Eina.Iterator<Efl.Canvas.Vg.Node> GetChildren() {
+       var _ret_var = Efl.Canvas.Vg.ContainerNativeInherit.efl_canvas_vg_container_children_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Canvas.Vg.Node>(_ret_var, true, false);
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Container.efl_canvas_vg_container_class_get();
+   }
+}
+public class ContainerNativeInherit : Efl.Canvas.Vg.NodeNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_vg_container_child_get_static_delegate == null)
+      efl_canvas_vg_container_child_get_static_delegate = new efl_canvas_vg_container_child_get_delegate(child_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_container_child_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_container_child_get_static_delegate)});
+      if (efl_canvas_vg_container_children_get_static_delegate == null)
+      efl_canvas_vg_container_children_get_static_delegate = new efl_canvas_vg_container_children_get_delegate(children_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_container_children_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_container_children_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Vg.Container.efl_canvas_vg_container_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Container.efl_canvas_vg_container_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Vg.Node efl_canvas_vg_container_child_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Vg.Node efl_canvas_vg_container_child_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_container_child_get_api_delegate> efl_canvas_vg_container_child_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_container_child_get_api_delegate>(_Module, "efl_canvas_vg_container_child_get");
+    private static Efl.Canvas.Vg.Node child_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_container_child_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Canvas.Vg.Node _ret_var = default(Efl.Canvas.Vg.Node);
+         try {
+            _ret_var = ((Container)wrapper).GetChild( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_vg_container_child_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_canvas_vg_container_child_get_delegate efl_canvas_vg_container_child_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_vg_container_children_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_vg_container_children_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_container_children_get_api_delegate> efl_canvas_vg_container_children_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_container_children_get_api_delegate>(_Module, "efl_canvas_vg_container_children_get");
+    private static  System.IntPtr children_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_container_children_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Canvas.Vg.Node> _ret_var = default(Eina.Iterator<Efl.Canvas.Vg.Node>);
+         try {
+            _ret_var = ((Container)wrapper).GetChildren();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_vg_container_children_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_vg_container_children_get_delegate efl_canvas_vg_container_children_get_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient.eo.cs
new file mode 100755 (executable)
index 0000000..1f30168
--- /dev/null
@@ -0,0 +1,244 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { namespace Vg { 
+/// <summary>Efl vectopr graphics gradient abstract class</summary>
+[GradientNativeInherit]
+public class Gradient : Efl.Canvas.Vg.Node, Efl.Eo.IWrapper,Efl.Gfx.Gradient
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.Vg.GradientNativeInherit nativeInherit = new Efl.Canvas.Vg.GradientNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Gradient))
+            return Efl.Canvas.Vg.GradientNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_vg_gradient_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Gradient(Efl.Object parent= null
+         ) :
+      base(efl_canvas_vg_gradient_class_get(), typeof(Gradient), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Gradient(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Gradient(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Gradient static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Gradient(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get the list of color stops.</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   virtual public  void GetStop( out Efl.Gfx.GradientStop colors,  out  uint length) {
+                   var _out_colors = new  System.IntPtr();
+                        Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_colors,  out length);
+      Eina.Error.RaiseIfUnhandledException();
+      colors = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.GradientStop>(_out_colors);
+                         }
+   /// <summary>Set the list of color stops for the gradient</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   virtual public  void SetStop( ref Efl.Gfx.GradientStop colors,   uint length) {
+       var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(colors);
+                                    Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref _in_colors,  length);
+      Eina.Error.RaiseIfUnhandledException();
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(_in_colors);
+             }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+   /// <returns>Spread type to be used</returns>
+   virtual public Efl.Gfx.GradientSpread GetSpread() {
+       var _ret_var = Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies the spread method that should be used for this gradient.</summary>
+   /// <param name="s">Spread type to be used</param>
+   /// <returns></returns>
+   virtual public  void SetSpread( Efl.Gfx.GradientSpread s) {
+                         Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), s);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+/// <value>Spread type to be used</value>
+   public Efl.Gfx.GradientSpread Spread {
+      get { return GetSpread(); }
+      set { SetSpread( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Gradient.efl_canvas_vg_gradient_class_get();
+   }
+}
+public class GradientNativeInherit : Efl.Canvas.Vg.NodeNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_gradient_stop_get_static_delegate == null)
+      efl_gfx_gradient_stop_get_static_delegate = new efl_gfx_gradient_stop_get_delegate(stop_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_get_static_delegate)});
+      if (efl_gfx_gradient_stop_set_static_delegate == null)
+      efl_gfx_gradient_stop_set_static_delegate = new efl_gfx_gradient_stop_set_delegate(stop_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_set_static_delegate)});
+      if (efl_gfx_gradient_spread_get_static_delegate == null)
+      efl_gfx_gradient_spread_get_static_delegate = new efl_gfx_gradient_spread_get_delegate(spread_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_get_static_delegate)});
+      if (efl_gfx_gradient_spread_set_static_delegate == null)
+      efl_gfx_gradient_spread_set_static_delegate = new efl_gfx_gradient_spread_set_delegate(spread_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Vg.Gradient.efl_canvas_vg_gradient_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Gradient.efl_canvas_vg_gradient_class_get();
+   }
+
+
+    private delegate  void efl_gfx_gradient_stop_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr colors,   out  uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_get_api_delegate(System.IntPtr obj,   out  System.IntPtr colors,   out  uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate> efl_gfx_gradient_stop_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate>(_Module, "efl_gfx_gradient_stop_get");
+    private static  void stop_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr colors,  out  uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.GradientStop _out_colors = default(Efl.Gfx.GradientStop);
+      length = default( uint);                     
+         try {
+            ((Gradient)wrapper).GetStop( out _out_colors,  out length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      colors = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_colors);
+                              } else {
+         efl_gfx_gradient_stop_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out colors,  out length);
+      }
+   }
+   private static efl_gfx_gradient_stop_get_delegate efl_gfx_gradient_stop_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_stop_set_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_set_api_delegate(System.IntPtr obj,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate> efl_gfx_gradient_stop_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate>(_Module, "efl_gfx_gradient_stop_set");
+    private static  void stop_set(System.IntPtr obj, System.IntPtr pd,  ref Efl.Gfx.GradientStop_StructInternal colors,   uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(colors);
+                                       
+         try {
+            ((Gradient)wrapper).SetStop( ref _in_colors,  length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(_in_colors);
+                  } else {
+         efl_gfx_gradient_stop_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref colors,  length);
+      }
+   }
+   private static efl_gfx_gradient_stop_set_delegate efl_gfx_gradient_stop_set_static_delegate;
+
+
+    private delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate> efl_gfx_gradient_spread_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate>(_Module, "efl_gfx_gradient_spread_get");
+    private static Efl.Gfx.GradientSpread spread_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.GradientSpread _ret_var = default(Efl.Gfx.GradientSpread);
+         try {
+            _ret_var = ((Gradient)wrapper).GetSpread();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_gradient_spread_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_gradient_spread_get_delegate efl_gfx_gradient_spread_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_spread_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.GradientSpread s);
+
+
+    public delegate  void efl_gfx_gradient_spread_set_api_delegate(System.IntPtr obj,   Efl.Gfx.GradientSpread s);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate> efl_gfx_gradient_spread_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate>(_Module, "efl_gfx_gradient_spread_set");
+    private static  void spread_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.GradientSpread s)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Gradient)wrapper).SetSpread( s);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_gradient_spread_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  s);
+      }
+   }
+   private static efl_gfx_gradient_spread_set_delegate efl_gfx_gradient_spread_set_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient_linear.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient_linear.eo.cs
new file mode 100755 (executable)
index 0000000..095829b
--- /dev/null
@@ -0,0 +1,231 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { namespace Vg { 
+/// <summary>Efl vector graphics gradient linear class</summary>
+[GradientLinearNativeInherit]
+public class GradientLinear : Efl.Canvas.Vg.Gradient, Efl.Eo.IWrapper,Efl.Gfx.GradientLinear
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.Vg.GradientLinearNativeInherit nativeInherit = new Efl.Canvas.Vg.GradientLinearNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GradientLinear))
+            return Efl.Canvas.Vg.GradientLinearNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_vg_gradient_linear_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public GradientLinear(Efl.Object parent= null
+         ) :
+      base(efl_canvas_vg_gradient_linear_class_get(), typeof(GradientLinear), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GradientLinear(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected GradientLinear(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static GradientLinear static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GradientLinear(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Gets the start point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of start point</param>
+   /// <param name="y">Y co-ordinate of start point</param>
+   /// <returns></returns>
+   virtual public  void GetStart( out double x,  out double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_start_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the start point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of start point</param>
+   /// <param name="y">Y co-ordinate of start point</param>
+   /// <returns></returns>
+   virtual public  void SetStart( double x,  double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_start_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets the end point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of end point</param>
+   /// <param name="y">Y co-ordinate of end point</param>
+   /// <returns></returns>
+   virtual public  void GetEnd( out double x,  out double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_end_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the end point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of end point</param>
+   /// <param name="y">Y co-ordinate of end point</param>
+   /// <returns></returns>
+   virtual public  void SetEnd( double x,  double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_end_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.GradientLinear.efl_canvas_vg_gradient_linear_class_get();
+   }
+}
+public class GradientLinearNativeInherit : Efl.Canvas.Vg.GradientNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_gradient_linear_start_get_static_delegate == null)
+      efl_gfx_gradient_linear_start_get_static_delegate = new efl_gfx_gradient_linear_start_get_delegate(start_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_start_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_start_get_static_delegate)});
+      if (efl_gfx_gradient_linear_start_set_static_delegate == null)
+      efl_gfx_gradient_linear_start_set_static_delegate = new efl_gfx_gradient_linear_start_set_delegate(start_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_start_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_start_set_static_delegate)});
+      if (efl_gfx_gradient_linear_end_get_static_delegate == null)
+      efl_gfx_gradient_linear_end_get_static_delegate = new efl_gfx_gradient_linear_end_get_delegate(end_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_end_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_end_get_static_delegate)});
+      if (efl_gfx_gradient_linear_end_set_static_delegate == null)
+      efl_gfx_gradient_linear_end_set_static_delegate = new efl_gfx_gradient_linear_end_set_delegate(end_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_end_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_end_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Vg.GradientLinear.efl_canvas_vg_gradient_linear_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.GradientLinear.efl_canvas_vg_gradient_linear_class_get();
+   }
+
+
+    private delegate  void efl_gfx_gradient_linear_start_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_start_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_get_api_delegate> efl_gfx_gradient_linear_start_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_get_api_delegate>(_Module, "efl_gfx_gradient_linear_start_get");
+    private static  void start_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_start_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientLinear)wrapper).GetStart( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_start_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_linear_start_get_delegate efl_gfx_gradient_linear_start_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_linear_start_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_start_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_set_api_delegate> efl_gfx_gradient_linear_start_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_set_api_delegate>(_Module, "efl_gfx_gradient_linear_start_set");
+    private static  void start_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_start_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientLinear)wrapper).SetStart( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_start_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_linear_start_set_delegate efl_gfx_gradient_linear_start_set_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_linear_end_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_end_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_get_api_delegate> efl_gfx_gradient_linear_end_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_get_api_delegate>(_Module, "efl_gfx_gradient_linear_end_get");
+    private static  void end_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_end_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientLinear)wrapper).GetEnd( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_end_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_linear_end_get_delegate efl_gfx_gradient_linear_end_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_linear_end_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_end_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_set_api_delegate> efl_gfx_gradient_linear_end_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_set_api_delegate>(_Module, "efl_gfx_gradient_linear_end_set");
+    private static  void end_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_end_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientLinear)wrapper).SetEnd( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_end_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_linear_end_set_delegate efl_gfx_gradient_linear_end_set_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient_radial.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_vg_gradient_radial.eo.cs
new file mode 100755 (executable)
index 0000000..4f85326
--- /dev/null
@@ -0,0 +1,306 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { namespace Vg { 
+/// <summary>Efl vector graphics gradient radial class</summary>
+[GradientRadialNativeInherit]
+public class GradientRadial : Efl.Canvas.Vg.Gradient, Efl.Eo.IWrapper,Efl.Gfx.GradientRadial
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.Vg.GradientRadialNativeInherit nativeInherit = new Efl.Canvas.Vg.GradientRadialNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GradientRadial))
+            return Efl.Canvas.Vg.GradientRadialNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_vg_gradient_radial_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public GradientRadial(Efl.Object parent= null
+         ) :
+      base(efl_canvas_vg_gradient_radial_class_get(), typeof(GradientRadial), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GradientRadial(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected GradientRadial(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static GradientRadial static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GradientRadial(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Gets the center of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of center point</param>
+   /// <param name="y">Y co-ordinate of center point</param>
+   /// <returns></returns>
+   virtual public  void GetCenter( out double x,  out double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_center_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the center of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of center point</param>
+   /// <param name="y">Y co-ordinate of center point</param>
+   /// <returns></returns>
+   virtual public  void SetCenter( double x,  double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_center_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets the center radius of this radial gradient.</summary>
+   /// <returns>Center radius</returns>
+   virtual public double GetRadius() {
+       var _ret_var = Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_radius_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the center radius of this radial gradient.</summary>
+   /// <param name="r">Center radius</param>
+   /// <returns></returns>
+   virtual public  void SetRadius( double r) {
+                         Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_radius_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the focal point of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of focal point</param>
+   /// <param name="y">Y co-ordinate of focal point</param>
+   /// <returns></returns>
+   virtual public  void GetFocal( out double x,  out double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_focal_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the focal point of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of focal point</param>
+   /// <param name="y">Y co-ordinate of focal point</param>
+   /// <returns></returns>
+   virtual public  void SetFocal( double x,  double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_focal_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets the center radius of this radial gradient.</summary>
+/// <value>Center radius</value>
+   public double Radius {
+      get { return GetRadius(); }
+      set { SetRadius( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.GradientRadial.efl_canvas_vg_gradient_radial_class_get();
+   }
+}
+public class GradientRadialNativeInherit : Efl.Canvas.Vg.GradientNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_gradient_radial_center_get_static_delegate == null)
+      efl_gfx_gradient_radial_center_get_static_delegate = new efl_gfx_gradient_radial_center_get_delegate(center_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_center_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_center_get_static_delegate)});
+      if (efl_gfx_gradient_radial_center_set_static_delegate == null)
+      efl_gfx_gradient_radial_center_set_static_delegate = new efl_gfx_gradient_radial_center_set_delegate(center_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_center_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_center_set_static_delegate)});
+      if (efl_gfx_gradient_radial_radius_get_static_delegate == null)
+      efl_gfx_gradient_radial_radius_get_static_delegate = new efl_gfx_gradient_radial_radius_get_delegate(radius_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_radius_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_radius_get_static_delegate)});
+      if (efl_gfx_gradient_radial_radius_set_static_delegate == null)
+      efl_gfx_gradient_radial_radius_set_static_delegate = new efl_gfx_gradient_radial_radius_set_delegate(radius_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_radius_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_radius_set_static_delegate)});
+      if (efl_gfx_gradient_radial_focal_get_static_delegate == null)
+      efl_gfx_gradient_radial_focal_get_static_delegate = new efl_gfx_gradient_radial_focal_get_delegate(focal_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_focal_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_focal_get_static_delegate)});
+      if (efl_gfx_gradient_radial_focal_set_static_delegate == null)
+      efl_gfx_gradient_radial_focal_set_static_delegate = new efl_gfx_gradient_radial_focal_set_delegate(focal_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_focal_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_focal_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Vg.GradientRadial.efl_canvas_vg_gradient_radial_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.GradientRadial.efl_canvas_vg_gradient_radial_class_get();
+   }
+
+
+    private delegate  void efl_gfx_gradient_radial_center_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_center_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_get_api_delegate> efl_gfx_gradient_radial_center_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_get_api_delegate>(_Module, "efl_gfx_gradient_radial_center_get");
+    private static  void center_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_center_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientRadial)wrapper).GetCenter( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_center_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_radial_center_get_delegate efl_gfx_gradient_radial_center_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_center_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_center_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_set_api_delegate> efl_gfx_gradient_radial_center_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_set_api_delegate>(_Module, "efl_gfx_gradient_radial_center_set");
+    private static  void center_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_center_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientRadial)wrapper).SetCenter( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_center_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_radial_center_set_delegate efl_gfx_gradient_radial_center_set_static_delegate;
+
+
+    private delegate double efl_gfx_gradient_radial_radius_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_gradient_radial_radius_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_get_api_delegate> efl_gfx_gradient_radial_radius_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_get_api_delegate>(_Module, "efl_gfx_gradient_radial_radius_get");
+    private static double radius_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_radius_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((GradientRadial)wrapper).GetRadius();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_gradient_radial_radius_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_gradient_radial_radius_get_delegate efl_gfx_gradient_radial_radius_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_radius_set_delegate(System.IntPtr obj, System.IntPtr pd,   double r);
+
+
+    public delegate  void efl_gfx_gradient_radial_radius_set_api_delegate(System.IntPtr obj,   double r);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_set_api_delegate> efl_gfx_gradient_radial_radius_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_set_api_delegate>(_Module, "efl_gfx_gradient_radial_radius_set");
+    private static  void radius_set(System.IntPtr obj, System.IntPtr pd,  double r)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_radius_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((GradientRadial)wrapper).SetRadius( r);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_gradient_radial_radius_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r);
+      }
+   }
+   private static efl_gfx_gradient_radial_radius_set_delegate efl_gfx_gradient_radial_radius_set_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_focal_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_focal_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_get_api_delegate> efl_gfx_gradient_radial_focal_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_get_api_delegate>(_Module, "efl_gfx_gradient_radial_focal_get");
+    private static  void focal_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_focal_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientRadial)wrapper).GetFocal( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_focal_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_radial_focal_get_delegate efl_gfx_gradient_radial_focal_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_focal_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_focal_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_set_api_delegate> efl_gfx_gradient_radial_focal_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_set_api_delegate>(_Module, "efl_gfx_gradient_radial_focal_set");
+    private static  void focal_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_focal_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientRadial)wrapper).SetFocal( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_focal_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_radial_focal_set_delegate efl_gfx_gradient_radial_focal_set_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_vg_node.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_vg_node.eo.cs
new file mode 100755 (executable)
index 0000000..82e8543
--- /dev/null
@@ -0,0 +1,2292 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { namespace Vg { 
+/// <summary>Efl vector graphics abstract class</summary>
+[NodeNativeInherit]
+public class Node : Efl.Object, Efl.Eo.IWrapper,Efl.Duplicate,Efl.Gfx.Color,Efl.Gfx.Entity,Efl.Gfx.Path,Efl.Gfx.Stack
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.Vg.NodeNativeInherit nativeInherit = new Efl.Canvas.Vg.NodeNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Node))
+            return Efl.Canvas.Vg.NodeNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_vg_node_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Node(Efl.Object parent= null
+         ) :
+      base(efl_canvas_vg_node_class_get(), typeof(Node), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Node(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Node(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Node static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Node(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object VisibilityChangedEvtKey = new object();
+   /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   public event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_VisibilityChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibilityChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibilityChangedEvt.</summary>
+   public void On_VisibilityChangedEvt(Efl.Gfx.EntityVisibilityChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args>)eventHandlers[VisibilityChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibilityChangedEvt_delegate;
+   private void on_VisibilityChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityVisibilityChangedEvt_Args args = new Efl.Gfx.EntityVisibilityChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_VisibilityChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(Efl.Gfx.EntityPositionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args>)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityPositionChangedEvt_Args args = new Efl.Gfx.EntityPositionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(Efl.Gfx.EntitySizeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args>)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntitySizeChangedEvt_Args args = new Efl.Gfx.EntitySizeChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StackingChangedEvtKey = new object();
+   /// <summary>Object stacking was changed.</summary>
+   public event EventHandler StackingChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_StackingChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StackingChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StackingChangedEvt.</summary>
+   public void On_StackingChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StackingChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StackingChangedEvt_delegate;
+   private void on_StackingChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StackingChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_VisibilityChangedEvt_delegate = new Efl.EventCb(on_VisibilityChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+      evt_StackingChangedEvt_delegate = new Efl.EventCb(on_StackingChangedEvt_NativeCallback);
+   }
+   /// <summary>Gets the transformation matrix used for this node object.
+   /// 1.14</summary>
+   /// <returns>Transformation matrix.</returns>
+   virtual public Eina.Matrix3 GetTransformation() {
+       var _ret_var = Efl.Canvas.Vg.NodeNativeInherit.efl_canvas_vg_node_transformation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Eina.Matrix3>(_ret_var);
+      
+      return __ret_tmp;
+ }
+   /// <summary>Sets the transformation matrix to be used for this node object.
+   /// Note: Pass <c>null</c> to cancel the applied transformation.
+   /// 1.14</summary>
+   /// <param name="m">Transformation matrix.</param>
+   /// <returns></returns>
+   virtual public  void SetTransformation( ref Eina.Matrix3 m) {
+       var _in_m = Eina.Matrix3_StructConversion.ToInternal(m);
+                  Efl.Canvas.Vg.NodeNativeInherit.efl_canvas_vg_node_transformation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref _in_m);
+      Eina.Error.RaiseIfUnhandledException();
+            m = Eina.Matrix3_StructConversion.ToManaged(_in_m);
+       }
+   /// <summary>Gets the origin position of the node object.
+   /// 1.14</summary>
+   /// <param name="x"><c>origin</c> x position.</param>
+   /// <param name="y"><c>origin</c> y position.</param>
+   /// <returns></returns>
+   virtual public  void GetOrigin( out double x,  out double y) {
+                                           Efl.Canvas.Vg.NodeNativeInherit.efl_canvas_vg_node_origin_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the origin position of the node object.
+   /// This origin position affects node transformation.
+   /// 1.14</summary>
+   /// <param name="x"><c>origin</c> x position.</param>
+   /// <param name="y"><c>origin</c> y position.</param>
+   /// <returns></returns>
+   virtual public  void SetOrigin( double x,  double y) {
+                                           Efl.Canvas.Vg.NodeNativeInherit.efl_canvas_vg_node_origin_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set Mask Node to this renderer</summary>
+   /// <param name="mask">Mask object</param>
+   /// <param name="op">Masking Option. Reserved</param>
+   /// <returns></returns>
+   virtual public  void SetMask( Efl.Canvas.Vg.Node mask,   int op) {
+                                           Efl.Canvas.Vg.NodeNativeInherit.efl_canvas_vg_node_mask_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mask,  op);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   virtual public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the general/main color of the given Evas object.
+   /// Retrieves the main color&apos;s RGB component (and alpha channel) values, which range from 0 to 255. For the alpha channel, which defines the object&apos;s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.
+   /// 
+   /// Usually youll use this attribute for text and rectangle objects, where the main color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.
+   /// 
+   /// All newly created Evas rectangles get the default color values of 255 255 255 255 (opaque white).
+   /// 
+   /// Use null pointers on the components you&apos;re not interested in: they&apos;ll be ignored by the function.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void GetColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets the general/main color of the given Evas object to the given one.
+   /// See also <see cref="Efl.Gfx.Color.GetColor"/> (for an example)
+   /// 
+   /// These color values are expected to be premultiplied by alpha.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void SetColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+   /// <returns>the hex color code.</returns>
+   virtual public  System.String GetColorCode() {
+       var _ret_var = Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the color of given Evas object to the given hex color code(#RRGGBBAA). e.g. efl_gfx_color_code_set(obj, &quot;#FFCCAACC&quot;);</summary>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns></returns>
+   virtual public  void SetColorCode(  System.String colorcode) {
+                         Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+   /// <returns>A 2D coordinate in pixel units.</returns>
+   virtual public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+   /// <param name="pos">A 2D coordinate in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+   /// <returns>A 2D size in pixel units.</returns>
+   virtual public Eina.Size2D GetSize() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Changes the size of the given object.
+   /// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+   /// <param name="size">A 2D size in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <returns>The X,Y position and W,H size, in pixels.</returns>
+   virtual public Eina.Rect GetGeometry() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetGeometry( Eina.Rect rect) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+   /// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+   virtual public bool GetVisible() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Shows or hides this object.</summary>
+   /// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetVisible( bool v) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+   /// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+   virtual public double GetScale() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scaling factor of an object.</summary>
+   /// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+   /// <returns></returns>
+   virtual public  void SetScale( double scale) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   virtual public  void GetPath( out Efl.Gfx.PathCommandType op,  out double points) {
+                   System.IntPtr _out_op = System.IntPtr.Zero;
+      System.IntPtr _out_points = System.IntPtr.Zero;
+                  Efl.Gfx.PathNativeInherit.efl_gfx_path_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_op,  out _out_points);
+      Eina.Error.RaiseIfUnhandledException();
+      op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(_out_op);
+      points = Eina.PrimitiveConversion.PointerToManaged<double>(_out_points);
+                   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   virtual public  void SetPath( Efl.Gfx.PathCommandType op,  double points) {
+       var _in_op = Eina.PrimitiveConversion.ManagedToPointerAlloc(op);
+      var _in_points = Eina.PrimitiveConversion.ManagedToPointerAlloc(points);
+                              Efl.Gfx.PathNativeInherit.efl_gfx_path_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_op,  _in_points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Path length property</summary>
+   /// <param name="commands">Commands</param>
+   /// <param name="points">Points</param>
+   /// <returns></returns>
+   virtual public  void GetLength( out  uint commands,  out  uint points) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_length_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out commands,  out points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current point coordinates</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   virtual public  void GetCurrent( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current control point coordinates</summary>
+   /// <param name="x">X co-ordinate of control point.</param>
+   /// <param name="y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   virtual public  void GetCurrentCtrl( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_ctrl_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Copy the path data from the object specified.
+   /// 1.18</summary>
+   /// <param name="dup_from">Shape object from where data will be copied.</param>
+   /// <returns></returns>
+   virtual public  void CopyFrom( Efl.Object dup_from) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_copy_from_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dup_from);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Compute and return the bounding box of the currently set path
+   /// 1.18</summary>
+   /// <param name="r">Contain the bounding box of the currently set path</param>
+   /// <returns></returns>
+   virtual public  void GetBounds( out Eina.Rect r) {
+             var _out_r = new Eina.Rect_StructInternal();
+            Efl.Gfx.PathNativeInherit.efl_gfx_path_bounds_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_r);
+      Eina.Error.RaiseIfUnhandledException();
+      r = Eina.Rect_StructConversion.ToManaged(_out_r);
+             }
+   /// <summary>Reset the path data of the path object.
+   /// 1.18</summary>
+   /// <returns></returns>
+   virtual public  void Reset() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Moves the current point to the given point,  implicitly starting a new subpath and closing the previous one.
+   /// See also <see cref="Efl.Gfx.Path.CloseAppend"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   virtual public  void AppendMoveTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_move_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a straight line from the current position to the given end point. After the line is drawn, the current position is updated to be at the end point of the line.
+   /// If no current position present, it draws a line to itself, basically a point.
+   /// 
+   /// See also <see cref="Efl.Gfx.Path.AppendMoveTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   virtual public  void AppendLineTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_line_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a quadratic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x, ctrl_y). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   virtual public  void AppendQuadraticTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_quadratic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Same as efl_gfx_path_append_quadratic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendQuadraticTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   virtual public  void AppendSquadraticTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_squadratic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a cubic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x0, ctrl_y0), and (ctrl_x1, ctrl_y1). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="ctrl_x0">X co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_y0">Y co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_x1">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y1">Y co-ordinate of 2nd control point.</param>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   virtual public  void AppendCubicTo( double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_cubic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Same as efl_gfx_path_append_cubic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendCubicTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of 2nd control point.</param>
+   /// <returns></returns>
+   virtual public  void AppendScubicTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_scubic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Append an arc that connects from the current point int the point list to the given point (x,y). The arc is defined by the given radius in  x-direction (rx) and radius in y direction (ry).
+   /// Use this api if you know the end point&apos;s of the arc otherwise use more convenient function <see cref="Efl.Gfx.Path.AppendArc"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the arc.</param>
+   /// <param name="y">Y co-ordinate of end point of the arc.</param>
+   /// <param name="rx">Radius of arc in x direction.</param>
+   /// <param name="ry">Radius of arc in y direction.</param>
+   /// <param name="angle">X-axis rotation , normally 0.</param>
+   /// <param name="large_arc">Defines whether to draw the larger arc or smaller arc joining two point.</param>
+   /// <param name="sweep">Defines whether the arc will be drawn counter-clockwise or clockwise from current point to the end point taking into account the large_arc property.</param>
+   /// <returns></returns>
+   virtual public  void AppendArcTo( double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep) {
+                                                                                                                                     Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Append an arc that enclosed in the given rectangle (x, y, w, h). The angle is defined in counter clock wise , use -ve angle for clockwise arc.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rect.</param>
+   /// <param name="y">Y co-ordinate of the rect.</param>
+   /// <param name="w">Width of the rect.</param>
+   /// <param name="h">Height of the rect.</param>
+   /// <param name="start_angle">Angle at which the arc will start</param>
+   /// <param name="sweep_length">@ Length of the arc.</param>
+   /// <returns></returns>
+   virtual public  void AppendArc( double x,  double y,  double w,  double h,  double start_angle,  double sweep_length) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  w,  h,  start_angle,  sweep_length);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Closes the current subpath by drawing a line to the beginning of the subpath, automatically starting a new path. The current point of the new path is (0, 0).
+   /// If the subpath does not contain any points, this function does nothing.
+   /// 1.18</summary>
+   /// <returns></returns>
+   virtual public  void CloseAppend() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_append_close_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Append a circle with given center and radius.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the center of the circle.</param>
+   /// <param name="y">Y co-ordinate of the center of the circle.</param>
+   /// <param name="radius">Radius of the circle.</param>
+   /// <returns></returns>
+   virtual public  void AppendCircle( double x,  double y,  double radius) {
+                                                             Efl.Gfx.PathNativeInherit.efl_gfx_path_append_circle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  radius);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Append the given rectangle with rounded corner to the path.
+   /// The xr and yr arguments specify the radii of the ellipses defining the corners of the rounded rectangle.
+   /// 
+   /// xr and yr are specified in terms of width and height respectively.
+   /// 
+   /// If xr and yr are 0, then it will draw a rectangle without rounded corner.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rectangle.</param>
+   /// <param name="y">Y co-ordinate of the rectangle.</param>
+   /// <param name="w">Width of the rectangle.</param>
+   /// <param name="h">Height of the rectangle.</param>
+   /// <param name="rx">The x radius of the rounded corner and should be in range [ 0 to w/2 ]</param>
+   /// <param name="ry">The y radius of the rounded corner and should be in range [ 0 to h/2 ]</param>
+   /// <returns></returns>
+   virtual public  void AppendRect( double x,  double y,  double w,  double h,  double rx,  double ry) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_rect_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  w,  h,  rx,  ry);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Append SVG path data</summary>
+   /// <param name="svg_path_data">SVG path data to append</param>
+   /// <returns></returns>
+   virtual public  void AppendSvgPath(  System.String svg_path_data) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_append_svg_path_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), svg_path_data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates intermediary path part-way between two paths
+   /// Sets the points of the <c>obj</c> as the linear interpolation of the points in the <c>from</c> and <c>to</c> paths.  The path&apos;s x,y position and control point coordinates are likewise interpolated.
+   /// 
+   /// The <c>from</c> and <c>to</c> paths must not already have equivalent points, and <c>to</c> must contain at least as many points as <c>from</c>, else the function returns <c>false</c> with no interpolation performed.  If <c>to</c> has more points than <c>from</c>, the excess points are ignored.</summary>
+   /// <param name="from">Source path</param>
+   /// <param name="to">Destination path</param>
+   /// <param name="pos_map">Position map in range 0.0 to 1.0</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool Interpolate( Efl.Object from,  Efl.Object to,  double pos_map) {
+                                                             var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from,  to,  pos_map);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Equal commands in object</summary>
+   /// <param name="with">Object</param>
+   /// <returns>True on success, <c>false</c> otherwise</returns>
+   virtual public bool EqualCommands( Efl.Object with) {
+                         var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_equal_commands_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), with);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Reserve path commands buffer in advance. If you know the count of path commands coming, you can reserve commands buffer in advance to avoid buffer growing job.
+   /// 1.22</summary>
+   /// <param name="cmd_count">Commands count to reserve</param>
+   /// <param name="pts_count">Pointers count to reserve</param>
+   /// <returns></returns>
+   virtual public  void Reserve(  uint cmd_count,   uint pts_count) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_reserve_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cmd_count,  pts_count);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Request to update the path object.
+   /// One path object may get appending several path calls (such as append_cubic, append_rect, etc) to construct the final path data. Here commit means all path data is prepared and now object could update its own internal status based on the last path information.</summary>
+   /// <returns></returns>
+   virtual public  void Commit() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_commit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+   /// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+   /// <returns>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</returns>
+   virtual public  short GetLayer() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the layer of its canvas that the given object will be part of.
+   /// If you don&apos;t use this function, you&apos;ll be dealing with an unique layer of objects (the default one). Additional layers are handy when you don&apos;t want a set of objects to interfere with another set with regard to stacking. Two layers are completely disjoint in that matter.
+   /// 
+   /// This is a low-level function, which you&apos;d be using when something should be always on top, for example.
+   /// 
+   /// Warning: Don&apos;t change the layer of smart objects&apos; children. Smart objects have a layer of their own, which should contain all their child objects.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/></summary>
+   /// <param name="l">The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetLayer(  short l) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   virtual public Efl.Gfx.Stack GetBelow() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   virtual public Efl.Gfx.Stack GetAbove() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stack <c>obj</c> immediately <c>below</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>below</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>below</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="below">The object below which to stack</param>
+   /// <returns></returns>
+   virtual public  void StackBelow( Efl.Gfx.Stack below) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), below);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Raise <c>obj</c> to the top of its layer.
+   /// <c>obj</c> will, then, be the highest one in the layer it belongs to. Object on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.LowerToBottom"/></summary>
+   /// <returns></returns>
+   virtual public  void RaiseToTop() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_raise_to_top_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stack <c>obj</c> immediately <c>above</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>above</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>above</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="above">The object above which to stack</param>
+   /// <returns></returns>
+   virtual public  void StackAbove( Efl.Gfx.Stack above) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), above);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Lower <c>obj</c> to the bottom of its layer.
+   /// <c>obj</c> will, then, be the lowest one in the layer it belongs to. Objects on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.RaiseToTop"/></summary>
+   /// <returns></returns>
+   virtual public  void LowerToBottom() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Gets the transformation matrix used for this node object.
+/// 1.14</summary>
+/// <value>Transformation matrix.</value>
+   public Eina.Matrix3 Transformation {
+      get { return GetTransformation(); }
+      set { SetTransformation( ref value); }
+   }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <value>the hex color code.</value>
+   public  System.String ColorCode {
+      get { return GetColorCode(); }
+      set { SetColorCode( value); }
+   }
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   public Eina.Size2D Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   public Eina.Rect Geometry {
+      get { return GetGeometry(); }
+      set { SetGeometry( value); }
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   public bool Visible {
+      get { return GetVisible(); }
+      set { SetVisible( value); }
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   public double Scale {
+      get { return GetScale(); }
+      set { SetScale( value); }
+   }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+/// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+/// <value>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</value>
+   public  short Layer {
+      get { return GetLayer(); }
+      set { SetLayer( value); }
+   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Below {
+      get { return GetBelow(); }
+   }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Above {
+      get { return GetAbove(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Node.efl_canvas_vg_node_class_get();
+   }
+}
+public class NodeNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_vg_node_transformation_get_static_delegate == null)
+      efl_canvas_vg_node_transformation_get_static_delegate = new efl_canvas_vg_node_transformation_get_delegate(transformation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_node_transformation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_node_transformation_get_static_delegate)});
+      if (efl_canvas_vg_node_transformation_set_static_delegate == null)
+      efl_canvas_vg_node_transformation_set_static_delegate = new efl_canvas_vg_node_transformation_set_delegate(transformation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_node_transformation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_node_transformation_set_static_delegate)});
+      if (efl_canvas_vg_node_origin_get_static_delegate == null)
+      efl_canvas_vg_node_origin_get_static_delegate = new efl_canvas_vg_node_origin_get_delegate(origin_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_node_origin_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_node_origin_get_static_delegate)});
+      if (efl_canvas_vg_node_origin_set_static_delegate == null)
+      efl_canvas_vg_node_origin_set_static_delegate = new efl_canvas_vg_node_origin_set_delegate(origin_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_node_origin_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_node_origin_set_static_delegate)});
+      if (efl_canvas_vg_node_mask_set_static_delegate == null)
+      efl_canvas_vg_node_mask_set_static_delegate = new efl_canvas_vg_node_mask_set_delegate(mask_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_node_mask_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_node_mask_set_static_delegate)});
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      if (efl_gfx_color_get_static_delegate == null)
+      efl_gfx_color_get_static_delegate = new efl_gfx_color_get_delegate(color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_get_static_delegate)});
+      if (efl_gfx_color_set_static_delegate == null)
+      efl_gfx_color_set_static_delegate = new efl_gfx_color_set_delegate(color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_set_static_delegate)});
+      if (efl_gfx_color_code_get_static_delegate == null)
+      efl_gfx_color_code_get_static_delegate = new efl_gfx_color_code_get_delegate(color_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_get_static_delegate)});
+      if (efl_gfx_color_code_set_static_delegate == null)
+      efl_gfx_color_code_set_static_delegate = new efl_gfx_color_code_set_delegate(color_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_set_static_delegate)});
+      if (efl_gfx_entity_position_get_static_delegate == null)
+      efl_gfx_entity_position_get_static_delegate = new efl_gfx_entity_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_get_static_delegate)});
+      if (efl_gfx_entity_position_set_static_delegate == null)
+      efl_gfx_entity_position_set_static_delegate = new efl_gfx_entity_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_set_static_delegate)});
+      if (efl_gfx_entity_size_get_static_delegate == null)
+      efl_gfx_entity_size_get_static_delegate = new efl_gfx_entity_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_get_static_delegate)});
+      if (efl_gfx_entity_size_set_static_delegate == null)
+      efl_gfx_entity_size_set_static_delegate = new efl_gfx_entity_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_set_static_delegate)});
+      if (efl_gfx_entity_geometry_get_static_delegate == null)
+      efl_gfx_entity_geometry_get_static_delegate = new efl_gfx_entity_geometry_get_delegate(geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_get_static_delegate)});
+      if (efl_gfx_entity_geometry_set_static_delegate == null)
+      efl_gfx_entity_geometry_set_static_delegate = new efl_gfx_entity_geometry_set_delegate(geometry_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_set_static_delegate)});
+      if (efl_gfx_entity_visible_get_static_delegate == null)
+      efl_gfx_entity_visible_get_static_delegate = new efl_gfx_entity_visible_get_delegate(visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_get_static_delegate)});
+      if (efl_gfx_entity_visible_set_static_delegate == null)
+      efl_gfx_entity_visible_set_static_delegate = new efl_gfx_entity_visible_set_delegate(visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_set_static_delegate)});
+      if (efl_gfx_entity_scale_get_static_delegate == null)
+      efl_gfx_entity_scale_get_static_delegate = new efl_gfx_entity_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_get_static_delegate)});
+      if (efl_gfx_entity_scale_set_static_delegate == null)
+      efl_gfx_entity_scale_set_static_delegate = new efl_gfx_entity_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_set_static_delegate)});
+      if (efl_gfx_path_get_static_delegate == null)
+      efl_gfx_path_get_static_delegate = new efl_gfx_path_get_delegate(path_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_get_static_delegate)});
+      if (efl_gfx_path_set_static_delegate == null)
+      efl_gfx_path_set_static_delegate = new efl_gfx_path_set_delegate(path_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_set_static_delegate)});
+      if (efl_gfx_path_length_get_static_delegate == null)
+      efl_gfx_path_length_get_static_delegate = new efl_gfx_path_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_length_get_static_delegate)});
+      if (efl_gfx_path_current_get_static_delegate == null)
+      efl_gfx_path_current_get_static_delegate = new efl_gfx_path_current_get_delegate(current_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_get_static_delegate)});
+      if (efl_gfx_path_current_ctrl_get_static_delegate == null)
+      efl_gfx_path_current_ctrl_get_static_delegate = new efl_gfx_path_current_ctrl_get_delegate(current_ctrl_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_ctrl_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_ctrl_get_static_delegate)});
+      if (efl_gfx_path_copy_from_static_delegate == null)
+      efl_gfx_path_copy_from_static_delegate = new efl_gfx_path_copy_from_delegate(copy_from);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_copy_from"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_copy_from_static_delegate)});
+      if (efl_gfx_path_bounds_get_static_delegate == null)
+      efl_gfx_path_bounds_get_static_delegate = new efl_gfx_path_bounds_get_delegate(bounds_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_bounds_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_bounds_get_static_delegate)});
+      if (efl_gfx_path_reset_static_delegate == null)
+      efl_gfx_path_reset_static_delegate = new efl_gfx_path_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reset_static_delegate)});
+      if (efl_gfx_path_append_move_to_static_delegate == null)
+      efl_gfx_path_append_move_to_static_delegate = new efl_gfx_path_append_move_to_delegate(append_move_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_move_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_move_to_static_delegate)});
+      if (efl_gfx_path_append_line_to_static_delegate == null)
+      efl_gfx_path_append_line_to_static_delegate = new efl_gfx_path_append_line_to_delegate(append_line_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_line_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_line_to_static_delegate)});
+      if (efl_gfx_path_append_quadratic_to_static_delegate == null)
+      efl_gfx_path_append_quadratic_to_static_delegate = new efl_gfx_path_append_quadratic_to_delegate(append_quadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_quadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_quadratic_to_static_delegate)});
+      if (efl_gfx_path_append_squadratic_to_static_delegate == null)
+      efl_gfx_path_append_squadratic_to_static_delegate = new efl_gfx_path_append_squadratic_to_delegate(append_squadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_squadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_squadratic_to_static_delegate)});
+      if (efl_gfx_path_append_cubic_to_static_delegate == null)
+      efl_gfx_path_append_cubic_to_static_delegate = new efl_gfx_path_append_cubic_to_delegate(append_cubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_cubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_cubic_to_static_delegate)});
+      if (efl_gfx_path_append_scubic_to_static_delegate == null)
+      efl_gfx_path_append_scubic_to_static_delegate = new efl_gfx_path_append_scubic_to_delegate(append_scubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_scubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_scubic_to_static_delegate)});
+      if (efl_gfx_path_append_arc_to_static_delegate == null)
+      efl_gfx_path_append_arc_to_static_delegate = new efl_gfx_path_append_arc_to_delegate(append_arc_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_to_static_delegate)});
+      if (efl_gfx_path_append_arc_static_delegate == null)
+      efl_gfx_path_append_arc_static_delegate = new efl_gfx_path_append_arc_delegate(append_arc);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_static_delegate)});
+      if (efl_gfx_path_append_close_static_delegate == null)
+      efl_gfx_path_append_close_static_delegate = new efl_gfx_path_append_close_delegate(append_close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_close"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_close_static_delegate)});
+      if (efl_gfx_path_append_circle_static_delegate == null)
+      efl_gfx_path_append_circle_static_delegate = new efl_gfx_path_append_circle_delegate(append_circle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_circle"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_circle_static_delegate)});
+      if (efl_gfx_path_append_rect_static_delegate == null)
+      efl_gfx_path_append_rect_static_delegate = new efl_gfx_path_append_rect_delegate(append_rect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_rect"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_rect_static_delegate)});
+      if (efl_gfx_path_append_svg_path_static_delegate == null)
+      efl_gfx_path_append_svg_path_static_delegate = new efl_gfx_path_append_svg_path_delegate(append_svg_path);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_svg_path"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_svg_path_static_delegate)});
+      if (efl_gfx_path_interpolate_static_delegate == null)
+      efl_gfx_path_interpolate_static_delegate = new efl_gfx_path_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_interpolate_static_delegate)});
+      if (efl_gfx_path_equal_commands_static_delegate == null)
+      efl_gfx_path_equal_commands_static_delegate = new efl_gfx_path_equal_commands_delegate(equal_commands);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_equal_commands"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_equal_commands_static_delegate)});
+      if (efl_gfx_path_reserve_static_delegate == null)
+      efl_gfx_path_reserve_static_delegate = new efl_gfx_path_reserve_delegate(reserve);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reserve"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reserve_static_delegate)});
+      if (efl_gfx_path_commit_static_delegate == null)
+      efl_gfx_path_commit_static_delegate = new efl_gfx_path_commit_delegate(commit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_commit"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_commit_static_delegate)});
+      if (efl_gfx_stack_layer_get_static_delegate == null)
+      efl_gfx_stack_layer_get_static_delegate = new efl_gfx_stack_layer_get_delegate(layer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_get_static_delegate)});
+      if (efl_gfx_stack_layer_set_static_delegate == null)
+      efl_gfx_stack_layer_set_static_delegate = new efl_gfx_stack_layer_set_delegate(layer_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_set_static_delegate)});
+      if (efl_gfx_stack_below_get_static_delegate == null)
+      efl_gfx_stack_below_get_static_delegate = new efl_gfx_stack_below_get_delegate(below_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_get_static_delegate)});
+      if (efl_gfx_stack_above_get_static_delegate == null)
+      efl_gfx_stack_above_get_static_delegate = new efl_gfx_stack_above_get_delegate(above_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_get_static_delegate)});
+      if (efl_gfx_stack_below_static_delegate == null)
+      efl_gfx_stack_below_static_delegate = new efl_gfx_stack_below_delegate(stack_below);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_static_delegate)});
+      if (efl_gfx_stack_raise_to_top_static_delegate == null)
+      efl_gfx_stack_raise_to_top_static_delegate = new efl_gfx_stack_raise_to_top_delegate(raise_to_top);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_raise_to_top"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_raise_to_top_static_delegate)});
+      if (efl_gfx_stack_above_static_delegate == null)
+      efl_gfx_stack_above_static_delegate = new efl_gfx_stack_above_delegate(stack_above);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_static_delegate)});
+      if (efl_gfx_stack_lower_to_bottom_static_delegate == null)
+      efl_gfx_stack_lower_to_bottom_static_delegate = new efl_gfx_stack_lower_to_bottom_delegate(lower_to_bottom);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_lower_to_bottom"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_lower_to_bottom_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Vg.Node.efl_canvas_vg_node_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Node.efl_canvas_vg_node_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_canvas_vg_node_transformation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_vg_node_transformation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_node_transformation_get_api_delegate> efl_canvas_vg_node_transformation_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_node_transformation_get_api_delegate>(_Module, "efl_canvas_vg_node_transformation_get");
+    private static  System.IntPtr transformation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_node_transformation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Matrix3 _ret_var = default(Eina.Matrix3);
+         try {
+            _ret_var = ((Node)wrapper).GetTransformation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_canvas_vg_node_transformation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_vg_node_transformation_get_delegate efl_canvas_vg_node_transformation_get_static_delegate;
+
+
+    private delegate  void efl_canvas_vg_node_transformation_set_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Matrix3_StructInternal m);
+
+
+    public delegate  void efl_canvas_vg_node_transformation_set_api_delegate(System.IntPtr obj,   ref Eina.Matrix3_StructInternal m);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_node_transformation_set_api_delegate> efl_canvas_vg_node_transformation_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_node_transformation_set_api_delegate>(_Module, "efl_canvas_vg_node_transformation_set");
+    private static  void transformation_set(System.IntPtr obj, System.IntPtr pd,  ref Eina.Matrix3_StructInternal m)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_node_transformation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_m = Eina.Matrix3_StructConversion.ToManaged(m);
+                     
+         try {
+            ((Node)wrapper).SetTransformation( ref _in_m);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            m = Eina.Matrix3_StructConversion.ToInternal(_in_m);
+            } else {
+         efl_canvas_vg_node_transformation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref m);
+      }
+   }
+   private static efl_canvas_vg_node_transformation_set_delegate efl_canvas_vg_node_transformation_set_static_delegate;
+
+
+    private delegate  void efl_canvas_vg_node_origin_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_canvas_vg_node_origin_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_node_origin_get_api_delegate> efl_canvas_vg_node_origin_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_node_origin_get_api_delegate>(_Module, "efl_canvas_vg_node_origin_get");
+    private static  void origin_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_node_origin_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Node)wrapper).GetOrigin( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_canvas_vg_node_origin_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_canvas_vg_node_origin_get_delegate efl_canvas_vg_node_origin_get_static_delegate;
+
+
+    private delegate  void efl_canvas_vg_node_origin_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_canvas_vg_node_origin_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_node_origin_set_api_delegate> efl_canvas_vg_node_origin_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_node_origin_set_api_delegate>(_Module, "efl_canvas_vg_node_origin_set");
+    private static  void origin_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_node_origin_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Node)wrapper).SetOrigin( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_canvas_vg_node_origin_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_canvas_vg_node_origin_set_delegate efl_canvas_vg_node_origin_set_static_delegate;
+
+
+    private delegate  void efl_canvas_vg_node_mask_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node mask,    int op);
+
+
+    public delegate  void efl_canvas_vg_node_mask_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node mask,    int op);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_node_mask_set_api_delegate> efl_canvas_vg_node_mask_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_node_mask_set_api_delegate>(_Module, "efl_canvas_vg_node_mask_set");
+    private static  void mask_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Vg.Node mask,   int op)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_node_mask_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Node)wrapper).SetMask( mask,  op);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_canvas_vg_node_mask_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mask,  op);
+      }
+   }
+   private static efl_canvas_vg_node_mask_set_delegate efl_canvas_vg_node_mask_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((Node)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+
+
+    private delegate  void efl_gfx_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate> efl_gfx_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate>(_Module, "efl_gfx_color_get");
+    private static  void color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((Node)wrapper).GetColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_get_delegate efl_gfx_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate> efl_gfx_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate>(_Module, "efl_gfx_color_set");
+    private static  void color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Node)wrapper).SetColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_set_delegate efl_gfx_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate> efl_gfx_color_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate>(_Module, "efl_gfx_color_code_get");
+    private static  System.String color_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Node)wrapper).GetColorCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_color_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_code_get_delegate efl_gfx_color_code_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    public delegate  void efl_gfx_color_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate> efl_gfx_color_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate>(_Module, "efl_gfx_color_code_set");
+    private static  void color_code_set(System.IntPtr obj, System.IntPtr pd,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).SetColorCode( colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  colorcode);
+      }
+   }
+   private static efl_gfx_color_code_set_delegate efl_gfx_color_code_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate> efl_gfx_entity_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate>(_Module, "efl_gfx_entity_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Node)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_position_get_delegate efl_gfx_entity_position_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_gfx_entity_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate> efl_gfx_entity_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate>(_Module, "efl_gfx_entity_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Node)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_gfx_entity_position_set_delegate efl_gfx_entity_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate> efl_gfx_entity_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate>(_Module, "efl_gfx_entity_size_get");
+    private static Eina.Size2D_StructInternal size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Node)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_size_get_delegate efl_gfx_entity_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_entity_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate> efl_gfx_entity_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate>(_Module, "efl_gfx_entity_size_set");
+    private static  void size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Node)wrapper).SetSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_entity_size_set_delegate efl_gfx_entity_size_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate> efl_gfx_entity_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate>(_Module, "efl_gfx_entity_geometry_get");
+    private static Eina.Rect_StructInternal geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Node)wrapper).GetGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_geometry_get_delegate efl_gfx_entity_geometry_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_geometry_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect);
+
+
+    public delegate  void efl_gfx_entity_geometry_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate> efl_gfx_entity_geometry_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate>(_Module, "efl_gfx_entity_geometry_set");
+    private static  void geometry_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                     
+         try {
+            ((Node)wrapper).SetGeometry( _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_geometry_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect);
+      }
+   }
+   private static efl_gfx_entity_geometry_set_delegate efl_gfx_entity_geometry_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_entity_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_entity_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate> efl_gfx_entity_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate>(_Module, "efl_gfx_entity_visible_get");
+    private static bool visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Node)wrapper).GetVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_visible_get_delegate efl_gfx_entity_visible_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_gfx_entity_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate> efl_gfx_entity_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate>(_Module, "efl_gfx_entity_visible_set");
+    private static  void visible_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).SetVisible( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_gfx_entity_visible_set_delegate efl_gfx_entity_visible_set_static_delegate;
+
+
+    private delegate double efl_gfx_entity_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_entity_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate> efl_gfx_entity_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate>(_Module, "efl_gfx_entity_scale_get");
+    private static double scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Node)wrapper).GetScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_scale_get_delegate efl_gfx_entity_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_entity_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate> efl_gfx_entity_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate>(_Module, "efl_gfx_entity_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).SetScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_entity_scale_set_delegate efl_gfx_entity_scale_set_static_delegate;
+
+
+    private delegate  void efl_gfx_path_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr op,   out  System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_get_api_delegate(System.IntPtr obj,   out  System.IntPtr op,   out  System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate> efl_gfx_path_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate>(_Module, "efl_gfx_path_get");
+    private static  void path_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr op,  out  System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.PathCommandType _out_op = default(Efl.Gfx.PathCommandType);
+      double _out_points = default(double);
+                     
+         try {
+            ((Node)wrapper).GetPath( out _out_op,  out _out_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      op = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_op);
+      points = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_points);
+                        } else {
+         efl_gfx_path_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out op,  out points);
+      }
+   }
+   private static efl_gfx_path_get_delegate efl_gfx_path_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr op,    System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_set_api_delegate(System.IntPtr obj,    System.IntPtr op,    System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate> efl_gfx_path_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate>(_Module, "efl_gfx_path_set");
+    private static  void path_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr op,   System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(op);
+      var _in_points = Eina.PrimitiveConversion.PointerToManaged<double>(points);
+                                 
+         try {
+            ((Node)wrapper).SetPath( _in_op,  _in_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  op,  points);
+      }
+   }
+   private static efl_gfx_path_set_delegate efl_gfx_path_set_static_delegate;
+
+
+    private delegate  void efl_gfx_path_length_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  uint commands,   out  uint points);
+
+
+    public delegate  void efl_gfx_path_length_get_api_delegate(System.IntPtr obj,   out  uint commands,   out  uint points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate> efl_gfx_path_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate>(_Module, "efl_gfx_path_length_get");
+    private static  void length_get(System.IntPtr obj, System.IntPtr pd,  out  uint commands,  out  uint points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           commands = default( uint);      points = default( uint);                     
+         try {
+            ((Node)wrapper).GetLength( out commands,  out points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out commands,  out points);
+      }
+   }
+   private static efl_gfx_path_length_get_delegate efl_gfx_path_length_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate> efl_gfx_path_current_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate>(_Module, "efl_gfx_path_current_get");
+    private static  void current_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Node)wrapper).GetCurrent( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_get_delegate efl_gfx_path_current_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_ctrl_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_ctrl_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate> efl_gfx_path_current_ctrl_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate>(_Module, "efl_gfx_path_current_ctrl_get");
+    private static  void current_ctrl_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_ctrl_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Node)wrapper).GetCurrentCtrl( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_ctrl_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_ctrl_get_delegate efl_gfx_path_current_ctrl_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_copy_from_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+
+
+    public delegate  void efl_gfx_path_copy_from_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate> efl_gfx_path_copy_from_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate>(_Module, "efl_gfx_path_copy_from");
+    private static  void copy_from(System.IntPtr obj, System.IntPtr pd,  Efl.Object dup_from)
+   {
+      Eina.Log.Debug("function efl_gfx_path_copy_from was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).CopyFrom( dup_from);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_copy_from_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dup_from);
+      }
+   }
+   private static efl_gfx_path_copy_from_delegate efl_gfx_path_copy_from_static_delegate;
+
+
+    private delegate  void efl_gfx_path_bounds_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Eina.Rect_StructInternal r);
+
+
+    public delegate  void efl_gfx_path_bounds_get_api_delegate(System.IntPtr obj,   out Eina.Rect_StructInternal r);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate> efl_gfx_path_bounds_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate>(_Module, "efl_gfx_path_bounds_get");
+    private static  void bounds_get(System.IntPtr obj, System.IntPtr pd,  out Eina.Rect_StructInternal r)
+   {
+      Eina.Log.Debug("function efl_gfx_path_bounds_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     Eina.Rect _out_r = default(Eina.Rect);
+               
+         try {
+            ((Node)wrapper).GetBounds( out _out_r);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      r = Eina.Rect_StructConversion.ToInternal(_out_r);
+                  } else {
+         efl_gfx_path_bounds_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r);
+      }
+   }
+   private static efl_gfx_path_bounds_get_delegate efl_gfx_path_bounds_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate> efl_gfx_path_reset_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate>(_Module, "efl_gfx_path_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Node)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_reset_delegate efl_gfx_path_reset_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_move_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_move_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate> efl_gfx_path_append_move_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate>(_Module, "efl_gfx_path_append_move_to");
+    private static  void append_move_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_move_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Node)wrapper).AppendMoveTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_move_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_move_to_delegate efl_gfx_path_append_move_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_line_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_line_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate> efl_gfx_path_append_line_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate>(_Module, "efl_gfx_path_append_line_to");
+    private static  void append_line_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_line_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Node)wrapper).AppendLineTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_line_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_line_to_delegate efl_gfx_path_append_line_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_quadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_quadratic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate> efl_gfx_path_append_quadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate>(_Module, "efl_gfx_path_append_quadratic_to");
+    private static  void append_quadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_quadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Node)wrapper).AppendQuadraticTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_quadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_quadratic_to_delegate efl_gfx_path_append_quadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_squadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_squadratic_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate> efl_gfx_path_append_squadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate>(_Module, "efl_gfx_path_append_squadratic_to");
+    private static  void append_squadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_squadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Node)wrapper).AppendSquadraticTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_squadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_squadratic_to_delegate efl_gfx_path_append_squadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_cubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_cubic_to_api_delegate(System.IntPtr obj,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate> efl_gfx_path_append_cubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate>(_Module, "efl_gfx_path_append_cubic_to");
+    private static  void append_cubic_to(System.IntPtr obj, System.IntPtr pd,  double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_cubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((Node)wrapper).AppendCubicTo( ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_cubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_cubic_to_delegate efl_gfx_path_append_cubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_scubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_scubic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate> efl_gfx_path_append_scubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate>(_Module, "efl_gfx_path_append_scubic_to");
+    private static  void append_scubic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_scubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Node)wrapper).AppendScubicTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_scubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_scubic_to_delegate efl_gfx_path_append_scubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+
+
+    public delegate  void efl_gfx_path_append_arc_to_api_delegate(System.IntPtr obj,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate> efl_gfx_path_append_arc_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate>(_Module, "efl_gfx_path_append_arc_to");
+    private static  void append_arc_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((Node)wrapper).AppendArcTo( x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_path_append_arc_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      }
+   }
+   private static efl_gfx_path_append_arc_to_delegate efl_gfx_path_append_arc_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+
+
+    public delegate  void efl_gfx_path_append_arc_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate> efl_gfx_path_append_arc_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate>(_Module, "efl_gfx_path_append_arc");
+    private static  void append_arc(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double start_angle,  double sweep_length)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((Node)wrapper).AppendArc( x,  y,  w,  h,  start_angle,  sweep_length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_arc_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  start_angle,  sweep_length);
+      }
+   }
+   private static efl_gfx_path_append_arc_delegate efl_gfx_path_append_arc_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_append_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate> efl_gfx_path_append_close_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate>(_Module, "efl_gfx_path_append_close");
+    private static  void append_close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Node)wrapper).CloseAppend();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_append_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_append_close_delegate efl_gfx_path_append_close_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_circle_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double radius);
+
+
+    public delegate  void efl_gfx_path_append_circle_api_delegate(System.IntPtr obj,   double x,   double y,   double radius);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate> efl_gfx_path_append_circle_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate>(_Module, "efl_gfx_path_append_circle");
+    private static  void append_circle(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double radius)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_circle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Node)wrapper).AppendCircle( x,  y,  radius);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_path_append_circle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  radius);
+      }
+   }
+   private static efl_gfx_path_append_circle_delegate efl_gfx_path_append_circle_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_rect_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double rx,   double ry);
+
+
+    public delegate  void efl_gfx_path_append_rect_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double rx,   double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate> efl_gfx_path_append_rect_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate>(_Module, "efl_gfx_path_append_rect");
+    private static  void append_rect(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double rx,  double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_rect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((Node)wrapper).AppendRect( x,  y,  w,  h,  rx,  ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_rect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  rx,  ry);
+      }
+   }
+   private static efl_gfx_path_append_rect_delegate efl_gfx_path_append_rect_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_svg_path_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+
+
+    public delegate  void efl_gfx_path_append_svg_path_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate> efl_gfx_path_append_svg_path_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate>(_Module, "efl_gfx_path_append_svg_path");
+    private static  void append_svg_path(System.IntPtr obj, System.IntPtr pd,   System.String svg_path_data)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_svg_path was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).AppendSvgPath( svg_path_data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_append_svg_path_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  svg_path_data);
+      }
+   }
+   private static efl_gfx_path_append_svg_path_delegate efl_gfx_path_append_svg_path_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_interpolate_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_interpolate_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate> efl_gfx_path_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate>(_Module, "efl_gfx_path_interpolate");
+    private static bool interpolate(System.IntPtr obj, System.IntPtr pd,  Efl.Object from,  Efl.Object to,  double pos_map)
+   {
+      Eina.Log.Debug("function efl_gfx_path_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Node)wrapper).Interpolate( from,  to,  pos_map);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_path_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from,  to,  pos_map);
+      }
+   }
+   private static efl_gfx_path_interpolate_delegate efl_gfx_path_interpolate_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_equal_commands_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_equal_commands_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate> efl_gfx_path_equal_commands_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate>(_Module, "efl_gfx_path_equal_commands");
+    private static bool equal_commands(System.IntPtr obj, System.IntPtr pd,  Efl.Object with)
+   {
+      Eina.Log.Debug("function efl_gfx_path_equal_commands was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Node)wrapper).EqualCommands( with);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_path_equal_commands_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  with);
+      }
+   }
+   private static efl_gfx_path_equal_commands_delegate efl_gfx_path_equal_commands_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reserve_delegate(System.IntPtr obj, System.IntPtr pd,    uint cmd_count,    uint pts_count);
+
+
+    public delegate  void efl_gfx_path_reserve_api_delegate(System.IntPtr obj,    uint cmd_count,    uint pts_count);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate> efl_gfx_path_reserve_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate>(_Module, "efl_gfx_path_reserve");
+    private static  void reserve(System.IntPtr obj, System.IntPtr pd,   uint cmd_count,   uint pts_count)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reserve was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Node)wrapper).Reserve( cmd_count,  pts_count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_reserve_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cmd_count,  pts_count);
+      }
+   }
+   private static efl_gfx_path_reserve_delegate efl_gfx_path_reserve_static_delegate;
+
+
+    private delegate  void efl_gfx_path_commit_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_commit_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate> efl_gfx_path_commit_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate>(_Module, "efl_gfx_path_commit");
+    private static  void commit(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_commit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Node)wrapper).Commit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_commit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_commit_delegate efl_gfx_path_commit_static_delegate;
+
+
+    private delegate  short efl_gfx_stack_layer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  short efl_gfx_stack_layer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate> efl_gfx_stack_layer_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate>(_Module, "efl_gfx_stack_layer_get");
+    private static  short layer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   short _ret_var = default( short);
+         try {
+            _ret_var = ((Node)wrapper).GetLayer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_layer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_layer_get_delegate efl_gfx_stack_layer_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_layer_set_delegate(System.IntPtr obj, System.IntPtr pd,    short l);
+
+
+    public delegate  void efl_gfx_stack_layer_set_api_delegate(System.IntPtr obj,    short l);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate> efl_gfx_stack_layer_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate>(_Module, "efl_gfx_stack_layer_set");
+    private static  void layer_set(System.IntPtr obj, System.IntPtr pd,   short l)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).SetLayer( l);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_layer_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l);
+      }
+   }
+   private static efl_gfx_stack_layer_set_delegate efl_gfx_stack_layer_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_below_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_below_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate> efl_gfx_stack_below_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate>(_Module, "efl_gfx_stack_below_get");
+    private static Efl.Gfx.Stack below_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Node)wrapper).GetBelow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_below_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_below_get_delegate efl_gfx_stack_below_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_above_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_above_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate> efl_gfx_stack_above_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate>(_Module, "efl_gfx_stack_above_get");
+    private static Efl.Gfx.Stack above_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Node)wrapper).GetAbove();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_above_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_above_get_delegate efl_gfx_stack_above_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_below_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+
+
+    public delegate  void efl_gfx_stack_below_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate> efl_gfx_stack_below_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate>(_Module, "efl_gfx_stack_below");
+    private static  void stack_below(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack below)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).StackBelow( below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_below_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  below);
+      }
+   }
+   private static efl_gfx_stack_below_delegate efl_gfx_stack_below_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_raise_to_top_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_raise_to_top_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate> efl_gfx_stack_raise_to_top_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate>(_Module, "efl_gfx_stack_raise_to_top");
+    private static  void raise_to_top(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_raise_to_top was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Node)wrapper).RaiseToTop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_raise_to_top_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_raise_to_top_delegate efl_gfx_stack_raise_to_top_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_above_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+
+
+    public delegate  void efl_gfx_stack_above_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate> efl_gfx_stack_above_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate>(_Module, "efl_gfx_stack_above");
+    private static  void stack_above(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack above)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Node)wrapper).StackAbove( above);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_above_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  above);
+      }
+   }
+   private static efl_gfx_stack_above_delegate efl_gfx_stack_above_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_lower_to_bottom_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_lower_to_bottom_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate> efl_gfx_stack_lower_to_bottom_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate>(_Module, "efl_gfx_stack_lower_to_bottom");
+    private static  void lower_to_bottom(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_lower_to_bottom was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Node)wrapper).LowerToBottom();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_lower_to_bottom_delegate efl_gfx_stack_lower_to_bottom_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_canvas_vg_shape.eo.cs b/internals/src/EflSharp/EflSharp/efl_canvas_vg_shape.eo.cs
new file mode 100755 (executable)
index 0000000..95e11cc
--- /dev/null
@@ -0,0 +1,943 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Canvas { namespace Vg { 
+/// <summary>Efl vector graphics shape class</summary>
+[ShapeNativeInherit]
+public class Shape : Efl.Canvas.Vg.Node, Efl.Eo.IWrapper,Efl.Gfx.Shape
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Canvas.Vg.ShapeNativeInherit nativeInherit = new Efl.Canvas.Vg.ShapeNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Shape))
+            return Efl.Canvas.Vg.ShapeNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_canvas_vg_shape_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Shape(Efl.Object parent= null
+         ) :
+      base(efl_canvas_vg_shape_class_get(), typeof(Shape), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Shape(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Shape(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Shape static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Shape(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Fill of the shape object</summary>
+   /// <returns>Fill object</returns>
+   virtual public Efl.Canvas.Vg.Node GetFill() {
+       var _ret_var = Efl.Canvas.Vg.ShapeNativeInherit.efl_canvas_vg_shape_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Fill of the shape object</summary>
+   /// <param name="f">Fill object</param>
+   /// <returns></returns>
+   virtual public  void SetFill( Efl.Canvas.Vg.Node f) {
+                         Efl.Canvas.Vg.ShapeNativeInherit.efl_canvas_vg_shape_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Stroke fill of the shape object</summary>
+   /// <returns>Stroke fill object</returns>
+   virtual public Efl.Canvas.Vg.Node GetStrokeFill() {
+       var _ret_var = Efl.Canvas.Vg.ShapeNativeInherit.efl_canvas_vg_shape_stroke_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stroke fill of the shape object</summary>
+   /// <param name="f">Stroke fill object</param>
+   /// <returns></returns>
+   virtual public  void SetStrokeFill( Efl.Canvas.Vg.Node f) {
+                         Efl.Canvas.Vg.ShapeNativeInherit.efl_canvas_vg_shape_stroke_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Stroke marker of the shape object</summary>
+   /// <returns>Stroke marker object</returns>
+   virtual public Efl.Canvas.Vg.Node GetStrokeMarker() {
+       var _ret_var = Efl.Canvas.Vg.ShapeNativeInherit.efl_canvas_vg_shape_stroke_marker_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stroke marker of the shape object</summary>
+   /// <param name="m">Stroke marker object</param>
+   /// <returns></returns>
+   virtual public  void SetStrokeMarker( Efl.Canvas.Vg.Node m) {
+                         Efl.Canvas.Vg.ShapeNativeInherit.efl_canvas_vg_shape_stroke_marker_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), m);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+   /// 1.14</summary>
+   /// <returns>Stroke scale value</returns>
+   virtual public double GetStrokeScale() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+   /// 1.14</summary>
+   /// <param name="s">Stroke scale value</param>
+   /// <returns></returns>
+   virtual public  void SetStrokeScale( double s) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), s);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The color to be used for stroking the path.
+   /// 1.14</summary>
+   /// <param name="r">The red component of the given color.</param>
+   /// <param name="g">The green component of the given color.</param>
+   /// <param name="b">The blue component of the given color.</param>
+   /// <param name="a">The alpha component of the given color.</param>
+   /// <returns></returns>
+   virtual public  void GetStrokeColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>The color to be used for stroking the path.
+   /// 1.14</summary>
+   /// <param name="r">The red component of the given color.</param>
+   /// <param name="g">The green component of the given color.</param>
+   /// <param name="b">The blue component of the given color.</param>
+   /// <param name="a">The alpha component of the given color.</param>
+   /// <returns></returns>
+   virtual public  void SetStrokeColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>The stroke width to be used for stroking the path.
+   /// 1.14</summary>
+   /// <returns>Stroke width to be used</returns>
+   virtual public double GetStrokeWidth() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_width_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The stroke width to be used for stroking the path.
+   /// 1.14</summary>
+   /// <param name="w">Stroke width to be used</param>
+   /// <returns></returns>
+   virtual public  void SetStrokeWidth( double w) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_width_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Not implemented</summary>
+   /// <returns>Centered stroke location</returns>
+   virtual public double GetStrokeLocation() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_location_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Not implemented</summary>
+   /// <param name="centered">Centered stroke location</param>
+   /// <returns></returns>
+   virtual public  void SetStrokeLocation( double centered) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_location_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), centered);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set stroke dash pattern. A dash pattern is specified by dashes, an array of <see cref="Efl.Gfx.Dash"/>. <see cref="Efl.Gfx.Dash"/> values(length, gap) must be positive.
+   /// See also <see cref="Efl.Gfx.Dash"/></summary>
+   /// <param name="dash">Stroke dash</param>
+   /// <param name="length">Stroke dash length</param>
+   /// <returns></returns>
+   virtual public  void GetStrokeDash( out Efl.Gfx.Dash dash,  out  uint length) {
+                   var _out_dash = new  System.IntPtr();
+                        Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_dash_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_dash,  out length);
+      Eina.Error.RaiseIfUnhandledException();
+      dash = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.Dash>(_out_dash);
+                         }
+   /// <summary>Set stroke dash pattern. A dash pattern is specified by dashes, an array of <see cref="Efl.Gfx.Dash"/>. <see cref="Efl.Gfx.Dash"/> values(length, gap) must be positive.
+   /// See also <see cref="Efl.Gfx.Dash"/></summary>
+   /// <param name="dash">Stroke dash</param>
+   /// <param name="length">Stroke dash length</param>
+   /// <returns></returns>
+   virtual public  void SetStrokeDash( ref Efl.Gfx.Dash dash,   uint length) {
+       var _in_dash = Efl.Gfx.Dash_StructConversion.ToInternal(dash);
+                                    Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_dash_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref _in_dash,  length);
+      Eina.Error.RaiseIfUnhandledException();
+                  dash = Efl.Gfx.Dash_StructConversion.ToManaged(_in_dash);
+             }
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+   /// See also <see cref="Efl.Gfx.Cap"/>.
+   /// 1.14</summary>
+   /// <returns>Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></returns>
+   virtual public Efl.Gfx.Cap GetStrokeCap() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_cap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+   /// See also <see cref="Efl.Gfx.Cap"/>.
+   /// 1.14</summary>
+   /// <param name="c">Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></param>
+   /// <returns></returns>
+   virtual public  void SetStrokeCap( Efl.Gfx.Cap c) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_cap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), c);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+   /// See also <see cref="Efl.Gfx.Join"/>.
+   /// 1.14</summary>
+   /// <returns>Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></returns>
+   virtual public Efl.Gfx.Join GetStrokeJoin() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_join_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+   /// See also <see cref="Efl.Gfx.Join"/>.
+   /// 1.14</summary>
+   /// <param name="j">Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></param>
+   /// <returns></returns>
+   virtual public  void SetStrokeJoin( Efl.Gfx.Join j) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_join_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), j);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+   /// 1.14</summary>
+   /// <returns>The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></returns>
+   virtual public Efl.Gfx.FillRule GetFillRule() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_fill_rule_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+   /// 1.14</summary>
+   /// <param name="fill_rule">The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></param>
+   /// <returns></returns>
+   virtual public  void SetFillRule( Efl.Gfx.FillRule fill_rule) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_fill_rule_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fill_rule);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Fill of the shape object</summary>
+/// <value>Fill object</value>
+   public Efl.Canvas.Vg.Node Fill {
+      get { return GetFill(); }
+      set { SetFill( value); }
+   }
+   /// <summary>Stroke fill of the shape object</summary>
+/// <value>Stroke fill object</value>
+   public Efl.Canvas.Vg.Node StrokeFill {
+      get { return GetStrokeFill(); }
+      set { SetStrokeFill( value); }
+   }
+   /// <summary>Stroke marker of the shape object</summary>
+/// <value>Stroke marker object</value>
+   public Efl.Canvas.Vg.Node StrokeMarker {
+      get { return GetStrokeMarker(); }
+      set { SetStrokeMarker( value); }
+   }
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+/// 1.14</summary>
+/// <value>Stroke scale value</value>
+   public double StrokeScale {
+      get { return GetStrokeScale(); }
+      set { SetStrokeScale( value); }
+   }
+   /// <summary>The stroke width to be used for stroking the path.
+/// 1.14</summary>
+/// <value>Stroke width to be used</value>
+   public double StrokeWidth {
+      get { return GetStrokeWidth(); }
+      set { SetStrokeWidth( value); }
+   }
+   /// <summary>Not implemented</summary>
+/// <value>Centered stroke location</value>
+   public double StrokeLocation {
+      get { return GetStrokeLocation(); }
+      set { SetStrokeLocation( value); }
+   }
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+/// See also <see cref="Efl.Gfx.Cap"/>.
+/// 1.14</summary>
+/// <value>Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></value>
+   public Efl.Gfx.Cap StrokeCap {
+      get { return GetStrokeCap(); }
+      set { SetStrokeCap( value); }
+   }
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+/// See also <see cref="Efl.Gfx.Join"/>.
+/// 1.14</summary>
+/// <value>Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></value>
+   public Efl.Gfx.Join StrokeJoin {
+      get { return GetStrokeJoin(); }
+      set { SetStrokeJoin( value); }
+   }
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+/// 1.14</summary>
+/// <value>The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></value>
+   public Efl.Gfx.FillRule FillRule {
+      get { return GetFillRule(); }
+      set { SetFillRule( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Shape.efl_canvas_vg_shape_class_get();
+   }
+}
+public class ShapeNativeInherit : Efl.Canvas.Vg.NodeNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_vg_shape_fill_get_static_delegate == null)
+      efl_canvas_vg_shape_fill_get_static_delegate = new efl_canvas_vg_shape_fill_get_delegate(fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_shape_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_shape_fill_get_static_delegate)});
+      if (efl_canvas_vg_shape_fill_set_static_delegate == null)
+      efl_canvas_vg_shape_fill_set_static_delegate = new efl_canvas_vg_shape_fill_set_delegate(fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_shape_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_shape_fill_set_static_delegate)});
+      if (efl_canvas_vg_shape_stroke_fill_get_static_delegate == null)
+      efl_canvas_vg_shape_stroke_fill_get_static_delegate = new efl_canvas_vg_shape_stroke_fill_get_delegate(stroke_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_shape_stroke_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_shape_stroke_fill_get_static_delegate)});
+      if (efl_canvas_vg_shape_stroke_fill_set_static_delegate == null)
+      efl_canvas_vg_shape_stroke_fill_set_static_delegate = new efl_canvas_vg_shape_stroke_fill_set_delegate(stroke_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_shape_stroke_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_shape_stroke_fill_set_static_delegate)});
+      if (efl_canvas_vg_shape_stroke_marker_get_static_delegate == null)
+      efl_canvas_vg_shape_stroke_marker_get_static_delegate = new efl_canvas_vg_shape_stroke_marker_get_delegate(stroke_marker_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_shape_stroke_marker_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_shape_stroke_marker_get_static_delegate)});
+      if (efl_canvas_vg_shape_stroke_marker_set_static_delegate == null)
+      efl_canvas_vg_shape_stroke_marker_set_static_delegate = new efl_canvas_vg_shape_stroke_marker_set_delegate(stroke_marker_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_vg_shape_stroke_marker_set"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_vg_shape_stroke_marker_set_static_delegate)});
+      if (efl_gfx_shape_stroke_scale_get_static_delegate == null)
+      efl_gfx_shape_stroke_scale_get_static_delegate = new efl_gfx_shape_stroke_scale_get_delegate(stroke_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_scale_get_static_delegate)});
+      if (efl_gfx_shape_stroke_scale_set_static_delegate == null)
+      efl_gfx_shape_stroke_scale_set_static_delegate = new efl_gfx_shape_stroke_scale_set_delegate(stroke_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_scale_set_static_delegate)});
+      if (efl_gfx_shape_stroke_color_get_static_delegate == null)
+      efl_gfx_shape_stroke_color_get_static_delegate = new efl_gfx_shape_stroke_color_get_delegate(stroke_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_color_get_static_delegate)});
+      if (efl_gfx_shape_stroke_color_set_static_delegate == null)
+      efl_gfx_shape_stroke_color_set_static_delegate = new efl_gfx_shape_stroke_color_set_delegate(stroke_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_color_set_static_delegate)});
+      if (efl_gfx_shape_stroke_width_get_static_delegate == null)
+      efl_gfx_shape_stroke_width_get_static_delegate = new efl_gfx_shape_stroke_width_get_delegate(stroke_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_width_get_static_delegate)});
+      if (efl_gfx_shape_stroke_width_set_static_delegate == null)
+      efl_gfx_shape_stroke_width_set_static_delegate = new efl_gfx_shape_stroke_width_set_delegate(stroke_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_width_set_static_delegate)});
+      if (efl_gfx_shape_stroke_location_get_static_delegate == null)
+      efl_gfx_shape_stroke_location_get_static_delegate = new efl_gfx_shape_stroke_location_get_delegate(stroke_location_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_location_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_location_get_static_delegate)});
+      if (efl_gfx_shape_stroke_location_set_static_delegate == null)
+      efl_gfx_shape_stroke_location_set_static_delegate = new efl_gfx_shape_stroke_location_set_delegate(stroke_location_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_location_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_location_set_static_delegate)});
+      if (efl_gfx_shape_stroke_dash_get_static_delegate == null)
+      efl_gfx_shape_stroke_dash_get_static_delegate = new efl_gfx_shape_stroke_dash_get_delegate(stroke_dash_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_dash_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_dash_get_static_delegate)});
+      if (efl_gfx_shape_stroke_dash_set_static_delegate == null)
+      efl_gfx_shape_stroke_dash_set_static_delegate = new efl_gfx_shape_stroke_dash_set_delegate(stroke_dash_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_dash_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_dash_set_static_delegate)});
+      if (efl_gfx_shape_stroke_cap_get_static_delegate == null)
+      efl_gfx_shape_stroke_cap_get_static_delegate = new efl_gfx_shape_stroke_cap_get_delegate(stroke_cap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_cap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_cap_get_static_delegate)});
+      if (efl_gfx_shape_stroke_cap_set_static_delegate == null)
+      efl_gfx_shape_stroke_cap_set_static_delegate = new efl_gfx_shape_stroke_cap_set_delegate(stroke_cap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_cap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_cap_set_static_delegate)});
+      if (efl_gfx_shape_stroke_join_get_static_delegate == null)
+      efl_gfx_shape_stroke_join_get_static_delegate = new efl_gfx_shape_stroke_join_get_delegate(stroke_join_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_join_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_join_get_static_delegate)});
+      if (efl_gfx_shape_stroke_join_set_static_delegate == null)
+      efl_gfx_shape_stroke_join_set_static_delegate = new efl_gfx_shape_stroke_join_set_delegate(stroke_join_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_join_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_join_set_static_delegate)});
+      if (efl_gfx_shape_fill_rule_get_static_delegate == null)
+      efl_gfx_shape_fill_rule_get_static_delegate = new efl_gfx_shape_fill_rule_get_delegate(fill_rule_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_fill_rule_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_fill_rule_get_static_delegate)});
+      if (efl_gfx_shape_fill_rule_set_static_delegate == null)
+      efl_gfx_shape_fill_rule_set_static_delegate = new efl_gfx_shape_fill_rule_set_delegate(fill_rule_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_fill_rule_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_fill_rule_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Canvas.Vg.Shape.efl_canvas_vg_shape_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Canvas.Vg.Shape.efl_canvas_vg_shape_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Vg.Node efl_canvas_vg_shape_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Vg.Node efl_canvas_vg_shape_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_fill_get_api_delegate> efl_canvas_vg_shape_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_fill_get_api_delegate>(_Module, "efl_canvas_vg_shape_fill_get");
+    private static Efl.Canvas.Vg.Node fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_shape_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Vg.Node _ret_var = default(Efl.Canvas.Vg.Node);
+         try {
+            _ret_var = ((Shape)wrapper).GetFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_vg_shape_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_vg_shape_fill_get_delegate efl_canvas_vg_shape_fill_get_static_delegate;
+
+
+    private delegate  void efl_canvas_vg_shape_fill_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node f);
+
+
+    public delegate  void efl_canvas_vg_shape_fill_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node f);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_fill_set_api_delegate> efl_canvas_vg_shape_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_fill_set_api_delegate>(_Module, "efl_canvas_vg_shape_fill_set");
+    private static  void fill_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Vg.Node f)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_shape_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetFill( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_vg_shape_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_canvas_vg_shape_fill_set_delegate efl_canvas_vg_shape_fill_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Vg.Node efl_canvas_vg_shape_stroke_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Vg.Node efl_canvas_vg_shape_stroke_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_fill_get_api_delegate> efl_canvas_vg_shape_stroke_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_fill_get_api_delegate>(_Module, "efl_canvas_vg_shape_stroke_fill_get");
+    private static Efl.Canvas.Vg.Node stroke_fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_shape_stroke_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Vg.Node _ret_var = default(Efl.Canvas.Vg.Node);
+         try {
+            _ret_var = ((Shape)wrapper).GetStrokeFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_vg_shape_stroke_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_vg_shape_stroke_fill_get_delegate efl_canvas_vg_shape_stroke_fill_get_static_delegate;
+
+
+    private delegate  void efl_canvas_vg_shape_stroke_fill_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node f);
+
+
+    public delegate  void efl_canvas_vg_shape_stroke_fill_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node f);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_fill_set_api_delegate> efl_canvas_vg_shape_stroke_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_fill_set_api_delegate>(_Module, "efl_canvas_vg_shape_stroke_fill_set");
+    private static  void stroke_fill_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Vg.Node f)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_shape_stroke_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetStrokeFill( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_vg_shape_stroke_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_canvas_vg_shape_stroke_fill_set_delegate efl_canvas_vg_shape_stroke_fill_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Vg.Node efl_canvas_vg_shape_stroke_marker_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Vg.Node efl_canvas_vg_shape_stroke_marker_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_marker_get_api_delegate> efl_canvas_vg_shape_stroke_marker_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_marker_get_api_delegate>(_Module, "efl_canvas_vg_shape_stroke_marker_get");
+    private static Efl.Canvas.Vg.Node stroke_marker_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_shape_stroke_marker_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Vg.Node _ret_var = default(Efl.Canvas.Vg.Node);
+         try {
+            _ret_var = ((Shape)wrapper).GetStrokeMarker();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_vg_shape_stroke_marker_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_vg_shape_stroke_marker_get_delegate efl_canvas_vg_shape_stroke_marker_get_static_delegate;
+
+
+    private delegate  void efl_canvas_vg_shape_stroke_marker_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node m);
+
+
+    public delegate  void efl_canvas_vg_shape_stroke_marker_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Vg.Node, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Vg.Node m);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_marker_set_api_delegate> efl_canvas_vg_shape_stroke_marker_set_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_vg_shape_stroke_marker_set_api_delegate>(_Module, "efl_canvas_vg_shape_stroke_marker_set");
+    private static  void stroke_marker_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Vg.Node m)
+   {
+      Eina.Log.Debug("function efl_canvas_vg_shape_stroke_marker_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetStrokeMarker( m);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_canvas_vg_shape_stroke_marker_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  m);
+      }
+   }
+   private static efl_canvas_vg_shape_stroke_marker_set_delegate efl_canvas_vg_shape_stroke_marker_set_static_delegate;
+
+
+    private delegate double efl_gfx_shape_stroke_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_shape_stroke_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_get_api_delegate> efl_gfx_shape_stroke_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_get_api_delegate>(_Module, "efl_gfx_shape_stroke_scale_get");
+    private static double stroke_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Shape)wrapper).GetStrokeScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_scale_get_delegate efl_gfx_shape_stroke_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double s);
+
+
+    public delegate  void efl_gfx_shape_stroke_scale_set_api_delegate(System.IntPtr obj,   double s);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_set_api_delegate> efl_gfx_shape_stroke_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_set_api_delegate>(_Module, "efl_gfx_shape_stroke_scale_set");
+    private static  void stroke_scale_set(System.IntPtr obj, System.IntPtr pd,  double s)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetStrokeScale( s);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  s);
+      }
+   }
+   private static efl_gfx_shape_stroke_scale_set_delegate efl_gfx_shape_stroke_scale_set_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_shape_stroke_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_get_api_delegate> efl_gfx_shape_stroke_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_get_api_delegate>(_Module, "efl_gfx_shape_stroke_color_get");
+    private static  void stroke_color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((Shape)wrapper).GetStrokeColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_shape_stroke_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_shape_stroke_color_get_delegate efl_gfx_shape_stroke_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_shape_stroke_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_set_api_delegate> efl_gfx_shape_stroke_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_set_api_delegate>(_Module, "efl_gfx_shape_stroke_color_set");
+    private static  void stroke_color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Shape)wrapper).SetStrokeColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_shape_stroke_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_shape_stroke_color_set_delegate efl_gfx_shape_stroke_color_set_static_delegate;
+
+
+    private delegate double efl_gfx_shape_stroke_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_shape_stroke_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_get_api_delegate> efl_gfx_shape_stroke_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_get_api_delegate>(_Module, "efl_gfx_shape_stroke_width_get");
+    private static double stroke_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Shape)wrapper).GetStrokeWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_width_get_delegate efl_gfx_shape_stroke_width_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_width_set_delegate(System.IntPtr obj, System.IntPtr pd,   double w);
+
+
+    public delegate  void efl_gfx_shape_stroke_width_set_api_delegate(System.IntPtr obj,   double w);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_set_api_delegate> efl_gfx_shape_stroke_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_set_api_delegate>(_Module, "efl_gfx_shape_stroke_width_set");
+    private static  void stroke_width_set(System.IntPtr obj, System.IntPtr pd,  double w)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetStrokeWidth( w);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w);
+      }
+   }
+   private static efl_gfx_shape_stroke_width_set_delegate efl_gfx_shape_stroke_width_set_static_delegate;
+
+
+    private delegate double efl_gfx_shape_stroke_location_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_shape_stroke_location_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_get_api_delegate> efl_gfx_shape_stroke_location_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_get_api_delegate>(_Module, "efl_gfx_shape_stroke_location_get");
+    private static double stroke_location_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_location_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Shape)wrapper).GetStrokeLocation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_location_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_location_get_delegate efl_gfx_shape_stroke_location_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_location_set_delegate(System.IntPtr obj, System.IntPtr pd,   double centered);
+
+
+    public delegate  void efl_gfx_shape_stroke_location_set_api_delegate(System.IntPtr obj,   double centered);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_set_api_delegate> efl_gfx_shape_stroke_location_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_set_api_delegate>(_Module, "efl_gfx_shape_stroke_location_set");
+    private static  void stroke_location_set(System.IntPtr obj, System.IntPtr pd,  double centered)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_location_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetStrokeLocation( centered);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_location_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  centered);
+      }
+   }
+   private static efl_gfx_shape_stroke_location_set_delegate efl_gfx_shape_stroke_location_set_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_dash_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr dash,   out  uint length);
+
+
+    public delegate  void efl_gfx_shape_stroke_dash_get_api_delegate(System.IntPtr obj,   out  System.IntPtr dash,   out  uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_get_api_delegate> efl_gfx_shape_stroke_dash_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_get_api_delegate>(_Module, "efl_gfx_shape_stroke_dash_get");
+    private static  void stroke_dash_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr dash,  out  uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_dash_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.Dash _out_dash = default(Efl.Gfx.Dash);
+      length = default( uint);                     
+         try {
+            ((Shape)wrapper).GetStrokeDash( out _out_dash,  out length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      dash = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_dash);
+                              } else {
+         efl_gfx_shape_stroke_dash_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dash,  out length);
+      }
+   }
+   private static efl_gfx_shape_stroke_dash_get_delegate efl_gfx_shape_stroke_dash_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_dash_set_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Gfx.Dash_StructInternal dash,    uint length);
+
+
+    public delegate  void efl_gfx_shape_stroke_dash_set_api_delegate(System.IntPtr obj,   ref Efl.Gfx.Dash_StructInternal dash,    uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_set_api_delegate> efl_gfx_shape_stroke_dash_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_set_api_delegate>(_Module, "efl_gfx_shape_stroke_dash_set");
+    private static  void stroke_dash_set(System.IntPtr obj, System.IntPtr pd,  ref Efl.Gfx.Dash_StructInternal dash,   uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_dash_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_dash = Efl.Gfx.Dash_StructConversion.ToManaged(dash);
+                                       
+         try {
+            ((Shape)wrapper).SetStrokeDash( ref _in_dash,  length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  dash = Efl.Gfx.Dash_StructConversion.ToInternal(_in_dash);
+                  } else {
+         efl_gfx_shape_stroke_dash_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref dash,  length);
+      }
+   }
+   private static efl_gfx_shape_stroke_dash_set_delegate efl_gfx_shape_stroke_dash_set_static_delegate;
+
+
+    private delegate Efl.Gfx.Cap efl_gfx_shape_stroke_cap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.Cap efl_gfx_shape_stroke_cap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_get_api_delegate> efl_gfx_shape_stroke_cap_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_get_api_delegate>(_Module, "efl_gfx_shape_stroke_cap_get");
+    private static Efl.Gfx.Cap stroke_cap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_cap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Cap _ret_var = default(Efl.Gfx.Cap);
+         try {
+            _ret_var = ((Shape)wrapper).GetStrokeCap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_cap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_cap_get_delegate efl_gfx_shape_stroke_cap_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_cap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.Cap c);
+
+
+    public delegate  void efl_gfx_shape_stroke_cap_set_api_delegate(System.IntPtr obj,   Efl.Gfx.Cap c);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_set_api_delegate> efl_gfx_shape_stroke_cap_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_set_api_delegate>(_Module, "efl_gfx_shape_stroke_cap_set");
+    private static  void stroke_cap_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Cap c)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_cap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetStrokeCap( c);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_cap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  c);
+      }
+   }
+   private static efl_gfx_shape_stroke_cap_set_delegate efl_gfx_shape_stroke_cap_set_static_delegate;
+
+
+    private delegate Efl.Gfx.Join efl_gfx_shape_stroke_join_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.Join efl_gfx_shape_stroke_join_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_get_api_delegate> efl_gfx_shape_stroke_join_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_get_api_delegate>(_Module, "efl_gfx_shape_stroke_join_get");
+    private static Efl.Gfx.Join stroke_join_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_join_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Join _ret_var = default(Efl.Gfx.Join);
+         try {
+            _ret_var = ((Shape)wrapper).GetStrokeJoin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_join_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_join_get_delegate efl_gfx_shape_stroke_join_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_join_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.Join j);
+
+
+    public delegate  void efl_gfx_shape_stroke_join_set_api_delegate(System.IntPtr obj,   Efl.Gfx.Join j);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_set_api_delegate> efl_gfx_shape_stroke_join_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_set_api_delegate>(_Module, "efl_gfx_shape_stroke_join_set");
+    private static  void stroke_join_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Join j)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_join_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetStrokeJoin( j);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_join_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  j);
+      }
+   }
+   private static efl_gfx_shape_stroke_join_set_delegate efl_gfx_shape_stroke_join_set_static_delegate;
+
+
+    private delegate Efl.Gfx.FillRule efl_gfx_shape_fill_rule_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.FillRule efl_gfx_shape_fill_rule_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_get_api_delegate> efl_gfx_shape_fill_rule_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_get_api_delegate>(_Module, "efl_gfx_shape_fill_rule_get");
+    private static Efl.Gfx.FillRule fill_rule_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_fill_rule_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.FillRule _ret_var = default(Efl.Gfx.FillRule);
+         try {
+            _ret_var = ((Shape)wrapper).GetFillRule();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_fill_rule_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_fill_rule_get_delegate efl_gfx_shape_fill_rule_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_fill_rule_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.FillRule fill_rule);
+
+
+    public delegate  void efl_gfx_shape_fill_rule_set_api_delegate(System.IntPtr obj,   Efl.Gfx.FillRule fill_rule);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_set_api_delegate> efl_gfx_shape_fill_rule_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_set_api_delegate>(_Module, "efl_gfx_shape_fill_rule_set");
+    private static  void fill_rule_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.FillRule fill_rule)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_fill_rule_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Shape)wrapper).SetFillRule( fill_rule);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_fill_rule_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill_rule);
+      }
+   }
+   private static efl_gfx_shape_fill_rule_set_delegate efl_gfx_shape_fill_rule_set_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_class.eo.cs b/internals/src/EflSharp/EflSharp/efl_class.eo.cs
new file mode 100755 (executable)
index 0000000..84364db
--- /dev/null
@@ -0,0 +1,132 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Abstract Efl class</summary>
+[ClassNativeInherit]
+public class Class :  Efl.Eo.IWrapper, IDisposable
+{
+   public static System.IntPtr klass = System.IntPtr.Zero;
+   public static Efl.ClassNativeInherit nativeInherit = new Efl.ClassNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public virtual System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Class))
+            return Efl.ClassNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private static readonly object klassAllocLock = new object();
+   protected bool inherited;
+   protected  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Eo)] internal static extern System.IntPtr
+      efl_class_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Class(Efl.Object parent= null
+         ) :
+      this(efl_class_class_get(), typeof(Class), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Class(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   protected Class(IntPtr base_klass, System.Type managed_type, Efl.Object parent)
+   {
+      inherited = ((object)this).GetType() != managed_type;
+      IntPtr actual_klass = base_klass;
+      if (inherited) {
+         actual_klass = Efl.Eo.ClassRegister.GetInheritKlassOrRegister(base_klass, ((object)this).GetType());
+      }
+      handle = Efl.Eo.Globals.instantiate_start(actual_klass, parent);
+      register_event_proxies();
+   }
+   protected void FinishInstantiation()
+   {
+      if (inherited) {
+         Efl.Eo.Globals.data_set(this);
+      }
+      handle = Efl.Eo.Globals.instantiate_end(handle);
+      Eina.Error.RaiseIfUnhandledException();
+   }
+   ///<summary>Destructor.</summary>
+   ~Class()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   protected virtual void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static Class static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Class(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected virtual void register_event_proxies()
+   {
+   }
+   private static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Class.efl_class_class_get();
+   }
+}
+public class ClassNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Eo);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Class.efl_class_class_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Class.efl_class_class_get();
+   }
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_composite_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_composite_model.eo.cs
new file mode 100755 (executable)
index 0000000..3532486
--- /dev/null
@@ -0,0 +1,248 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl model for all composite class which provide a unified API to set source of data.
+/// This class also provide an <see cref="Efl.Model.GetProperty"/> &quot;<c>child</c>.index&quot; that match the value of <see cref="Efl.CompositeModel.Index"/>.</summary>
+[CompositeModelNativeInherit]
+public class CompositeModel : Efl.LoopModel, Efl.Eo.IWrapper,Efl.Ui.View
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.CompositeModelNativeInherit nativeInherit = new Efl.CompositeModelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CompositeModel))
+            return Efl.CompositeModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_composite_model_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="model">Model that is/will be See <see cref="Efl.Ui.View.SetModel"/></param>
+   ///<param name="index">Position of this object in the parent model. See <see cref="Efl.CompositeModel.SetIndex"/></param>
+   public CompositeModel(Efl.Object parent
+         , Efl.Model model,  uint? index = null) :
+      base(efl_composite_model_class_get(), typeof(CompositeModel), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(model))
+         SetModel(Efl.Eo.Globals.GetParamHelper(model));
+      if (Efl.Eo.Globals.ParamHelperCheck(index))
+         SetIndex(Efl.Eo.Globals.GetParamHelper(index));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CompositeModel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected CompositeModel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static CompositeModel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CompositeModel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get the index. It will only work after the object has been finalized.</summary>
+   /// <returns>Index of the object in the parent model. The index is uniq and start from zero.</returns>
+   virtual public  uint GetIndex() {
+       var _ret_var = Efl.CompositeModelNativeInherit.efl_composite_model_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the index. It can only be set before the object is finalized, but after the Model it compose is set and only if that Model does not provide an index already.</summary>
+   /// <param name="index">Index of the object in the parent model. The index is uniq and start from zero.</param>
+   /// <returns></returns>
+   virtual public  void SetIndex(  uint index) {
+                         Efl.CompositeModelNativeInherit.efl_composite_model_index_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Model that is/will be</summary>
+   /// <returns>Efl model</returns>
+   virtual public Efl.Model GetModel() {
+       var _ret_var = Efl.Ui.ViewNativeInherit.efl_ui_view_model_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Model that is/will be</summary>
+   /// <param name="model">Efl model</param>
+   /// <returns></returns>
+   virtual public  void SetModel( Efl.Model model) {
+                         Efl.Ui.ViewNativeInherit.efl_ui_view_model_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), model);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Position of this object in the parent model.</summary>
+/// <value>Index of the object in the parent model. The index is uniq and start from zero.</value>
+   public  uint Index {
+      get { return GetIndex(); }
+      set { SetIndex( value); }
+   }
+   /// <summary>Model that is/will be</summary>
+/// <value>Efl model</value>
+   public Efl.Model Model {
+      get { return GetModel(); }
+      set { SetModel( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.CompositeModel.efl_composite_model_class_get();
+   }
+}
+public class CompositeModelNativeInherit : Efl.LoopModelNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_composite_model_index_get_static_delegate == null)
+      efl_composite_model_index_get_static_delegate = new efl_composite_model_index_get_delegate(index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_composite_model_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_model_index_get_static_delegate)});
+      if (efl_composite_model_index_set_static_delegate == null)
+      efl_composite_model_index_set_static_delegate = new efl_composite_model_index_set_delegate(index_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_composite_model_index_set"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_model_index_set_static_delegate)});
+      if (efl_ui_view_model_get_static_delegate == null)
+      efl_ui_view_model_get_static_delegate = new efl_ui_view_model_get_delegate(model_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_get_static_delegate)});
+      if (efl_ui_view_model_set_static_delegate == null)
+      efl_ui_view_model_set_static_delegate = new efl_ui_view_model_set_delegate(model_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.CompositeModel.efl_composite_model_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.CompositeModel.efl_composite_model_class_get();
+   }
+
+
+    private delegate  uint efl_composite_model_index_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_composite_model_index_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_composite_model_index_get_api_delegate> efl_composite_model_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_composite_model_index_get_api_delegate>(_Module, "efl_composite_model_index_get");
+    private static  uint index_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_composite_model_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((CompositeModel)wrapper).GetIndex();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_composite_model_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_composite_model_index_get_delegate efl_composite_model_index_get_static_delegate;
+
+
+    private delegate  void efl_composite_model_index_set_delegate(System.IntPtr obj, System.IntPtr pd,    uint index);
+
+
+    public delegate  void efl_composite_model_index_set_api_delegate(System.IntPtr obj,    uint index);
+    public static Efl.Eo.FunctionWrapper<efl_composite_model_index_set_api_delegate> efl_composite_model_index_set_ptr = new Efl.Eo.FunctionWrapper<efl_composite_model_index_set_api_delegate>(_Module, "efl_composite_model_index_set");
+    private static  void index_set(System.IntPtr obj, System.IntPtr pd,   uint index)
+   {
+      Eina.Log.Debug("function efl_composite_model_index_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CompositeModel)wrapper).SetIndex( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_composite_model_index_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_composite_model_index_set_delegate efl_composite_model_index_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Model efl_ui_view_model_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Model efl_ui_view_model_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate> efl_ui_view_model_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate>(_Module, "efl_ui_view_model_get");
+    private static Efl.Model model_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Model _ret_var = default(Efl.Model);
+         try {
+            _ret_var = ((CompositeModel)wrapper).GetModel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_view_model_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_view_model_get_delegate efl_ui_view_model_get_static_delegate;
+
+
+    private delegate  void efl_ui_view_model_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+
+
+    public delegate  void efl_ui_view_model_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate> efl_ui_view_model_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate>(_Module, "efl_ui_view_model_set");
+    private static  void model_set(System.IntPtr obj, System.IntPtr pd,  Efl.Model model)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CompositeModel)wrapper).SetModel( model);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_view_model_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  model);
+      }
+   }
+   private static efl_ui_view_model_set_delegate efl_ui_view_model_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_config.eo.cs b/internals/src/EflSharp/EflSharp/efl_config.eo.cs
new file mode 100755 (executable)
index 0000000..f25f12a
--- /dev/null
@@ -0,0 +1,188 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>A generic configuration interface, that holds key-value pairs.</summary>
+[ConfigNativeInherit]
+public interface Config : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>A generic configuration value, referred to by name.</summary>
+/// <param name="name">Configuration option name.</param>
+/// <returns>The value. It will be empty if it doesn&apos;t exist. The caller must free it after use (using <c>eina_value_free</c>() in C).</returns>
+ Eina.Value GetConfig(  System.String name);
+   /// <summary>A generic configuration value, referred to by name.</summary>
+/// <param name="name">Configuration option name.</param>
+/// <param name="value">Configuration option value. May be <c>null</c> if not found.</param>
+/// <returns><c>false</c> in case of error: value type was invalid, the config can&apos;t be changed, config does not exist...</returns>
+bool SetConfig(  System.String name,   Eina.Value value);
+      }
+/// <summary>A generic configuration interface, that holds key-value pairs.</summary>
+sealed public class ConfigConcrete : 
+
+Config
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ConfigConcrete))
+            return Efl.ConfigNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_config_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ConfigConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ConfigConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ConfigConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ConfigConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>A generic configuration value, referred to by name.</summary>
+   /// <param name="name">Configuration option name.</param>
+   /// <returns>The value. It will be empty if it doesn&apos;t exist. The caller must free it after use (using <c>eina_value_free</c>() in C).</returns>
+   public  Eina.Value GetConfig(  System.String name) {
+                         var _ret_var = Efl.ConfigNativeInherit.efl_config_get_ptr.Value.Delegate(this.NativeHandle, name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>A generic configuration value, referred to by name.</summary>
+   /// <param name="name">Configuration option name.</param>
+   /// <param name="value">Configuration option value. May be <c>null</c> if not found.</param>
+   /// <returns><c>false</c> in case of error: value type was invalid, the config can&apos;t be changed, config does not exist...</returns>
+   public bool SetConfig(  System.String name,   Eina.Value value) {
+                                           var _ret_var = Efl.ConfigNativeInherit.efl_config_set_ptr.Value.Delegate(this.NativeHandle, name,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+}
+public class ConfigNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_config_get_static_delegate == null)
+      efl_config_get_static_delegate = new efl_config_get_delegate(config_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_get"), func = Marshal.GetFunctionPointerForDelegate(efl_config_get_static_delegate)});
+      if (efl_config_set_static_delegate == null)
+      efl_config_set_static_delegate = new efl_config_set_delegate(config_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_set"), func = Marshal.GetFunctionPointerForDelegate(efl_config_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ConfigConcrete.efl_config_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ConfigConcrete.efl_config_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))] private delegate  Eina.Value efl_config_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))] public delegate  Eina.Value efl_config_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_config_get_api_delegate> efl_config_get_ptr = new Efl.Eo.FunctionWrapper<efl_config_get_api_delegate>(_Module, "efl_config_get");
+    private static  Eina.Value config_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_config_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = ((Config)wrapper).GetConfig( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_config_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_config_get_delegate efl_config_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_config_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_config_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+    public static Efl.Eo.FunctionWrapper<efl_config_set_api_delegate> efl_config_set_ptr = new Efl.Eo.FunctionWrapper<efl_config_set_api_delegate>(_Module, "efl_config_set");
+    private static bool config_set(System.IntPtr obj, System.IntPtr pd,   System.String name,   Eina.Value value)
+   {
+      Eina.Log.Debug("function efl_config_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Config)wrapper).SetConfig( name,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_config_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  value);
+      }
+   }
+   private static efl_config_set_delegate efl_config_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_config_global.eo.cs b/internals/src/EflSharp/EflSharp/efl_config_global.eo.cs
new file mode 100755 (executable)
index 0000000..f437aff
--- /dev/null
@@ -0,0 +1,475 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>This class is a singleton representing the global configuration for the running application.</summary>
+[ConfigGlobalNativeInherit]
+public class ConfigGlobal : Efl.Object, Efl.Eo.IWrapper,Efl.Config
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.ConfigGlobalNativeInherit nativeInherit = new Efl.ConfigGlobalNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ConfigGlobal))
+            return Efl.ConfigGlobalNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_config_global_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ConfigGlobal(Efl.Object parent= null
+         ) :
+      base(efl_config_global_class_get(), typeof(ConfigGlobal), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ConfigGlobal(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ConfigGlobal(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ConfigGlobal static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ConfigGlobal(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The profile for the running application.
+   /// Profiles are pre-set options that affect the whole look-and-feel of Elementary-based applications. There are, for example, profiles aimed at desktop computer applications and others aimed at mobile, touchscreen-based ones. You most probably don&apos;t want to use the functions in this group unless you&apos;re writing an elementary configuration manager.
+   /// 
+   /// This gets or sets the global profile that is applied to all Elementary applications.</summary>
+   /// <returns>Profile name</returns>
+   virtual public  System.String GetProfile() {
+       var _ret_var = Efl.ConfigGlobalNativeInherit.efl_config_profile_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The profile for the running application.
+   /// Profiles are pre-set options that affect the whole look-and-feel of Elementary-based applications. There are, for example, profiles aimed at desktop computer applications and others aimed at mobile, touchscreen-based ones. You most probably don&apos;t want to use the functions in this group unless you&apos;re writing an elementary configuration manager.
+   /// 
+   /// This gets or sets the global profile that is applied to all Elementary applications.</summary>
+   /// <param name="profile">Profile name</param>
+   /// <returns></returns>
+   virtual public  void SetProfile(  System.String profile) {
+                         Efl.ConfigGlobalNativeInherit.efl_config_profile_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), profile);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Saves Elementary configuration to disk.
+   /// This function will take effect (does I/O) immediately. Use it when you want to save all configuration changes at once. The current configuration set will get saved onto the current profile configuration file.
+   /// 
+   /// If <c>profile</c> is <c>null</c>, this will flush all settings to all applications running on the same profile.
+   /// 
+   /// If <c>profile</c> is not <c>null</c>, this will take the current in-memory config and write it out to the named <c>profile</c>. This will not change profile for the application or make other processes switch profile.</summary>
+   /// <param name="profile">The profile name.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool Save(  System.String profile) {
+                         var _ret_var = Efl.ConfigGlobalNativeInherit.efl_config_save_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), profile);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the list of available profiles.</summary>
+   /// <param name="hidden">If <c>true</c>, gets the full list of profiles, including those stored in hidden files.</param>
+   /// <returns>Iterator to profiles</returns>
+   virtual public Eina.Iterator< System.String> ProfileIterate( bool hidden) {
+                         var _ret_var = Efl.ConfigGlobalNativeInherit.efl_config_profile_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hidden);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator< System.String>(_ret_var, true, false);
+ }
+   /// <summary>Returns whether a profile exists or not.</summary>
+   /// <param name="profile">Profile name</param>
+   /// <returns><c>true</c> if profile exists, <c>false</c> otherwise</returns>
+   virtual public bool ProfileExists(  System.String profile) {
+                         var _ret_var = Efl.ConfigGlobalNativeInherit.efl_config_profile_exists_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), profile);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the directory where a profile is stored.</summary>
+   /// <param name="profile">Profile name</param>
+   /// <param name="is_user"><c>true</c> to lookup for a user profile or <c>false</c> for a system one.</param>
+   /// <returns>Directory of the profile, free after use.</returns>
+   virtual public  System.String GetProfileDir(  System.String profile,  bool is_user) {
+                                           var _ret_var = Efl.ConfigGlobalNativeInherit.efl_config_profile_dir_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), profile,  is_user);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Add a new profile of the given name to be derived from the current profile.
+   /// This creates a new profile of name <c>profile</c> that will be derived from the currently used profile using the modification commands encoded in the <c>options</c> string.
+   /// 
+   /// At this point it is not expected that anyone would generally use this API except if you are a desktop environment and so the user base of this API will be enlightenment itself.
+   /// 1.17</summary>
+   /// <param name="profile">The new profile&apos;s name.</param>
+   /// <param name="options">Derive options detailing how to modify.</param>
+   /// <returns></returns>
+   virtual public  void AddProfileDerived(  System.String profile,   System.String options) {
+                                           Efl.ConfigGlobalNativeInherit.efl_config_profile_derived_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), profile,  options);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Deletes a profile that is derived from the current one.
+   /// This deletes a derived profile added by <see cref="Efl.ConfigGlobal.AddProfileDerived"/>. This will delete the profile of the given name <c>profile</c> that is derived from the current profile.
+   /// 
+   /// At this point it is not expected that anyone would generally use this API except if you are a desktop environment and so the user base of this API will be enlightenment itself.
+   /// 1.17</summary>
+   /// <param name="profile">The name of the profile that is to be deleted.</param>
+   /// <returns></returns>
+   virtual public  void DelProfileDerived(  System.String profile) {
+                         Efl.ConfigGlobalNativeInherit.efl_config_profile_derived_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), profile);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A generic configuration value, referred to by name.</summary>
+   /// <param name="name">Configuration option name.</param>
+   /// <returns>The value. It will be empty if it doesn&apos;t exist. The caller must free it after use (using <c>eina_value_free</c>() in C).</returns>
+   virtual public  Eina.Value GetConfig(  System.String name) {
+                         var _ret_var = Efl.ConfigNativeInherit.efl_config_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>A generic configuration value, referred to by name.</summary>
+   /// <param name="name">Configuration option name.</param>
+   /// <param name="value">Configuration option value. May be <c>null</c> if not found.</param>
+   /// <returns><c>false</c> in case of error: value type was invalid, the config can&apos;t be changed, config does not exist...</returns>
+   virtual public bool SetConfig(  System.String name,   Eina.Value value) {
+                                           var _ret_var = Efl.ConfigNativeInherit.efl_config_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>The profile for the running application.
+/// Profiles are pre-set options that affect the whole look-and-feel of Elementary-based applications. There are, for example, profiles aimed at desktop computer applications and others aimed at mobile, touchscreen-based ones. You most probably don&apos;t want to use the functions in this group unless you&apos;re writing an elementary configuration manager.
+/// 
+/// This gets or sets the global profile that is applied to all Elementary applications.</summary>
+/// <value>Profile name</value>
+   public  System.String Profile {
+      get { return GetProfile(); }
+      set { SetProfile( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.ConfigGlobal.efl_config_global_class_get();
+   }
+}
+public class ConfigGlobalNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_config_profile_get_static_delegate == null)
+      efl_config_profile_get_static_delegate = new efl_config_profile_get_delegate(profile_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_profile_get"), func = Marshal.GetFunctionPointerForDelegate(efl_config_profile_get_static_delegate)});
+      if (efl_config_profile_set_static_delegate == null)
+      efl_config_profile_set_static_delegate = new efl_config_profile_set_delegate(profile_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_profile_set"), func = Marshal.GetFunctionPointerForDelegate(efl_config_profile_set_static_delegate)});
+      if (efl_config_save_static_delegate == null)
+      efl_config_save_static_delegate = new efl_config_save_delegate(save);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_save"), func = Marshal.GetFunctionPointerForDelegate(efl_config_save_static_delegate)});
+      if (efl_config_profile_iterate_static_delegate == null)
+      efl_config_profile_iterate_static_delegate = new efl_config_profile_iterate_delegate(profile_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_profile_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_config_profile_iterate_static_delegate)});
+      if (efl_config_profile_exists_static_delegate == null)
+      efl_config_profile_exists_static_delegate = new efl_config_profile_exists_delegate(profile_exists);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_profile_exists"), func = Marshal.GetFunctionPointerForDelegate(efl_config_profile_exists_static_delegate)});
+      if (efl_config_profile_dir_get_static_delegate == null)
+      efl_config_profile_dir_get_static_delegate = new efl_config_profile_dir_get_delegate(profile_dir_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_profile_dir_get"), func = Marshal.GetFunctionPointerForDelegate(efl_config_profile_dir_get_static_delegate)});
+      if (efl_config_profile_derived_add_static_delegate == null)
+      efl_config_profile_derived_add_static_delegate = new efl_config_profile_derived_add_delegate(profile_derived_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_profile_derived_add"), func = Marshal.GetFunctionPointerForDelegate(efl_config_profile_derived_add_static_delegate)});
+      if (efl_config_profile_derived_del_static_delegate == null)
+      efl_config_profile_derived_del_static_delegate = new efl_config_profile_derived_del_delegate(profile_derived_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_profile_derived_del"), func = Marshal.GetFunctionPointerForDelegate(efl_config_profile_derived_del_static_delegate)});
+      if (efl_config_get_static_delegate == null)
+      efl_config_get_static_delegate = new efl_config_get_delegate(config_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_get"), func = Marshal.GetFunctionPointerForDelegate(efl_config_get_static_delegate)});
+      if (efl_config_set_static_delegate == null)
+      efl_config_set_static_delegate = new efl_config_set_delegate(config_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_set"), func = Marshal.GetFunctionPointerForDelegate(efl_config_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ConfigGlobal.efl_config_global_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.ConfigGlobal.efl_config_global_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_config_profile_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_config_profile_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_config_profile_get_api_delegate> efl_config_profile_get_ptr = new Efl.Eo.FunctionWrapper<efl_config_profile_get_api_delegate>(_Module, "efl_config_profile_get");
+    private static  System.String profile_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_config_profile_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ConfigGlobal)wrapper).GetProfile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_config_profile_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_config_profile_get_delegate efl_config_profile_get_static_delegate;
+
+
+    private delegate  void efl_config_profile_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+
+
+    public delegate  void efl_config_profile_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+    public static Efl.Eo.FunctionWrapper<efl_config_profile_set_api_delegate> efl_config_profile_set_ptr = new Efl.Eo.FunctionWrapper<efl_config_profile_set_api_delegate>(_Module, "efl_config_profile_set");
+    private static  void profile_set(System.IntPtr obj, System.IntPtr pd,   System.String profile)
+   {
+      Eina.Log.Debug("function efl_config_profile_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ConfigGlobal)wrapper).SetProfile( profile);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_config_profile_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  profile);
+      }
+   }
+   private static efl_config_profile_set_delegate efl_config_profile_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_config_save_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_config_save_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+    public static Efl.Eo.FunctionWrapper<efl_config_save_api_delegate> efl_config_save_ptr = new Efl.Eo.FunctionWrapper<efl_config_save_api_delegate>(_Module, "efl_config_save");
+    private static bool save(System.IntPtr obj, System.IntPtr pd,   System.String profile)
+   {
+      Eina.Log.Debug("function efl_config_save was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ConfigGlobal)wrapper).Save( profile);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_config_save_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  profile);
+      }
+   }
+   private static efl_config_save_delegate efl_config_save_static_delegate;
+
+
+    private delegate  System.IntPtr efl_config_profile_iterate_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hidden);
+
+
+    public delegate  System.IntPtr efl_config_profile_iterate_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hidden);
+    public static Efl.Eo.FunctionWrapper<efl_config_profile_iterate_api_delegate> efl_config_profile_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_config_profile_iterate_api_delegate>(_Module, "efl_config_profile_iterate");
+    private static  System.IntPtr profile_iterate(System.IntPtr obj, System.IntPtr pd,  bool hidden)
+   {
+      Eina.Log.Debug("function efl_config_profile_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Iterator< System.String> _ret_var = default(Eina.Iterator< System.String>);
+         try {
+            _ret_var = ((ConfigGlobal)wrapper).ProfileIterate( hidden);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_config_profile_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hidden);
+      }
+   }
+   private static efl_config_profile_iterate_delegate efl_config_profile_iterate_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_config_profile_exists_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_config_profile_exists_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+    public static Efl.Eo.FunctionWrapper<efl_config_profile_exists_api_delegate> efl_config_profile_exists_ptr = new Efl.Eo.FunctionWrapper<efl_config_profile_exists_api_delegate>(_Module, "efl_config_profile_exists");
+    private static bool profile_exists(System.IntPtr obj, System.IntPtr pd,   System.String profile)
+   {
+      Eina.Log.Debug("function efl_config_profile_exists was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ConfigGlobal)wrapper).ProfileExists( profile);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_config_profile_exists_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  profile);
+      }
+   }
+   private static efl_config_profile_exists_delegate efl_config_profile_exists_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringsharePassOwnershipMarshaler))] private delegate  System.String efl_config_profile_dir_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile,  [MarshalAs(UnmanagedType.U1)]  bool is_user);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringsharePassOwnershipMarshaler))] public delegate  System.String efl_config_profile_dir_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile,  [MarshalAs(UnmanagedType.U1)]  bool is_user);
+    public static Efl.Eo.FunctionWrapper<efl_config_profile_dir_get_api_delegate> efl_config_profile_dir_get_ptr = new Efl.Eo.FunctionWrapper<efl_config_profile_dir_get_api_delegate>(_Module, "efl_config_profile_dir_get");
+    private static  System.String profile_dir_get(System.IntPtr obj, System.IntPtr pd,   System.String profile,  bool is_user)
+   {
+      Eina.Log.Debug("function efl_config_profile_dir_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ConfigGlobal)wrapper).GetProfileDir( profile,  is_user);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_config_profile_dir_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  profile,  is_user);
+      }
+   }
+   private static efl_config_profile_dir_get_delegate efl_config_profile_dir_get_static_delegate;
+
+
+    private delegate  void efl_config_profile_derived_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String options);
+
+
+    public delegate  void efl_config_profile_derived_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String options);
+    public static Efl.Eo.FunctionWrapper<efl_config_profile_derived_add_api_delegate> efl_config_profile_derived_add_ptr = new Efl.Eo.FunctionWrapper<efl_config_profile_derived_add_api_delegate>(_Module, "efl_config_profile_derived_add");
+    private static  void profile_derived_add(System.IntPtr obj, System.IntPtr pd,   System.String profile,   System.String options)
+   {
+      Eina.Log.Debug("function efl_config_profile_derived_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ConfigGlobal)wrapper).AddProfileDerived( profile,  options);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_config_profile_derived_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  profile,  options);
+      }
+   }
+   private static efl_config_profile_derived_add_delegate efl_config_profile_derived_add_static_delegate;
+
+
+    private delegate  void efl_config_profile_derived_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+
+
+    public delegate  void efl_config_profile_derived_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String profile);
+    public static Efl.Eo.FunctionWrapper<efl_config_profile_derived_del_api_delegate> efl_config_profile_derived_del_ptr = new Efl.Eo.FunctionWrapper<efl_config_profile_derived_del_api_delegate>(_Module, "efl_config_profile_derived_del");
+    private static  void profile_derived_del(System.IntPtr obj, System.IntPtr pd,   System.String profile)
+   {
+      Eina.Log.Debug("function efl_config_profile_derived_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ConfigGlobal)wrapper).DelProfileDerived( profile);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_config_profile_derived_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  profile);
+      }
+   }
+   private static efl_config_profile_derived_del_delegate efl_config_profile_derived_del_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))] private delegate  Eina.Value efl_config_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))] public delegate  Eina.Value efl_config_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_config_get_api_delegate> efl_config_get_ptr = new Efl.Eo.FunctionWrapper<efl_config_get_api_delegate>(_Module, "efl_config_get");
+    private static  Eina.Value config_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_config_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = ((ConfigGlobal)wrapper).GetConfig( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_config_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_config_get_delegate efl_config_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_config_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_config_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+    public static Efl.Eo.FunctionWrapper<efl_config_set_api_delegate> efl_config_set_ptr = new Efl.Eo.FunctionWrapper<efl_config_set_api_delegate>(_Module, "efl_config_set");
+    private static bool config_set(System.IntPtr obj, System.IntPtr pd,   System.String name,   Eina.Value value)
+   {
+      Eina.Log.Debug("function efl_config_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ConfigGlobal)wrapper).SetConfig( name,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_config_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  value);
+      }
+   }
+   private static efl_config_set_delegate efl_config_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_container.eo.cs b/internals/src/EflSharp/EflSharp/efl_container.eo.cs
new file mode 100755 (executable)
index 0000000..c590ca7
--- /dev/null
@@ -0,0 +1,336 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Common interface for objects that have multiple contents (sub objects).
+/// APIs in this interface deal with containers of multiple sub objects, not with individual parts.</summary>
+[ContainerNativeInherit]
+public interface Container : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+/// <returns>Iterator to object content</returns>
+Eina.Iterator<Efl.Gfx.Entity> ContentIterate();
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+/// <returns>Number of packed UI elements</returns>
+ int ContentCount();
+         /// <summary>Sent after a new item was added.</summary>
+   event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt;
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt;
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Container.ContentAddedEvt"/>.</summary>
+public class ContainerContentAddedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Gfx.Entity arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Container.ContentRemovedEvt"/>.</summary>
+public class ContainerContentRemovedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Gfx.Entity arg { get; set; }
+}
+/// <summary>Common interface for objects that have multiple contents (sub objects).
+/// APIs in this interface deal with containers of multiple sub objects, not with individual parts.</summary>
+sealed public class ContainerConcrete : 
+
+Container
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ContainerConcrete))
+            return Efl.ContainerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_container_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ContainerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ContainerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ContainerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ContainerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+}
+public class ContainerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ContainerConcrete.efl_container_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ContainerConcrete.efl_container_interface_get();
+   }
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Container)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Container)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_container_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_container_model.eo.cs
new file mode 100755 (executable)
index 0000000..00ac8e7
--- /dev/null
@@ -0,0 +1,184 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Class used to create data models from Eina containers.
+/// Each container supplied represents a series of property values, each item being the property value for a child object.
+/// 
+/// The data in the given containers are copied and stored internally.
+/// 
+/// Several containers can be supplied and the number of allocated children is based on the container of the largest size.</summary>
+[ContainerModelNativeInherit]
+public class ContainerModel : Efl.CompositeModel, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.ContainerModelNativeInherit nativeInherit = new Efl.ContainerModelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ContainerModel))
+            return Efl.ContainerModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_container_model_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="model">Model that is/will be See <see cref="Efl.Ui.View.SetModel"/></param>
+   ///<param name="index">Position of this object in the parent model. See <see cref="Efl.CompositeModel.SetIndex"/></param>
+   public ContainerModel(Efl.Object parent
+         , Efl.Model model,  uint? index = null) :
+      base(efl_container_model_class_get(), typeof(ContainerModel), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(model))
+         SetModel(Efl.Eo.Globals.GetParamHelper(model));
+      if (Efl.Eo.Globals.ParamHelperCheck(index))
+         SetIndex(Efl.Eo.Globals.GetParamHelper(index));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ContainerModel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ContainerModel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ContainerModel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ContainerModel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Gets the type of the given property.</summary>
+   /// <param name="name">Property name</param>
+   /// <returns>Property type</returns>
+   virtual public Eina.ValueType GetChildPropertyValueType(  System.String name) {
+                         var _ret_var = Efl.ContainerModelNativeInherit.efl_container_model_child_property_value_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds the given property to child objects and supply the values.
+   /// Each item will represent the value of the given property in the respective child within the data model.
+   /// 
+   /// New children objects are allocated as necessary.
+   /// 
+   /// Value type is required for compatibility with the <see cref="Efl.Model"/> API.</summary>
+   /// <param name="name">Property name</param>
+   /// <param name="type">Property type</param>
+   /// <param name="values">Values to be added</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool AddChildProperty(  System.String name,  Eina.ValueType type,  Eina.Iterator< System.IntPtr> values) {
+                   var _in_values = values.Handle;
+values.Own = false;
+                                          var _ret_var = Efl.ContainerModelNativeInherit.efl_container_model_child_property_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  type,  _in_values);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.ContainerModel.efl_container_model_class_get();
+   }
+}
+public class ContainerModelNativeInherit : Efl.CompositeModelNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_container_model_child_property_value_type_get_static_delegate == null)
+      efl_container_model_child_property_value_type_get_static_delegate = new efl_container_model_child_property_value_type_get_delegate(child_property_value_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_container_model_child_property_value_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_container_model_child_property_value_type_get_static_delegate)});
+      if (efl_container_model_child_property_add_static_delegate == null)
+      efl_container_model_child_property_add_static_delegate = new efl_container_model_child_property_add_delegate(child_property_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_container_model_child_property_add"), func = Marshal.GetFunctionPointerForDelegate(efl_container_model_child_property_add_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ContainerModel.efl_container_model_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.ContainerModel.efl_container_model_class_get();
+   }
+
+
+    private delegate Eina.ValueType efl_container_model_child_property_value_type_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate Eina.ValueType efl_container_model_child_property_value_type_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_container_model_child_property_value_type_get_api_delegate> efl_container_model_child_property_value_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_container_model_child_property_value_type_get_api_delegate>(_Module, "efl_container_model_child_property_value_type_get");
+    private static Eina.ValueType child_property_value_type_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_container_model_child_property_value_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.ValueType _ret_var = default(Eina.ValueType);
+         try {
+            _ret_var = ((ContainerModel)wrapper).GetChildPropertyValueType( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_container_model_child_property_value_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_container_model_child_property_value_type_get_delegate efl_container_model_child_property_value_type_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_container_model_child_property_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,   Eina.ValueType type,    System.IntPtr values);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_container_model_child_property_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,   Eina.ValueType type,    System.IntPtr values);
+    public static Efl.Eo.FunctionWrapper<efl_container_model_child_property_add_api_delegate> efl_container_model_child_property_add_ptr = new Efl.Eo.FunctionWrapper<efl_container_model_child_property_add_api_delegate>(_Module, "efl_container_model_child_property_add");
+    private static bool child_property_add(System.IntPtr obj, System.IntPtr pd,   System.String name,  Eina.ValueType type,   System.IntPtr values)
+   {
+      Eina.Log.Debug("function efl_container_model_child_property_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           var _in_values = new Eina.Iterator< System.IntPtr>(values, true, false);
+                                             bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ContainerModel)wrapper).AddChildProperty( name,  type,  _in_values);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_container_model_child_property_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  type,  values);
+      }
+   }
+   private static efl_container_model_child_property_add_delegate efl_container_model_child_property_add_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_content.eo.cs b/internals/src/EflSharp/EflSharp/efl_content.eo.cs
new file mode 100755 (executable)
index 0000000..9178713
--- /dev/null
@@ -0,0 +1,335 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Common interface for objects that have a (single) content.
+/// This is used for the default content part of widgets, as well as for individual parts through <see cref="Efl.Part"/>.</summary>
+[ContentNativeInherit]
+public interface Content : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <returns>The object to swallow.</returns>
+Efl.Gfx.Entity GetContent();
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <param name="content">The object to swallow.</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool SetContent( Efl.Gfx.Entity content);
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+/// <returns>Unswallowed object</returns>
+Efl.Gfx.Entity UnsetContent();
+            /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt;
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   Efl.Gfx.Entity Content {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Content.ContentChangedEvt"/>.</summary>
+public class ContentContentChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Gfx.Entity arg { get; set; }
+}
+/// <summary>Common interface for objects that have a (single) content.
+/// This is used for the default content part of widgets, as well as for individual parts through <see cref="Efl.Part"/>.</summary>
+sealed public class ContentConcrete : 
+
+Content
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ContentConcrete))
+            return Efl.ContentNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_content_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ContentConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ContentConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ContentConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ContentConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate(this.NativeHandle, content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+}
+public class ContentNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ContentConcrete.efl_content_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ContentConcrete.efl_content_interface_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Content)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Content)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Content)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_control.eo.cs b/internals/src/EflSharp/EflSharp/efl_control.eo.cs
new file mode 100755 (executable)
index 0000000..1cfd490
--- /dev/null
@@ -0,0 +1,282 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl control interface</summary>
+[ControlNativeInherit]
+public interface Control : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Control the priority of the object.</summary>
+/// <returns>The priority of the object</returns>
+ int GetPriority();
+   /// <summary>Control the priority of the object.</summary>
+/// <param name="priority">The priority of the object</param>
+/// <returns></returns>
+ void SetPriority(  int priority);
+   /// <summary>Controls whether the object is suspended or not.</summary>
+/// <returns>Controls whether the object is suspended or not.</returns>
+bool GetSuspend();
+   /// <summary>Controls whether the object is suspended or not.</summary>
+/// <param name="suspend">Controls whether the object is suspended or not.</param>
+/// <returns></returns>
+ void SetSuspend( bool suspend);
+               /// <summary>Control the priority of the object.</summary>
+/// <value>The priority of the object</value>
+    int Priority {
+      get ;
+      set ;
+   }
+   /// <summary>Controls whether the object is suspended or not.</summary>
+/// <value>Controls whether the object is suspended or not.</value>
+   bool Suspend {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl control interface</summary>
+sealed public class ControlConcrete : 
+
+Control
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ControlConcrete))
+            return Efl.ControlNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_control_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ControlConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ControlConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ControlConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ControlConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Control the priority of the object.</summary>
+   /// <returns>The priority of the object</returns>
+   public  int GetPriority() {
+       var _ret_var = Efl.ControlNativeInherit.efl_control_priority_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the priority of the object.</summary>
+   /// <param name="priority">The priority of the object</param>
+   /// <returns></returns>
+   public  void SetPriority(  int priority) {
+                         Efl.ControlNativeInherit.efl_control_priority_set_ptr.Value.Delegate(this.NativeHandle, priority);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls whether the object is suspended or not.</summary>
+   /// <returns>Controls whether the object is suspended or not.</returns>
+   public bool GetSuspend() {
+       var _ret_var = Efl.ControlNativeInherit.efl_control_suspend_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Controls whether the object is suspended or not.</summary>
+   /// <param name="suspend">Controls whether the object is suspended or not.</param>
+   /// <returns></returns>
+   public  void SetSuspend( bool suspend) {
+                         Efl.ControlNativeInherit.efl_control_suspend_set_ptr.Value.Delegate(this.NativeHandle, suspend);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the priority of the object.</summary>
+/// <value>The priority of the object</value>
+   public  int Priority {
+      get { return GetPriority(); }
+      set { SetPriority( value); }
+   }
+   /// <summary>Controls whether the object is suspended or not.</summary>
+/// <value>Controls whether the object is suspended or not.</value>
+   public bool Suspend {
+      get { return GetSuspend(); }
+      set { SetSuspend( value); }
+   }
+}
+public class ControlNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_control_priority_get_static_delegate == null)
+      efl_control_priority_get_static_delegate = new efl_control_priority_get_delegate(priority_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_control_priority_get"), func = Marshal.GetFunctionPointerForDelegate(efl_control_priority_get_static_delegate)});
+      if (efl_control_priority_set_static_delegate == null)
+      efl_control_priority_set_static_delegate = new efl_control_priority_set_delegate(priority_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_control_priority_set"), func = Marshal.GetFunctionPointerForDelegate(efl_control_priority_set_static_delegate)});
+      if (efl_control_suspend_get_static_delegate == null)
+      efl_control_suspend_get_static_delegate = new efl_control_suspend_get_delegate(suspend_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_control_suspend_get"), func = Marshal.GetFunctionPointerForDelegate(efl_control_suspend_get_static_delegate)});
+      if (efl_control_suspend_set_static_delegate == null)
+      efl_control_suspend_set_static_delegate = new efl_control_suspend_set_delegate(suspend_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_control_suspend_set"), func = Marshal.GetFunctionPointerForDelegate(efl_control_suspend_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ControlConcrete.efl_control_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ControlConcrete.efl_control_interface_get();
+   }
+
+
+    private delegate  int efl_control_priority_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_control_priority_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_control_priority_get_api_delegate> efl_control_priority_get_ptr = new Efl.Eo.FunctionWrapper<efl_control_priority_get_api_delegate>(_Module, "efl_control_priority_get");
+    private static  int priority_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_control_priority_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Control)wrapper).GetPriority();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_control_priority_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_control_priority_get_delegate efl_control_priority_get_static_delegate;
+
+
+    private delegate  void efl_control_priority_set_delegate(System.IntPtr obj, System.IntPtr pd,    int priority);
+
+
+    public delegate  void efl_control_priority_set_api_delegate(System.IntPtr obj,    int priority);
+    public static Efl.Eo.FunctionWrapper<efl_control_priority_set_api_delegate> efl_control_priority_set_ptr = new Efl.Eo.FunctionWrapper<efl_control_priority_set_api_delegate>(_Module, "efl_control_priority_set");
+    private static  void priority_set(System.IntPtr obj, System.IntPtr pd,   int priority)
+   {
+      Eina.Log.Debug("function efl_control_priority_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Control)wrapper).SetPriority( priority);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_control_priority_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  priority);
+      }
+   }
+   private static efl_control_priority_set_delegate efl_control_priority_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_control_suspend_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_control_suspend_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_control_suspend_get_api_delegate> efl_control_suspend_get_ptr = new Efl.Eo.FunctionWrapper<efl_control_suspend_get_api_delegate>(_Module, "efl_control_suspend_get");
+    private static bool suspend_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_control_suspend_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Control)wrapper).GetSuspend();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_control_suspend_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_control_suspend_get_delegate efl_control_suspend_get_static_delegate;
+
+
+    private delegate  void efl_control_suspend_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool suspend);
+
+
+    public delegate  void efl_control_suspend_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool suspend);
+    public static Efl.Eo.FunctionWrapper<efl_control_suspend_set_api_delegate> efl_control_suspend_set_ptr = new Efl.Eo.FunctionWrapper<efl_control_suspend_set_api_delegate>(_Module, "efl_control_suspend_set");
+    private static  void suspend_set(System.IntPtr obj, System.IntPtr pd,  bool suspend)
+   {
+      Eina.Log.Debug("function efl_control_suspend_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Control)wrapper).SetSuspend( suspend);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_control_suspend_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  suspend);
+      }
+   }
+   private static efl_control_suspend_set_delegate efl_control_suspend_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_core_command_line.eo.cs b/internals/src/EflSharp/EflSharp/efl_core_command_line.eo.cs
new file mode 100755 (executable)
index 0000000..36d0b03
--- /dev/null
@@ -0,0 +1,334 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Core { 
+/// <summary>A mixin that implements standard functions for command lines.
+/// This object parses the command line that gets passed, later the object can be accessed via accessor or the string directly.</summary>
+[CommandLineNativeInherit]
+public interface CommandLine : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+/// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+/// 
+/// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+/// 
+/// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+/// 
+/// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+/// <returns></returns>
+ System.String GetCommand();
+   /// <summary>Use an array to fill this object
+/// Every element of a string is a argument.</summary>
+/// <param name="array">An array where every array field is an argument</param>
+/// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+bool SetCommandArray( Eina.Array< System.String> array);
+   /// <summary>Use a string to fill this object
+/// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+/// <param name="str">A command in form of a string</param>
+/// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+bool SetCommandString(  System.String str);
+   /// <summary>Get the accessor which enables access to each argument that got passed to this object.</summary>
+/// <returns></returns>
+Eina.Accessor< System.String> CommandAccess();
+               /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+/// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+/// 
+/// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+/// 
+/// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+/// 
+/// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+/// <value></value>
+    System.String Command {
+      get ;
+   }
+   /// <summary>Use an array to fill this object
+/// Every element of a string is a argument.</summary>
+/// <value>An array where every array field is an argument</value>
+   Eina.Array< System.String> CommandArray {
+      set ;
+   }
+   /// <summary>Use a string to fill this object
+/// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+/// <value>A command in form of a string</value>
+    System.String CommandString {
+      set ;
+   }
+}
+/// <summary>A mixin that implements standard functions for command lines.
+/// This object parses the command line that gets passed, later the object can be accessed via accessor or the string directly.</summary>
+sealed public class CommandLineConcrete : 
+
+CommandLine
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CommandLineConcrete))
+            return Efl.Core.CommandLineNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_core_command_line_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CommandLineConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~CommandLineConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static CommandLineConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CommandLineConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+   /// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+   /// 
+   /// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+   /// 
+   /// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+   /// 
+   /// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+   /// <returns></returns>
+   public  System.String GetCommand() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Use an array to fill this object
+   /// Every element of a string is a argument.</summary>
+   /// <param name="array">An array where every array field is an argument</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   public bool SetCommandArray( Eina.Array< System.String> array) {
+       var _in_array = array.Handle;
+array.Own = false;
+array.OwnContent = false;
+                  var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_array_set_ptr.Value.Delegate(this.NativeHandle, _in_array);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Use a string to fill this object
+   /// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+   /// <param name="str">A command in form of a string</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   public bool SetCommandString(  System.String str) {
+                         var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_string_set_ptr.Value.Delegate(this.NativeHandle, str);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the accessor which enables access to each argument that got passed to this object.</summary>
+   /// <returns></returns>
+   public Eina.Accessor< System.String> CommandAccess() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_access_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Accessor< System.String>(_ret_var, false, false);
+ }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+/// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+/// 
+/// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+/// 
+/// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+/// 
+/// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+/// <value></value>
+   public  System.String Command {
+      get { return GetCommand(); }
+   }
+   /// <summary>Use an array to fill this object
+/// Every element of a string is a argument.</summary>
+/// <value>An array where every array field is an argument</value>
+   public Eina.Array< System.String> CommandArray {
+      set { SetCommandArray( value); }
+   }
+   /// <summary>Use a string to fill this object
+/// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+/// <value>A command in form of a string</value>
+   public  System.String CommandString {
+      set { SetCommandString( value); }
+   }
+}
+public class CommandLineNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_core_command_line_command_get_static_delegate == null)
+      efl_core_command_line_command_get_static_delegate = new efl_core_command_line_command_get_delegate(command_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_get"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_get_static_delegate)});
+      if (efl_core_command_line_command_array_set_static_delegate == null)
+      efl_core_command_line_command_array_set_static_delegate = new efl_core_command_line_command_array_set_delegate(command_array_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_array_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_array_set_static_delegate)});
+      if (efl_core_command_line_command_string_set_static_delegate == null)
+      efl_core_command_line_command_string_set_static_delegate = new efl_core_command_line_command_string_set_delegate(command_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_string_set_static_delegate)});
+      if (efl_core_command_line_command_access_static_delegate == null)
+      efl_core_command_line_command_access_static_delegate = new efl_core_command_line_command_access_delegate(command_access);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_access"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_access_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Core.CommandLineConcrete.efl_core_command_line_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Core.CommandLineConcrete.efl_core_command_line_mixin_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_core_command_line_command_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_core_command_line_command_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate> efl_core_command_line_command_get_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate>(_Module, "efl_core_command_line_command_get");
+    private static  System.String command_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((CommandLineConcrete)wrapper).GetCommand();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_core_command_line_command_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_get_delegate efl_core_command_line_command_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_array_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr array);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_array_set_api_delegate(System.IntPtr obj,    System.IntPtr array);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate> efl_core_command_line_command_array_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate>(_Module, "efl_core_command_line_command_array_set");
+    private static bool command_array_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr array)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_array_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_array = new Eina.Array< System.String>(array, true, true);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((CommandLineConcrete)wrapper).SetCommandArray( _in_array);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_array_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  array);
+      }
+   }
+   private static efl_core_command_line_command_array_set_delegate efl_core_command_line_command_array_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate> efl_core_command_line_command_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate>(_Module, "efl_core_command_line_command_string_set");
+    private static bool command_string_set(System.IntPtr obj, System.IntPtr pd,   System.String str)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((CommandLineConcrete)wrapper).SetCommandString( str);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  str);
+      }
+   }
+   private static efl_core_command_line_command_string_set_delegate efl_core_command_line_command_string_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_core_command_line_command_access_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_core_command_line_command_access_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate> efl_core_command_line_command_access_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate>(_Module, "efl_core_command_line_command_access");
+    private static  System.IntPtr command_access(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_access was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Accessor< System.String> _ret_var = default(Eina.Accessor< System.String>);
+         try {
+            _ret_var = ((CommandLineConcrete)wrapper).CommandAccess();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_core_command_line_command_access_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_access_delegate efl_core_command_line_command_access_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_core_env.eo.cs b/internals/src/EflSharp/EflSharp/efl_core_env.eo.cs
new file mode 100755 (executable)
index 0000000..523fcf7
--- /dev/null
@@ -0,0 +1,310 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Core { 
+/// <summary>This object can maintain a set of key value pairs
+/// A object of this type alone does not apply the object to the system. For getting the value into the system, see <see cref="Efl.Core.ProcEnv"/>.
+/// 
+/// A object can be forked, which will only copy its values, changes to the returned object will not change the object where it is forked off.</summary>
+[EnvNativeInherit]
+public class Env : Efl.Object, Efl.Eo.IWrapper,Efl.Duplicate
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Core.EnvNativeInherit nativeInherit = new Efl.Core.EnvNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Env))
+            return Efl.Core.EnvNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_core_env_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Env(Efl.Object parent= null
+         ) :
+      base(efl_core_env_class_get(), typeof(Env), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Env(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Env(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Env static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Env(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get the value of the <c>var</c>, or <c>null</c> if no such <c>var</c> exists in the object</summary>
+   /// <param name="var">The name of the variable</param>
+   /// <returns>Set var to this value if not <c>NULL</c>, otherwise clear this env value if value is <c>NULL</c> or if it is an empty string</returns>
+   virtual public  System.String GetEnv(  System.String var) {
+                         var _ret_var = Efl.Core.EnvNativeInherit.efl_core_env_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), var);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Add a new pair to this object</summary>
+   /// <param name="var">The name of the variable</param>
+   /// <param name="value">Set var to this value if not <c>NULL</c>, otherwise clear this env value if value is <c>NULL</c> or if it is an empty string</param>
+   /// <returns></returns>
+   virtual public  void SetEnv(  System.String var,   System.String value) {
+                                           Efl.Core.EnvNativeInherit.efl_core_env_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), var,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the content of this object.
+   /// This will return a iterator that contains all keys that are part of this object.</summary>
+   /// <returns></returns>
+   virtual public Eina.Iterator< System.String> GetContent() {
+       var _ret_var = Efl.Core.EnvNativeInherit.efl_core_env_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator< System.String>(_ret_var, false, false);
+ }
+   /// <summary>Remove the pair with the matching <c>var</c> from this object</summary>
+   /// <param name="var">The name of the variable</param>
+   /// <returns></returns>
+   virtual public  void Unset(  System.String var) {
+                         Efl.Core.EnvNativeInherit.efl_core_env_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), var);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Remove all pairs from this object</summary>
+   /// <returns></returns>
+   virtual public  void Clear() {
+       Efl.Core.EnvNativeInherit.efl_core_env_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   virtual public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the content of this object.
+/// This will return a iterator that contains all keys that are part of this object.</summary>
+/// <value></value>
+   public Eina.Iterator< System.String> Content {
+      get { return GetContent(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Core.Env.efl_core_env_class_get();
+   }
+}
+public class EnvNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_core_env_get_static_delegate == null)
+      efl_core_env_get_static_delegate = new efl_core_env_get_delegate(env_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_env_get"), func = Marshal.GetFunctionPointerForDelegate(efl_core_env_get_static_delegate)});
+      if (efl_core_env_set_static_delegate == null)
+      efl_core_env_set_static_delegate = new efl_core_env_set_delegate(env_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_env_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_env_set_static_delegate)});
+      if (efl_core_env_content_get_static_delegate == null)
+      efl_core_env_content_get_static_delegate = new efl_core_env_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_env_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_core_env_content_get_static_delegate)});
+      if (efl_core_env_unset_static_delegate == null)
+      efl_core_env_unset_static_delegate = new efl_core_env_unset_delegate(unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_env_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_core_env_unset_static_delegate)});
+      if (efl_core_env_clear_static_delegate == null)
+      efl_core_env_clear_static_delegate = new efl_core_env_clear_delegate(clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_env_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_core_env_clear_static_delegate)});
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Core.Env.efl_core_env_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Core.Env.efl_core_env_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_core_env_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String var);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_core_env_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String var);
+    public static Efl.Eo.FunctionWrapper<efl_core_env_get_api_delegate> efl_core_env_get_ptr = new Efl.Eo.FunctionWrapper<efl_core_env_get_api_delegate>(_Module, "efl_core_env_get");
+    private static  System.String env_get(System.IntPtr obj, System.IntPtr pd,   System.String var)
+   {
+      Eina.Log.Debug("function efl_core_env_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Env)wrapper).GetEnv( var);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_env_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  var);
+      }
+   }
+   private static efl_core_env_get_delegate efl_core_env_get_static_delegate;
+
+
+    private delegate  void efl_core_env_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String var,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+
+
+    public delegate  void efl_core_env_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String var,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+    public static Efl.Eo.FunctionWrapper<efl_core_env_set_api_delegate> efl_core_env_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_env_set_api_delegate>(_Module, "efl_core_env_set");
+    private static  void env_set(System.IntPtr obj, System.IntPtr pd,   System.String var,   System.String value)
+   {
+      Eina.Log.Debug("function efl_core_env_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Env)wrapper).SetEnv( var,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_core_env_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  var,  value);
+      }
+   }
+   private static efl_core_env_set_delegate efl_core_env_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_core_env_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_core_env_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_env_content_get_api_delegate> efl_core_env_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_core_env_content_get_api_delegate>(_Module, "efl_core_env_content_get");
+    private static  System.IntPtr content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_env_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator< System.String> _ret_var = default(Eina.Iterator< System.String>);
+         try {
+            _ret_var = ((Env)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_core_env_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_env_content_get_delegate efl_core_env_content_get_static_delegate;
+
+
+    private delegate  void efl_core_env_unset_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String var);
+
+
+    public delegate  void efl_core_env_unset_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String var);
+    public static Efl.Eo.FunctionWrapper<efl_core_env_unset_api_delegate> efl_core_env_unset_ptr = new Efl.Eo.FunctionWrapper<efl_core_env_unset_api_delegate>(_Module, "efl_core_env_unset");
+    private static  void unset(System.IntPtr obj, System.IntPtr pd,   System.String var)
+   {
+      Eina.Log.Debug("function efl_core_env_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Env)wrapper).Unset( var);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_core_env_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  var);
+      }
+   }
+   private static efl_core_env_unset_delegate efl_core_env_unset_static_delegate;
+
+
+    private delegate  void efl_core_env_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_core_env_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_env_clear_api_delegate> efl_core_env_clear_ptr = new Efl.Eo.FunctionWrapper<efl_core_env_clear_api_delegate>(_Module, "efl_core_env_clear");
+    private static  void clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_env_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Env)wrapper).Clear();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_core_env_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_env_clear_delegate efl_core_env_clear_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((Env)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_core_proc_env.eo.cs b/internals/src/EflSharp/EflSharp/efl_core_proc_env.eo.cs
new file mode 100755 (executable)
index 0000000..4680a77
--- /dev/null
@@ -0,0 +1,123 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Core { 
+/// <summary></summary>
+[ProcEnvNativeInherit]
+public class ProcEnv : Efl.Core.Env, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Core.ProcEnvNativeInherit nativeInherit = new Efl.Core.ProcEnvNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ProcEnv))
+            return Efl.Core.ProcEnvNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_core_proc_env_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ProcEnv(Efl.Object parent= null
+         ) :
+      base(efl_core_proc_env_class_get(), typeof(ProcEnv), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ProcEnv(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ProcEnv(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ProcEnv static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ProcEnv(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get a instance of this object
+   /// The object will apply the environment operations onto this process.</summary>
+   /// <returns></returns>
+   public static Efl.Core.Env Self() {
+       var _ret_var = Efl.Core.ProcEnvNativeInherit.efl_env_self_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Core.ProcEnv.efl_core_proc_env_class_get();
+   }
+}
+public class ProcEnvNativeInherit : Efl.Core.EnvNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Core.ProcEnv.efl_core_proc_env_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Core.ProcEnv.efl_core_proc_env_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Core.Env, Efl.Eo.NonOwnTag>))] private delegate Efl.Core.Env efl_env_self_delegate();
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Core.Env, Efl.Eo.NonOwnTag>))] public delegate Efl.Core.Env efl_env_self_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_env_self_api_delegate> efl_env_self_ptr = new Efl.Eo.FunctionWrapper<efl_env_self_api_delegate>(_Module, "efl_env_self");
+    private static Efl.Core.Env self(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_env_self was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Core.Env _ret_var = default(Efl.Core.Env);
+         try {
+            _ret_var = ProcEnv.Self();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_env_self_ptr.Value.Delegate();
+      }
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_csharp_application.cs b/internals/src/EflSharp/EflSharp/efl_csharp_application.cs
new file mode 100755 (executable)
index 0000000..84732d3
--- /dev/null
@@ -0,0 +1,132 @@
+using System;
+using System.Runtime.InteropServices;
+using System.Threading;
+using static Efl.UnsafeNativeMethods;
+
+static class UnsafeNativeMethods {
+    [DllImport(efl.Libs.Ecore)] public static extern void ecore_init();
+    [DllImport(efl.Libs.Ecore)] public static extern void ecore_shutdown();
+    [DllImport(efl.Libs.Elementary)] public static extern int elm_init(int argc, IntPtr argv);
+    [DllImport(efl.Libs.Elementary)] public static extern void elm_policy_set(int policy, int policy_detail);
+    [DllImport(efl.Libs.Elementary)] public static extern void elm_shutdown();
+    [DllImport(efl.Libs.Elementary)] public static extern void elm_exit();
+}
+
+namespace Efl {
+  namespace Csharp {
+    public enum Components {
+        Basic,
+        Ui,
+    }
+    /// <summary>
+    /// This represents the entry point for the EFL framework
+    /// You can use this class to implement the 4 abstract methods which will then be called accordingly
+    /// All subsystems of efl are booted up correctly when the abstract methods of this class are called.
+    /// </summary>
+    /// <remarks>
+    /// Calls to efl outside those efl-callbacks or outside the mainloop are not allowed and will lead to issues
+    /// </remarks>
+    /// <example>
+    /// UserApp is the class that implements the Application abstract
+    /// <code>
+    /// public static void Main() {
+    ///   UserApp editor = new UserApp();
+    ///   editor.Launch(editor);
+    /// }
+    /// </code>
+    /// </example>
+    public abstract class Application {
+      //the initializied components
+      private static Components initComponent;
+      //what follows are 3 private functions to boot up the internals of efl
+      private static void Init(Efl.Csharp.Components component) {
+        Eina.Config.Init();
+        Efl.Eo.Config.Init();
+        ecore_init();
+        evas_init();
+        eldbus.Config.Init();
+
+        if (component == Components.Ui) {
+          // TODO Support elm command line arguments
+#if WIN32 // Not a native define, we define it in our build system
+          // Ecore_Win32 uses OleInitialize, which requires single thread apartments
+          if (System.Threading.Thread.CurrentThread.GetApartmentState() != ApartmentState.STA)
+              throw new InvalidOperationException("UI Applications require STAThreadAttribute in Main()");
+#endif
+          elm_init(0, IntPtr.Zero);
+
+          elm_policy_set((int)Elm.Policy.Quit, (int)Elm.PolicyQuit.LastWindowHidden);
+        }
+        initComponent = component;
+      }
+      private static void Shutdown() {
+        // Try to cleanup everything before actually shutting down.
+        System.GC.Collect();
+        System.GC.WaitForPendingFinalizers();
+
+        if (initComponent == Components.Ui) {
+          elm_shutdown();
+        }
+        eldbus.Config.Shutdown();
+        evas_shutdown();
+        ecore_shutdown();
+        Efl.Eo.Config.Shutdown();
+        Eina.Config.Shutdown();
+      }
+      /// <summary>
+      /// Called when the application is started. Arguments from the command line are passed here.
+      /// </summary>
+      protected abstract void OnInitialize(Eina.Array<System.String> args);
+      /// <summary>
+      /// Arguments are passed here, Additional calls to this function may occure,
+      /// but then the initialization flag is set to false.
+      /// </summary>
+      /// <remarks>
+      /// When Initialize is true then OnInitialize is also called
+      /// </remarks>
+      protected virtual void OnArguments(Efl.LoopArguments args) { }
+      /// <summary>
+      /// Called when the application is not going to be displayed, or is not used by a user for some time.
+      /// </summary>
+      protected virtual void OnPause() { }
+      /// <summary>
+      /// Called before an application is used again after a call to OnPause().
+      /// </summary>
+      protected virtual void OnResume() { }
+      /// <summary>
+      /// Called before starting the shutdown of the application.
+      /// </summary>
+      protected virtual void OnTerminate() { }
+      /// <summary>
+      /// This function initializices everything in EFL and runs your application.
+      /// This call will result in a call to OnInitialize(), which you application should override.
+      /// </summary>
+      public void Launch(Efl.Csharp.Components components=Components.Ui) {
+        Init(components);
+        Efl.App app = Efl.App.AppMain;
+        Eina.Array<String> command_line = new Eina.Array<String>();
+        command_line.Append(Environment.GetCommandLineArgs());
+        app.SetCommandArray(command_line);
+        app.ArgumentsEvt += (object sender, LoopArgumentsEvt_Args evt) => {
+          if (evt.arg.Initialization) {
+            OnInitialize(evt.arg.Argv);
+          }
+          OnArguments(evt.arg);
+        };
+        app.PauseEvt += (object sender, EventArgs e) => {
+          OnPause();
+        };
+        app.ResumeEvt += (object sender, EventArgs e) => {
+          OnResume();
+        };
+        app.TerminateEvt += (object sender, EventArgs e) => {
+          OnTerminate();
+        };
+        app.Begin();
+        Shutdown();
+      }
+    }
+  }
+}
+
+
diff --git a/internals/src/EflSharp/EflSharp/efl_cubic_bezier_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_cubic_bezier_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..23c45ca
--- /dev/null
@@ -0,0 +1,201 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl cubic_bezier interpolator class</summary>
+[CubicBezierInterpolatorNativeInherit]
+public class CubicBezierInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.CubicBezierInterpolatorNativeInherit nativeInherit = new Efl.CubicBezierInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CubicBezierInterpolator))
+            return Efl.CubicBezierInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_cubic_bezier_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public CubicBezierInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_cubic_bezier_interpolator_class_get(), typeof(CubicBezierInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CubicBezierInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected CubicBezierInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static CubicBezierInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CubicBezierInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <param name="factor3">Third factor of the interpolation function.</param>
+   /// <param name="factor4">Fourth factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void GetFactors( out double factor1,  out double factor2,  out double factor3,  out double factor4) {
+                                                                               Efl.CubicBezierInterpolatorNativeInherit.efl_cubic_bezier_interpolator_factors_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out factor1,  out factor2,  out factor3,  out factor4);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <param name="factor3">Third factor of the interpolation function.</param>
+   /// <param name="factor4">Fourth factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void SetFactors( double factor1,  double factor2,  double factor3,  double factor4) {
+                                                                               Efl.CubicBezierInterpolatorNativeInherit.efl_cubic_bezier_interpolator_factors_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factor1,  factor2,  factor3,  factor4);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.CubicBezierInterpolator.efl_cubic_bezier_interpolator_class_get();
+   }
+}
+public class CubicBezierInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_cubic_bezier_interpolator_factors_get_static_delegate == null)
+      efl_cubic_bezier_interpolator_factors_get_static_delegate = new efl_cubic_bezier_interpolator_factors_get_delegate(factors_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_cubic_bezier_interpolator_factors_get"), func = Marshal.GetFunctionPointerForDelegate(efl_cubic_bezier_interpolator_factors_get_static_delegate)});
+      if (efl_cubic_bezier_interpolator_factors_set_static_delegate == null)
+      efl_cubic_bezier_interpolator_factors_set_static_delegate = new efl_cubic_bezier_interpolator_factors_set_delegate(factors_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_cubic_bezier_interpolator_factors_set"), func = Marshal.GetFunctionPointerForDelegate(efl_cubic_bezier_interpolator_factors_set_static_delegate)});
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.CubicBezierInterpolator.efl_cubic_bezier_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.CubicBezierInterpolator.efl_cubic_bezier_interpolator_class_get();
+   }
+
+
+    private delegate  void efl_cubic_bezier_interpolator_factors_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double factor1,   out double factor2,   out double factor3,   out double factor4);
+
+
+    public delegate  void efl_cubic_bezier_interpolator_factors_get_api_delegate(System.IntPtr obj,   out double factor1,   out double factor2,   out double factor3,   out double factor4);
+    public static Efl.Eo.FunctionWrapper<efl_cubic_bezier_interpolator_factors_get_api_delegate> efl_cubic_bezier_interpolator_factors_get_ptr = new Efl.Eo.FunctionWrapper<efl_cubic_bezier_interpolator_factors_get_api_delegate>(_Module, "efl_cubic_bezier_interpolator_factors_get");
+    private static  void factors_get(System.IntPtr obj, System.IntPtr pd,  out double factor1,  out double factor2,  out double factor3,  out double factor4)
+   {
+      Eina.Log.Debug("function efl_cubic_bezier_interpolator_factors_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       factor1 = default(double);      factor2 = default(double);      factor3 = default(double);      factor4 = default(double);                                 
+         try {
+            ((CubicBezierInterpolator)wrapper).GetFactors( out factor1,  out factor2,  out factor3,  out factor4);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_cubic_bezier_interpolator_factors_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out factor1,  out factor2,  out factor3,  out factor4);
+      }
+   }
+   private static efl_cubic_bezier_interpolator_factors_get_delegate efl_cubic_bezier_interpolator_factors_get_static_delegate;
+
+
+    private delegate  void efl_cubic_bezier_interpolator_factors_set_delegate(System.IntPtr obj, System.IntPtr pd,   double factor1,   double factor2,   double factor3,   double factor4);
+
+
+    public delegate  void efl_cubic_bezier_interpolator_factors_set_api_delegate(System.IntPtr obj,   double factor1,   double factor2,   double factor3,   double factor4);
+    public static Efl.Eo.FunctionWrapper<efl_cubic_bezier_interpolator_factors_set_api_delegate> efl_cubic_bezier_interpolator_factors_set_ptr = new Efl.Eo.FunctionWrapper<efl_cubic_bezier_interpolator_factors_set_api_delegate>(_Module, "efl_cubic_bezier_interpolator_factors_set");
+    private static  void factors_set(System.IntPtr obj, System.IntPtr pd,  double factor1,  double factor2,  double factor3,  double factor4)
+   {
+      Eina.Log.Debug("function efl_cubic_bezier_interpolator_factors_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((CubicBezierInterpolator)wrapper).SetFactors( factor1,  factor2,  factor3,  factor4);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_cubic_bezier_interpolator_factors_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factor1,  factor2,  factor3,  factor4);
+      }
+   }
+   private static efl_cubic_bezier_interpolator_factors_set_delegate efl_cubic_bezier_interpolator_factors_set_static_delegate;
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((CubicBezierInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_decelerate_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_decelerate_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..5317251
--- /dev/null
@@ -0,0 +1,203 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl decelerate interpolator class
+/// output = sin(input * Pi / 2);</summary>
+[DecelerateInterpolatorNativeInherit]
+public class DecelerateInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.DecelerateInterpolatorNativeInherit nativeInherit = new Efl.DecelerateInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DecelerateInterpolator))
+            return Efl.DecelerateInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_decelerate_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public DecelerateInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_decelerate_interpolator_class_get(), typeof(DecelerateInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DecelerateInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected DecelerateInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static DecelerateInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DecelerateInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Factor property</summary>
+   /// <returns>Factor of the interpolation function.</returns>
+   virtual public double GetFactor() {
+       var _ret_var = Efl.DecelerateInterpolatorNativeInherit.efl_decelerate_interpolator_factor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Factor property</summary>
+   /// <param name="factor">Factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void SetFactor( double factor) {
+                         Efl.DecelerateInterpolatorNativeInherit.efl_decelerate_interpolator_factor_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factor);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Factor property</summary>
+/// <value>Factor of the interpolation function.</value>
+   public double Factor {
+      get { return GetFactor(); }
+      set { SetFactor( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.DecelerateInterpolator.efl_decelerate_interpolator_class_get();
+   }
+}
+public class DecelerateInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_decelerate_interpolator_factor_get_static_delegate == null)
+      efl_decelerate_interpolator_factor_get_static_delegate = new efl_decelerate_interpolator_factor_get_delegate(factor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_decelerate_interpolator_factor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_decelerate_interpolator_factor_get_static_delegate)});
+      if (efl_decelerate_interpolator_factor_set_static_delegate == null)
+      efl_decelerate_interpolator_factor_set_static_delegate = new efl_decelerate_interpolator_factor_set_delegate(factor_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_decelerate_interpolator_factor_set"), func = Marshal.GetFunctionPointerForDelegate(efl_decelerate_interpolator_factor_set_static_delegate)});
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.DecelerateInterpolator.efl_decelerate_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.DecelerateInterpolator.efl_decelerate_interpolator_class_get();
+   }
+
+
+    private delegate double efl_decelerate_interpolator_factor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_decelerate_interpolator_factor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_decelerate_interpolator_factor_get_api_delegate> efl_decelerate_interpolator_factor_get_ptr = new Efl.Eo.FunctionWrapper<efl_decelerate_interpolator_factor_get_api_delegate>(_Module, "efl_decelerate_interpolator_factor_get");
+    private static double factor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_decelerate_interpolator_factor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((DecelerateInterpolator)wrapper).GetFactor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_decelerate_interpolator_factor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_decelerate_interpolator_factor_get_delegate efl_decelerate_interpolator_factor_get_static_delegate;
+
+
+    private delegate  void efl_decelerate_interpolator_factor_set_delegate(System.IntPtr obj, System.IntPtr pd,   double factor);
+
+
+    public delegate  void efl_decelerate_interpolator_factor_set_api_delegate(System.IntPtr obj,   double factor);
+    public static Efl.Eo.FunctionWrapper<efl_decelerate_interpolator_factor_set_api_delegate> efl_decelerate_interpolator_factor_set_ptr = new Efl.Eo.FunctionWrapper<efl_decelerate_interpolator_factor_set_api_delegate>(_Module, "efl_decelerate_interpolator_factor_set");
+    private static  void factor_set(System.IntPtr obj, System.IntPtr pd,  double factor)
+   {
+      Eina.Log.Debug("function efl_decelerate_interpolator_factor_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((DecelerateInterpolator)wrapper).SetFactor( factor);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_decelerate_interpolator_factor_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factor);
+      }
+   }
+   private static efl_decelerate_interpolator_factor_set_delegate efl_decelerate_interpolator_factor_set_static_delegate;
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((DecelerateInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_divisor_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_divisor_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..81eae2c
--- /dev/null
@@ -0,0 +1,197 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl divisor interpolator class</summary>
+[DivisorInterpolatorNativeInherit]
+public class DivisorInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.DivisorInterpolatorNativeInherit nativeInherit = new Efl.DivisorInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DivisorInterpolator))
+            return Efl.DivisorInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_divisor_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public DivisorInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_divisor_interpolator_class_get(), typeof(DivisorInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DivisorInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected DivisorInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static DivisorInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DivisorInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void GetFactors( out double factor1,  out double factor2) {
+                                           Efl.DivisorInterpolatorNativeInherit.efl_divisor_interpolator_factors_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out factor1,  out factor2);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void SetFactors( double factor1,  double factor2) {
+                                           Efl.DivisorInterpolatorNativeInherit.efl_divisor_interpolator_factors_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factor1,  factor2);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.DivisorInterpolator.efl_divisor_interpolator_class_get();
+   }
+}
+public class DivisorInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_divisor_interpolator_factors_get_static_delegate == null)
+      efl_divisor_interpolator_factors_get_static_delegate = new efl_divisor_interpolator_factors_get_delegate(factors_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_divisor_interpolator_factors_get"), func = Marshal.GetFunctionPointerForDelegate(efl_divisor_interpolator_factors_get_static_delegate)});
+      if (efl_divisor_interpolator_factors_set_static_delegate == null)
+      efl_divisor_interpolator_factors_set_static_delegate = new efl_divisor_interpolator_factors_set_delegate(factors_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_divisor_interpolator_factors_set"), func = Marshal.GetFunctionPointerForDelegate(efl_divisor_interpolator_factors_set_static_delegate)});
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.DivisorInterpolator.efl_divisor_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.DivisorInterpolator.efl_divisor_interpolator_class_get();
+   }
+
+
+    private delegate  void efl_divisor_interpolator_factors_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double factor1,   out double factor2);
+
+
+    public delegate  void efl_divisor_interpolator_factors_get_api_delegate(System.IntPtr obj,   out double factor1,   out double factor2);
+    public static Efl.Eo.FunctionWrapper<efl_divisor_interpolator_factors_get_api_delegate> efl_divisor_interpolator_factors_get_ptr = new Efl.Eo.FunctionWrapper<efl_divisor_interpolator_factors_get_api_delegate>(_Module, "efl_divisor_interpolator_factors_get");
+    private static  void factors_get(System.IntPtr obj, System.IntPtr pd,  out double factor1,  out double factor2)
+   {
+      Eina.Log.Debug("function efl_divisor_interpolator_factors_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           factor1 = default(double);      factor2 = default(double);                     
+         try {
+            ((DivisorInterpolator)wrapper).GetFactors( out factor1,  out factor2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_divisor_interpolator_factors_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out factor1,  out factor2);
+      }
+   }
+   private static efl_divisor_interpolator_factors_get_delegate efl_divisor_interpolator_factors_get_static_delegate;
+
+
+    private delegate  void efl_divisor_interpolator_factors_set_delegate(System.IntPtr obj, System.IntPtr pd,   double factor1,   double factor2);
+
+
+    public delegate  void efl_divisor_interpolator_factors_set_api_delegate(System.IntPtr obj,   double factor1,   double factor2);
+    public static Efl.Eo.FunctionWrapper<efl_divisor_interpolator_factors_set_api_delegate> efl_divisor_interpolator_factors_set_ptr = new Efl.Eo.FunctionWrapper<efl_divisor_interpolator_factors_set_api_delegate>(_Module, "efl_divisor_interpolator_factors_set");
+    private static  void factors_set(System.IntPtr obj, System.IntPtr pd,  double factor1,  double factor2)
+   {
+      Eina.Log.Debug("function efl_divisor_interpolator_factors_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((DivisorInterpolator)wrapper).SetFactors( factor1,  factor2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_divisor_interpolator_factors_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factor1,  factor2);
+      }
+   }
+   private static efl_divisor_interpolator_factors_set_delegate efl_divisor_interpolator_factors_set_static_delegate;
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((DivisorInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_duplicate.eo.cs b/internals/src/EflSharp/EflSharp/efl_duplicate.eo.cs
new file mode 100755 (executable)
index 0000000..ae2e415
--- /dev/null
@@ -0,0 +1,148 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>An interface for duplication of objects.
+/// Objects implementing this interface can be duplicated with <see cref="Efl.Duplicate.DoDuplicate"/>.</summary>
+[DuplicateNativeInherit]
+public interface Duplicate : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Creates a carbon copy of this object and returns it.
+/// The newly created object will have no event handlers or anything of the sort.</summary>
+/// <returns>Returned carbon copy</returns>
+Efl.Duplicate DoDuplicate();
+   }
+/// <summary>An interface for duplication of objects.
+/// Objects implementing this interface can be duplicated with <see cref="Efl.Duplicate.DoDuplicate"/>.</summary>
+sealed public class DuplicateConcrete : 
+
+Duplicate
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DuplicateConcrete))
+            return Efl.DuplicateNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_duplicate_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DuplicateConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~DuplicateConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static DuplicateConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DuplicateConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+}
+public class DuplicateNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.DuplicateConcrete.efl_duplicate_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.DuplicateConcrete.efl_duplicate_interface_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((Duplicate)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_exe.eo.cs b/internals/src/EflSharp/EflSharp/efl_exe.eo.cs
new file mode 100755 (executable)
index 0000000..8c59e72
--- /dev/null
@@ -0,0 +1,1313 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+[ExeNativeInherit]
+public class Exe : Efl.Task, Efl.Eo.IWrapper,Efl.Core.CommandLine,Efl.Io.Closer,Efl.Io.Reader,Efl.Io.Writer
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.ExeNativeInherit nativeInherit = new Efl.ExeNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Exe))
+            return Efl.ExeNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_exe_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Exe(Efl.Object parent= null
+         ) :
+      base(efl_exe_class_get(), typeof(Exe), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Exe(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Exe(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Exe static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Exe(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ClosedEvtKey = new object();
+   /// <summary>Notifies closed, when property is marked as true
+   /// 1.19</summary>
+   public event EventHandler ClosedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClosedEvt_delegate)) {
+               eventHandlers.AddHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (remove_cpp_event_handler(key, this.evt_ClosedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClosedEvt.</summary>
+   public void On_ClosedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClosedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClosedEvt_delegate;
+   private void on_ClosedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClosedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_readChangedEvtKey = new object();
+   /// <summary>Notifies can_read property changed.
+   /// If <see cref="Efl.Io.Reader.CanRead"/> is <c>true</c> there is data to <see cref="Efl.Io.Reader.Read"/> without blocking/error. If <see cref="Efl.Io.Reader.CanRead"/> is <c>false</c>, <see cref="Efl.Io.Reader.Read"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Reader.Read"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> Can_readChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_readChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_readChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_readChangedEvt.</summary>
+   public void On_Can_readChangedEvt(Efl.Io.ReaderCan_readChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args>)eventHandlers[Can_readChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_readChangedEvt_delegate;
+   private void on_Can_readChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.ReaderCan_readChangedEvt_Args args = new Efl.Io.ReaderCan_readChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_readChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EosEvtKey = new object();
+   /// <summary>Notifies end of stream, when property is marked as true.
+   /// If this is used alongside with an <see cref="Efl.Io.Closer"/>, then it should be emitted before that call.
+   /// 
+   /// It should be emitted only once for an object unless it implements <see cref="Efl.Io.Positioner.Seek"/>.
+   /// 
+   /// The property <see cref="Efl.Io.Reader.CanRead"/> should change to <c>false</c> before this event is dispatched.
+   /// 1.19</summary>
+   public event EventHandler EosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EosEvt_delegate)) {
+               eventHandlers.AddHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (remove_cpp_event_handler(key, this.evt_EosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EosEvt.</summary>
+   public void On_EosEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EosEvt_delegate;
+   private void on_EosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_writeChangedEvtKey = new object();
+   /// <summary>Notifies can_write property changed.
+   /// If <see cref="Efl.Io.Writer.CanWrite"/> is <c>true</c> there is data to <see cref="Efl.Io.Writer.Write"/> without blocking/error. If <see cref="Efl.Io.Writer.CanWrite"/> is <c>false</c>, <see cref="Efl.Io.Writer.Write"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Writer.Write"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> Can_writeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_writeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_writeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_writeChangedEvt.</summary>
+   public void On_Can_writeChangedEvt(Efl.Io.WriterCan_writeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args>)eventHandlers[Can_writeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_writeChangedEvt_delegate;
+   private void on_Can_writeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.WriterCan_writeChangedEvt_Args args = new Efl.Io.WriterCan_writeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_writeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ClosedEvt_delegate = new Efl.EventCb(on_ClosedEvt_NativeCallback);
+      evt_Can_readChangedEvt_delegate = new Efl.EventCb(on_Can_readChangedEvt_NativeCallback);
+      evt_EosEvt_delegate = new Efl.EventCb(on_EosEvt_NativeCallback);
+      evt_Can_writeChangedEvt_delegate = new Efl.EventCb(on_Can_writeChangedEvt_NativeCallback);
+   }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   virtual public Efl.ExeFlags GetExeFlags() {
+       var _ret_var = Efl.ExeNativeInherit.efl_exe_flags_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="flags">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetExeFlags( Efl.ExeFlags flags) {
+                         Efl.ExeNativeInherit.efl_exe_flags_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The final exit signal of this task.</summary>
+   /// <returns>The exit signal, or -1 if no exit signal happened</returns>
+   virtual public  int GetExitSignal() {
+       var _ret_var = Efl.ExeNativeInherit.efl_exe_exit_signal_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the object assosiated with this object</summary>
+   /// <returns><c>env</c> will be referenced until this object does not need it anymore.</returns>
+   virtual public Efl.Core.Env GetEnv() {
+       var _ret_var = Efl.ExeNativeInherit.efl_exe_env_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the object assosiated with this object</summary>
+   /// <param name="env"><c>env</c> will be referenced until this object does not need it anymore.</param>
+   /// <returns></returns>
+   virtual public  void SetEnv( Efl.Core.Env env) {
+                         Efl.ExeNativeInherit.efl_exe_env_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), env);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="sig">Send this signal to the task</param>
+   /// <returns></returns>
+   virtual public  void Signal( Efl.ExeSignal sig) {
+                         Efl.ExeNativeInherit.efl_exe_signal_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sig);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+   /// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+   /// 
+   /// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+   /// 
+   /// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+   /// 
+   /// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+   /// <returns></returns>
+   virtual public  System.String GetCommand() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Use an array to fill this object
+   /// Every element of a string is a argument.</summary>
+   /// <param name="array">An array where every array field is an argument</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandArray( Eina.Array< System.String> array) {
+       var _in_array = array.Handle;
+array.Own = false;
+array.OwnContent = false;
+                  var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_array_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_array);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Use a string to fill this object
+   /// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+   /// <param name="str">A command in form of a string</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandString(  System.String str) {
+                         var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), str);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the accessor which enables access to each argument that got passed to this object.</summary>
+   /// <returns></returns>
+   virtual public Eina.Accessor< System.String> CommandAccess() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_access_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Accessor< System.String>(_ret_var, false, false);
+ }
+   /// <summary>If true will notify object was closed.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if closed, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetClosed() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_closed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close resources on exec() calls.
+   /// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnExec() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c>, will close on exec() call.
+   /// 1.19</summary>
+   /// <param name="close_on_exec"><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns><c>true</c> if could set, <c>false</c> if not supported or failed.
+   /// 1.19</returns>
+   virtual public bool SetCloseOnExec( bool close_on_exec) {
+                         var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_exec);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnInvalidate() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <param name="close_on_invalidate"><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCloseOnInvalidate( bool close_on_invalidate) {
+                         Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_invalidate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Closes the Input/Output object.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as close(2) libc function.
+   /// 1.19</summary>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Close() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanRead() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_read"><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanRead( bool can_read) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_read);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetEos() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_eos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <param name="is_eos"><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEos( bool is_eos) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_eos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_eos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Reads data into a pre-allocated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as read(2) libc function.
+   /// 1.19</summary>
+   /// <param name="rw_slice">Provides a pre-allocated memory to be filled up to rw_slice.len. It will be populated and the length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Read( ref Eina.RwSlice rw_slice) {
+                         var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_read_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref rw_slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanWrite() {
+       var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_can_write_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_write"><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanWrite( bool can_write) {
+                         Efl.Io.WriterNativeInherit.efl_io_writer_can_write_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_write);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Writes data from a pre-populated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as write(2) libc function.
+   /// 1.19</summary>
+   /// <param name="slice">Provides a pre-populated memory to be used up to slice.len. The returned slice will be adapted as length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <param name="remaining">Convenience to output the remaining parts of slice that was not written. If the full slice was written, this will be a slice of zero-length.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Write( ref Eina.Slice slice,  ref Eina.Slice remaining) {
+                                           var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_write_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref slice,  ref remaining);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public Efl.ExeFlags ExeFlags {
+      get { return GetExeFlags(); }
+      set { SetExeFlags( value); }
+   }
+   /// <summary>The final exit signal of this task.</summary>
+/// <value>The exit signal, or -1 if no exit signal happened</value>
+   public  int ExitSignal {
+      get { return GetExitSignal(); }
+   }
+   /// <summary>If <c>env</c> is <c>null</c> then the process created by this object is going to inherit the enviroment of this process.
+/// In case <c>env</c> is not <c>null</c> then the environment variables declared in this object will represent the environment passed to the new process.</summary>
+/// <value><c>env</c> will be referenced until this object does not need it anymore.</value>
+   public Efl.Core.Env Env {
+      get { return GetEnv(); }
+      set { SetEnv( value); }
+   }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+/// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+/// 
+/// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+/// 
+/// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+/// 
+/// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+/// <value></value>
+   public  System.String Command {
+      get { return GetCommand(); }
+   }
+   /// <summary>Use an array to fill this object
+/// Every element of a string is a argument.</summary>
+/// <value>An array where every array field is an argument</value>
+   public Eina.Array< System.String> CommandArray {
+      set { SetCommandArray( value); }
+   }
+   /// <summary>Use a string to fill this object
+/// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+/// <value>A command in form of a string</value>
+   public  System.String CommandString {
+      set { SetCommandString( value); }
+   }
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <value><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Closed {
+      get { return GetClosed(); }
+   }
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <value><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnExec {
+      get { return GetCloseOnExec(); }
+      set { SetCloseOnExec( value); }
+   }
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <value><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnInvalidate {
+      get { return GetCloseOnInvalidate(); }
+      set { SetCloseOnInvalidate( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanRead {
+      get { return GetCanRead(); }
+      set { SetCanRead( value); }
+   }
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <value><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Eos {
+      get { return GetEos(); }
+      set { SetEos( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanWrite {
+      get { return GetCanWrite(); }
+      set { SetCanWrite( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Exe.efl_exe_class_get();
+   }
+}
+public class ExeNativeInherit : Efl.TaskNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_exe_flags_get_static_delegate == null)
+      efl_exe_flags_get_static_delegate = new efl_exe_flags_get_delegate(exe_flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_exe_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_exe_flags_get_static_delegate)});
+      if (efl_exe_flags_set_static_delegate == null)
+      efl_exe_flags_set_static_delegate = new efl_exe_flags_set_delegate(exe_flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_exe_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_exe_flags_set_static_delegate)});
+      if (efl_exe_exit_signal_get_static_delegate == null)
+      efl_exe_exit_signal_get_static_delegate = new efl_exe_exit_signal_get_delegate(exit_signal_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_exe_exit_signal_get"), func = Marshal.GetFunctionPointerForDelegate(efl_exe_exit_signal_get_static_delegate)});
+      if (efl_exe_env_get_static_delegate == null)
+      efl_exe_env_get_static_delegate = new efl_exe_env_get_delegate(env_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_exe_env_get"), func = Marshal.GetFunctionPointerForDelegate(efl_exe_env_get_static_delegate)});
+      if (efl_exe_env_set_static_delegate == null)
+      efl_exe_env_set_static_delegate = new efl_exe_env_set_delegate(env_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_exe_env_set"), func = Marshal.GetFunctionPointerForDelegate(efl_exe_env_set_static_delegate)});
+      if (efl_exe_signal_static_delegate == null)
+      efl_exe_signal_static_delegate = new efl_exe_signal_delegate(signal);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_exe_signal"), func = Marshal.GetFunctionPointerForDelegate(efl_exe_signal_static_delegate)});
+      if (efl_core_command_line_command_get_static_delegate == null)
+      efl_core_command_line_command_get_static_delegate = new efl_core_command_line_command_get_delegate(command_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_get"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_get_static_delegate)});
+      if (efl_core_command_line_command_array_set_static_delegate == null)
+      efl_core_command_line_command_array_set_static_delegate = new efl_core_command_line_command_array_set_delegate(command_array_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_array_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_array_set_static_delegate)});
+      if (efl_core_command_line_command_string_set_static_delegate == null)
+      efl_core_command_line_command_string_set_static_delegate = new efl_core_command_line_command_string_set_delegate(command_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_string_set_static_delegate)});
+      if (efl_core_command_line_command_access_static_delegate == null)
+      efl_core_command_line_command_access_static_delegate = new efl_core_command_line_command_access_delegate(command_access);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_access"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_access_static_delegate)});
+      if (efl_io_closer_closed_get_static_delegate == null)
+      efl_io_closer_closed_get_static_delegate = new efl_io_closer_closed_get_delegate(closed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_closed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_closed_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_get_static_delegate == null)
+      efl_io_closer_close_on_exec_get_static_delegate = new efl_io_closer_close_on_exec_get_delegate(close_on_exec_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_set_static_delegate == null)
+      efl_io_closer_close_on_exec_set_static_delegate = new efl_io_closer_close_on_exec_set_delegate(close_on_exec_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_set_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_get_static_delegate == null)
+      efl_io_closer_close_on_invalidate_get_static_delegate = new efl_io_closer_close_on_invalidate_get_delegate(close_on_invalidate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_get_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_set_static_delegate == null)
+      efl_io_closer_close_on_invalidate_set_static_delegate = new efl_io_closer_close_on_invalidate_set_delegate(close_on_invalidate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_set_static_delegate)});
+      if (efl_io_closer_close_static_delegate == null)
+      efl_io_closer_close_static_delegate = new efl_io_closer_close_delegate(close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_static_delegate)});
+      if (efl_io_reader_can_read_get_static_delegate == null)
+      efl_io_reader_can_read_get_static_delegate = new efl_io_reader_can_read_get_delegate(can_read_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_get_static_delegate)});
+      if (efl_io_reader_can_read_set_static_delegate == null)
+      efl_io_reader_can_read_set_static_delegate = new efl_io_reader_can_read_set_delegate(can_read_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_set_static_delegate)});
+      if (efl_io_reader_eos_get_static_delegate == null)
+      efl_io_reader_eos_get_static_delegate = new efl_io_reader_eos_get_delegate(eos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_get_static_delegate)});
+      if (efl_io_reader_eos_set_static_delegate == null)
+      efl_io_reader_eos_set_static_delegate = new efl_io_reader_eos_set_delegate(eos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_set_static_delegate)});
+      if (efl_io_reader_read_static_delegate == null)
+      efl_io_reader_read_static_delegate = new efl_io_reader_read_delegate(read);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_read"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_read_static_delegate)});
+      if (efl_io_writer_can_write_get_static_delegate == null)
+      efl_io_writer_can_write_get_static_delegate = new efl_io_writer_can_write_get_delegate(can_write_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_get_static_delegate)});
+      if (efl_io_writer_can_write_set_static_delegate == null)
+      efl_io_writer_can_write_set_static_delegate = new efl_io_writer_can_write_set_delegate(can_write_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_set_static_delegate)});
+      if (efl_io_writer_write_static_delegate == null)
+      efl_io_writer_write_static_delegate = new efl_io_writer_write_delegate(write);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_write"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_write_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Exe.efl_exe_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Exe.efl_exe_class_get();
+   }
+
+
+    private delegate Efl.ExeFlags efl_exe_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.ExeFlags efl_exe_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_exe_flags_get_api_delegate> efl_exe_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_exe_flags_get_api_delegate>(_Module, "efl_exe_flags_get");
+    private static Efl.ExeFlags exe_flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_exe_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.ExeFlags _ret_var = default(Efl.ExeFlags);
+         try {
+            _ret_var = ((Exe)wrapper).GetExeFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_exe_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_exe_flags_get_delegate efl_exe_flags_get_static_delegate;
+
+
+    private delegate  void efl_exe_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.ExeFlags flags);
+
+
+    public delegate  void efl_exe_flags_set_api_delegate(System.IntPtr obj,   Efl.ExeFlags flags);
+    public static Efl.Eo.FunctionWrapper<efl_exe_flags_set_api_delegate> efl_exe_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_exe_flags_set_api_delegate>(_Module, "efl_exe_flags_set");
+    private static  void exe_flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.ExeFlags flags)
+   {
+      Eina.Log.Debug("function efl_exe_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Exe)wrapper).SetExeFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_exe_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_exe_flags_set_delegate efl_exe_flags_set_static_delegate;
+
+
+    private delegate  int efl_exe_exit_signal_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_exe_exit_signal_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_exe_exit_signal_get_api_delegate> efl_exe_exit_signal_get_ptr = new Efl.Eo.FunctionWrapper<efl_exe_exit_signal_get_api_delegate>(_Module, "efl_exe_exit_signal_get");
+    private static  int exit_signal_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_exe_exit_signal_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Exe)wrapper).GetExitSignal();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_exe_exit_signal_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_exe_exit_signal_get_delegate efl_exe_exit_signal_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Core.Env, Efl.Eo.NonOwnTag>))] private delegate Efl.Core.Env efl_exe_env_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Core.Env, Efl.Eo.NonOwnTag>))] public delegate Efl.Core.Env efl_exe_env_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_exe_env_get_api_delegate> efl_exe_env_get_ptr = new Efl.Eo.FunctionWrapper<efl_exe_env_get_api_delegate>(_Module, "efl_exe_env_get");
+    private static Efl.Core.Env env_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_exe_env_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Core.Env _ret_var = default(Efl.Core.Env);
+         try {
+            _ret_var = ((Exe)wrapper).GetEnv();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_exe_env_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_exe_env_get_delegate efl_exe_env_get_static_delegate;
+
+
+    private delegate  void efl_exe_env_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Core.Env, Efl.Eo.NonOwnTag>))]  Efl.Core.Env env);
+
+
+    public delegate  void efl_exe_env_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Core.Env, Efl.Eo.NonOwnTag>))]  Efl.Core.Env env);
+    public static Efl.Eo.FunctionWrapper<efl_exe_env_set_api_delegate> efl_exe_env_set_ptr = new Efl.Eo.FunctionWrapper<efl_exe_env_set_api_delegate>(_Module, "efl_exe_env_set");
+    private static  void env_set(System.IntPtr obj, System.IntPtr pd,  Efl.Core.Env env)
+   {
+      Eina.Log.Debug("function efl_exe_env_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Exe)wrapper).SetEnv( env);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_exe_env_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  env);
+      }
+   }
+   private static efl_exe_env_set_delegate efl_exe_env_set_static_delegate;
+
+
+    private delegate  void efl_exe_signal_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.ExeSignal sig);
+
+
+    public delegate  void efl_exe_signal_api_delegate(System.IntPtr obj,   Efl.ExeSignal sig);
+    public static Efl.Eo.FunctionWrapper<efl_exe_signal_api_delegate> efl_exe_signal_ptr = new Efl.Eo.FunctionWrapper<efl_exe_signal_api_delegate>(_Module, "efl_exe_signal");
+    private static  void signal(System.IntPtr obj, System.IntPtr pd,  Efl.ExeSignal sig)
+   {
+      Eina.Log.Debug("function efl_exe_signal was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Exe)wrapper).Signal( sig);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_exe_signal_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sig);
+      }
+   }
+   private static efl_exe_signal_delegate efl_exe_signal_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_core_command_line_command_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_core_command_line_command_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate> efl_core_command_line_command_get_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate>(_Module, "efl_core_command_line_command_get");
+    private static  System.String command_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Exe)wrapper).GetCommand();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_core_command_line_command_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_get_delegate efl_core_command_line_command_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_array_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr array);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_array_set_api_delegate(System.IntPtr obj,    System.IntPtr array);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate> efl_core_command_line_command_array_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate>(_Module, "efl_core_command_line_command_array_set");
+    private static bool command_array_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr array)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_array_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_array = new Eina.Array< System.String>(array, true, true);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).SetCommandArray( _in_array);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_array_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  array);
+      }
+   }
+   private static efl_core_command_line_command_array_set_delegate efl_core_command_line_command_array_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate> efl_core_command_line_command_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate>(_Module, "efl_core_command_line_command_string_set");
+    private static bool command_string_set(System.IntPtr obj, System.IntPtr pd,   System.String str)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).SetCommandString( str);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  str);
+      }
+   }
+   private static efl_core_command_line_command_string_set_delegate efl_core_command_line_command_string_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_core_command_line_command_access_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_core_command_line_command_access_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate> efl_core_command_line_command_access_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate>(_Module, "efl_core_command_line_command_access");
+    private static  System.IntPtr command_access(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_access was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Accessor< System.String> _ret_var = default(Eina.Accessor< System.String>);
+         try {
+            _ret_var = ((Exe)wrapper).CommandAccess();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_core_command_line_command_access_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_access_delegate efl_core_command_line_command_access_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_closed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_closed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate> efl_io_closer_closed_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate>(_Module, "efl_io_closer_closed_get");
+    private static bool closed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_closed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).GetClosed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_closed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_closed_get_delegate efl_io_closer_closed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate> efl_io_closer_close_on_exec_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate>(_Module, "efl_io_closer_close_on_exec_get");
+    private static bool close_on_exec_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).GetCloseOnExec();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_exec_get_delegate efl_io_closer_close_on_exec_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate> efl_io_closer_close_on_exec_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate>(_Module, "efl_io_closer_close_on_exec_set");
+    private static bool close_on_exec_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_exec)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).SetCloseOnExec( close_on_exec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_exec);
+      }
+   }
+   private static efl_io_closer_close_on_exec_set_delegate efl_io_closer_close_on_exec_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_invalidate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_invalidate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate> efl_io_closer_close_on_invalidate_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_get");
+    private static bool close_on_invalidate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).GetCloseOnInvalidate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_get_delegate efl_io_closer_close_on_invalidate_get_static_delegate;
+
+
+    private delegate  void efl_io_closer_close_on_invalidate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+
+
+    public delegate  void efl_io_closer_close_on_invalidate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate> efl_io_closer_close_on_invalidate_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_set");
+    private static  void close_on_invalidate_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_invalidate)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Exe)wrapper).SetCloseOnInvalidate( close_on_invalidate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_invalidate);
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_set_delegate efl_io_closer_close_on_invalidate_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_closer_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_io_closer_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate> efl_io_closer_close_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate>(_Module, "efl_io_closer_close");
+    private static  Eina.Error close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Exe)wrapper).Close();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_delegate efl_io_closer_close_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_can_read_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_can_read_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate> efl_io_reader_can_read_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate>(_Module, "efl_io_reader_can_read_get");
+    private static bool can_read_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).GetCanRead();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_can_read_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_can_read_get_delegate efl_io_reader_can_read_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_can_read_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+
+
+    public delegate  void efl_io_reader_can_read_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate> efl_io_reader_can_read_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate>(_Module, "efl_io_reader_can_read_set");
+    private static  void can_read_set(System.IntPtr obj, System.IntPtr pd,  bool can_read)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Exe)wrapper).SetCanRead( can_read);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_can_read_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_read);
+      }
+   }
+   private static efl_io_reader_can_read_set_delegate efl_io_reader_can_read_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_eos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_eos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate> efl_io_reader_eos_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate>(_Module, "efl_io_reader_eos_get");
+    private static bool eos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).GetEos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_eos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_eos_get_delegate efl_io_reader_eos_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_eos_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+
+
+    public delegate  void efl_io_reader_eos_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate> efl_io_reader_eos_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate>(_Module, "efl_io_reader_eos_set");
+    private static  void eos_set(System.IntPtr obj, System.IntPtr pd,  bool is_eos)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Exe)wrapper).SetEos( is_eos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_eos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_eos);
+      }
+   }
+   private static efl_io_reader_eos_set_delegate efl_io_reader_eos_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_reader_read_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.RwSlice rw_slice);
+
+
+    public delegate  Eina.Error efl_io_reader_read_api_delegate(System.IntPtr obj,   ref Eina.RwSlice rw_slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate> efl_io_reader_read_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate>(_Module, "efl_io_reader_read");
+    private static  Eina.Error read(System.IntPtr obj, System.IntPtr pd,  ref Eina.RwSlice rw_slice)
+   {
+      Eina.Log.Debug("function efl_io_reader_read was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Exe)wrapper).Read( ref rw_slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_reader_read_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref rw_slice);
+      }
+   }
+   private static efl_io_reader_read_delegate efl_io_reader_read_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_writer_can_write_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_writer_can_write_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate> efl_io_writer_can_write_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate>(_Module, "efl_io_writer_can_write_get");
+    private static bool can_write_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Exe)wrapper).GetCanWrite();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_writer_can_write_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_writer_can_write_get_delegate efl_io_writer_can_write_get_static_delegate;
+
+
+    private delegate  void efl_io_writer_can_write_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+
+
+    public delegate  void efl_io_writer_can_write_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate> efl_io_writer_can_write_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate>(_Module, "efl_io_writer_can_write_set");
+    private static  void can_write_set(System.IntPtr obj, System.IntPtr pd,  bool can_write)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Exe)wrapper).SetCanWrite( can_write);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_writer_can_write_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_write);
+      }
+   }
+   private static efl_io_writer_can_write_set_delegate efl_io_writer_can_write_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_writer_write_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+
+
+    public delegate  Eina.Error efl_io_writer_write_api_delegate(System.IntPtr obj,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate> efl_io_writer_write_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate>(_Module, "efl_io_writer_write");
+    private static  Eina.Error write(System.IntPtr obj, System.IntPtr pd,  ref Eina.Slice slice,  ref Eina.Slice remaining)
+   {
+      Eina.Log.Debug("function efl_io_writer_write was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 remaining = default(Eina.Slice);                      Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Exe)wrapper).Write( ref slice,  ref remaining);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_writer_write_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref slice,  ref remaining);
+      }
+   }
+   private static efl_io_writer_write_delegate efl_io_writer_write_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+public enum ExeSignal
+{
+/// <summary></summary>
+Int = 0,
+/// <summary></summary>
+Quit = 1,
+/// <summary></summary>
+Term = 2,
+/// <summary></summary>
+Kill = 3,
+/// <summary></summary>
+Cont = 4,
+/// <summary></summary>
+Stop = 5,
+/// <summary></summary>
+Hup = 6,
+/// <summary></summary>
+Usr1 = 7,
+/// <summary></summary>
+Usr2 = 8,
+}
+} 
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+public enum ExeFlags
+{
+/// <summary></summary>
+None = 0,
+/// <summary></summary>
+GroupLeader = 1,
+/// <summary></summary>
+ExitWithParent = 2,
+/// <summary></summary>
+HideIo = 4,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_file.eo.cs b/internals/src/EflSharp/EflSharp/efl_file.eo.cs
new file mode 100755 (executable)
index 0000000..d1a6e4a
--- /dev/null
@@ -0,0 +1,530 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl file interface</summary>
+[FileNativeInherit]
+public interface File : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <returns>The handle to an Eina_File that will be used</returns>
+Eina.File GetMmap();
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+/// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+/// <param name="f">The handle to an Eina_File that will be used</param>
+/// <returns>0 on success, error code otherwise</returns>
+ Eina.Error SetMmap( Eina.File f);
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <returns>The file path.</returns>
+ System.String GetFile();
+   /// <summary>Set the file path from where an object will fetch the data.
+/// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+/// <param name="file">The file path.</param>
+/// <returns>0 on success, error code otherwise</returns>
+ Eina.Error SetFile(  System.String file);
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+ System.String GetKey();
+   /// <summary>Set the key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+/// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+/// <returns></returns>
+ void SetKey(  System.String key);
+   /// <summary>Get the load state of the object.</summary>
+/// <returns>True if the object is loaded, otherwise false.</returns>
+bool GetLoaded();
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+/// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+/// 
+/// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+/// <returns>0 on success, error code otherwise</returns>
+ Eina.Error Load();
+   /// <summary>Perform all necessary operations to unload file data from the object.
+/// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+/// 
+/// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+/// <returns></returns>
+ void Unload();
+                              /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   Eina.File Mmap {
+      get ;
+      set ;
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+    System.String File {
+      get ;
+      set ;
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+    System.String Key {
+      get ;
+      set ;
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   bool Loaded {
+      get ;
+   }
+}
+/// <summary>Efl file interface</summary>
+sealed public class FileConcrete : 
+
+File
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FileConcrete))
+            return Efl.FileNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_file_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FileConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FileConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FileConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FileConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate(this.NativeHandle, f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate(this.NativeHandle, file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate(this.NativeHandle, key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+}
+public class FileNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.FileConcrete.efl_file_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.FileConcrete.efl_file_mixin_get();
+   }
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((FileConcrete)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((FileConcrete)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((FileConcrete)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((FileConcrete)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((FileConcrete)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((FileConcrete)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((FileConcrete)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((FileConcrete)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((FileConcrete)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_file_save.eo.cs b/internals/src/EflSharp/EflSharp/efl_file_save.eo.cs
new file mode 100755 (executable)
index 0000000..af33a93
--- /dev/null
@@ -0,0 +1,235 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl file saving interface</summary>
+[FileSaveNativeInherit]
+public interface FileSave : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Save the given image object&apos;s contents to an (image) file.
+/// The extension suffix on <c>file</c> will determine which saver module Evas is to use when saving, thus the final file&apos;s format. If the file supports multiple data stored in it (Eet ones), you can specify the key to be used as the index of the image in it.
+/// 
+/// You can specify some flags when saving the image.  Currently acceptable flags are <c>quality</c> and <c>compress</c>. Eg.: &quot;quality=100 compress=9&quot;.</summary>
+/// <param name="file">The filename to be used to save the image (extension obligatory).</param>
+/// <param name="key">The image key in the file (if an Eet one), or <c>null</c>, otherwise.</param>
+/// <param name="info">The flags to be used (<c>null</c> for defaults).</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool Save(  System.String file,   System.String key,  ref Efl.FileSaveInfo info);
+   }
+/// <summary>Efl file saving interface</summary>
+sealed public class FileSaveConcrete : 
+
+FileSave
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FileSaveConcrete))
+            return Efl.FileSaveNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_file_save_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FileSaveConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FileSaveConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FileSaveConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FileSaveConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Save the given image object&apos;s contents to an (image) file.
+   /// The extension suffix on <c>file</c> will determine which saver module Evas is to use when saving, thus the final file&apos;s format. If the file supports multiple data stored in it (Eet ones), you can specify the key to be used as the index of the image in it.
+   /// 
+   /// You can specify some flags when saving the image.  Currently acceptable flags are <c>quality</c> and <c>compress</c>. Eg.: &quot;quality=100 compress=9&quot;.</summary>
+   /// <param name="file">The filename to be used to save the image (extension obligatory).</param>
+   /// <param name="key">The image key in the file (if an Eet one), or <c>null</c>, otherwise.</param>
+   /// <param name="info">The flags to be used (<c>null</c> for defaults).</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool Save(  System.String file,   System.String key,  ref Efl.FileSaveInfo info) {
+                   var _in_info = Efl.FileSaveInfo_StructConversion.ToInternal(info);
+                                          var _ret_var = Efl.FileSaveNativeInherit.efl_file_save_ptr.Value.Delegate(this.NativeHandle, file,  key,  ref _in_info);
+      Eina.Error.RaiseIfUnhandledException();
+                                    info = Efl.FileSaveInfo_StructConversion.ToManaged(_in_info);
+      return _ret_var;
+ }
+}
+public class FileSaveNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_file_save_static_delegate == null)
+      efl_file_save_static_delegate = new efl_file_save_delegate(save);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_save"), func = Marshal.GetFunctionPointerForDelegate(efl_file_save_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.FileSaveConcrete.efl_file_save_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.FileSaveConcrete.efl_file_save_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_save_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   ref Efl.FileSaveInfo_StructInternal info);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_save_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   ref Efl.FileSaveInfo_StructInternal info);
+    public static Efl.Eo.FunctionWrapper<efl_file_save_api_delegate> efl_file_save_ptr = new Efl.Eo.FunctionWrapper<efl_file_save_api_delegate>(_Module, "efl_file_save");
+    private static bool save(System.IntPtr obj, System.IntPtr pd,   System.String file,   System.String key,  ref Efl.FileSaveInfo_StructInternal info)
+   {
+      Eina.Log.Debug("function efl_file_save was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           var _in_info = Efl.FileSaveInfo_StructConversion.ToManaged(info);
+                                             bool _ret_var = default(bool);
+         try {
+            _ret_var = ((FileSave)wrapper).Save( file,  key,  ref _in_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    info = Efl.FileSaveInfo_StructConversion.ToInternal(_in_info);
+      return _ret_var;
+      } else {
+         return efl_file_save_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file,  key,  ref info);
+      }
+   }
+   private static efl_file_save_delegate efl_file_save_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>Info used to determine various attributes when saving a file.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct FileSaveInfo
+{
+   /// <summary>The quality level (0-100) to save the file with; commonly used when saving image files.</summary>
+   public  uint Quality;
+   /// <summary>The compression level (0-100) to save the file with.</summary>
+   public  uint Compression;
+   /// <summary>The encoding to use when saving the file.</summary>
+   public  System.String Encoding;
+   ///<summary>Constructor for FileSaveInfo.</summary>
+   public FileSaveInfo(
+       uint Quality=default( uint),
+       uint Compression=default( uint),
+       System.String Encoding=default( System.String)   )
+   {
+      this.Quality = Quality;
+      this.Compression = Compression;
+      this.Encoding = Encoding;
+   }
+public static implicit operator FileSaveInfo(IntPtr ptr)
+   {
+      var tmp = (FileSaveInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(FileSaveInfo_StructInternal));
+      return FileSaveInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct FileSaveInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct FileSaveInfo_StructInternal
+{
+   
+   public  uint Quality;
+   
+   public  uint Compression;
+///<summary>Internal wrapper for field Encoding</summary>
+public System.IntPtr Encoding;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator FileSaveInfo(FileSaveInfo_StructInternal struct_)
+   {
+      return FileSaveInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator FileSaveInfo_StructInternal(FileSaveInfo struct_)
+   {
+      return FileSaveInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct FileSaveInfo</summary>
+public static class FileSaveInfo_StructConversion
+{
+   internal static FileSaveInfo_StructInternal ToInternal(FileSaveInfo _external_struct)
+   {
+      var _internal_struct = new FileSaveInfo_StructInternal();
+
+      _internal_struct.Quality = _external_struct.Quality;
+      _internal_struct.Compression = _external_struct.Compression;
+      _internal_struct.Encoding = Eina.MemoryNative.StrDup(_external_struct.Encoding);
+
+      return _internal_struct;
+   }
+
+   internal static FileSaveInfo ToManaged(FileSaveInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new FileSaveInfo();
+
+      _external_struct.Quality = _internal_struct.Quality;
+      _external_struct.Compression = _internal_struct.Compression;
+      _external_struct.Encoding = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Encoding);
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_generic_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_generic_model.eo.cs
new file mode 100755 (executable)
index 0000000..3e133bf
--- /dev/null
@@ -0,0 +1,94 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Generic model that allows any property to be manually set. Also children of the same type can be added and deleted.
+/// Intended to be used in scenarios where the user needs a manually defined data model, like in tests.
+/// 
+/// It does not model anything in particular and does not affect anything else in the system.</summary>
+[GenericModelNativeInherit]
+public class GenericModel : Efl.LoopModel, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.GenericModelNativeInherit nativeInherit = new Efl.GenericModelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GenericModel))
+            return Efl.GenericModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_generic_model_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public GenericModel(Efl.Object parent= null
+         ) :
+      base(efl_generic_model_class_get(), typeof(GenericModel), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GenericModel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected GenericModel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static GenericModel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GenericModel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.GenericModel.efl_generic_model_class_get();
+   }
+}
+public class GenericModelNativeInherit : Efl.LoopModelNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.GenericModel.efl_generic_model_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.GenericModel.efl_generic_model_class_get();
+   }
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_blur.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_blur.eo.cs
new file mode 100755 (executable)
index 0000000..9435c71
--- /dev/null
@@ -0,0 +1,378 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>A simple API to apply blur effects.
+/// Those API&apos;s might use <see cref="Efl.Gfx.Filter"/> internally. It might be necessary to also specify the color of the blur with <see cref="Efl.Gfx.Color.GetColor"/>.</summary>
+[BlurNativeInherit]
+public interface Blur : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The blur radius in pixels.</summary>
+/// <param name="rx">The horizontal blur radius.</param>
+/// <param name="ry">The vertical blur radius.</param>
+/// <returns></returns>
+ void GetRadius( out double rx,  out double ry);
+   /// <summary>The blur radius in pixels.</summary>
+/// <param name="rx">The horizontal blur radius.</param>
+/// <param name="ry">The vertical blur radius.</param>
+/// <returns></returns>
+ void SetRadius( double rx,  double ry);
+   /// <summary>An offset relative to the original pixels.
+/// This property allows for drop shadow effects.</summary>
+/// <param name="ox">Horizontal offset in pixels.</param>
+/// <param name="oy">Vertical offset in pixels.</param>
+/// <returns></returns>
+ void GetOffset( out double ox,  out double oy);
+   /// <summary>An offset relative to the original pixels.
+/// This property allows for drop shadow effects.</summary>
+/// <param name="ox">Horizontal offset in pixels.</param>
+/// <param name="oy">Vertical offset in pixels.</param>
+/// <returns></returns>
+ void SetOffset( double ox,  double oy);
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+/// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+/// 
+/// This is can be used efficiently to create glow effects.</summary>
+/// <returns>How much to grow the original pixel data.</returns>
+double GetGrow();
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+/// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+/// 
+/// This is can be used efficiently to create glow effects.</summary>
+/// <param name="radius">How much to grow the original pixel data.</param>
+/// <returns></returns>
+ void SetGrow( double radius);
+                     /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+/// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+/// 
+/// This is can be used efficiently to create glow effects.</summary>
+/// <value>How much to grow the original pixel data.</value>
+   double Grow {
+      get ;
+      set ;
+   }
+}
+/// <summary>A simple API to apply blur effects.
+/// Those API&apos;s might use <see cref="Efl.Gfx.Filter"/> internally. It might be necessary to also specify the color of the blur with <see cref="Efl.Gfx.Color.GetColor"/>.</summary>
+sealed public class BlurConcrete : 
+
+Blur
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (BlurConcrete))
+            return Efl.Gfx.BlurNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_blur_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public BlurConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~BlurConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static BlurConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new BlurConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The blur radius in pixels.</summary>
+   /// <param name="rx">The horizontal blur radius.</param>
+   /// <param name="ry">The vertical blur radius.</param>
+   /// <returns></returns>
+   public  void GetRadius( out double rx,  out double ry) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_radius_get_ptr.Value.Delegate(this.NativeHandle, out rx,  out ry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The blur radius in pixels.</summary>
+   /// <param name="rx">The horizontal blur radius.</param>
+   /// <param name="ry">The vertical blur radius.</param>
+   /// <returns></returns>
+   public  void SetRadius( double rx,  double ry) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_radius_set_ptr.Value.Delegate(this.NativeHandle, rx,  ry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>An offset relative to the original pixels.
+   /// This property allows for drop shadow effects.</summary>
+   /// <param name="ox">Horizontal offset in pixels.</param>
+   /// <param name="oy">Vertical offset in pixels.</param>
+   /// <returns></returns>
+   public  void GetOffset( out double ox,  out double oy) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_offset_get_ptr.Value.Delegate(this.NativeHandle, out ox,  out oy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>An offset relative to the original pixels.
+   /// This property allows for drop shadow effects.</summary>
+   /// <param name="ox">Horizontal offset in pixels.</param>
+   /// <param name="oy">Vertical offset in pixels.</param>
+   /// <returns></returns>
+   public  void SetOffset( double ox,  double oy) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_offset_set_ptr.Value.Delegate(this.NativeHandle, ox,  oy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+   /// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+   /// 
+   /// This is can be used efficiently to create glow effects.</summary>
+   /// <returns>How much to grow the original pixel data.</returns>
+   public double GetGrow() {
+       var _ret_var = Efl.Gfx.BlurNativeInherit.efl_gfx_blur_grow_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+   /// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+   /// 
+   /// This is can be used efficiently to create glow effects.</summary>
+   /// <param name="radius">How much to grow the original pixel data.</param>
+   /// <returns></returns>
+   public  void SetGrow( double radius) {
+                         Efl.Gfx.BlurNativeInherit.efl_gfx_blur_grow_set_ptr.Value.Delegate(this.NativeHandle, radius);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+/// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+/// 
+/// This is can be used efficiently to create glow effects.</summary>
+/// <value>How much to grow the original pixel data.</value>
+   public double Grow {
+      get { return GetGrow(); }
+      set { SetGrow( value); }
+   }
+}
+public class BlurNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_blur_radius_get_static_delegate == null)
+      efl_gfx_blur_radius_get_static_delegate = new efl_gfx_blur_radius_get_delegate(radius_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_radius_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_radius_get_static_delegate)});
+      if (efl_gfx_blur_radius_set_static_delegate == null)
+      efl_gfx_blur_radius_set_static_delegate = new efl_gfx_blur_radius_set_delegate(radius_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_radius_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_radius_set_static_delegate)});
+      if (efl_gfx_blur_offset_get_static_delegate == null)
+      efl_gfx_blur_offset_get_static_delegate = new efl_gfx_blur_offset_get_delegate(offset_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_offset_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_offset_get_static_delegate)});
+      if (efl_gfx_blur_offset_set_static_delegate == null)
+      efl_gfx_blur_offset_set_static_delegate = new efl_gfx_blur_offset_set_delegate(offset_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_offset_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_offset_set_static_delegate)});
+      if (efl_gfx_blur_grow_get_static_delegate == null)
+      efl_gfx_blur_grow_get_static_delegate = new efl_gfx_blur_grow_get_delegate(grow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_grow_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_grow_get_static_delegate)});
+      if (efl_gfx_blur_grow_set_static_delegate == null)
+      efl_gfx_blur_grow_set_static_delegate = new efl_gfx_blur_grow_set_delegate(grow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_grow_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_grow_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.BlurConcrete.efl_gfx_blur_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.BlurConcrete.efl_gfx_blur_interface_get();
+   }
+
+
+    private delegate  void efl_gfx_blur_radius_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double rx,   out double ry);
+
+
+    public delegate  void efl_gfx_blur_radius_get_api_delegate(System.IntPtr obj,   out double rx,   out double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_get_api_delegate> efl_gfx_blur_radius_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_get_api_delegate>(_Module, "efl_gfx_blur_radius_get");
+    private static  void radius_get(System.IntPtr obj, System.IntPtr pd,  out double rx,  out double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_radius_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           rx = default(double);      ry = default(double);                     
+         try {
+            ((Blur)wrapper).GetRadius( out rx,  out ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_radius_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out rx,  out ry);
+      }
+   }
+   private static efl_gfx_blur_radius_get_delegate efl_gfx_blur_radius_get_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_radius_set_delegate(System.IntPtr obj, System.IntPtr pd,   double rx,   double ry);
+
+
+    public delegate  void efl_gfx_blur_radius_set_api_delegate(System.IntPtr obj,   double rx,   double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_set_api_delegate> efl_gfx_blur_radius_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_set_api_delegate>(_Module, "efl_gfx_blur_radius_set");
+    private static  void radius_set(System.IntPtr obj, System.IntPtr pd,  double rx,  double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_radius_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Blur)wrapper).SetRadius( rx,  ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_radius_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rx,  ry);
+      }
+   }
+   private static efl_gfx_blur_radius_set_delegate efl_gfx_blur_radius_set_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_offset_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double ox,   out double oy);
+
+
+    public delegate  void efl_gfx_blur_offset_get_api_delegate(System.IntPtr obj,   out double ox,   out double oy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_get_api_delegate> efl_gfx_blur_offset_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_get_api_delegate>(_Module, "efl_gfx_blur_offset_get");
+    private static  void offset_get(System.IntPtr obj, System.IntPtr pd,  out double ox,  out double oy)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_offset_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           ox = default(double);      oy = default(double);                     
+         try {
+            ((Blur)wrapper).GetOffset( out ox,  out oy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_offset_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out ox,  out oy);
+      }
+   }
+   private static efl_gfx_blur_offset_get_delegate efl_gfx_blur_offset_get_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_offset_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ox,   double oy);
+
+
+    public delegate  void efl_gfx_blur_offset_set_api_delegate(System.IntPtr obj,   double ox,   double oy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_set_api_delegate> efl_gfx_blur_offset_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_set_api_delegate>(_Module, "efl_gfx_blur_offset_set");
+    private static  void offset_set(System.IntPtr obj, System.IntPtr pd,  double ox,  double oy)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_offset_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Blur)wrapper).SetOffset( ox,  oy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_offset_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ox,  oy);
+      }
+   }
+   private static efl_gfx_blur_offset_set_delegate efl_gfx_blur_offset_set_static_delegate;
+
+
+    private delegate double efl_gfx_blur_grow_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_blur_grow_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_get_api_delegate> efl_gfx_blur_grow_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_get_api_delegate>(_Module, "efl_gfx_blur_grow_get");
+    private static double grow_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_grow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Blur)wrapper).GetGrow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_blur_grow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_blur_grow_get_delegate efl_gfx_blur_grow_get_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_grow_set_delegate(System.IntPtr obj, System.IntPtr pd,   double radius);
+
+
+    public delegate  void efl_gfx_blur_grow_set_api_delegate(System.IntPtr obj,   double radius);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_set_api_delegate> efl_gfx_blur_grow_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_set_api_delegate>(_Module, "efl_gfx_blur_grow_set");
+    private static  void grow_set(System.IntPtr obj, System.IntPtr pd,  double radius)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_grow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Blur)wrapper).SetGrow( radius);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_blur_grow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  radius);
+      }
+   }
+   private static efl_gfx_blur_grow_set_delegate efl_gfx_blur_grow_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_buffer.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_buffer.eo.cs
new file mode 100755 (executable)
index 0000000..a894511
--- /dev/null
@@ -0,0 +1,786 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Common APIs for all objects representing images and 2D pixel buffers.</summary>
+[BufferNativeInherit]
+public interface Buffer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Rectangular size of the pixel buffer as allocated in memory.</summary>
+/// <returns>Size of the buffer in pixels.</returns>
+Eina.Size2D GetBufferSize();
+   /// <summary>Potentially not implemented, <see cref="Efl.Gfx.Buffer.BufferSize"/> may be read-only.</summary>
+/// <param name="sz">Size of the buffer in pixels.</param>
+/// <returns></returns>
+ void SetBufferSize( Eina.Size2D sz);
+   /// <summary>Returns the current encoding of this buffer&apos;s pixels.
+/// See <see cref="Efl.Gfx.Colorspace"/> for more information on the supported formats.</summary>
+/// <returns>Colorspace</returns>
+Efl.Gfx.Colorspace GetColorspace();
+   /// <summary>Retrieve whether alpha channel data is used on this object.</summary>
+/// <returns>Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</returns>
+bool GetAlpha();
+   /// <summary>Change alpha channel usage for this object.
+/// This function sets a flag on an image object indicating whether or not to use alpha channel data. A value of <c>true</c> makes it use alpha channel data, and <c>false</c> makes it ignore that data. Note that this has nothing to do with an object&apos;s color as manipulated by <see cref="Efl.Gfx.Color.GetColor"/>.</summary>
+/// <param name="alpha">Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</param>
+/// <returns></returns>
+ void SetAlpha( bool alpha);
+   /// <summary>Length in bytes of one row of pixels in memory.
+/// Usually this will be equal to width * 4, with a plain BGRA image. This may return 0 if the stride is not applicable.
+/// 
+/// When applicable, this will include the <see cref="Efl.Gfx.Buffer.GetBufferBorders"/> as well as potential extra padding.</summary>
+/// <returns>Stride</returns>
+ int GetStride();
+   /// <summary>Duplicated pixel borders inside this buffer.
+/// Internally, EFL may require an image to have its border pixels duplicated, in particular for GL textures. This property exposes the internal duplicated borders to allow calling <see cref="Efl.Gfx.Buffer.BufferMap"/> with the entire pixel data, including those edge pixels.</summary>
+/// <param name="l">Left border pixels, usually 0 or 1</param>
+/// <param name="r">Right border pixels, usually 0 or 1</param>
+/// <param name="t">Top border pixels, usually 0 or 1</param>
+/// <param name="b">Bottom border pixels, usually 0 or 1</param>
+/// <returns></returns>
+ void GetBufferBorders( out  uint l,  out  uint r,  out  uint t,  out  uint b);
+   /// <summary>Mark a sub-region of the given image object to be redrawn.
+/// This function schedules a particular rectangular region of an image object to be updated (redrawn) at the next rendering cycle.</summary>
+/// <param name="region">The updated region.</param>
+/// <returns></returns>
+ void AddBufferUpdate( ref Eina.Rect region);
+   /// <summary>Map a region of this buffer for read or write access by the CPU.
+/// Fetches data from the GPU if needed. This operation may be slow if cpu_readable_fast or cpu_writeable_fast are not true, or if the required colorspace is different from the internal one.
+/// 
+/// Note that if the buffer has <see cref="Efl.Gfx.Buffer.GetBufferBorders"/>, then <c>x</c> and <c>y</c> may be negative.</summary>
+/// <param name="mode">Specifies whether to map for read-only, write-only or read-write access (OR combination of flags).</param>
+/// <param name="region">The region to map.</param>
+/// <param name="cspace">Requested colorspace. If different from the internal cspace, map should try to convert the data into a new buffer. argb8888 by default.</param>
+/// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+/// <param name="stride">Returns the length in bytes of a mapped line</param>
+/// <returns>The data slice. In case of failure, the memory pointer will be <c>null</c>.</returns>
+Eina.RwSlice BufferMap( Efl.Gfx.BufferAccessMode mode,  ref Eina.Rect region,  Efl.Gfx.Colorspace cspace,   int plane,  out  int stride);
+   /// <summary>Unmap a region of this buffer, and update the internal data if needed.
+/// EFL will update the internal image if the map had write access.
+/// 
+/// Note: The <c>slice</c> struct does not need to be the one returned by <see cref="Efl.Gfx.Buffer.BufferMap"/>, only its contents (<c>mem</c> and <c>len</c>) must match. But after a call to <see cref="Efl.Gfx.Buffer.BufferUnmap"/> the original <c>slice</c> structure is not valid anymore.</summary>
+/// <param name="slice">Data slice returned by a previous call to map.</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool BufferUnmap( Eina.RwSlice slice);
+   /// <summary>Set the pixels for this buffer by copying them, or allocate a new memory region.
+/// This will allocate a new buffer in memory and copy the input <c>pixels</c> to it. The internal colorspace is not guaranteed to be preserved, and colorspace conversion may happen internally.
+/// 
+/// If <c>pixels</c> is <c>null</c>, then a new empty buffer will be allocated. If the buffer already had pixel data, the previous image data will be dropped. This is the same as <see cref="Efl.Gfx.Buffer.SetBufferManaged"/>.
+/// 
+/// The memory buffer <c>pixels</c> must be large enough to hold <c>width</c> x <c>height</c> pixels encoded in the colorspace <c>cspace</c>.
+/// 
+/// <c>slice</c> should not be the return value of <see cref="Efl.Gfx.Buffer.GetBufferManaged"/>.</summary>
+/// <param name="slice">If <c>null</c>, allocates an empty buffer</param>
+/// <param name="size">The size in pixels.</param>
+/// <param name="stride">If 0, automatically guessed from the <c>width</c>.</param>
+/// <param name="cspace">argb8888 by default.</param>
+/// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool SetBufferCopy( Eina.Slice slice,  Eina.Size2D size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane);
+   /// <summary>Set the pixels for this buffer, managed externally by the client.
+/// EFL will use the pixel data directly, and update the GPU-side texture if required. This will mark the image as dirty. If <c>slice</c> is <c>null</c>, this will detach the pixel data.
+/// 
+/// If the buffer already had pixel data, the previous image data will be dropped. This is the same as <see cref="Efl.Gfx.Buffer.SetBufferCopy"/>.
+/// 
+/// The memory buffer <c>pixels</c> must be large enough to hold <c>width</c> x <c>height</c> pixels encoded in the colorspace <c>cspace</c>.
+/// 
+/// See also <see cref="Efl.Gfx.Buffer.SetBufferCopy"/> if you want EFL to copy the input buffer internally.</summary>
+/// <param name="slice">If <c>null</c>, detaches the previous buffer.</param>
+/// <param name="size">The size in pixels.</param>
+/// <param name="stride">If 0, automatically guessed from the <c>width</c>.</param>
+/// <param name="cspace">argb8888 by default.</param>
+/// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool SetBufferManaged( Eina.Slice slice,  Eina.Size2D size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane);
+   /// <summary>Get a direct pointer to the internal pixel data, if available.
+/// This will return <c>null</c> unless <see cref="Efl.Gfx.Buffer.SetBufferManaged"/> was used to pass in an external data pointer.</summary>
+/// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+/// <returns>The data slice. The memory pointer will be <c>null</c> in case of failure.</returns>
+Eina.Slice GetBufferManaged(  int plane);
+                                          /// <summary>Rectangular size of the pixel buffer as allocated in memory.</summary>
+/// <value>Size of the buffer in pixels.</value>
+   Eina.Size2D BufferSize {
+      get ;
+      set ;
+   }
+   /// <summary>The colorspace defines how pixels are encoded in the image in memory.
+/// By default, images are encoded in 32-bit BGRA, ie. each pixel takes 4 bytes in memory, with each channel B,G,R,A encoding the color with values from 0 to 255.
+/// 
+/// All images used in EFL use alpha-premultipied BGRA values, which means that for each pixel, B &lt;= A, G &lt;= A and R &lt;= A.</summary>
+/// <value>Colorspace</value>
+   Efl.Gfx.Colorspace Colorspace {
+      get ;
+   }
+   /// <summary>Indicates whether the alpha channel should be used.
+/// This does not indicate whether the image source file contains an alpha channel, only whether to respect it or discard it.</summary>
+/// <value>Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</value>
+   bool Alpha {
+      get ;
+      set ;
+   }
+   /// <summary>Length in bytes of one row of pixels in memory.
+/// Usually this will be equal to width * 4, with a plain BGRA image. This may return 0 if the stride is not applicable.
+/// 
+/// When applicable, this will include the <see cref="Efl.Gfx.Buffer.GetBufferBorders"/> as well as potential extra padding.</summary>
+/// <value>Stride</value>
+    int Stride {
+      get ;
+   }
+}
+/// <summary>Common APIs for all objects representing images and 2D pixel buffers.</summary>
+sealed public class BufferConcrete : 
+
+Buffer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (BufferConcrete))
+            return Efl.Gfx.BufferNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_buffer_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public BufferConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~BufferConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static BufferConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new BufferConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Rectangular size of the pixel buffer as allocated in memory.</summary>
+   /// <returns>Size of the buffer in pixels.</returns>
+   public Eina.Size2D GetBufferSize() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Potentially not implemented, <see cref="Efl.Gfx.Buffer.BufferSize"/> may be read-only.</summary>
+   /// <param name="sz">Size of the buffer in pixels.</param>
+   /// <returns></returns>
+   public  void SetBufferSize( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_size_set_ptr.Value.Delegate(this.NativeHandle, _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the current encoding of this buffer&apos;s pixels.
+   /// See <see cref="Efl.Gfx.Colorspace"/> for more information on the supported formats.</summary>
+   /// <returns>Colorspace</returns>
+   public Efl.Gfx.Colorspace GetColorspace() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_colorspace_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieve whether alpha channel data is used on this object.</summary>
+   /// <returns>Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</returns>
+   public bool GetAlpha() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_alpha_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Change alpha channel usage for this object.
+   /// This function sets a flag on an image object indicating whether or not to use alpha channel data. A value of <c>true</c> makes it use alpha channel data, and <c>false</c> makes it ignore that data. Note that this has nothing to do with an object&apos;s color as manipulated by <see cref="Efl.Gfx.Color.GetColor"/>.</summary>
+   /// <param name="alpha">Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</param>
+   /// <returns></returns>
+   public  void SetAlpha( bool alpha) {
+                         Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_alpha_set_ptr.Value.Delegate(this.NativeHandle, alpha);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Length in bytes of one row of pixels in memory.
+   /// Usually this will be equal to width * 4, with a plain BGRA image. This may return 0 if the stride is not applicable.
+   /// 
+   /// When applicable, this will include the <see cref="Efl.Gfx.Buffer.GetBufferBorders"/> as well as potential extra padding.</summary>
+   /// <returns>Stride</returns>
+   public  int GetStride() {
+       var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_stride_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Duplicated pixel borders inside this buffer.
+   /// Internally, EFL may require an image to have its border pixels duplicated, in particular for GL textures. This property exposes the internal duplicated borders to allow calling <see cref="Efl.Gfx.Buffer.BufferMap"/> with the entire pixel data, including those edge pixels.</summary>
+   /// <param name="l">Left border pixels, usually 0 or 1</param>
+   /// <param name="r">Right border pixels, usually 0 or 1</param>
+   /// <param name="t">Top border pixels, usually 0 or 1</param>
+   /// <param name="b">Bottom border pixels, usually 0 or 1</param>
+   /// <returns></returns>
+   public  void GetBufferBorders( out  uint l,  out  uint r,  out  uint t,  out  uint b) {
+                                                                               Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_borders_get_ptr.Value.Delegate(this.NativeHandle, out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Mark a sub-region of the given image object to be redrawn.
+   /// This function schedules a particular rectangular region of an image object to be updated (redrawn) at the next rendering cycle.</summary>
+   /// <param name="region">The updated region.</param>
+   /// <returns></returns>
+   public  void AddBufferUpdate( ref Eina.Rect region) {
+       var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                  Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_update_add_ptr.Value.Delegate(this.NativeHandle, ref _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+            region = Eina.Rect_StructConversion.ToManaged(_in_region);
+       }
+   /// <summary>Map a region of this buffer for read or write access by the CPU.
+   /// Fetches data from the GPU if needed. This operation may be slow if cpu_readable_fast or cpu_writeable_fast are not true, or if the required colorspace is different from the internal one.
+   /// 
+   /// Note that if the buffer has <see cref="Efl.Gfx.Buffer.GetBufferBorders"/>, then <c>x</c> and <c>y</c> may be negative.</summary>
+   /// <param name="mode">Specifies whether to map for read-only, write-only or read-write access (OR combination of flags).</param>
+   /// <param name="region">The region to map.</param>
+   /// <param name="cspace">Requested colorspace. If different from the internal cspace, map should try to convert the data into a new buffer. argb8888 by default.</param>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <param name="stride">Returns the length in bytes of a mapped line</param>
+   /// <returns>The data slice. In case of failure, the memory pointer will be <c>null</c>.</returns>
+   public Eina.RwSlice BufferMap( Efl.Gfx.BufferAccessMode mode,  ref Eina.Rect region,  Efl.Gfx.Colorspace cspace,   int plane,  out  int stride) {
+             var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                                                                                    var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_map_ptr.Value.Delegate(this.NativeHandle, mode,  ref _in_region,  cspace,  plane,  out stride);
+      Eina.Error.RaiseIfUnhandledException();
+                                          region = Eina.Rect_StructConversion.ToManaged(_in_region);
+                        return _ret_var;
+ }
+   /// <summary>Unmap a region of this buffer, and update the internal data if needed.
+   /// EFL will update the internal image if the map had write access.
+   /// 
+   /// Note: The <c>slice</c> struct does not need to be the one returned by <see cref="Efl.Gfx.Buffer.BufferMap"/>, only its contents (<c>mem</c> and <c>len</c>) must match. But after a call to <see cref="Efl.Gfx.Buffer.BufferUnmap"/> the original <c>slice</c> structure is not valid anymore.</summary>
+   /// <param name="slice">Data slice returned by a previous call to map.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool BufferUnmap( Eina.RwSlice slice) {
+                         var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_unmap_ptr.Value.Delegate(this.NativeHandle, slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set the pixels for this buffer by copying them, or allocate a new memory region.
+   /// This will allocate a new buffer in memory and copy the input <c>pixels</c> to it. The internal colorspace is not guaranteed to be preserved, and colorspace conversion may happen internally.
+   /// 
+   /// If <c>pixels</c> is <c>null</c>, then a new empty buffer will be allocated. If the buffer already had pixel data, the previous image data will be dropped. This is the same as <see cref="Efl.Gfx.Buffer.SetBufferManaged"/>.
+   /// 
+   /// The memory buffer <c>pixels</c> must be large enough to hold <c>width</c> x <c>height</c> pixels encoded in the colorspace <c>cspace</c>.
+   /// 
+   /// <c>slice</c> should not be the return value of <see cref="Efl.Gfx.Buffer.GetBufferManaged"/>.</summary>
+   /// <param name="slice">If <c>null</c>, allocates an empty buffer</param>
+   /// <param name="size">The size in pixels.</param>
+   /// <param name="stride">If 0, automatically guessed from the <c>width</c>.</param>
+   /// <param name="cspace">argb8888 by default.</param>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool SetBufferCopy( Eina.Slice slice,  Eina.Size2D size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane) {
+       var _in_slice = Eina.PrimitiveConversion.ManagedToPointerAlloc(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                                                                                    var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_copy_set_ptr.Value.Delegate(this.NativeHandle, _in_slice,  _in_size,  stride,  cspace,  plane);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Set the pixels for this buffer, managed externally by the client.
+   /// EFL will use the pixel data directly, and update the GPU-side texture if required. This will mark the image as dirty. If <c>slice</c> is <c>null</c>, this will detach the pixel data.
+   /// 
+   /// If the buffer already had pixel data, the previous image data will be dropped. This is the same as <see cref="Efl.Gfx.Buffer.SetBufferCopy"/>.
+   /// 
+   /// The memory buffer <c>pixels</c> must be large enough to hold <c>width</c> x <c>height</c> pixels encoded in the colorspace <c>cspace</c>.
+   /// 
+   /// See also <see cref="Efl.Gfx.Buffer.SetBufferCopy"/> if you want EFL to copy the input buffer internally.</summary>
+   /// <param name="slice">If <c>null</c>, detaches the previous buffer.</param>
+   /// <param name="size">The size in pixels.</param>
+   /// <param name="stride">If 0, automatically guessed from the <c>width</c>.</param>
+   /// <param name="cspace">argb8888 by default.</param>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool SetBufferManaged( Eina.Slice slice,  Eina.Size2D size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane) {
+       var _in_slice = Eina.PrimitiveConversion.ManagedToPointerAlloc(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                                                                                    var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_managed_set_ptr.Value.Delegate(this.NativeHandle, _in_slice,  _in_size,  stride,  cspace,  plane);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Get a direct pointer to the internal pixel data, if available.
+   /// This will return <c>null</c> unless <see cref="Efl.Gfx.Buffer.SetBufferManaged"/> was used to pass in an external data pointer.</summary>
+   /// <param name="plane">Plane ID. 0 by default. Useful for planar formats only.</param>
+   /// <returns>The data slice. The memory pointer will be <c>null</c> in case of failure.</returns>
+   public Eina.Slice GetBufferManaged(  int plane) {
+                         var _ret_var = Efl.Gfx.BufferNativeInherit.efl_gfx_buffer_managed_get_ptr.Value.Delegate(this.NativeHandle, plane);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Rectangular size of the pixel buffer as allocated in memory.</summary>
+/// <value>Size of the buffer in pixels.</value>
+   public Eina.Size2D BufferSize {
+      get { return GetBufferSize(); }
+      set { SetBufferSize( value); }
+   }
+   /// <summary>The colorspace defines how pixels are encoded in the image in memory.
+/// By default, images are encoded in 32-bit BGRA, ie. each pixel takes 4 bytes in memory, with each channel B,G,R,A encoding the color with values from 0 to 255.
+/// 
+/// All images used in EFL use alpha-premultipied BGRA values, which means that for each pixel, B &lt;= A, G &lt;= A and R &lt;= A.</summary>
+/// <value>Colorspace</value>
+   public Efl.Gfx.Colorspace Colorspace {
+      get { return GetColorspace(); }
+   }
+   /// <summary>Indicates whether the alpha channel should be used.
+/// This does not indicate whether the image source file contains an alpha channel, only whether to respect it or discard it.</summary>
+/// <value>Whether to use alpha channel (<c>true</c>) data or not (<c>false</c>).</value>
+   public bool Alpha {
+      get { return GetAlpha(); }
+      set { SetAlpha( value); }
+   }
+   /// <summary>Length in bytes of one row of pixels in memory.
+/// Usually this will be equal to width * 4, with a plain BGRA image. This may return 0 if the stride is not applicable.
+/// 
+/// When applicable, this will include the <see cref="Efl.Gfx.Buffer.GetBufferBorders"/> as well as potential extra padding.</summary>
+/// <value>Stride</value>
+   public  int Stride {
+      get { return GetStride(); }
+   }
+}
+public class BufferNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_buffer_size_get_static_delegate == null)
+      efl_gfx_buffer_size_get_static_delegate = new efl_gfx_buffer_size_get_delegate(buffer_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_size_get_static_delegate)});
+      if (efl_gfx_buffer_size_set_static_delegate == null)
+      efl_gfx_buffer_size_set_static_delegate = new efl_gfx_buffer_size_set_delegate(buffer_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_size_set_static_delegate)});
+      if (efl_gfx_buffer_colorspace_get_static_delegate == null)
+      efl_gfx_buffer_colorspace_get_static_delegate = new efl_gfx_buffer_colorspace_get_delegate(colorspace_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_colorspace_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_colorspace_get_static_delegate)});
+      if (efl_gfx_buffer_alpha_get_static_delegate == null)
+      efl_gfx_buffer_alpha_get_static_delegate = new efl_gfx_buffer_alpha_get_delegate(alpha_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_alpha_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_alpha_get_static_delegate)});
+      if (efl_gfx_buffer_alpha_set_static_delegate == null)
+      efl_gfx_buffer_alpha_set_static_delegate = new efl_gfx_buffer_alpha_set_delegate(alpha_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_alpha_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_alpha_set_static_delegate)});
+      if (efl_gfx_buffer_stride_get_static_delegate == null)
+      efl_gfx_buffer_stride_get_static_delegate = new efl_gfx_buffer_stride_get_delegate(stride_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_stride_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_stride_get_static_delegate)});
+      if (efl_gfx_buffer_borders_get_static_delegate == null)
+      efl_gfx_buffer_borders_get_static_delegate = new efl_gfx_buffer_borders_get_delegate(buffer_borders_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_borders_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_borders_get_static_delegate)});
+      if (efl_gfx_buffer_update_add_static_delegate == null)
+      efl_gfx_buffer_update_add_static_delegate = new efl_gfx_buffer_update_add_delegate(buffer_update_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_update_add"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_update_add_static_delegate)});
+      if (efl_gfx_buffer_map_static_delegate == null)
+      efl_gfx_buffer_map_static_delegate = new efl_gfx_buffer_map_delegate(buffer_map);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_map"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_map_static_delegate)});
+      if (efl_gfx_buffer_unmap_static_delegate == null)
+      efl_gfx_buffer_unmap_static_delegate = new efl_gfx_buffer_unmap_delegate(buffer_unmap);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_unmap"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_unmap_static_delegate)});
+      if (efl_gfx_buffer_copy_set_static_delegate == null)
+      efl_gfx_buffer_copy_set_static_delegate = new efl_gfx_buffer_copy_set_delegate(buffer_copy_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_copy_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_copy_set_static_delegate)});
+      if (efl_gfx_buffer_managed_set_static_delegate == null)
+      efl_gfx_buffer_managed_set_static_delegate = new efl_gfx_buffer_managed_set_delegate(buffer_managed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_managed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_managed_set_static_delegate)});
+      if (efl_gfx_buffer_managed_get_static_delegate == null)
+      efl_gfx_buffer_managed_get_static_delegate = new efl_gfx_buffer_managed_get_delegate(buffer_managed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_buffer_managed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_buffer_managed_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.BufferConcrete.efl_gfx_buffer_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.BufferConcrete.efl_gfx_buffer_interface_get();
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_buffer_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_buffer_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_get_api_delegate> efl_gfx_buffer_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_get_api_delegate>(_Module, "efl_gfx_buffer_size_get");
+    private static Eina.Size2D_StructInternal buffer_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Buffer)wrapper).GetBufferSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_buffer_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_size_get_delegate efl_gfx_buffer_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_buffer_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_set_api_delegate> efl_gfx_buffer_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_size_set_api_delegate>(_Module, "efl_gfx_buffer_size_set");
+    private static  void buffer_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Buffer)wrapper).SetBufferSize( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_buffer_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_buffer_size_set_delegate efl_gfx_buffer_size_set_static_delegate;
+
+
+    private delegate Efl.Gfx.Colorspace efl_gfx_buffer_colorspace_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.Colorspace efl_gfx_buffer_colorspace_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_colorspace_get_api_delegate> efl_gfx_buffer_colorspace_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_colorspace_get_api_delegate>(_Module, "efl_gfx_buffer_colorspace_get");
+    private static Efl.Gfx.Colorspace colorspace_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_colorspace_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Colorspace _ret_var = default(Efl.Gfx.Colorspace);
+         try {
+            _ret_var = ((Buffer)wrapper).GetColorspace();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_buffer_colorspace_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_colorspace_get_delegate efl_gfx_buffer_colorspace_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_alpha_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_alpha_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_get_api_delegate> efl_gfx_buffer_alpha_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_get_api_delegate>(_Module, "efl_gfx_buffer_alpha_get");
+    private static bool alpha_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_alpha_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).GetAlpha();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_buffer_alpha_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_alpha_get_delegate efl_gfx_buffer_alpha_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_alpha_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+
+
+    public delegate  void efl_gfx_buffer_alpha_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_set_api_delegate> efl_gfx_buffer_alpha_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_alpha_set_api_delegate>(_Module, "efl_gfx_buffer_alpha_set");
+    private static  void alpha_set(System.IntPtr obj, System.IntPtr pd,  bool alpha)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_alpha_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).SetAlpha( alpha);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_buffer_alpha_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  alpha);
+      }
+   }
+   private static efl_gfx_buffer_alpha_set_delegate efl_gfx_buffer_alpha_set_static_delegate;
+
+
+    private delegate  int efl_gfx_buffer_stride_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_buffer_stride_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_stride_get_api_delegate> efl_gfx_buffer_stride_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_stride_get_api_delegate>(_Module, "efl_gfx_buffer_stride_get");
+    private static  int stride_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_stride_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Buffer)wrapper).GetStride();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_buffer_stride_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_buffer_stride_get_delegate efl_gfx_buffer_stride_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_borders_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  uint l,   out  uint r,   out  uint t,   out  uint b);
+
+
+    public delegate  void efl_gfx_buffer_borders_get_api_delegate(System.IntPtr obj,   out  uint l,   out  uint r,   out  uint t,   out  uint b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_borders_get_api_delegate> efl_gfx_buffer_borders_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_borders_get_api_delegate>(_Module, "efl_gfx_buffer_borders_get");
+    private static  void buffer_borders_get(System.IntPtr obj, System.IntPtr pd,  out  uint l,  out  uint r,  out  uint t,  out  uint b)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_borders_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( uint);      r = default( uint);      t = default( uint);      b = default( uint);                                 
+         try {
+            ((Buffer)wrapper).GetBufferBorders( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_buffer_borders_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_buffer_borders_get_delegate efl_gfx_buffer_borders_get_static_delegate;
+
+
+    private delegate  void efl_gfx_buffer_update_add_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Rect_StructInternal region);
+
+
+    public delegate  void efl_gfx_buffer_update_add_api_delegate(System.IntPtr obj,   ref Eina.Rect_StructInternal region);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_update_add_api_delegate> efl_gfx_buffer_update_add_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_update_add_api_delegate>(_Module, "efl_gfx_buffer_update_add");
+    private static  void buffer_update_add(System.IntPtr obj, System.IntPtr pd,  ref Eina.Rect_StructInternal region)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_update_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                     
+         try {
+            ((Buffer)wrapper).AddBufferUpdate( ref _in_region);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            region = Eina.Rect_StructConversion.ToInternal(_in_region);
+            } else {
+         efl_gfx_buffer_update_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref region);
+      }
+   }
+   private static efl_gfx_buffer_update_add_delegate efl_gfx_buffer_update_add_static_delegate;
+
+
+    private delegate Eina.RwSlice efl_gfx_buffer_map_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.BufferAccessMode mode,   ref Eina.Rect_StructInternal region,   Efl.Gfx.Colorspace cspace,    int plane,   out  int stride);
+
+
+    public delegate Eina.RwSlice efl_gfx_buffer_map_api_delegate(System.IntPtr obj,   Efl.Gfx.BufferAccessMode mode,   ref Eina.Rect_StructInternal region,   Efl.Gfx.Colorspace cspace,    int plane,   out  int stride);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_map_api_delegate> efl_gfx_buffer_map_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_map_api_delegate>(_Module, "efl_gfx_buffer_map");
+    private static Eina.RwSlice buffer_map(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.BufferAccessMode mode,  ref Eina.Rect_StructInternal region,  Efl.Gfx.Colorspace cspace,   int plane,  out  int stride)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_map was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                                                stride = default( int);                                       Eina.RwSlice _ret_var = default(Eina.RwSlice);
+         try {
+            _ret_var = ((Buffer)wrapper).BufferMap( mode,  ref _in_region,  cspace,  plane,  out stride);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          region = Eina.Rect_StructConversion.ToInternal(_in_region);
+                        return _ret_var;
+      } else {
+         return efl_gfx_buffer_map_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode,  ref region,  cspace,  plane,  out stride);
+      }
+   }
+   private static efl_gfx_buffer_map_delegate efl_gfx_buffer_map_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_unmap_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.RwSlice slice);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_unmap_api_delegate(System.IntPtr obj,   Eina.RwSlice slice);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_unmap_api_delegate> efl_gfx_buffer_unmap_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_unmap_api_delegate>(_Module, "efl_gfx_buffer_unmap");
+    private static bool buffer_unmap(System.IntPtr obj, System.IntPtr pd,  Eina.RwSlice slice)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_unmap was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).BufferUnmap( slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_unmap_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice);
+      }
+   }
+   private static efl_gfx_buffer_unmap_delegate efl_gfx_buffer_unmap_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_copy_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_copy_set_api_delegate(System.IntPtr obj,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_copy_set_api_delegate> efl_gfx_buffer_copy_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_copy_set_api_delegate>(_Module, "efl_gfx_buffer_copy_set");
+    private static bool buffer_copy_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr slice,  Eina.Size2D_StructInternal size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_copy_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_slice = Eina.PrimitiveConversion.PointerToManaged<Eina.Slice>(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                                                                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).SetBufferCopy( _in_slice,  _in_size,  stride,  cspace,  plane);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_copy_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice,  size,  stride,  cspace,  plane);
+      }
+   }
+   private static efl_gfx_buffer_copy_set_delegate efl_gfx_buffer_copy_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_buffer_managed_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_buffer_managed_set_api_delegate(System.IntPtr obj,    System.IntPtr slice,   Eina.Size2D_StructInternal size,    int stride,   Efl.Gfx.Colorspace cspace,    int plane);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_set_api_delegate> efl_gfx_buffer_managed_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_set_api_delegate>(_Module, "efl_gfx_buffer_managed_set");
+    private static bool buffer_managed_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr slice,  Eina.Size2D_StructInternal size,   int stride,  Efl.Gfx.Colorspace cspace,   int plane)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_managed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_slice = Eina.PrimitiveConversion.PointerToManaged<Eina.Slice>(slice);
+      var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                                                                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).SetBufferManaged( _in_slice,  _in_size,  stride,  cspace,  plane);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_managed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice,  size,  stride,  cspace,  plane);
+      }
+   }
+   private static efl_gfx_buffer_managed_set_delegate efl_gfx_buffer_managed_set_static_delegate;
+
+
+    private delegate Eina.Slice efl_gfx_buffer_managed_get_delegate(System.IntPtr obj, System.IntPtr pd,    int plane);
+
+
+    public delegate Eina.Slice efl_gfx_buffer_managed_get_api_delegate(System.IntPtr obj,    int plane);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_get_api_delegate> efl_gfx_buffer_managed_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_buffer_managed_get_api_delegate>(_Module, "efl_gfx_buffer_managed_get");
+    private static Eina.Slice buffer_managed_get(System.IntPtr obj, System.IntPtr pd,   int plane)
+   {
+      Eina.Log.Debug("function efl_gfx_buffer_managed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Slice _ret_var = default(Eina.Slice);
+         try {
+            _ret_var = ((Buffer)wrapper).GetBufferManaged( plane);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_buffer_managed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  plane);
+      }
+   }
+   private static efl_gfx_buffer_managed_get_delegate efl_gfx_buffer_managed_get_static_delegate;
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Graphics buffer access mode</summary>
+public enum BufferAccessMode
+{
+/// <summary>No buffer access</summary>
+None = 0,
+/// <summary>Read access to buffer</summary>
+Read = 1,
+/// <summary>Write aces to buffer</summary>
+Write = 2,
+/// <summary>Forces copy-on-write if already mapped as read-only. Requires write.</summary>
+Cow = 4,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_color.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_color.eo.cs
new file mode 100755 (executable)
index 0000000..a1cee37
--- /dev/null
@@ -0,0 +1,302 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl Gfx Color mixin class</summary>
+[ColorNativeInherit]
+public interface Color : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Retrieves the general/main color of the given Evas object.
+/// Retrieves the main color&apos;s RGB component (and alpha channel) values, which range from 0 to 255. For the alpha channel, which defines the object&apos;s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.
+/// 
+/// Usually youll use this attribute for text and rectangle objects, where the main color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.
+/// 
+/// All newly created Evas rectangles get the default color values of 255 255 255 255 (opaque white).
+/// 
+/// Use null pointers on the components you&apos;re not interested in: they&apos;ll be ignored by the function.</summary>
+/// <param name="r"></param>
+/// <param name="g"></param>
+/// <param name="b"></param>
+/// <param name="a"></param>
+/// <returns></returns>
+ void GetColor( out  int r,  out  int g,  out  int b,  out  int a);
+   /// <summary>Sets the general/main color of the given Evas object to the given one.
+/// See also <see cref="Efl.Gfx.Color.GetColor"/> (for an example)
+/// 
+/// These color values are expected to be premultiplied by alpha.</summary>
+/// <param name="r"></param>
+/// <param name="g"></param>
+/// <param name="b"></param>
+/// <param name="a"></param>
+/// <returns></returns>
+ void SetColor(  int r,   int g,   int b,   int a);
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <returns>the hex color code.</returns>
+ System.String GetColorCode();
+   /// <summary>Set the color of given Evas object to the given hex color code(#RRGGBBAA). e.g. efl_gfx_color_code_set(obj, &quot;#FFCCAACC&quot;);</summary>
+/// <param name="colorcode">the hex color code.</param>
+/// <returns></returns>
+ void SetColorCode(  System.String colorcode);
+               /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <value>the hex color code.</value>
+    System.String ColorCode {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl Gfx Color mixin class</summary>
+sealed public class ColorConcrete : 
+
+Color
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ColorConcrete))
+            return Efl.Gfx.ColorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_color_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ColorConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ColorConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ColorConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ColorConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Retrieves the general/main color of the given Evas object.
+   /// Retrieves the main color&apos;s RGB component (and alpha channel) values, which range from 0 to 255. For the alpha channel, which defines the object&apos;s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.
+   /// 
+   /// Usually youll use this attribute for text and rectangle objects, where the main color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.
+   /// 
+   /// All newly created Evas rectangles get the default color values of 255 255 255 255 (opaque white).
+   /// 
+   /// Use null pointers on the components you&apos;re not interested in: they&apos;ll be ignored by the function.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   public  void GetColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets the general/main color of the given Evas object to the given one.
+   /// See also <see cref="Efl.Gfx.Color.GetColor"/> (for an example)
+   /// 
+   /// These color values are expected to be premultiplied by alpha.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   public  void SetColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+   /// <returns>the hex color code.</returns>
+   public  System.String GetColorCode() {
+       var _ret_var = Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the color of given Evas object to the given hex color code(#RRGGBBAA). e.g. efl_gfx_color_code_set(obj, &quot;#FFCCAACC&quot;);</summary>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns></returns>
+   public  void SetColorCode(  System.String colorcode) {
+                         Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_set_ptr.Value.Delegate(this.NativeHandle, colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <value>the hex color code.</value>
+   public  System.String ColorCode {
+      get { return GetColorCode(); }
+      set { SetColorCode( value); }
+   }
+}
+public class ColorNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_color_get_static_delegate == null)
+      efl_gfx_color_get_static_delegate = new efl_gfx_color_get_delegate(color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_get_static_delegate)});
+      if (efl_gfx_color_set_static_delegate == null)
+      efl_gfx_color_set_static_delegate = new efl_gfx_color_set_delegate(color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_set_static_delegate)});
+      if (efl_gfx_color_code_get_static_delegate == null)
+      efl_gfx_color_code_get_static_delegate = new efl_gfx_color_code_get_delegate(color_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_get_static_delegate)});
+      if (efl_gfx_color_code_set_static_delegate == null)
+      efl_gfx_color_code_set_static_delegate = new efl_gfx_color_code_set_delegate(color_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.ColorConcrete.efl_gfx_color_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.ColorConcrete.efl_gfx_color_mixin_get();
+   }
+
+
+    private delegate  void efl_gfx_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate> efl_gfx_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate>(_Module, "efl_gfx_color_get");
+    private static  void color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((ColorConcrete)wrapper).GetColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_get_delegate efl_gfx_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate> efl_gfx_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate>(_Module, "efl_gfx_color_set");
+    private static  void color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((ColorConcrete)wrapper).SetColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_set_delegate efl_gfx_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate> efl_gfx_color_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate>(_Module, "efl_gfx_color_code_get");
+    private static  System.String color_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ColorConcrete)wrapper).GetColorCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_color_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_code_get_delegate efl_gfx_color_code_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    public delegate  void efl_gfx_color_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate> efl_gfx_color_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate>(_Module, "efl_gfx_color_code_set");
+    private static  void color_code_set(System.IntPtr obj, System.IntPtr pd,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ColorConcrete)wrapper).SetColorCode( colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  colorcode);
+      }
+   }
+   private static efl_gfx_color_code_set_delegate efl_gfx_color_code_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_color_class.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_color_class.eo.cs
new file mode 100755 (executable)
index 0000000..03313c0
--- /dev/null
@@ -0,0 +1,474 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl Gfx Color Class mixin class</summary>
+[ColorClassNativeInherit]
+public interface ColorClass : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get the color of color class.
+/// This function gets the color values for a color class. If no explicit object color is set, then global values will be used.
+/// 
+/// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+/// 
+/// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+/// <param name="color_class">The name of color class</param>
+/// <param name="layer">The layer to set the color</param>
+/// <param name="r">The intensity of the red color</param>
+/// <param name="g">The intensity of the green color</param>
+/// <param name="b">The intensity of the blue color</param>
+/// <param name="a">The alpha value</param>
+/// <returns><c>true</c> if getting the color succeeded, <c>false</c> otherwise</returns>
+bool GetColorClass(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,  out  int r,  out  int g,  out  int b,  out  int a);
+   /// <summary>Set the color of color class.
+/// This function sets the color values for a color class. This will cause all edje parts in the specified object that have the specified color class to have their colors multiplied by these values.
+/// 
+/// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+/// 
+/// Setting color emits a signal &quot;color_class,set&quot; with source being the given color.
+/// 
+/// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+/// <param name="color_class">The name of color class</param>
+/// <param name="layer">The layer to set the color</param>
+/// <param name="r">The intensity of the red color</param>
+/// <param name="g">The intensity of the green color</param>
+/// <param name="b">The intensity of the blue color</param>
+/// <param name="a">The alpha value</param>
+/// <returns><c>true</c> if setting the color succeeded, <c>false</c> otherwise</returns>
+bool SetColorClass(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,   int r,   int g,   int b,   int a);
+   /// <summary>Get the hex color string of color class.
+/// This function gets the color values for a color class. If no explicit object color is set, then global values will be used.
+/// 
+/// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+/// 
+/// Returns NULL if the color class cannot be fetched.
+/// 
+/// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+/// <param name="color_class">The name of color class</param>
+/// <param name="layer">The layer to set the color</param>
+/// <returns>the hex color code.</returns>
+ System.String GetColorClassCode(  System.String color_class,  Efl.Gfx.ColorClassLayer layer);
+   /// <summary>Set the hex color string of color class.
+/// This function sets the color values for a color class. This will cause all edje parts in the specified object that have the specified color class to have their colors multiplied by these values.
+/// 
+/// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+/// 
+/// Setting color emits a signal &quot;color_class,set&quot; with source being the given color.
+/// 
+/// Note: These color values are expected to be premultiplied by the alpha.</summary>
+/// <param name="color_class">The name of color class</param>
+/// <param name="layer">The layer to set the color</param>
+/// <param name="colorcode">the hex color code.</param>
+/// <returns><c>true</c> if setting the color succeeded, <c>false</c> otherwise</returns>
+bool SetColorClassCode(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,   System.String colorcode);
+   /// <summary>Get the description of a color class.
+/// This function gets the description of a color class in use by an object.</summary>
+/// <param name="color_class">The name of color class</param>
+/// <returns>The description of the target color class or <c>null</c> if not found</returns>
+ System.String GetColorClassDescription(  System.String color_class);
+   /// <summary>Delete the color class.
+/// This function deletes any values for the specified color class.
+/// 
+/// Deleting the color class will revert it to the values defined by <see cref="Efl.Gfx.ColorClass.GetColorClass"/> or the color class defined in the theme file.
+/// 
+/// Deleting the color class will emit the signal &quot;color_class,del&quot; for the given Edje object.</summary>
+/// <param name="color_class">The name of color_class</param>
+/// <returns></returns>
+ void DelColorClass(  System.String color_class);
+   /// <summary>Delete all color classes defined in object level.
+/// This function deletes any color classes defined in object level. Clearing color classes will revert the color of all edje parts to the values defined in global level or theme file.
+/// 1.17.0</summary>
+/// <returns></returns>
+ void ClearColorClass();
+                     }
+/// <summary>Efl Gfx Color Class mixin class</summary>
+sealed public class ColorClassConcrete : 
+
+ColorClass
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ColorClassConcrete))
+            return Efl.Gfx.ColorClassNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_color_class_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ColorClassConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ColorClassConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ColorClassConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ColorClassConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get the color of color class.
+   /// This function gets the color values for a color class. If no explicit object color is set, then global values will be used.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <param name="r">The intensity of the red color</param>
+   /// <param name="g">The intensity of the green color</param>
+   /// <param name="b">The intensity of the blue color</param>
+   /// <param name="a">The alpha value</param>
+   /// <returns><c>true</c> if getting the color succeeded, <c>false</c> otherwise</returns>
+   public bool GetColorClass(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,  out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                                                                   var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_get_ptr.Value.Delegate(this.NativeHandle, color_class,  layer,  out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                              return _ret_var;
+ }
+   /// <summary>Set the color of color class.
+   /// This function sets the color values for a color class. This will cause all edje parts in the specified object that have the specified color class to have their colors multiplied by these values.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Setting color emits a signal &quot;color_class,set&quot; with source being the given color.
+   /// 
+   /// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <param name="r">The intensity of the red color</param>
+   /// <param name="g">The intensity of the green color</param>
+   /// <param name="b">The intensity of the blue color</param>
+   /// <param name="a">The alpha value</param>
+   /// <returns><c>true</c> if setting the color succeeded, <c>false</c> otherwise</returns>
+   public bool SetColorClass(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,   int r,   int g,   int b,   int a) {
+                                                                                                                   var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_set_ptr.Value.Delegate(this.NativeHandle, color_class,  layer,  r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                              return _ret_var;
+ }
+   /// <summary>Get the hex color string of color class.
+   /// This function gets the color values for a color class. If no explicit object color is set, then global values will be used.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Returns NULL if the color class cannot be fetched.
+   /// 
+   /// Note: These color values are expected to be premultiplied by <c>a</c>.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <returns>the hex color code.</returns>
+   public  System.String GetColorClassCode(  System.String color_class,  Efl.Gfx.ColorClassLayer layer) {
+                                           var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_code_get_ptr.Value.Delegate(this.NativeHandle, color_class,  layer);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Set the hex color string of color class.
+   /// This function sets the color values for a color class. This will cause all edje parts in the specified object that have the specified color class to have their colors multiplied by these values.
+   /// 
+   /// The first color is the object, the second is the text outline, and the third is the text shadow. (Note that the second two only apply to text parts).
+   /// 
+   /// Setting color emits a signal &quot;color_class,set&quot; with source being the given color.
+   /// 
+   /// Note: These color values are expected to be premultiplied by the alpha.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <param name="layer">The layer to set the color</param>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns><c>true</c> if setting the color succeeded, <c>false</c> otherwise</returns>
+   public bool SetColorClassCode(  System.String color_class,  Efl.Gfx.ColorClassLayer layer,   System.String colorcode) {
+                                                             var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_code_set_ptr.Value.Delegate(this.NativeHandle, color_class,  layer,  colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Get the description of a color class.
+   /// This function gets the description of a color class in use by an object.</summary>
+   /// <param name="color_class">The name of color class</param>
+   /// <returns>The description of the target color class or <c>null</c> if not found</returns>
+   public  System.String GetColorClassDescription(  System.String color_class) {
+                         var _ret_var = Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_description_get_ptr.Value.Delegate(this.NativeHandle, color_class);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Delete the color class.
+   /// This function deletes any values for the specified color class.
+   /// 
+   /// Deleting the color class will revert it to the values defined by <see cref="Efl.Gfx.ColorClass.GetColorClass"/> or the color class defined in the theme file.
+   /// 
+   /// Deleting the color class will emit the signal &quot;color_class,del&quot; for the given Edje object.</summary>
+   /// <param name="color_class">The name of color_class</param>
+   /// <returns></returns>
+   public  void DelColorClass(  System.String color_class) {
+                         Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_del_ptr.Value.Delegate(this.NativeHandle, color_class);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Delete all color classes defined in object level.
+   /// This function deletes any color classes defined in object level. Clearing color classes will revert the color of all edje parts to the values defined in global level or theme file.
+   /// 1.17.0</summary>
+   /// <returns></returns>
+   public  void ClearColorClass() {
+       Efl.Gfx.ColorClassNativeInherit.efl_gfx_color_class_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+}
+public class ColorClassNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_color_class_get_static_delegate == null)
+      efl_gfx_color_class_get_static_delegate = new efl_gfx_color_class_get_delegate(color_class_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_get_static_delegate)});
+      if (efl_gfx_color_class_set_static_delegate == null)
+      efl_gfx_color_class_set_static_delegate = new efl_gfx_color_class_set_delegate(color_class_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_set_static_delegate)});
+      if (efl_gfx_color_class_code_get_static_delegate == null)
+      efl_gfx_color_class_code_get_static_delegate = new efl_gfx_color_class_code_get_delegate(color_class_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_code_get_static_delegate)});
+      if (efl_gfx_color_class_code_set_static_delegate == null)
+      efl_gfx_color_class_code_set_static_delegate = new efl_gfx_color_class_code_set_delegate(color_class_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_code_set_static_delegate)});
+      if (efl_gfx_color_class_description_get_static_delegate == null)
+      efl_gfx_color_class_description_get_static_delegate = new efl_gfx_color_class_description_get_delegate(color_class_description_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_description_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_description_get_static_delegate)});
+      if (efl_gfx_color_class_del_static_delegate == null)
+      efl_gfx_color_class_del_static_delegate = new efl_gfx_color_class_del_delegate(color_class_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_del"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_del_static_delegate)});
+      if (efl_gfx_color_class_clear_static_delegate == null)
+      efl_gfx_color_class_clear_static_delegate = new efl_gfx_color_class_clear_delegate(color_class_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_class_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_class_clear_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.ColorClassConcrete.efl_gfx_color_class_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.ColorClassConcrete.efl_gfx_color_class_mixin_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_color_class_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_color_class_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_get_api_delegate> efl_gfx_color_class_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_get_api_delegate>(_Module, "efl_gfx_color_class_get");
+    private static bool color_class_get(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                               r = default( int);      g = default( int);      b = default( int);      a = default( int);                                             bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ColorClassConcrete)wrapper).GetColorClass( color_class,  layer,  out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                              return _ret_var;
+      } else {
+         return efl_gfx_color_class_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer,  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_class_get_delegate efl_gfx_color_class_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_color_class_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,    int r,    int g,    int b,    int a);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_color_class_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_set_api_delegate> efl_gfx_color_class_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_set_api_delegate>(_Module, "efl_gfx_color_class_set");
+    private static bool color_class_set(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ColorClassConcrete)wrapper).SetColorClass( color_class,  layer,  r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                              return _ret_var;
+      } else {
+         return efl_gfx_color_class_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer,  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_class_set_delegate efl_gfx_color_class_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_class_code_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_class_code_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_get_api_delegate> efl_gfx_color_class_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_get_api_delegate>(_Module, "efl_gfx_color_class_code_get");
+    private static  System.String color_class_code_get(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ColorClassConcrete)wrapper).GetColorClassCode( color_class,  layer);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_gfx_color_class_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer);
+      }
+   }
+   private static efl_gfx_color_class_code_get_delegate efl_gfx_color_class_code_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_color_class_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_color_class_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class,   Efl.Gfx.ColorClassLayer layer,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_set_api_delegate> efl_gfx_color_class_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_code_set_api_delegate>(_Module, "efl_gfx_color_class_code_set");
+    private static bool color_class_code_set(System.IntPtr obj, System.IntPtr pd,   System.String color_class,  Efl.Gfx.ColorClassLayer layer,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ColorClassConcrete)wrapper).SetColorClassCode( color_class,  layer,  colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_color_class_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class,  layer,  colorcode);
+      }
+   }
+   private static efl_gfx_color_class_code_set_delegate efl_gfx_color_class_code_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_class_description_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_class_description_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_description_get_api_delegate> efl_gfx_color_class_description_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_description_get_api_delegate>(_Module, "efl_gfx_color_class_description_get");
+    private static  System.String color_class_description_get(System.IntPtr obj, System.IntPtr pd,   System.String color_class)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_description_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ColorClassConcrete)wrapper).GetColorClassDescription( color_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_color_class_description_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class);
+      }
+   }
+   private static efl_gfx_color_class_description_get_delegate efl_gfx_color_class_description_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_class_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+
+
+    public delegate  void efl_gfx_color_class_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String color_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_del_api_delegate> efl_gfx_color_class_del_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_del_api_delegate>(_Module, "efl_gfx_color_class_del");
+    private static  void color_class_del(System.IntPtr obj, System.IntPtr pd,   System.String color_class)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ColorClassConcrete)wrapper).DelColorClass( color_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_class_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  color_class);
+      }
+   }
+   private static efl_gfx_color_class_del_delegate efl_gfx_color_class_del_static_delegate;
+
+
+    private delegate  void efl_gfx_color_class_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_color_class_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_class_clear_api_delegate> efl_gfx_color_class_clear_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_class_clear_api_delegate>(_Module, "efl_gfx_color_class_clear");
+    private static  void color_class_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_class_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ColorClassConcrete)wrapper).ClearColorClass();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_color_class_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_class_clear_delegate efl_gfx_color_class_clear_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_entity.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_entity.eo.cs
new file mode 100755 (executable)
index 0000000..a61118d
--- /dev/null
@@ -0,0 +1,773 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics interface</summary>
+[EntityNativeInherit]
+public interface Entity : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+/// <returns>A 2D coordinate in pixel units.</returns>
+Eina.Position2D GetPosition();
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+/// <param name="pos">A 2D coordinate in pixel units.</param>
+/// <returns></returns>
+ void SetPosition( Eina.Position2D pos);
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+/// <returns>A 2D size in pixel units.</returns>
+Eina.Size2D GetSize();
+   /// <summary>Changes the size of the given object.
+/// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+/// <param name="size">A 2D size in pixel units.</param>
+/// <returns></returns>
+ void SetSize( Eina.Size2D size);
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <returns>The X,Y position and W,H size, in pixels.</returns>
+Eina.Rect GetGeometry();
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+/// <returns></returns>
+ void SetGeometry( Eina.Rect rect);
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+/// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+bool GetVisible();
+   /// <summary>Shows or hides this object.</summary>
+/// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetVisible( bool v);
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+/// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+double GetScale();
+   /// <summary>Sets the scaling factor of an object.</summary>
+/// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+/// <returns></returns>
+ void SetScale( double scale);
+                                 /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt;
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt;
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt;
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   Eina.Position2D Position {
+      get ;
+      set ;
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   Eina.Size2D Size {
+      get ;
+      set ;
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   Eina.Rect Geometry {
+      get ;
+      set ;
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   bool Visible {
+      get ;
+      set ;
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   double Scale {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Gfx.Entity.VisibilityChangedEvt"/>.</summary>
+public class EntityVisibilityChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public bool arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Gfx.Entity.PositionChangedEvt"/>.</summary>
+public class EntityPositionChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Eina.Position2D arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Gfx.Entity.SizeChangedEvt"/>.</summary>
+public class EntitySizeChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Eina.Size2D arg { get; set; }
+}
+/// <summary>Efl graphics interface</summary>
+sealed public class EntityConcrete : 
+
+Entity
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (EntityConcrete))
+            return Efl.Gfx.EntityNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_entity_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public EntityConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~EntityConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static EntityConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new EntityConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object VisibilityChangedEvtKey = new object();
+   /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   public event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_VisibilityChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibilityChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibilityChangedEvt.</summary>
+   public void On_VisibilityChangedEvt(Efl.Gfx.EntityVisibilityChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args>)eventHandlers[VisibilityChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibilityChangedEvt_delegate;
+   private void on_VisibilityChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityVisibilityChangedEvt_Args args = new Efl.Gfx.EntityVisibilityChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_VisibilityChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(Efl.Gfx.EntityPositionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args>)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityPositionChangedEvt_Args args = new Efl.Gfx.EntityPositionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(Efl.Gfx.EntitySizeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args>)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntitySizeChangedEvt_Args args = new Efl.Gfx.EntitySizeChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_VisibilityChangedEvt_delegate = new Efl.EventCb(on_VisibilityChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+   }
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+   /// <returns>A 2D coordinate in pixel units.</returns>
+   public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+   /// <param name="pos">A 2D coordinate in pixel units.</param>
+   /// <returns></returns>
+   public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_set_ptr.Value.Delegate(this.NativeHandle, _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+   /// <returns>A 2D size in pixel units.</returns>
+   public Eina.Size2D GetSize() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Changes the size of the given object.
+   /// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+   /// <param name="size">A 2D size in pixel units.</param>
+   /// <returns></returns>
+   public  void SetSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_set_ptr.Value.Delegate(this.NativeHandle, _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <returns>The X,Y position and W,H size, in pixels.</returns>
+   public Eina.Rect GetGeometry() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+   /// <returns></returns>
+   public  void SetGeometry( Eina.Rect rect) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_set_ptr.Value.Delegate(this.NativeHandle, _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+   /// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+   public bool GetVisible() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Shows or hides this object.</summary>
+   /// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetVisible( bool v) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_set_ptr.Value.Delegate(this.NativeHandle, v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+   /// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+   public double GetScale() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scaling factor of an object.</summary>
+   /// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+   /// <returns></returns>
+   public  void SetScale( double scale) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_set_ptr.Value.Delegate(this.NativeHandle, scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   public Eina.Size2D Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   public Eina.Rect Geometry {
+      get { return GetGeometry(); }
+      set { SetGeometry( value); }
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   public bool Visible {
+      get { return GetVisible(); }
+      set { SetVisible( value); }
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   public double Scale {
+      get { return GetScale(); }
+      set { SetScale( value); }
+   }
+}
+public class EntityNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_entity_position_get_static_delegate == null)
+      efl_gfx_entity_position_get_static_delegate = new efl_gfx_entity_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_get_static_delegate)});
+      if (efl_gfx_entity_position_set_static_delegate == null)
+      efl_gfx_entity_position_set_static_delegate = new efl_gfx_entity_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_set_static_delegate)});
+      if (efl_gfx_entity_size_get_static_delegate == null)
+      efl_gfx_entity_size_get_static_delegate = new efl_gfx_entity_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_get_static_delegate)});
+      if (efl_gfx_entity_size_set_static_delegate == null)
+      efl_gfx_entity_size_set_static_delegate = new efl_gfx_entity_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_set_static_delegate)});
+      if (efl_gfx_entity_geometry_get_static_delegate == null)
+      efl_gfx_entity_geometry_get_static_delegate = new efl_gfx_entity_geometry_get_delegate(geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_get_static_delegate)});
+      if (efl_gfx_entity_geometry_set_static_delegate == null)
+      efl_gfx_entity_geometry_set_static_delegate = new efl_gfx_entity_geometry_set_delegate(geometry_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_set_static_delegate)});
+      if (efl_gfx_entity_visible_get_static_delegate == null)
+      efl_gfx_entity_visible_get_static_delegate = new efl_gfx_entity_visible_get_delegate(visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_get_static_delegate)});
+      if (efl_gfx_entity_visible_set_static_delegate == null)
+      efl_gfx_entity_visible_set_static_delegate = new efl_gfx_entity_visible_set_delegate(visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_set_static_delegate)});
+      if (efl_gfx_entity_scale_get_static_delegate == null)
+      efl_gfx_entity_scale_get_static_delegate = new efl_gfx_entity_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_get_static_delegate)});
+      if (efl_gfx_entity_scale_set_static_delegate == null)
+      efl_gfx_entity_scale_set_static_delegate = new efl_gfx_entity_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.EntityConcrete.efl_gfx_entity_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.EntityConcrete.efl_gfx_entity_interface_get();
+   }
+
+
+    private delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate> efl_gfx_entity_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate>(_Module, "efl_gfx_entity_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Entity)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_position_get_delegate efl_gfx_entity_position_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_gfx_entity_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate> efl_gfx_entity_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate>(_Module, "efl_gfx_entity_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Entity)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_gfx_entity_position_set_delegate efl_gfx_entity_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate> efl_gfx_entity_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate>(_Module, "efl_gfx_entity_size_get");
+    private static Eina.Size2D_StructInternal size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Entity)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_size_get_delegate efl_gfx_entity_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_entity_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate> efl_gfx_entity_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate>(_Module, "efl_gfx_entity_size_set");
+    private static  void size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Entity)wrapper).SetSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_entity_size_set_delegate efl_gfx_entity_size_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate> efl_gfx_entity_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate>(_Module, "efl_gfx_entity_geometry_get");
+    private static Eina.Rect_StructInternal geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Entity)wrapper).GetGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_geometry_get_delegate efl_gfx_entity_geometry_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_geometry_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect);
+
+
+    public delegate  void efl_gfx_entity_geometry_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate> efl_gfx_entity_geometry_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate>(_Module, "efl_gfx_entity_geometry_set");
+    private static  void geometry_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                     
+         try {
+            ((Entity)wrapper).SetGeometry( _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_geometry_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect);
+      }
+   }
+   private static efl_gfx_entity_geometry_set_delegate efl_gfx_entity_geometry_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_entity_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_entity_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate> efl_gfx_entity_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate>(_Module, "efl_gfx_entity_visible_get");
+    private static bool visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Entity)wrapper).GetVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_visible_get_delegate efl_gfx_entity_visible_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_gfx_entity_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate> efl_gfx_entity_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate>(_Module, "efl_gfx_entity_visible_set");
+    private static  void visible_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Entity)wrapper).SetVisible( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_gfx_entity_visible_set_delegate efl_gfx_entity_visible_set_static_delegate;
+
+
+    private delegate double efl_gfx_entity_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_entity_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate> efl_gfx_entity_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate>(_Module, "efl_gfx_entity_scale_get");
+    private static double scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Entity)wrapper).GetScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_scale_get_delegate efl_gfx_entity_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_entity_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate> efl_gfx_entity_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate>(_Module, "efl_gfx_entity_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Entity)wrapper).SetScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_entity_scale_set_delegate efl_gfx_entity_scale_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_fill.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_fill.eo.cs
new file mode 100755 (executable)
index 0000000..e48e332
--- /dev/null
@@ -0,0 +1,332 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics fill interface</summary>
+[FillNativeInherit]
+public interface Fill : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+/// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+/// 
+/// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+/// 
+/// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+/// <returns><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</returns>
+bool GetFillAuto();
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+/// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+/// 
+/// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+/// 
+/// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+/// <param name="filled"><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</param>
+/// <returns></returns>
+ void SetFillAuto( bool filled);
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+/// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+/// 
+/// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+/// <returns>The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</returns>
+Eina.Rect GetFill();
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+/// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+/// 
+/// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+/// <param name="fill">The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</param>
+/// <returns></returns>
+ void SetFill( Eina.Rect fill);
+               /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+/// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+/// 
+/// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+/// 
+/// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+/// <value><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</value>
+   bool FillAuto {
+      get ;
+      set ;
+   }
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+/// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+/// 
+/// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+/// <value>The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</value>
+   Eina.Rect Fill {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl graphics fill interface</summary>
+sealed public class FillConcrete : 
+
+Fill
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FillConcrete))
+            return Efl.Gfx.FillNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_fill_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FillConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FillConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FillConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FillConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+   /// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+   /// 
+   /// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+   /// 
+   /// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+   /// <returns><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</returns>
+   public bool GetFillAuto() {
+       var _ret_var = Efl.Gfx.FillNativeInherit.efl_gfx_fill_auto_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+   /// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+   /// 
+   /// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+   /// 
+   /// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+   /// <param name="filled"><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   public  void SetFillAuto( bool filled) {
+                         Efl.Gfx.FillNativeInherit.efl_gfx_fill_auto_set_ptr.Value.Delegate(this.NativeHandle, filled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+   /// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+   /// 
+   /// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+   /// <returns>The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</returns>
+   public Eina.Rect GetFill() {
+       var _ret_var = Efl.Gfx.FillNativeInherit.efl_gfx_fill_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+   /// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+   /// 
+   /// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+   /// <param name="fill">The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</param>
+   /// <returns></returns>
+   public  void SetFill( Eina.Rect fill) {
+       var _in_fill = Eina.Rect_StructConversion.ToInternal(fill);
+                  Efl.Gfx.FillNativeInherit.efl_gfx_fill_set_ptr.Value.Delegate(this.NativeHandle, _in_fill);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Binds the object&apos;s <see cref="Efl.Gfx.Fill.Fill"/> property to its actual geometry.
+/// If <c>true</c>, then every time the object is resized, it will automatically trigger a call to <see cref="Efl.Gfx.Fill.SetFill"/> with the new size (and 0, 0 as source image&apos;s origin), so the image will cover the whole object&apos;s area.
+/// 
+/// This property takes precedence over <see cref="Efl.Gfx.Fill.Fill"/>. If set to <c>false</c>, then <see cref="Efl.Gfx.Fill.Fill"/> should be set.
+/// 
+/// This flag is <c>true</c> by default (used to be <c>false</c> with the old APIs, and was known as &quot;filled&quot;).</summary>
+/// <value><c>true</c> to make the fill property follow object size or <c>false</c> otherwise.</value>
+   public bool FillAuto {
+      get { return GetFillAuto(); }
+      set { SetFillAuto( value); }
+   }
+   /// <summary>Specifies how to tile an image to fill its rectangle geometry.
+/// Note that if <c>w</c> or <c>h</c> are smaller than the dimensions of the object, the displayed image will be tiled around the object&apos;s area. To have only one copy of the bound image drawn, <c>x</c> and <c>y</c> must be 0 and <c>w</c> and <c>h</c> need to be the exact width and height of the image object itself, respectively.
+/// 
+/// Setting this property will reset the <see cref="Efl.Gfx.Fill.FillAuto"/> to <c>false</c>.</summary>
+/// <value>The top-left corner to start drawing from as well as the size at which the bound image will be displayed.</value>
+   public Eina.Rect Fill {
+      get { return GetFill(); }
+      set { SetFill( value); }
+   }
+}
+public class FillNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_fill_auto_get_static_delegate == null)
+      efl_gfx_fill_auto_get_static_delegate = new efl_gfx_fill_auto_get_delegate(fill_auto_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_auto_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_auto_get_static_delegate)});
+      if (efl_gfx_fill_auto_set_static_delegate == null)
+      efl_gfx_fill_auto_set_static_delegate = new efl_gfx_fill_auto_set_delegate(fill_auto_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_auto_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_auto_set_static_delegate)});
+      if (efl_gfx_fill_get_static_delegate == null)
+      efl_gfx_fill_get_static_delegate = new efl_gfx_fill_get_delegate(fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_get_static_delegate)});
+      if (efl_gfx_fill_set_static_delegate == null)
+      efl_gfx_fill_set_static_delegate = new efl_gfx_fill_set_delegate(fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_fill_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.FillConcrete.efl_gfx_fill_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.FillConcrete.efl_gfx_fill_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_fill_auto_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_fill_auto_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_get_api_delegate> efl_gfx_fill_auto_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_get_api_delegate>(_Module, "efl_gfx_fill_auto_get");
+    private static bool fill_auto_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_auto_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Fill)wrapper).GetFillAuto();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_fill_auto_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_fill_auto_get_delegate efl_gfx_fill_auto_get_static_delegate;
+
+
+    private delegate  void efl_gfx_fill_auto_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool filled);
+
+
+    public delegate  void efl_gfx_fill_auto_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool filled);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_set_api_delegate> efl_gfx_fill_auto_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_auto_set_api_delegate>(_Module, "efl_gfx_fill_auto_set");
+    private static  void fill_auto_set(System.IntPtr obj, System.IntPtr pd,  bool filled)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_auto_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Fill)wrapper).SetFillAuto( filled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_fill_auto_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  filled);
+      }
+   }
+   private static efl_gfx_fill_auto_set_delegate efl_gfx_fill_auto_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_get_api_delegate> efl_gfx_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_get_api_delegate>(_Module, "efl_gfx_fill_get");
+    private static Eina.Rect_StructInternal fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Fill)wrapper).GetFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_fill_get_delegate efl_gfx_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal fill);
+
+
+    public delegate  void efl_gfx_fill_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal fill);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_fill_set_api_delegate> efl_gfx_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_fill_set_api_delegate>(_Module, "efl_gfx_fill_set");
+    private static  void fill_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal fill)
+   {
+      Eina.Log.Debug("function efl_gfx_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_fill = Eina.Rect_StructConversion.ToManaged(fill);
+                     
+         try {
+            ((Fill)wrapper).SetFill( _in_fill);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill);
+      }
+   }
+   private static efl_gfx_fill_set_delegate efl_gfx_fill_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_filter.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_filter.eo.cs
new file mode 100755 (executable)
index 0000000..4b6a63a
--- /dev/null
@@ -0,0 +1,616 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Graphical filters can be applied to any object implementing this interface.
+/// Filters are programmable effects that run whenever the object is rendered on its canvas. The program language is Lua and a complete reference can be found under &quot;EFL Graphics Filters&quot;.
+/// 
+/// This was a beta feature since 1.15.
+/// 1.18</summary>
+[FilterNativeInherit]
+public interface Filter : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets the code of the filter program set on this object. May be <c>null</c>.
+/// 1.18</summary>
+/// <param name="code">The Lua program source code.
+/// 1.18</param>
+/// <param name="name">An optional name for this filter.
+/// 1.18</param>
+/// <returns></returns>
+ void GetFilterProgram( out  System.String code,  out  System.String name);
+   /// <summary>Set a graphical filter program on this object.
+/// Valid for Text and Image objects at the moment.
+/// 
+/// The argument passed to this function is a string containing a valid Lua program based on the filters API as described in the &quot;EFL Graphics Filters&quot; reference page.
+/// 
+/// Set to <c>null</c> to disable filtering.
+/// 1.18</summary>
+/// <param name="code">The Lua program source code.
+/// 1.18</param>
+/// <param name="name">An optional name for this filter.
+/// 1.18</param>
+/// <returns></returns>
+ void SetFilterProgram(  System.String code,   System.String name);
+   /// <summary>Set the current state of the filter.
+/// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+/// 
+/// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+/// 1.18</summary>
+/// <param name="cur_state">Current state of the filter
+/// 1.18</param>
+/// <param name="cur_val">Current value
+/// 1.18</param>
+/// <param name="next_state">Next filter state, optional
+/// 1.18</param>
+/// <param name="next_val">Next value, optional
+/// 1.18</param>
+/// <param name="pos">Position, optional
+/// 1.18</param>
+/// <returns></returns>
+ void GetFilterState( out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos);
+   /// <summary>Set the current state of the filter.
+/// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+/// 
+/// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+/// 1.18</summary>
+/// <param name="cur_state">Current state of the filter
+/// 1.18</param>
+/// <param name="cur_val">Current value
+/// 1.18</param>
+/// <param name="next_state">Next filter state, optional
+/// 1.18</param>
+/// <param name="next_val">Next value, optional
+/// 1.18</param>
+/// <param name="pos">Position, optional
+/// 1.18</param>
+/// <returns></returns>
+ void SetFilterState(  System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos);
+   /// <summary>Gets the padding required to apply this filter.
+/// 1.18</summary>
+/// <param name="l">Padding on the left
+/// 1.18</param>
+/// <param name="r">Padding on the right
+/// 1.18</param>
+/// <param name="t">Padding on the top
+/// 1.18</param>
+/// <param name="b">Padding on the bottom
+/// 1.18</param>
+/// <returns></returns>
+ void GetFilterPadding( out  int l,  out  int r,  out  int t,  out  int b);
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+/// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+/// 1.18</summary>
+/// <param name="name">Buffer name as used in the program.
+/// 1.18</param>
+/// <returns>Object to use as a source of pixels.
+/// 1.18</returns>
+Efl.Gfx.Entity GetFilterSource(  System.String name);
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+/// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+/// 1.18</summary>
+/// <param name="name">Buffer name as used in the program.
+/// 1.18</param>
+/// <param name="source">Object to use as a source of pixels.
+/// 1.18</param>
+/// <returns></returns>
+ void SetFilterSource(  System.String name,  Efl.Gfx.Entity source);
+   /// <summary>Extra data used by the filter program.
+/// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+/// 
+/// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+/// 1.18</summary>
+/// <param name="name">Name of the global variable
+/// 1.18</param>
+/// <param name="value">String value to use as data
+/// 1.18</param>
+/// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+/// 1.18</param>
+/// <returns></returns>
+ void GetFilterData(  System.String name,  out  System.String value,  out bool execute);
+   /// <summary>Extra data used by the filter program.
+/// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+/// 
+/// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+/// 1.18</summary>
+/// <param name="name">Name of the global variable
+/// 1.18</param>
+/// <param name="value">String value to use as data
+/// 1.18</param>
+/// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+/// 1.18</param>
+/// <returns></returns>
+ void SetFilterData(  System.String name,   System.String value,  bool execute);
+                           }
+/// <summary>Graphical filters can be applied to any object implementing this interface.
+/// Filters are programmable effects that run whenever the object is rendered on its canvas. The program language is Lua and a complete reference can be found under &quot;EFL Graphics Filters&quot;.
+/// 
+/// This was a beta feature since 1.15.
+/// 1.18</summary>
+sealed public class FilterConcrete : 
+
+Filter
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FilterConcrete))
+            return Efl.Gfx.FilterNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_filter_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FilterConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FilterConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FilterConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FilterConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Gets the code of the filter program set on this object. May be <c>null</c>.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterProgram( out  System.String code,  out  System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_get_ptr.Value.Delegate(this.NativeHandle, out code,  out name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set a graphical filter program on this object.
+   /// Valid for Text and Image objects at the moment.
+   /// 
+   /// The argument passed to this function is a string containing a valid Lua program based on the filters API as described in the &quot;EFL Graphics Filters&quot; reference page.
+   /// 
+   /// Set to <c>null</c> to disable filtering.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterProgram(  System.String code,   System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_set_ptr.Value.Delegate(this.NativeHandle, code,  name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterState( out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_get_ptr.Value.Delegate(this.NativeHandle, out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterState(  System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_set_ptr.Value.Delegate(this.NativeHandle, cur_state,  cur_val,  next_state,  next_val,  pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Gets the padding required to apply this filter.
+   /// 1.18</summary>
+   /// <param name="l">Padding on the left
+   /// 1.18</param>
+   /// <param name="r">Padding on the right
+   /// 1.18</param>
+   /// <param name="t">Padding on the top
+   /// 1.18</param>
+   /// <param name="b">Padding on the bottom
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterPadding( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.FilterNativeInherit.efl_gfx_filter_padding_get_ptr.Value.Delegate(this.NativeHandle, out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <returns>Object to use as a source of pixels.
+   /// 1.18</returns>
+   public Efl.Gfx.Entity GetFilterSource(  System.String name) {
+                         var _ret_var = Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_get_ptr.Value.Delegate(this.NativeHandle, name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <param name="source">Object to use as a source of pixels.
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterSource(  System.String name,  Efl.Gfx.Entity source) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_set_ptr.Value.Delegate(this.NativeHandle, name,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void GetFilterData(  System.String name,  out  System.String value,  out bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_get_ptr.Value.Delegate(this.NativeHandle, name,  out value,  out execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   public  void SetFilterData(  System.String name,   System.String value,  bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_set_ptr.Value.Delegate(this.NativeHandle, name,  value,  execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+}
+public class FilterNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_filter_program_get_static_delegate == null)
+      efl_gfx_filter_program_get_static_delegate = new efl_gfx_filter_program_get_delegate(filter_program_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_get_static_delegate)});
+      if (efl_gfx_filter_program_set_static_delegate == null)
+      efl_gfx_filter_program_set_static_delegate = new efl_gfx_filter_program_set_delegate(filter_program_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_set_static_delegate)});
+      if (efl_gfx_filter_state_get_static_delegate == null)
+      efl_gfx_filter_state_get_static_delegate = new efl_gfx_filter_state_get_delegate(filter_state_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_get_static_delegate)});
+      if (efl_gfx_filter_state_set_static_delegate == null)
+      efl_gfx_filter_state_set_static_delegate = new efl_gfx_filter_state_set_delegate(filter_state_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_set_static_delegate)});
+      if (efl_gfx_filter_padding_get_static_delegate == null)
+      efl_gfx_filter_padding_get_static_delegate = new efl_gfx_filter_padding_get_delegate(filter_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_padding_get_static_delegate)});
+      if (efl_gfx_filter_source_get_static_delegate == null)
+      efl_gfx_filter_source_get_static_delegate = new efl_gfx_filter_source_get_delegate(filter_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_get_static_delegate)});
+      if (efl_gfx_filter_source_set_static_delegate == null)
+      efl_gfx_filter_source_set_static_delegate = new efl_gfx_filter_source_set_delegate(filter_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_set_static_delegate)});
+      if (efl_gfx_filter_data_get_static_delegate == null)
+      efl_gfx_filter_data_get_static_delegate = new efl_gfx_filter_data_get_delegate(filter_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_get_static_delegate)});
+      if (efl_gfx_filter_data_set_static_delegate == null)
+      efl_gfx_filter_data_set_static_delegate = new efl_gfx_filter_data_set_delegate(filter_data_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.FilterConcrete.efl_gfx_filter_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.FilterConcrete.efl_gfx_filter_interface_get();
+   }
+
+
+    private delegate  void efl_gfx_filter_program_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate> efl_gfx_filter_program_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate>(_Module, "efl_gfx_filter_program_get");
+    private static  void filter_program_get(System.IntPtr obj, System.IntPtr pd,  out  System.String code,  out  System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_code = default( System.String);
+       System.String _out_name = default( System.String);
+                     
+         try {
+            ((Filter)wrapper).GetFilterProgram( out _out_code,  out _out_name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      code = _out_code;
+      name = _out_name;
+                        } else {
+         efl_gfx_filter_program_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out code,  out name);
+      }
+   }
+   private static efl_gfx_filter_program_get_delegate efl_gfx_filter_program_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_program_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate> efl_gfx_filter_program_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate>(_Module, "efl_gfx_filter_program_set");
+    private static  void filter_program_set(System.IntPtr obj, System.IntPtr pd,   System.String code,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Filter)wrapper).SetFilterProgram( code,  name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_program_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code,  name);
+      }
+   }
+   private static efl_gfx_filter_program_set_delegate efl_gfx_filter_program_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+
+
+    public delegate  void efl_gfx_filter_state_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate> efl_gfx_filter_state_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate>(_Module, "efl_gfx_filter_state_get");
+    private static  void filter_state_get(System.IntPtr obj, System.IntPtr pd,  out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                              System.String _out_cur_state = default( System.String);
+      cur_val = default(double);       System.String _out_next_state = default( System.String);
+      next_val = default(double);      pos = default(double);                                       
+         try {
+            ((Filter)wrapper).GetFilterState( out _out_cur_state,  out cur_val,  out _out_next_state,  out next_val,  out pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      cur_state = _out_cur_state;
+            next_state = _out_next_state;
+                                                      } else {
+         efl_gfx_filter_state_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      }
+   }
+   private static efl_gfx_filter_state_get_delegate efl_gfx_filter_state_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+
+
+    public delegate  void efl_gfx_filter_state_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate> efl_gfx_filter_state_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate>(_Module, "efl_gfx_filter_state_set");
+    private static  void filter_state_set(System.IntPtr obj, System.IntPtr pd,   System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((Filter)wrapper).SetFilterState( cur_state,  cur_val,  next_state,  next_val,  pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_filter_state_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur_state,  cur_val,  next_state,  next_val,  pos);
+      }
+   }
+   private static efl_gfx_filter_state_set_delegate efl_gfx_filter_state_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_filter_padding_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate> efl_gfx_filter_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate>(_Module, "efl_gfx_filter_padding_get");
+    private static  void filter_padding_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((Filter)wrapper).GetFilterPadding( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_filter_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_filter_padding_get_delegate efl_gfx_filter_padding_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_gfx_filter_source_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_gfx_filter_source_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate> efl_gfx_filter_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate>(_Module, "efl_gfx_filter_source_get");
+    private static Efl.Gfx.Entity filter_source_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Filter)wrapper).GetFilterSource( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_filter_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_gfx_filter_source_get_delegate efl_gfx_filter_source_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+
+
+    public delegate  void efl_gfx_filter_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate> efl_gfx_filter_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate>(_Module, "efl_gfx_filter_source_set");
+    private static  void filter_source_set(System.IntPtr obj, System.IntPtr pd,   System.String name,  Efl.Gfx.Entity source)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Filter)wrapper).SetFilterSource( name,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  source);
+      }
+   }
+   private static efl_gfx_filter_source_set_delegate efl_gfx_filter_source_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate> efl_gfx_filter_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate>(_Module, "efl_gfx_filter_data_get");
+    private static  void filter_data_get(System.IntPtr obj, System.IntPtr pd,   System.String name,  out  System.String value,  out bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                        System.String _out_value = default( System.String);
+      execute = default(bool);                           
+         try {
+            ((Filter)wrapper).GetFilterData( name,  out _out_value,  out execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            value = _out_value;
+                                    } else {
+         efl_gfx_filter_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  out value,  out execute);
+      }
+   }
+   private static efl_gfx_filter_data_get_delegate efl_gfx_filter_data_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate> efl_gfx_filter_data_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate>(_Module, "efl_gfx_filter_data_set");
+    private static  void filter_data_set(System.IntPtr obj, System.IntPtr pd,   System.String name,   System.String value,  bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Filter)wrapper).SetFilterData( name,  value,  execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_filter_data_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  value,  execute);
+      }
+   }
+   private static efl_gfx_filter_data_set_delegate efl_gfx_filter_data_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_frame_controller.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_frame_controller.eo.cs
new file mode 100755 (executable)
index 0000000..1321367
--- /dev/null
@@ -0,0 +1,520 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl frame controller of frame based animated object interface.</summary>
+[FrameControllerNativeInherit]
+public interface FrameController : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Check if an object can be animated (has multiple frames).
+/// This will be <c>true</c> for animated object for instance but <c>false</c> for a single frame object.
+/// 1.1</summary>
+/// <returns><c>true</c> if the object is animated</returns>
+bool GetAnimated();
+   /// <summary>Index of the current frame of an animated object.
+/// Ranges from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>. Valid only if <see cref="Efl.Gfx.FrameController.GetAnimated"/>.</summary>
+/// <returns>The index of current frame.</returns>
+ int GetFrame();
+   /// <summary>Set the frame to current frame of an animated object.
+/// 1.1</summary>
+/// <param name="frame_index">The index of current frame.</param>
+/// <returns>Returns <c>true</c> if the frame index is valid.</returns>
+bool SetFrame(  int frame_index);
+   /// <summary>Get the total number of frames of the object, if animated.
+/// Returns -1 if not animated.
+/// 1.1</summary>
+/// <returns>The number of frames in the animated object.</returns>
+ int GetFrameCount();
+   /// <summary>Get the kind of looping the animated object does.
+/// This returns the kind of looping the animated object wants to do.
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>, you should display frames in a sequence like: 1-&gt;2-&gt;3-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Pingpong"/>, it is better to display frames in a sequence like: 1-&gt;2-&gt;3-&gt;2-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// The default type is <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>.
+/// 1.1</summary>
+/// <returns>Loop type of the animated object.</returns>
+Efl.Gfx.FrameControllerLoopHint GetLoopType();
+   /// <summary>Get the number times the animation of the object loops.
+/// This returns loop count of animated object. The loop count is the number of times the animation will play fully from first to last frame until the animation should stop (at the final frame).
+/// 
+/// If 0 is returned, then looping should happen indefinitely (no limit to the number of times it loops).
+/// 1.1</summary>
+/// <returns>The number of loop of an animated object.</returns>
+ int GetLoopCount();
+   /// <summary>Get the duration of a sequence of frames.
+/// This returns total duration in seconds that the specified sequence of frames should take.
+/// 
+/// If <c>start_frame</c> is 1 and <c>frame_num</c> is 0, this returns the duration of frame 1. If <c>start_frame</c> is 1 and <c>frame_num</c> is 1, this returns the total duration of frame 1 + frame 2.
+/// 1.1</summary>
+/// <param name="start_frame">The first frame, rangers from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>.</param>
+/// <param name="frame_num">Number of frames in the sequence, starts from 0.</param>
+/// <returns>Duration in seconds</returns>
+double GetFrameDuration(  int start_frame,   int frame_num);
+                        /// <summary>Check if an object can be animated (has multiple frames).
+/// This will be <c>true</c> for animated object for instance but <c>false</c> for a single frame object.
+/// 1.1</summary>
+/// <value><c>true</c> if the object is animated</value>
+   bool Animated {
+      get ;
+   }
+   /// <summary>Index of the current frame of an animated object.
+/// Ranges from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>. Valid only if <see cref="Efl.Gfx.FrameController.GetAnimated"/>.</summary>
+/// <value>The index of current frame.</value>
+    int Frame {
+      get ;
+      set ;
+   }
+   /// <summary>Get the total number of frames of the object, if animated.
+/// Returns -1 if not animated.
+/// 1.1</summary>
+/// <value>The number of frames in the animated object.</value>
+    int FrameCount {
+      get ;
+   }
+   /// <summary>Get the kind of looping the animated object does.
+/// This returns the kind of looping the animated object wants to do.
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>, you should display frames in a sequence like: 1-&gt;2-&gt;3-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Pingpong"/>, it is better to display frames in a sequence like: 1-&gt;2-&gt;3-&gt;2-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// The default type is <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>.
+/// 1.1</summary>
+/// <value>Loop type of the animated object.</value>
+   Efl.Gfx.FrameControllerLoopHint LoopType {
+      get ;
+   }
+   /// <summary>Get the number times the animation of the object loops.
+/// This returns loop count of animated object. The loop count is the number of times the animation will play fully from first to last frame until the animation should stop (at the final frame).
+/// 
+/// If 0 is returned, then looping should happen indefinitely (no limit to the number of times it loops).
+/// 1.1</summary>
+/// <value>The number of loop of an animated object.</value>
+    int LoopCount {
+      get ;
+   }
+}
+/// <summary>Efl frame controller of frame based animated object interface.</summary>
+sealed public class FrameControllerConcrete : 
+
+FrameController
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FrameControllerConcrete))
+            return Efl.Gfx.FrameControllerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_frame_controller_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FrameControllerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FrameControllerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FrameControllerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FrameControllerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Check if an object can be animated (has multiple frames).
+   /// This will be <c>true</c> for animated object for instance but <c>false</c> for a single frame object.
+   /// 1.1</summary>
+   /// <returns><c>true</c> if the object is animated</returns>
+   public bool GetAnimated() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_animated_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Index of the current frame of an animated object.
+   /// Ranges from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>. Valid only if <see cref="Efl.Gfx.FrameController.GetAnimated"/>.</summary>
+   /// <returns>The index of current frame.</returns>
+   public  int GetFrame() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the frame to current frame of an animated object.
+   /// 1.1</summary>
+   /// <param name="frame_index">The index of current frame.</param>
+   /// <returns>Returns <c>true</c> if the frame index is valid.</returns>
+   public bool SetFrame(  int frame_index) {
+                         var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_set_ptr.Value.Delegate(this.NativeHandle, frame_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the total number of frames of the object, if animated.
+   /// Returns -1 if not animated.
+   /// 1.1</summary>
+   /// <returns>The number of frames in the animated object.</returns>
+   public  int GetFrameCount() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_count_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the kind of looping the animated object does.
+   /// This returns the kind of looping the animated object wants to do.
+   /// 
+   /// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>, you should display frames in a sequence like: 1-&gt;2-&gt;3-&gt;1-&gt;2-&gt;3-&gt;1...
+   /// 
+   /// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Pingpong"/>, it is better to display frames in a sequence like: 1-&gt;2-&gt;3-&gt;2-&gt;1-&gt;2-&gt;3-&gt;1...
+   /// 
+   /// The default type is <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>.
+   /// 1.1</summary>
+   /// <returns>Loop type of the animated object.</returns>
+   public Efl.Gfx.FrameControllerLoopHint GetLoopType() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_loop_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the number times the animation of the object loops.
+   /// This returns loop count of animated object. The loop count is the number of times the animation will play fully from first to last frame until the animation should stop (at the final frame).
+   /// 
+   /// If 0 is returned, then looping should happen indefinitely (no limit to the number of times it loops).
+   /// 1.1</summary>
+   /// <returns>The number of loop of an animated object.</returns>
+   public  int GetLoopCount() {
+       var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_loop_count_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the duration of a sequence of frames.
+   /// This returns total duration in seconds that the specified sequence of frames should take.
+   /// 
+   /// If <c>start_frame</c> is 1 and <c>frame_num</c> is 0, this returns the duration of frame 1. If <c>start_frame</c> is 1 and <c>frame_num</c> is 1, this returns the total duration of frame 1 + frame 2.
+   /// 1.1</summary>
+   /// <param name="start_frame">The first frame, rangers from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>.</param>
+   /// <param name="frame_num">Number of frames in the sequence, starts from 0.</param>
+   /// <returns>Duration in seconds</returns>
+   public double GetFrameDuration(  int start_frame,   int frame_num) {
+                                           var _ret_var = Efl.Gfx.FrameControllerNativeInherit.efl_gfx_frame_controller_frame_duration_get_ptr.Value.Delegate(this.NativeHandle, start_frame,  frame_num);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Check if an object can be animated (has multiple frames).
+/// This will be <c>true</c> for animated object for instance but <c>false</c> for a single frame object.
+/// 1.1</summary>
+/// <value><c>true</c> if the object is animated</value>
+   public bool Animated {
+      get { return GetAnimated(); }
+   }
+   /// <summary>Index of the current frame of an animated object.
+/// Ranges from 1 to <see cref="Efl.Gfx.FrameController.GetFrameCount"/>. Valid only if <see cref="Efl.Gfx.FrameController.GetAnimated"/>.</summary>
+/// <value>The index of current frame.</value>
+   public  int Frame {
+      get { return GetFrame(); }
+      set { SetFrame( value); }
+   }
+   /// <summary>Get the total number of frames of the object, if animated.
+/// Returns -1 if not animated.
+/// 1.1</summary>
+/// <value>The number of frames in the animated object.</value>
+   public  int FrameCount {
+      get { return GetFrameCount(); }
+   }
+   /// <summary>Get the kind of looping the animated object does.
+/// This returns the kind of looping the animated object wants to do.
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>, you should display frames in a sequence like: 1-&gt;2-&gt;3-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// If it returns <see cref="Efl.Gfx.FrameControllerLoopHint.Pingpong"/>, it is better to display frames in a sequence like: 1-&gt;2-&gt;3-&gt;2-&gt;1-&gt;2-&gt;3-&gt;1...
+/// 
+/// The default type is <see cref="Efl.Gfx.FrameControllerLoopHint.Loop"/>.
+/// 1.1</summary>
+/// <value>Loop type of the animated object.</value>
+   public Efl.Gfx.FrameControllerLoopHint LoopType {
+      get { return GetLoopType(); }
+   }
+   /// <summary>Get the number times the animation of the object loops.
+/// This returns loop count of animated object. The loop count is the number of times the animation will play fully from first to last frame until the animation should stop (at the final frame).
+/// 
+/// If 0 is returned, then looping should happen indefinitely (no limit to the number of times it loops).
+/// 1.1</summary>
+/// <value>The number of loop of an animated object.</value>
+   public  int LoopCount {
+      get { return GetLoopCount(); }
+   }
+}
+public class FrameControllerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_frame_controller_animated_get_static_delegate == null)
+      efl_gfx_frame_controller_animated_get_static_delegate = new efl_gfx_frame_controller_animated_get_delegate(animated_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_animated_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_animated_get_static_delegate)});
+      if (efl_gfx_frame_controller_frame_get_static_delegate == null)
+      efl_gfx_frame_controller_frame_get_static_delegate = new efl_gfx_frame_controller_frame_get_delegate(frame_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_get_static_delegate)});
+      if (efl_gfx_frame_controller_frame_set_static_delegate == null)
+      efl_gfx_frame_controller_frame_set_static_delegate = new efl_gfx_frame_controller_frame_set_delegate(frame_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_set_static_delegate)});
+      if (efl_gfx_frame_controller_frame_count_get_static_delegate == null)
+      efl_gfx_frame_controller_frame_count_get_static_delegate = new efl_gfx_frame_controller_frame_count_get_delegate(frame_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_count_get_static_delegate)});
+      if (efl_gfx_frame_controller_loop_type_get_static_delegate == null)
+      efl_gfx_frame_controller_loop_type_get_static_delegate = new efl_gfx_frame_controller_loop_type_get_delegate(loop_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_loop_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_loop_type_get_static_delegate)});
+      if (efl_gfx_frame_controller_loop_count_get_static_delegate == null)
+      efl_gfx_frame_controller_loop_count_get_static_delegate = new efl_gfx_frame_controller_loop_count_get_delegate(loop_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_loop_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_loop_count_get_static_delegate)});
+      if (efl_gfx_frame_controller_frame_duration_get_static_delegate == null)
+      efl_gfx_frame_controller_frame_duration_get_static_delegate = new efl_gfx_frame_controller_frame_duration_get_delegate(frame_duration_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_frame_controller_frame_duration_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_frame_controller_frame_duration_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.FrameControllerConcrete.efl_gfx_frame_controller_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.FrameControllerConcrete.efl_gfx_frame_controller_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_frame_controller_animated_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_frame_controller_animated_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_animated_get_api_delegate> efl_gfx_frame_controller_animated_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_animated_get_api_delegate>(_Module, "efl_gfx_frame_controller_animated_get");
+    private static bool animated_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_animated_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((FrameController)wrapper).GetAnimated();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_animated_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_animated_get_delegate efl_gfx_frame_controller_animated_get_static_delegate;
+
+
+    private delegate  int efl_gfx_frame_controller_frame_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_frame_controller_frame_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_get_api_delegate> efl_gfx_frame_controller_frame_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_get_api_delegate>(_Module, "efl_gfx_frame_controller_frame_get");
+    private static  int frame_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((FrameController)wrapper).GetFrame();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_frame_get_delegate efl_gfx_frame_controller_frame_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_frame_controller_frame_set_delegate(System.IntPtr obj, System.IntPtr pd,    int frame_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_frame_controller_frame_set_api_delegate(System.IntPtr obj,    int frame_index);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_set_api_delegate> efl_gfx_frame_controller_frame_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_set_api_delegate>(_Module, "efl_gfx_frame_controller_frame_set");
+    private static bool frame_set(System.IntPtr obj, System.IntPtr pd,   int frame_index)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((FrameController)wrapper).SetFrame( frame_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  frame_index);
+      }
+   }
+   private static efl_gfx_frame_controller_frame_set_delegate efl_gfx_frame_controller_frame_set_static_delegate;
+
+
+    private delegate  int efl_gfx_frame_controller_frame_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_frame_controller_frame_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_count_get_api_delegate> efl_gfx_frame_controller_frame_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_count_get_api_delegate>(_Module, "efl_gfx_frame_controller_frame_count_get");
+    private static  int frame_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((FrameController)wrapper).GetFrameCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_frame_count_get_delegate efl_gfx_frame_controller_frame_count_get_static_delegate;
+
+
+    private delegate Efl.Gfx.FrameControllerLoopHint efl_gfx_frame_controller_loop_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.FrameControllerLoopHint efl_gfx_frame_controller_loop_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_type_get_api_delegate> efl_gfx_frame_controller_loop_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_type_get_api_delegate>(_Module, "efl_gfx_frame_controller_loop_type_get");
+    private static Efl.Gfx.FrameControllerLoopHint loop_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_loop_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.FrameControllerLoopHint _ret_var = default(Efl.Gfx.FrameControllerLoopHint);
+         try {
+            _ret_var = ((FrameController)wrapper).GetLoopType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_loop_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_loop_type_get_delegate efl_gfx_frame_controller_loop_type_get_static_delegate;
+
+
+    private delegate  int efl_gfx_frame_controller_loop_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_frame_controller_loop_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_count_get_api_delegate> efl_gfx_frame_controller_loop_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_loop_count_get_api_delegate>(_Module, "efl_gfx_frame_controller_loop_count_get");
+    private static  int loop_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_loop_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((FrameController)wrapper).GetLoopCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_loop_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_frame_controller_loop_count_get_delegate efl_gfx_frame_controller_loop_count_get_static_delegate;
+
+
+    private delegate double efl_gfx_frame_controller_frame_duration_get_delegate(System.IntPtr obj, System.IntPtr pd,    int start_frame,    int frame_num);
+
+
+    public delegate double efl_gfx_frame_controller_frame_duration_get_api_delegate(System.IntPtr obj,    int start_frame,    int frame_num);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_duration_get_api_delegate> efl_gfx_frame_controller_frame_duration_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_frame_controller_frame_duration_get_api_delegate>(_Module, "efl_gfx_frame_controller_frame_duration_get");
+    private static double frame_duration_get(System.IntPtr obj, System.IntPtr pd,   int start_frame,   int frame_num)
+   {
+      Eina.Log.Debug("function efl_gfx_frame_controller_frame_duration_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      double _ret_var = default(double);
+         try {
+            _ret_var = ((FrameController)wrapper).GetFrameDuration( start_frame,  frame_num);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_gfx_frame_controller_frame_duration_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_frame,  frame_num);
+      }
+   }
+   private static efl_gfx_frame_controller_frame_duration_get_delegate efl_gfx_frame_controller_frame_duration_get_static_delegate;
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Frame loop modes</summary>
+public enum FrameControllerLoopHint
+{
+/// <summary>No looping order specified.</summary>
+None = 0,
+/// <summary>Standard loop: 1-&gt;2-&gt;3-&gt;1-&gt;2-&gt;3-&gt;1</summary>
+Loop = 1,
+/// <summary>Ping-pong bouncing loop: 1-&gt;2-&gt;3-&gt;2-&gt;1-&gt;2-&gt;3-&gt;1</summary>
+Pingpong = 2,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_gradient.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_gradient.eo.cs
new file mode 100755 (executable)
index 0000000..3c601c9
--- /dev/null
@@ -0,0 +1,282 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics gradient interface</summary>
+[GradientNativeInherit]
+public interface Gradient : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get the list of color stops.</summary>
+/// <param name="colors">Color stops list</param>
+/// <param name="length">Length of the list</param>
+/// <returns></returns>
+ void GetStop( out Efl.Gfx.GradientStop colors,  out  uint length);
+   /// <summary>Set the list of color stops for the gradient</summary>
+/// <param name="colors">Color stops list</param>
+/// <param name="length">Length of the list</param>
+/// <returns></returns>
+ void SetStop( ref Efl.Gfx.GradientStop colors,   uint length);
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+/// <returns>Spread type to be used</returns>
+Efl.Gfx.GradientSpread GetSpread();
+   /// <summary>Specifies the spread method that should be used for this gradient.</summary>
+/// <param name="s">Spread type to be used</param>
+/// <returns></returns>
+ void SetSpread( Efl.Gfx.GradientSpread s);
+               /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+/// <value>Spread type to be used</value>
+   Efl.Gfx.GradientSpread Spread {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl graphics gradient interface</summary>
+sealed public class GradientConcrete : 
+
+Gradient
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GradientConcrete))
+            return Efl.Gfx.GradientNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_gradient_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GradientConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~GradientConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static GradientConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GradientConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get the list of color stops.</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   public  void GetStop( out Efl.Gfx.GradientStop colors,  out  uint length) {
+                   var _out_colors = new  System.IntPtr();
+                        Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_get_ptr.Value.Delegate(this.NativeHandle, out _out_colors,  out length);
+      Eina.Error.RaiseIfUnhandledException();
+      colors = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.GradientStop>(_out_colors);
+                         }
+   /// <summary>Set the list of color stops for the gradient</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   public  void SetStop( ref Efl.Gfx.GradientStop colors,   uint length) {
+       var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(colors);
+                                    Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_set_ptr.Value.Delegate(this.NativeHandle, ref _in_colors,  length);
+      Eina.Error.RaiseIfUnhandledException();
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(_in_colors);
+             }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+   /// <returns>Spread type to be used</returns>
+   public Efl.Gfx.GradientSpread GetSpread() {
+       var _ret_var = Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies the spread method that should be used for this gradient.</summary>
+   /// <param name="s">Spread type to be used</param>
+   /// <returns></returns>
+   public  void SetSpread( Efl.Gfx.GradientSpread s) {
+                         Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_set_ptr.Value.Delegate(this.NativeHandle, s);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+/// <value>Spread type to be used</value>
+   public Efl.Gfx.GradientSpread Spread {
+      get { return GetSpread(); }
+      set { SetSpread( value); }
+   }
+}
+public class GradientNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_gradient_stop_get_static_delegate == null)
+      efl_gfx_gradient_stop_get_static_delegate = new efl_gfx_gradient_stop_get_delegate(stop_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_get_static_delegate)});
+      if (efl_gfx_gradient_stop_set_static_delegate == null)
+      efl_gfx_gradient_stop_set_static_delegate = new efl_gfx_gradient_stop_set_delegate(stop_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_set_static_delegate)});
+      if (efl_gfx_gradient_spread_get_static_delegate == null)
+      efl_gfx_gradient_spread_get_static_delegate = new efl_gfx_gradient_spread_get_delegate(spread_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_get_static_delegate)});
+      if (efl_gfx_gradient_spread_set_static_delegate == null)
+      efl_gfx_gradient_spread_set_static_delegate = new efl_gfx_gradient_spread_set_delegate(spread_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.GradientConcrete.efl_gfx_gradient_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.GradientConcrete.efl_gfx_gradient_interface_get();
+   }
+
+
+    private delegate  void efl_gfx_gradient_stop_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr colors,   out  uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_get_api_delegate(System.IntPtr obj,   out  System.IntPtr colors,   out  uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate> efl_gfx_gradient_stop_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate>(_Module, "efl_gfx_gradient_stop_get");
+    private static  void stop_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr colors,  out  uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.GradientStop _out_colors = default(Efl.Gfx.GradientStop);
+      length = default( uint);                     
+         try {
+            ((Gradient)wrapper).GetStop( out _out_colors,  out length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      colors = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_colors);
+                              } else {
+         efl_gfx_gradient_stop_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out colors,  out length);
+      }
+   }
+   private static efl_gfx_gradient_stop_get_delegate efl_gfx_gradient_stop_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_stop_set_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_set_api_delegate(System.IntPtr obj,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate> efl_gfx_gradient_stop_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate>(_Module, "efl_gfx_gradient_stop_set");
+    private static  void stop_set(System.IntPtr obj, System.IntPtr pd,  ref Efl.Gfx.GradientStop_StructInternal colors,   uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(colors);
+                                       
+         try {
+            ((Gradient)wrapper).SetStop( ref _in_colors,  length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(_in_colors);
+                  } else {
+         efl_gfx_gradient_stop_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref colors,  length);
+      }
+   }
+   private static efl_gfx_gradient_stop_set_delegate efl_gfx_gradient_stop_set_static_delegate;
+
+
+    private delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate> efl_gfx_gradient_spread_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate>(_Module, "efl_gfx_gradient_spread_get");
+    private static Efl.Gfx.GradientSpread spread_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.GradientSpread _ret_var = default(Efl.Gfx.GradientSpread);
+         try {
+            _ret_var = ((Gradient)wrapper).GetSpread();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_gradient_spread_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_gradient_spread_get_delegate efl_gfx_gradient_spread_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_spread_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.GradientSpread s);
+
+
+    public delegate  void efl_gfx_gradient_spread_set_api_delegate(System.IntPtr obj,   Efl.Gfx.GradientSpread s);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate> efl_gfx_gradient_spread_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate>(_Module, "efl_gfx_gradient_spread_set");
+    private static  void spread_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.GradientSpread s)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Gradient)wrapper).SetSpread( s);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_gradient_spread_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  s);
+      }
+   }
+   private static efl_gfx_gradient_spread_set_delegate efl_gfx_gradient_spread_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_gradient_linear.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_gradient_linear.eo.cs
new file mode 100755 (executable)
index 0000000..79491ed
--- /dev/null
@@ -0,0 +1,420 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics gradient linear interface</summary>
+[GradientLinearNativeInherit]
+public interface GradientLinear : 
+   Efl.Gfx.Gradient ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets the start point of this linear gradient.</summary>
+/// <param name="x">X co-ordinate of start point</param>
+/// <param name="y">Y co-ordinate of start point</param>
+/// <returns></returns>
+ void GetStart( out double x,  out double y);
+   /// <summary>Sets the start point of this linear gradient.</summary>
+/// <param name="x">X co-ordinate of start point</param>
+/// <param name="y">Y co-ordinate of start point</param>
+/// <returns></returns>
+ void SetStart( double x,  double y);
+   /// <summary>Gets the end point of this linear gradient.</summary>
+/// <param name="x">X co-ordinate of end point</param>
+/// <param name="y">Y co-ordinate of end point</param>
+/// <returns></returns>
+ void GetEnd( out double x,  out double y);
+   /// <summary>Sets the end point of this linear gradient.</summary>
+/// <param name="x">X co-ordinate of end point</param>
+/// <param name="y">Y co-ordinate of end point</param>
+/// <returns></returns>
+ void SetEnd( double x,  double y);
+            }
+/// <summary>Efl graphics gradient linear interface</summary>
+sealed public class GradientLinearConcrete : 
+
+GradientLinear
+   , Efl.Gfx.Gradient
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GradientLinearConcrete))
+            return Efl.Gfx.GradientLinearNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_gradient_linear_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GradientLinearConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~GradientLinearConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static GradientLinearConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GradientLinearConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Gets the start point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of start point</param>
+   /// <param name="y">Y co-ordinate of start point</param>
+   /// <returns></returns>
+   public  void GetStart( out double x,  out double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_start_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the start point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of start point</param>
+   /// <param name="y">Y co-ordinate of start point</param>
+   /// <returns></returns>
+   public  void SetStart( double x,  double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_start_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets the end point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of end point</param>
+   /// <param name="y">Y co-ordinate of end point</param>
+   /// <returns></returns>
+   public  void GetEnd( out double x,  out double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_end_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the end point of this linear gradient.</summary>
+   /// <param name="x">X co-ordinate of end point</param>
+   /// <param name="y">Y co-ordinate of end point</param>
+   /// <returns></returns>
+   public  void SetEnd( double x,  double y) {
+                                           Efl.Gfx.GradientLinearNativeInherit.efl_gfx_gradient_linear_end_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the list of color stops.</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   public  void GetStop( out Efl.Gfx.GradientStop colors,  out  uint length) {
+                   var _out_colors = new  System.IntPtr();
+                        Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_get_ptr.Value.Delegate(this.NativeHandle, out _out_colors,  out length);
+      Eina.Error.RaiseIfUnhandledException();
+      colors = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.GradientStop>(_out_colors);
+                         }
+   /// <summary>Set the list of color stops for the gradient</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   public  void SetStop( ref Efl.Gfx.GradientStop colors,   uint length) {
+       var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(colors);
+                                    Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_set_ptr.Value.Delegate(this.NativeHandle, ref _in_colors,  length);
+      Eina.Error.RaiseIfUnhandledException();
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(_in_colors);
+             }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+   /// <returns>Spread type to be used</returns>
+   public Efl.Gfx.GradientSpread GetSpread() {
+       var _ret_var = Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies the spread method that should be used for this gradient.</summary>
+   /// <param name="s">Spread type to be used</param>
+   /// <returns></returns>
+   public  void SetSpread( Efl.Gfx.GradientSpread s) {
+                         Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_set_ptr.Value.Delegate(this.NativeHandle, s);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+/// <value>Spread type to be used</value>
+   public Efl.Gfx.GradientSpread Spread {
+      get { return GetSpread(); }
+      set { SetSpread( value); }
+   }
+}
+public class GradientLinearNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_gradient_linear_start_get_static_delegate == null)
+      efl_gfx_gradient_linear_start_get_static_delegate = new efl_gfx_gradient_linear_start_get_delegate(start_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_start_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_start_get_static_delegate)});
+      if (efl_gfx_gradient_linear_start_set_static_delegate == null)
+      efl_gfx_gradient_linear_start_set_static_delegate = new efl_gfx_gradient_linear_start_set_delegate(start_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_start_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_start_set_static_delegate)});
+      if (efl_gfx_gradient_linear_end_get_static_delegate == null)
+      efl_gfx_gradient_linear_end_get_static_delegate = new efl_gfx_gradient_linear_end_get_delegate(end_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_end_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_end_get_static_delegate)});
+      if (efl_gfx_gradient_linear_end_set_static_delegate == null)
+      efl_gfx_gradient_linear_end_set_static_delegate = new efl_gfx_gradient_linear_end_set_delegate(end_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_linear_end_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_linear_end_set_static_delegate)});
+      if (efl_gfx_gradient_stop_get_static_delegate == null)
+      efl_gfx_gradient_stop_get_static_delegate = new efl_gfx_gradient_stop_get_delegate(stop_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_get_static_delegate)});
+      if (efl_gfx_gradient_stop_set_static_delegate == null)
+      efl_gfx_gradient_stop_set_static_delegate = new efl_gfx_gradient_stop_set_delegate(stop_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_set_static_delegate)});
+      if (efl_gfx_gradient_spread_get_static_delegate == null)
+      efl_gfx_gradient_spread_get_static_delegate = new efl_gfx_gradient_spread_get_delegate(spread_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_get_static_delegate)});
+      if (efl_gfx_gradient_spread_set_static_delegate == null)
+      efl_gfx_gradient_spread_set_static_delegate = new efl_gfx_gradient_spread_set_delegate(spread_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.GradientLinearConcrete.efl_gfx_gradient_linear_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.GradientLinearConcrete.efl_gfx_gradient_linear_interface_get();
+   }
+
+
+    private delegate  void efl_gfx_gradient_linear_start_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_start_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_get_api_delegate> efl_gfx_gradient_linear_start_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_get_api_delegate>(_Module, "efl_gfx_gradient_linear_start_get");
+    private static  void start_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_start_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientLinear)wrapper).GetStart( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_start_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_linear_start_get_delegate efl_gfx_gradient_linear_start_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_linear_start_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_start_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_set_api_delegate> efl_gfx_gradient_linear_start_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_start_set_api_delegate>(_Module, "efl_gfx_gradient_linear_start_set");
+    private static  void start_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_start_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientLinear)wrapper).SetStart( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_start_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_linear_start_set_delegate efl_gfx_gradient_linear_start_set_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_linear_end_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_end_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_get_api_delegate> efl_gfx_gradient_linear_end_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_get_api_delegate>(_Module, "efl_gfx_gradient_linear_end_get");
+    private static  void end_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_end_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientLinear)wrapper).GetEnd( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_end_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_linear_end_get_delegate efl_gfx_gradient_linear_end_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_linear_end_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_linear_end_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_set_api_delegate> efl_gfx_gradient_linear_end_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_linear_end_set_api_delegate>(_Module, "efl_gfx_gradient_linear_end_set");
+    private static  void end_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_linear_end_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientLinear)wrapper).SetEnd( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_linear_end_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_linear_end_set_delegate efl_gfx_gradient_linear_end_set_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_stop_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr colors,   out  uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_get_api_delegate(System.IntPtr obj,   out  System.IntPtr colors,   out  uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate> efl_gfx_gradient_stop_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate>(_Module, "efl_gfx_gradient_stop_get");
+    private static  void stop_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr colors,  out  uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.GradientStop _out_colors = default(Efl.Gfx.GradientStop);
+      length = default( uint);                     
+         try {
+            ((GradientLinear)wrapper).GetStop( out _out_colors,  out length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      colors = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_colors);
+                              } else {
+         efl_gfx_gradient_stop_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out colors,  out length);
+      }
+   }
+   private static efl_gfx_gradient_stop_get_delegate efl_gfx_gradient_stop_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_stop_set_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_set_api_delegate(System.IntPtr obj,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate> efl_gfx_gradient_stop_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate>(_Module, "efl_gfx_gradient_stop_set");
+    private static  void stop_set(System.IntPtr obj, System.IntPtr pd,  ref Efl.Gfx.GradientStop_StructInternal colors,   uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(colors);
+                                       
+         try {
+            ((GradientLinear)wrapper).SetStop( ref _in_colors,  length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(_in_colors);
+                  } else {
+         efl_gfx_gradient_stop_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref colors,  length);
+      }
+   }
+   private static efl_gfx_gradient_stop_set_delegate efl_gfx_gradient_stop_set_static_delegate;
+
+
+    private delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate> efl_gfx_gradient_spread_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate>(_Module, "efl_gfx_gradient_spread_get");
+    private static Efl.Gfx.GradientSpread spread_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.GradientSpread _ret_var = default(Efl.Gfx.GradientSpread);
+         try {
+            _ret_var = ((GradientLinear)wrapper).GetSpread();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_gradient_spread_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_gradient_spread_get_delegate efl_gfx_gradient_spread_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_spread_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.GradientSpread s);
+
+
+    public delegate  void efl_gfx_gradient_spread_set_api_delegate(System.IntPtr obj,   Efl.Gfx.GradientSpread s);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate> efl_gfx_gradient_spread_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate>(_Module, "efl_gfx_gradient_spread_set");
+    private static  void spread_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.GradientSpread s)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((GradientLinear)wrapper).SetSpread( s);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_gradient_spread_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  s);
+      }
+   }
+   private static efl_gfx_gradient_spread_set_delegate efl_gfx_gradient_spread_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_gradient_radial.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_gradient_radial.eo.cs
new file mode 100755 (executable)
index 0000000..58fa6dc
--- /dev/null
@@ -0,0 +1,508 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics gradient radial interface</summary>
+[GradientRadialNativeInherit]
+public interface GradientRadial : 
+   Efl.Gfx.Gradient ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets the center of this radial gradient.</summary>
+/// <param name="x">X co-ordinate of center point</param>
+/// <param name="y">Y co-ordinate of center point</param>
+/// <returns></returns>
+ void GetCenter( out double x,  out double y);
+   /// <summary>Sets the center of this radial gradient.</summary>
+/// <param name="x">X co-ordinate of center point</param>
+/// <param name="y">Y co-ordinate of center point</param>
+/// <returns></returns>
+ void SetCenter( double x,  double y);
+   /// <summary>Gets the center radius of this radial gradient.</summary>
+/// <returns>Center radius</returns>
+double GetRadius();
+   /// <summary>Sets the center radius of this radial gradient.</summary>
+/// <param name="r">Center radius</param>
+/// <returns></returns>
+ void SetRadius( double r);
+   /// <summary>Gets the focal point of this radial gradient.</summary>
+/// <param name="x">X co-ordinate of focal point</param>
+/// <param name="y">Y co-ordinate of focal point</param>
+/// <returns></returns>
+ void GetFocal( out double x,  out double y);
+   /// <summary>Sets the focal point of this radial gradient.</summary>
+/// <param name="x">X co-ordinate of focal point</param>
+/// <param name="y">Y co-ordinate of focal point</param>
+/// <returns></returns>
+ void SetFocal( double x,  double y);
+                     /// <summary>Gets the center radius of this radial gradient.</summary>
+/// <value>Center radius</value>
+   double Radius {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl graphics gradient radial interface</summary>
+sealed public class GradientRadialConcrete : 
+
+GradientRadial
+   , Efl.Gfx.Gradient
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GradientRadialConcrete))
+            return Efl.Gfx.GradientRadialNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_gradient_radial_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GradientRadialConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~GradientRadialConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static GradientRadialConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GradientRadialConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Gets the center of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of center point</param>
+   /// <param name="y">Y co-ordinate of center point</param>
+   /// <returns></returns>
+   public  void GetCenter( out double x,  out double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_center_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the center of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of center point</param>
+   /// <param name="y">Y co-ordinate of center point</param>
+   /// <returns></returns>
+   public  void SetCenter( double x,  double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_center_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets the center radius of this radial gradient.</summary>
+   /// <returns>Center radius</returns>
+   public double GetRadius() {
+       var _ret_var = Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_radius_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the center radius of this radial gradient.</summary>
+   /// <param name="r">Center radius</param>
+   /// <returns></returns>
+   public  void SetRadius( double r) {
+                         Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_radius_set_ptr.Value.Delegate(this.NativeHandle, r);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the focal point of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of focal point</param>
+   /// <param name="y">Y co-ordinate of focal point</param>
+   /// <returns></returns>
+   public  void GetFocal( out double x,  out double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_focal_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets the focal point of this radial gradient.</summary>
+   /// <param name="x">X co-ordinate of focal point</param>
+   /// <param name="y">Y co-ordinate of focal point</param>
+   /// <returns></returns>
+   public  void SetFocal( double x,  double y) {
+                                           Efl.Gfx.GradientRadialNativeInherit.efl_gfx_gradient_radial_focal_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the list of color stops.</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   public  void GetStop( out Efl.Gfx.GradientStop colors,  out  uint length) {
+                   var _out_colors = new  System.IntPtr();
+                        Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_get_ptr.Value.Delegate(this.NativeHandle, out _out_colors,  out length);
+      Eina.Error.RaiseIfUnhandledException();
+      colors = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.GradientStop>(_out_colors);
+                         }
+   /// <summary>Set the list of color stops for the gradient</summary>
+   /// <param name="colors">Color stops list</param>
+   /// <param name="length">Length of the list</param>
+   /// <returns></returns>
+   public  void SetStop( ref Efl.Gfx.GradientStop colors,   uint length) {
+       var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(colors);
+                                    Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_stop_set_ptr.Value.Delegate(this.NativeHandle, ref _in_colors,  length);
+      Eina.Error.RaiseIfUnhandledException();
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(_in_colors);
+             }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+   /// <returns>Spread type to be used</returns>
+   public Efl.Gfx.GradientSpread GetSpread() {
+       var _ret_var = Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies the spread method that should be used for this gradient.</summary>
+   /// <param name="s">Spread type to be used</param>
+   /// <returns></returns>
+   public  void SetSpread( Efl.Gfx.GradientSpread s) {
+                         Efl.Gfx.GradientNativeInherit.efl_gfx_gradient_spread_set_ptr.Value.Delegate(this.NativeHandle, s);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the center radius of this radial gradient.</summary>
+/// <value>Center radius</value>
+   public double Radius {
+      get { return GetRadius(); }
+      set { SetRadius( value); }
+   }
+   /// <summary>Returns the spread method use by this gradient. The default is EFL_GFX_GRADIENT_SPREAD_PAD.</summary>
+/// <value>Spread type to be used</value>
+   public Efl.Gfx.GradientSpread Spread {
+      get { return GetSpread(); }
+      set { SetSpread( value); }
+   }
+}
+public class GradientRadialNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_gradient_radial_center_get_static_delegate == null)
+      efl_gfx_gradient_radial_center_get_static_delegate = new efl_gfx_gradient_radial_center_get_delegate(center_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_center_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_center_get_static_delegate)});
+      if (efl_gfx_gradient_radial_center_set_static_delegate == null)
+      efl_gfx_gradient_radial_center_set_static_delegate = new efl_gfx_gradient_radial_center_set_delegate(center_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_center_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_center_set_static_delegate)});
+      if (efl_gfx_gradient_radial_radius_get_static_delegate == null)
+      efl_gfx_gradient_radial_radius_get_static_delegate = new efl_gfx_gradient_radial_radius_get_delegate(radius_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_radius_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_radius_get_static_delegate)});
+      if (efl_gfx_gradient_radial_radius_set_static_delegate == null)
+      efl_gfx_gradient_radial_radius_set_static_delegate = new efl_gfx_gradient_radial_radius_set_delegate(radius_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_radius_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_radius_set_static_delegate)});
+      if (efl_gfx_gradient_radial_focal_get_static_delegate == null)
+      efl_gfx_gradient_radial_focal_get_static_delegate = new efl_gfx_gradient_radial_focal_get_delegate(focal_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_focal_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_focal_get_static_delegate)});
+      if (efl_gfx_gradient_radial_focal_set_static_delegate == null)
+      efl_gfx_gradient_radial_focal_set_static_delegate = new efl_gfx_gradient_radial_focal_set_delegate(focal_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_radial_focal_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_radial_focal_set_static_delegate)});
+      if (efl_gfx_gradient_stop_get_static_delegate == null)
+      efl_gfx_gradient_stop_get_static_delegate = new efl_gfx_gradient_stop_get_delegate(stop_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_get_static_delegate)});
+      if (efl_gfx_gradient_stop_set_static_delegate == null)
+      efl_gfx_gradient_stop_set_static_delegate = new efl_gfx_gradient_stop_set_delegate(stop_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_stop_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_stop_set_static_delegate)});
+      if (efl_gfx_gradient_spread_get_static_delegate == null)
+      efl_gfx_gradient_spread_get_static_delegate = new efl_gfx_gradient_spread_get_delegate(spread_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_get_static_delegate)});
+      if (efl_gfx_gradient_spread_set_static_delegate == null)
+      efl_gfx_gradient_spread_set_static_delegate = new efl_gfx_gradient_spread_set_delegate(spread_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_gradient_spread_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_gradient_spread_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.GradientRadialConcrete.efl_gfx_gradient_radial_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.GradientRadialConcrete.efl_gfx_gradient_radial_interface_get();
+   }
+
+
+    private delegate  void efl_gfx_gradient_radial_center_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_center_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_get_api_delegate> efl_gfx_gradient_radial_center_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_get_api_delegate>(_Module, "efl_gfx_gradient_radial_center_get");
+    private static  void center_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_center_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientRadial)wrapper).GetCenter( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_center_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_radial_center_get_delegate efl_gfx_gradient_radial_center_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_center_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_center_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_set_api_delegate> efl_gfx_gradient_radial_center_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_center_set_api_delegate>(_Module, "efl_gfx_gradient_radial_center_set");
+    private static  void center_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_center_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientRadial)wrapper).SetCenter( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_center_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_radial_center_set_delegate efl_gfx_gradient_radial_center_set_static_delegate;
+
+
+    private delegate double efl_gfx_gradient_radial_radius_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_gradient_radial_radius_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_get_api_delegate> efl_gfx_gradient_radial_radius_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_get_api_delegate>(_Module, "efl_gfx_gradient_radial_radius_get");
+    private static double radius_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_radius_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((GradientRadial)wrapper).GetRadius();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_gradient_radial_radius_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_gradient_radial_radius_get_delegate efl_gfx_gradient_radial_radius_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_radius_set_delegate(System.IntPtr obj, System.IntPtr pd,   double r);
+
+
+    public delegate  void efl_gfx_gradient_radial_radius_set_api_delegate(System.IntPtr obj,   double r);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_set_api_delegate> efl_gfx_gradient_radial_radius_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_radius_set_api_delegate>(_Module, "efl_gfx_gradient_radial_radius_set");
+    private static  void radius_set(System.IntPtr obj, System.IntPtr pd,  double r)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_radius_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((GradientRadial)wrapper).SetRadius( r);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_gradient_radial_radius_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r);
+      }
+   }
+   private static efl_gfx_gradient_radial_radius_set_delegate efl_gfx_gradient_radial_radius_set_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_focal_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_focal_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_get_api_delegate> efl_gfx_gradient_radial_focal_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_get_api_delegate>(_Module, "efl_gfx_gradient_radial_focal_get");
+    private static  void focal_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_focal_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((GradientRadial)wrapper).GetFocal( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_focal_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_gradient_radial_focal_get_delegate efl_gfx_gradient_radial_focal_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_radial_focal_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_gradient_radial_focal_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_set_api_delegate> efl_gfx_gradient_radial_focal_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_radial_focal_set_api_delegate>(_Module, "efl_gfx_gradient_radial_focal_set");
+    private static  void focal_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_radial_focal_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((GradientRadial)wrapper).SetFocal( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_gradient_radial_focal_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_gradient_radial_focal_set_delegate efl_gfx_gradient_radial_focal_set_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_stop_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr colors,   out  uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_get_api_delegate(System.IntPtr obj,   out  System.IntPtr colors,   out  uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate> efl_gfx_gradient_stop_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_get_api_delegate>(_Module, "efl_gfx_gradient_stop_get");
+    private static  void stop_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr colors,  out  uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.GradientStop _out_colors = default(Efl.Gfx.GradientStop);
+      length = default( uint);                     
+         try {
+            ((GradientRadial)wrapper).GetStop( out _out_colors,  out length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      colors = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_colors);
+                              } else {
+         efl_gfx_gradient_stop_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out colors,  out length);
+      }
+   }
+   private static efl_gfx_gradient_stop_get_delegate efl_gfx_gradient_stop_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_stop_set_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+
+
+    public delegate  void efl_gfx_gradient_stop_set_api_delegate(System.IntPtr obj,   ref Efl.Gfx.GradientStop_StructInternal colors,    uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate> efl_gfx_gradient_stop_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_stop_set_api_delegate>(_Module, "efl_gfx_gradient_stop_set");
+    private static  void stop_set(System.IntPtr obj, System.IntPtr pd,  ref Efl.Gfx.GradientStop_StructInternal colors,   uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_stop_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_colors = Efl.Gfx.GradientStop_StructConversion.ToManaged(colors);
+                                       
+         try {
+            ((GradientRadial)wrapper).SetStop( ref _in_colors,  length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  colors = Efl.Gfx.GradientStop_StructConversion.ToInternal(_in_colors);
+                  } else {
+         efl_gfx_gradient_stop_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref colors,  length);
+      }
+   }
+   private static efl_gfx_gradient_stop_set_delegate efl_gfx_gradient_stop_set_static_delegate;
+
+
+    private delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.GradientSpread efl_gfx_gradient_spread_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate> efl_gfx_gradient_spread_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_get_api_delegate>(_Module, "efl_gfx_gradient_spread_get");
+    private static Efl.Gfx.GradientSpread spread_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.GradientSpread _ret_var = default(Efl.Gfx.GradientSpread);
+         try {
+            _ret_var = ((GradientRadial)wrapper).GetSpread();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_gradient_spread_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_gradient_spread_get_delegate efl_gfx_gradient_spread_get_static_delegate;
+
+
+    private delegate  void efl_gfx_gradient_spread_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.GradientSpread s);
+
+
+    public delegate  void efl_gfx_gradient_spread_set_api_delegate(System.IntPtr obj,   Efl.Gfx.GradientSpread s);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate> efl_gfx_gradient_spread_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_gradient_spread_set_api_delegate>(_Module, "efl_gfx_gradient_spread_set");
+    private static  void spread_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.GradientSpread s)
+   {
+      Eina.Log.Debug("function efl_gfx_gradient_spread_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((GradientRadial)wrapper).SetSpread( s);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_gradient_spread_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  s);
+      }
+   }
+   private static efl_gfx_gradient_spread_set_delegate efl_gfx_gradient_spread_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_hint.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_hint.eo.cs
new file mode 100755 (executable)
index 0000000..666c9d4
--- /dev/null
@@ -0,0 +1,1130 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+public partial class Constants {
+   public static readonly double HintExpand = 1.000000;
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics hint interface</summary>
+[HintNativeInherit]
+public interface Hint : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Defines the aspect ratio to respect when scaling this object.
+/// The aspect ratio is defined as the width / height ratio of the object. Depending on the object and its container, this hint may or may not be fully respected.
+/// 
+/// If any of the given aspect ratio terms are 0, the object&apos;s container will ignore the aspect and scale this object to occupy the whole available area, for any given policy.</summary>
+/// <param name="mode">Mode of interpretation.</param>
+/// <param name="sz">Base size to use for aspecting.</param>
+/// <returns></returns>
+ void GetHintAspect( out Efl.Gfx.HintAspect mode,  out Eina.Size2D sz);
+   /// <summary>Defines the aspect ratio to respect when scaling this object.
+/// The aspect ratio is defined as the width / height ratio of the object. Depending on the object and its container, this hint may or may not be fully respected.
+/// 
+/// If any of the given aspect ratio terms are 0, the object&apos;s container will ignore the aspect and scale this object to occupy the whole available area, for any given policy.</summary>
+/// <param name="mode">Mode of interpretation.</param>
+/// <param name="sz">Base size to use for aspecting.</param>
+/// <returns></returns>
+ void SetHintAspect( Efl.Gfx.HintAspect mode,  Eina.Size2D sz);
+   /// <summary>Hints on the object&apos;s maximum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Values -1 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+/// <returns>Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</returns>
+Eina.Size2D GetHintSizeMax();
+   /// <summary>Hints on the object&apos;s maximum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Values -1 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+/// <param name="sz">Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</param>
+/// <returns></returns>
+ void SetHintSizeMax( Eina.Size2D sz);
+   /// <summary>Hints on the object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Value 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+/// <returns>Minimum size (hint) in pixels.</returns>
+Eina.Size2D GetHintSizeMin();
+   /// <summary>Hints on the object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Value 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+/// <param name="sz">Minimum size (hint) in pixels.</param>
+/// <returns></returns>
+ void SetHintSizeMin( Eina.Size2D sz);
+   /// <summary>Get the &quot;intrinsic&quot; minimum size of this object.</summary>
+/// <returns>Minimum size (hint) in pixels.</returns>
+Eina.Size2D GetHintSizeRestrictedMin();
+   /// <summary>This function is protected as it is meant for widgets to indicate their &quot;intrinsic&quot; minimum size.</summary>
+/// <param name="sz">Minimum size (hint) in pixels.</param>
+/// <returns></returns>
+ void SetHintSizeRestrictedMin( Eina.Size2D sz);
+   /// <summary>Read-only minimum size combining both <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> and <see cref="Efl.Gfx.Hint.HintSizeMin"/> hints.
+/// <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> is intended for mostly internal usage and widget developers, and <see cref="Efl.Gfx.Hint.HintSizeMin"/> is intended to be set from application side. <see cref="Efl.Gfx.Hint.GetHintSizeCombinedMin"/> combines both values by taking their repective maximum (in both width and height), and is used internally to get an object&apos;s minimum size.</summary>
+/// <returns>Minimum size (hint) in pixels.</returns>
+Eina.Size2D GetHintSizeCombinedMin();
+   /// <summary>Hints for an object&apos;s margin or padding space.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+/// <param name="l">Integer to specify left padding.</param>
+/// <param name="r">Integer to specify right padding.</param>
+/// <param name="t">Integer to specify top padding.</param>
+/// <param name="b">Integer to specify bottom padding.</param>
+/// <returns></returns>
+ void GetHintMargin( out  int l,  out  int r,  out  int t,  out  int b);
+   /// <summary>Hints for an object&apos;s margin or padding space.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+/// <param name="l">Integer to specify left padding.</param>
+/// <param name="r">Integer to specify right padding.</param>
+/// <param name="t">Integer to specify top padding.</param>
+/// <param name="b">Integer to specify bottom padding.</param>
+/// <returns></returns>
+ void SetHintMargin(  int l,   int r,   int t,   int b);
+   /// <summary>Hints for an object&apos;s weight.
+/// This is a hint on how a container object should resize a given child within its area. Containers may adhere to the simpler logic of just expanding the child object&apos;s dimensions to fit its own (see the <see cref="Efl.Gfx.Constants.HintExpand"/> helper weight macro) or the complete one of taking each child&apos;s weight hint as real weights to how much of its size to allocate for them in each axis. A container is supposed to, after normalizing the weights of its children (with weight  hints), distribut the space it has to layout them by those factors -- most weighted children get larger in this process than the least ones.
+/// 
+/// Accepted values are zero or positive values. Some containers might use this hint as a boolean, but some others might consider it as a proportion, see documentation of each container.
+/// 
+/// Note: Default weight hint values are 0.0, for both axis.</summary>
+/// <param name="x">Non-negative double value to use as horizontal weight hint.</param>
+/// <param name="y">Non-negative double value to use as vertical weight hint.</param>
+/// <returns></returns>
+ void GetHintWeight( out double x,  out double y);
+   /// <summary>Hints for an object&apos;s weight.
+/// This is a hint on how a container object should resize a given child within its area. Containers may adhere to the simpler logic of just expanding the child object&apos;s dimensions to fit its own (see the <see cref="Efl.Gfx.Constants.HintExpand"/> helper weight macro) or the complete one of taking each child&apos;s weight hint as real weights to how much of its size to allocate for them in each axis. A container is supposed to, after normalizing the weights of its children (with weight  hints), distribut the space it has to layout them by those factors -- most weighted children get larger in this process than the least ones.
+/// 
+/// Accepted values are zero or positive values. Some containers might use this hint as a boolean, but some others might consider it as a proportion, see documentation of each container.
+/// 
+/// Note: Default weight hint values are 0.0, for both axis.</summary>
+/// <param name="x">Non-negative double value to use as horizontal weight hint.</param>
+/// <param name="y">Non-negative double value to use as vertical weight hint.</param>
+/// <returns></returns>
+ void SetHintWeight( double x,  double y);
+   /// <summary>Hints for an object&apos;s alignment.
+/// These are hints on how to align an object inside the boundaries of a container/manager. Accepted values are in the 0.0 to 1.0 range.
+/// 
+/// For the horizontal component, 0.0 means to the left, 1.0 means to the right. Analogously, for the vertical component, 0.0 to the top, 1.0 means to the bottom.
+/// 
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Note: Default alignment hint values are 0.5, for both axes.</summary>
+/// <param name="x">Double, ranging from 0.0 to 1.0.</param>
+/// <param name="y">Double, ranging from 0.0 to 1.0.</param>
+/// <returns></returns>
+ void GetHintAlign( out double x,  out double y);
+   /// <summary>Hints for an object&apos;s alignment.
+/// These are hints on how to align an object inside the boundaries of a container/manager. Accepted values are in the 0.0 to 1.0 range.
+/// 
+/// For the horizontal component, 0.0 means to the left, 1.0 means to the right. Analogously, for the vertical component, 0.0 to the top, 1.0 means to the bottom.
+/// 
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Note: Default alignment hint values are 0.5, for both axes.</summary>
+/// <param name="x">Double, ranging from 0.0 to 1.0.</param>
+/// <param name="y">Double, ranging from 0.0 to 1.0.</param>
+/// <returns></returns>
+ void SetHintAlign( double x,  double y);
+   /// <summary>Hints for an object&apos;s fill property that used to specify &quot;justify&quot; or &quot;fill&quot; by some users. <see cref="Efl.Gfx.Hint.GetHintFill"/> specify whether to fill the space inside the boundaries of a container/manager.
+/// Maximum hints should be enforced with higher priority, if they are set. Also, any <see cref="Efl.Gfx.Hint.GetHintMargin"/> set on objects should add up to the object space on the final scene composition.
+/// 
+/// See documentation of possible users: in Evas, they are the <see cref="Efl.Ui.Box"/> &quot;box&quot; and <see cref="Efl.Ui.Table"/> &quot;table&quot; smart objects.
+/// 
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Note: Default fill hint values are true, for both axes.</summary>
+/// <param name="x"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as horizontal fill hint.</param>
+/// <param name="y"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as vertical fill hint.</param>
+/// <returns></returns>
+ void GetHintFill( out bool x,  out bool y);
+   /// <summary>Hints for an object&apos;s fill property that used to specify &quot;justify&quot; or &quot;fill&quot; by some users. <see cref="Efl.Gfx.Hint.GetHintFill"/> specify whether to fill the space inside the boundaries of a container/manager.
+/// Maximum hints should be enforced with higher priority, if they are set. Also, any <see cref="Efl.Gfx.Hint.GetHintMargin"/> set on objects should add up to the object space on the final scene composition.
+/// 
+/// See documentation of possible users: in Evas, they are the <see cref="Efl.Ui.Box"/> &quot;box&quot; and <see cref="Efl.Ui.Table"/> &quot;table&quot; smart objects.
+/// 
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Note: Default fill hint values are true, for both axes.</summary>
+/// <param name="x"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as horizontal fill hint.</param>
+/// <param name="y"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as vertical fill hint.</param>
+/// <returns></returns>
+ void SetHintFill( bool x,  bool y);
+                                                      /// <summary>Object hints changed.</summary>
+   event EventHandler HintsChangedEvt;
+   /// <summary>Hints on the object&apos;s maximum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Values -1 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+/// <value>Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</value>
+   Eina.Size2D HintSizeMax {
+      get ;
+      set ;
+   }
+   /// <summary>Hints on the object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Value 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   Eina.Size2D HintSizeMin {
+      get ;
+      set ;
+   }
+   /// <summary>Internal hints for an object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Values 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is internal and meant for widget developers to define the absolute minimum size of the object. EFL itself sets this size internally, so any change to it from an application might be ignored. Use <see cref="Efl.Gfx.Hint.HintSizeMin"/> instead.</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   Eina.Size2D HintSizeRestrictedMin {
+      get ;
+      set ;
+   }
+   /// <summary>Read-only minimum size combining both <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> and <see cref="Efl.Gfx.Hint.HintSizeMin"/> hints.
+/// <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> is intended for mostly internal usage and widget developers, and <see cref="Efl.Gfx.Hint.HintSizeMin"/> is intended to be set from application side. <see cref="Efl.Gfx.Hint.GetHintSizeCombinedMin"/> combines both values by taking their repective maximum (in both width and height), and is used internally to get an object&apos;s minimum size.</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   Eina.Size2D HintSizeCombinedMin {
+      get ;
+   }
+}
+/// <summary>Efl graphics hint interface</summary>
+sealed public class HintConcrete : 
+
+Hint
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (HintConcrete))
+            return Efl.Gfx.HintNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_hint_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public HintConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~HintConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static HintConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new HintConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object HintsChangedEvtKey = new object();
+   /// <summary>Object hints changed.</summary>
+   public event EventHandler HintsChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_HINTS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_HintsChangedEvt_delegate)) {
+               eventHandlers.AddHandler(HintsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_HINTS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_HintsChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(HintsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event HintsChangedEvt.</summary>
+   public void On_HintsChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[HintsChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_HintsChangedEvt_delegate;
+   private void on_HintsChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_HintsChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_HintsChangedEvt_delegate = new Efl.EventCb(on_HintsChangedEvt_NativeCallback);
+   }
+   /// <summary>Defines the aspect ratio to respect when scaling this object.
+   /// The aspect ratio is defined as the width / height ratio of the object. Depending on the object and its container, this hint may or may not be fully respected.
+   /// 
+   /// If any of the given aspect ratio terms are 0, the object&apos;s container will ignore the aspect and scale this object to occupy the whole available area, for any given policy.</summary>
+   /// <param name="mode">Mode of interpretation.</param>
+   /// <param name="sz">Base size to use for aspecting.</param>
+   /// <returns></returns>
+   public  void GetHintAspect( out Efl.Gfx.HintAspect mode,  out Eina.Size2D sz) {
+                         var _out_sz = new Eina.Size2D_StructInternal();
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_aspect_get_ptr.Value.Delegate(this.NativeHandle, out mode,  out _out_sz);
+      Eina.Error.RaiseIfUnhandledException();
+            sz = Eina.Size2D_StructConversion.ToManaged(_out_sz);
+                   }
+   /// <summary>Defines the aspect ratio to respect when scaling this object.
+   /// The aspect ratio is defined as the width / height ratio of the object. Depending on the object and its container, this hint may or may not be fully respected.
+   /// 
+   /// If any of the given aspect ratio terms are 0, the object&apos;s container will ignore the aspect and scale this object to occupy the whole available area, for any given policy.</summary>
+   /// <param name="mode">Mode of interpretation.</param>
+   /// <param name="sz">Base size to use for aspecting.</param>
+   /// <returns></returns>
+   public  void SetHintAspect( Efl.Gfx.HintAspect mode,  Eina.Size2D sz) {
+             var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                              Efl.Gfx.HintNativeInherit.efl_gfx_hint_aspect_set_ptr.Value.Delegate(this.NativeHandle, mode,  _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints on the object&apos;s maximum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Values -1 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <returns>Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</returns>
+   public Eina.Size2D GetHintSizeMax() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_max_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Hints on the object&apos;s maximum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Values -1 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <param name="sz">Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</param>
+   /// <returns></returns>
+   public  void SetHintSizeMax( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_max_set_ptr.Value.Delegate(this.NativeHandle, _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hints on the object&apos;s minimum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Value 0 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+   /// <returns>Minimum size (hint) in pixels.</returns>
+   public Eina.Size2D GetHintSizeMin() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_min_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Hints on the object&apos;s minimum size.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Value 0 will be treated as unset hint components, when queried by managers.
+   /// 
+   /// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+   /// <param name="sz">Minimum size (hint) in pixels.</param>
+   /// <returns></returns>
+   public  void SetHintSizeMin( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_min_set_ptr.Value.Delegate(this.NativeHandle, _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the &quot;intrinsic&quot; minimum size of this object.</summary>
+   /// <returns>Minimum size (hint) in pixels.</returns>
+   public Eina.Size2D GetHintSizeRestrictedMin() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_restricted_min_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>This function is protected as it is meant for widgets to indicate their &quot;intrinsic&quot; minimum size.</summary>
+   /// <param name="sz">Minimum size (hint) in pixels.</param>
+   /// <returns></returns>
+   public  void SetHintSizeRestrictedMin( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_restricted_min_set_ptr.Value.Delegate(this.NativeHandle, _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Read-only minimum size combining both <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> and <see cref="Efl.Gfx.Hint.HintSizeMin"/> hints.
+   /// <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> is intended for mostly internal usage and widget developers, and <see cref="Efl.Gfx.Hint.HintSizeMin"/> is intended to be set from application side. <see cref="Efl.Gfx.Hint.GetHintSizeCombinedMin"/> combines both values by taking their repective maximum (in both width and height), and is used internally to get an object&apos;s minimum size.</summary>
+   /// <returns>Minimum size (hint) in pixels.</returns>
+   public Eina.Size2D GetHintSizeCombinedMin() {
+       var _ret_var = Efl.Gfx.HintNativeInherit.efl_gfx_hint_size_combined_min_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Hints for an object&apos;s margin or padding space.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <param name="l">Integer to specify left padding.</param>
+   /// <param name="r">Integer to specify right padding.</param>
+   /// <param name="t">Integer to specify top padding.</param>
+   /// <param name="b">Integer to specify bottom padding.</param>
+   /// <returns></returns>
+   public  void GetHintMargin( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.HintNativeInherit.efl_gfx_hint_margin_get_ptr.Value.Delegate(this.NativeHandle, out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Hints for an object&apos;s margin or padding space.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// The object container is in charge of fetching this property and placing the object accordingly.
+   /// 
+   /// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+   /// <param name="l">Integer to specify left padding.</param>
+   /// <param name="r">Integer to specify right padding.</param>
+   /// <param name="t">Integer to specify top padding.</param>
+   /// <param name="b">Integer to specify bottom padding.</param>
+   /// <returns></returns>
+   public  void SetHintMargin(  int l,   int r,   int t,   int b) {
+                                                                               Efl.Gfx.HintNativeInherit.efl_gfx_hint_margin_set_ptr.Value.Delegate(this.NativeHandle, l,  r,  t,  b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Hints for an object&apos;s weight.
+   /// This is a hint on how a container object should resize a given child within its area. Containers may adhere to the simpler logic of just expanding the child object&apos;s dimensions to fit its own (see the <see cref="Efl.Gfx.Constants.HintExpand"/> helper weight macro) or the complete one of taking each child&apos;s weight hint as real weights to how much of its size to allocate for them in each axis. A container is supposed to, after normalizing the weights of its children (with weight  hints), distribut the space it has to layout them by those factors -- most weighted children get larger in this process than the least ones.
+   /// 
+   /// Accepted values are zero or positive values. Some containers might use this hint as a boolean, but some others might consider it as a proportion, see documentation of each container.
+   /// 
+   /// Note: Default weight hint values are 0.0, for both axis.</summary>
+   /// <param name="x">Non-negative double value to use as horizontal weight hint.</param>
+   /// <param name="y">Non-negative double value to use as vertical weight hint.</param>
+   /// <returns></returns>
+   public  void GetHintWeight( out double x,  out double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_weight_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s weight.
+   /// This is a hint on how a container object should resize a given child within its area. Containers may adhere to the simpler logic of just expanding the child object&apos;s dimensions to fit its own (see the <see cref="Efl.Gfx.Constants.HintExpand"/> helper weight macro) or the complete one of taking each child&apos;s weight hint as real weights to how much of its size to allocate for them in each axis. A container is supposed to, after normalizing the weights of its children (with weight  hints), distribut the space it has to layout them by those factors -- most weighted children get larger in this process than the least ones.
+   /// 
+   /// Accepted values are zero or positive values. Some containers might use this hint as a boolean, but some others might consider it as a proportion, see documentation of each container.
+   /// 
+   /// Note: Default weight hint values are 0.0, for both axis.</summary>
+   /// <param name="x">Non-negative double value to use as horizontal weight hint.</param>
+   /// <param name="y">Non-negative double value to use as vertical weight hint.</param>
+   /// <returns></returns>
+   public  void SetHintWeight( double x,  double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_weight_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s alignment.
+   /// These are hints on how to align an object inside the boundaries of a container/manager. Accepted values are in the 0.0 to 1.0 range.
+   /// 
+   /// For the horizontal component, 0.0 means to the left, 1.0 means to the right. Analogously, for the vertical component, 0.0 to the top, 1.0 means to the bottom.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default alignment hint values are 0.5, for both axes.</summary>
+   /// <param name="x">Double, ranging from 0.0 to 1.0.</param>
+   /// <param name="y">Double, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   public  void GetHintAlign( out double x,  out double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_align_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s alignment.
+   /// These are hints on how to align an object inside the boundaries of a container/manager. Accepted values are in the 0.0 to 1.0 range.
+   /// 
+   /// For the horizontal component, 0.0 means to the left, 1.0 means to the right. Analogously, for the vertical component, 0.0 to the top, 1.0 means to the bottom.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default alignment hint values are 0.5, for both axes.</summary>
+   /// <param name="x">Double, ranging from 0.0 to 1.0.</param>
+   /// <param name="y">Double, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   public  void SetHintAlign( double x,  double y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_align_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s fill property that used to specify &quot;justify&quot; or &quot;fill&quot; by some users. <see cref="Efl.Gfx.Hint.GetHintFill"/> specify whether to fill the space inside the boundaries of a container/manager.
+   /// Maximum hints should be enforced with higher priority, if they are set. Also, any <see cref="Efl.Gfx.Hint.GetHintMargin"/> set on objects should add up to the object space on the final scene composition.
+   /// 
+   /// See documentation of possible users: in Evas, they are the <see cref="Efl.Ui.Box"/> &quot;box&quot; and <see cref="Efl.Ui.Table"/> &quot;table&quot; smart objects.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default fill hint values are true, for both axes.</summary>
+   /// <param name="x"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as horizontal fill hint.</param>
+   /// <param name="y"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as vertical fill hint.</param>
+   /// <returns></returns>
+   public  void GetHintFill( out bool x,  out bool y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_fill_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints for an object&apos;s fill property that used to specify &quot;justify&quot; or &quot;fill&quot; by some users. <see cref="Efl.Gfx.Hint.GetHintFill"/> specify whether to fill the space inside the boundaries of a container/manager.
+   /// Maximum hints should be enforced with higher priority, if they are set. Also, any <see cref="Efl.Gfx.Hint.GetHintMargin"/> set on objects should add up to the object space on the final scene composition.
+   /// 
+   /// See documentation of possible users: in Evas, they are the <see cref="Efl.Ui.Box"/> &quot;box&quot; and <see cref="Efl.Ui.Table"/> &quot;table&quot; smart objects.
+   /// 
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Note: Default fill hint values are true, for both axes.</summary>
+   /// <param name="x"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as horizontal fill hint.</param>
+   /// <param name="y"><c>true</c> if to fill the object space, <c>false</c> otherwise, to use as vertical fill hint.</param>
+   /// <returns></returns>
+   public  void SetHintFill( bool x,  bool y) {
+                                           Efl.Gfx.HintNativeInherit.efl_gfx_hint_fill_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Hints on the object&apos;s maximum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Values -1 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: Smart objects (such as elementary) can have their own hint policy. So calling this API may or may not affect the size of smart objects.</summary>
+/// <value>Maximum size (hint) in pixels, (-1, -1) by default for canvas objects).</value>
+   public Eina.Size2D HintSizeMax {
+      get { return GetHintSizeMax(); }
+      set { SetHintSizeMax( value); }
+   }
+   /// <summary>Hints on the object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate. The object container is in charge of fetching this property and placing the object accordingly.
+/// 
+/// Value 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is meant to be set by applications and not by EFL itself. Use this to request a specific size (treated as minimum size).</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   public Eina.Size2D HintSizeMin {
+      get { return GetHintSizeMin(); }
+      set { SetHintSizeMin( value); }
+   }
+   /// <summary>Internal hints for an object&apos;s minimum size.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Values 0 will be treated as unset hint components, when queried by managers.
+/// 
+/// Note: This property is internal and meant for widget developers to define the absolute minimum size of the object. EFL itself sets this size internally, so any change to it from an application might be ignored. Use <see cref="Efl.Gfx.Hint.HintSizeMin"/> instead.</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   public Eina.Size2D HintSizeRestrictedMin {
+      get { return GetHintSizeRestrictedMin(); }
+      set { SetHintSizeRestrictedMin( value); }
+   }
+   /// <summary>Read-only minimum size combining both <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> and <see cref="Efl.Gfx.Hint.HintSizeMin"/> hints.
+/// <see cref="Efl.Gfx.Hint.HintSizeRestrictedMin"/> is intended for mostly internal usage and widget developers, and <see cref="Efl.Gfx.Hint.HintSizeMin"/> is intended to be set from application side. <see cref="Efl.Gfx.Hint.GetHintSizeCombinedMin"/> combines both values by taking their repective maximum (in both width and height), and is used internally to get an object&apos;s minimum size.</summary>
+/// <value>Minimum size (hint) in pixels.</value>
+   public Eina.Size2D HintSizeCombinedMin {
+      get { return GetHintSizeCombinedMin(); }
+   }
+}
+public class HintNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_hint_aspect_get_static_delegate == null)
+      efl_gfx_hint_aspect_get_static_delegate = new efl_gfx_hint_aspect_get_delegate(hint_aspect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_aspect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_aspect_get_static_delegate)});
+      if (efl_gfx_hint_aspect_set_static_delegate == null)
+      efl_gfx_hint_aspect_set_static_delegate = new efl_gfx_hint_aspect_set_delegate(hint_aspect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_aspect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_aspect_set_static_delegate)});
+      if (efl_gfx_hint_size_max_get_static_delegate == null)
+      efl_gfx_hint_size_max_get_static_delegate = new efl_gfx_hint_size_max_get_delegate(hint_size_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_max_get_static_delegate)});
+      if (efl_gfx_hint_size_max_set_static_delegate == null)
+      efl_gfx_hint_size_max_set_static_delegate = new efl_gfx_hint_size_max_set_delegate(hint_size_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_max_set_static_delegate)});
+      if (efl_gfx_hint_size_min_get_static_delegate == null)
+      efl_gfx_hint_size_min_get_static_delegate = new efl_gfx_hint_size_min_get_delegate(hint_size_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_min_get_static_delegate)});
+      if (efl_gfx_hint_size_min_set_static_delegate == null)
+      efl_gfx_hint_size_min_set_static_delegate = new efl_gfx_hint_size_min_set_delegate(hint_size_min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_min_set_static_delegate)});
+      if (efl_gfx_hint_size_restricted_min_get_static_delegate == null)
+      efl_gfx_hint_size_restricted_min_get_static_delegate = new efl_gfx_hint_size_restricted_min_get_delegate(hint_size_restricted_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_restricted_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_restricted_min_get_static_delegate)});
+      if (efl_gfx_hint_size_restricted_min_set_static_delegate == null)
+      efl_gfx_hint_size_restricted_min_set_static_delegate = new efl_gfx_hint_size_restricted_min_set_delegate(hint_size_restricted_min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_restricted_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_restricted_min_set_static_delegate)});
+      if (efl_gfx_hint_size_combined_min_get_static_delegate == null)
+      efl_gfx_hint_size_combined_min_get_static_delegate = new efl_gfx_hint_size_combined_min_get_delegate(hint_size_combined_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_size_combined_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_size_combined_min_get_static_delegate)});
+      if (efl_gfx_hint_margin_get_static_delegate == null)
+      efl_gfx_hint_margin_get_static_delegate = new efl_gfx_hint_margin_get_delegate(hint_margin_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_margin_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_margin_get_static_delegate)});
+      if (efl_gfx_hint_margin_set_static_delegate == null)
+      efl_gfx_hint_margin_set_static_delegate = new efl_gfx_hint_margin_set_delegate(hint_margin_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_margin_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_margin_set_static_delegate)});
+      if (efl_gfx_hint_weight_get_static_delegate == null)
+      efl_gfx_hint_weight_get_static_delegate = new efl_gfx_hint_weight_get_delegate(hint_weight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_weight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_weight_get_static_delegate)});
+      if (efl_gfx_hint_weight_set_static_delegate == null)
+      efl_gfx_hint_weight_set_static_delegate = new efl_gfx_hint_weight_set_delegate(hint_weight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_weight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_weight_set_static_delegate)});
+      if (efl_gfx_hint_align_get_static_delegate == null)
+      efl_gfx_hint_align_get_static_delegate = new efl_gfx_hint_align_get_delegate(hint_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_align_get_static_delegate)});
+      if (efl_gfx_hint_align_set_static_delegate == null)
+      efl_gfx_hint_align_set_static_delegate = new efl_gfx_hint_align_set_delegate(hint_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_align_set_static_delegate)});
+      if (efl_gfx_hint_fill_get_static_delegate == null)
+      efl_gfx_hint_fill_get_static_delegate = new efl_gfx_hint_fill_get_delegate(hint_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_fill_get_static_delegate)});
+      if (efl_gfx_hint_fill_set_static_delegate == null)
+      efl_gfx_hint_fill_set_static_delegate = new efl_gfx_hint_fill_set_delegate(hint_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_hint_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_hint_fill_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.HintConcrete.efl_gfx_hint_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.HintConcrete.efl_gfx_hint_interface_get();
+   }
+
+
+    private delegate  void efl_gfx_hint_aspect_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Gfx.HintAspect mode,   out Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_aspect_get_api_delegate(System.IntPtr obj,   out Efl.Gfx.HintAspect mode,   out Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_get_api_delegate> efl_gfx_hint_aspect_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_get_api_delegate>(_Module, "efl_gfx_hint_aspect_get");
+    private static  void hint_aspect_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Gfx.HintAspect mode,  out Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_aspect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           mode = default(Efl.Gfx.HintAspect);      Eina.Size2D _out_sz = default(Eina.Size2D);
+                     
+         try {
+            ((Hint)wrapper).GetHintAspect( out mode,  out _out_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            sz = Eina.Size2D_StructConversion.ToInternal(_out_sz);
+                        } else {
+         efl_gfx_hint_aspect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out mode,  out sz);
+      }
+   }
+   private static efl_gfx_hint_aspect_get_delegate efl_gfx_hint_aspect_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_aspect_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.HintAspect mode,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_aspect_set_api_delegate(System.IntPtr obj,   Efl.Gfx.HintAspect mode,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_set_api_delegate> efl_gfx_hint_aspect_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_aspect_set_api_delegate>(_Module, "efl_gfx_hint_aspect_set");
+    private static  void hint_aspect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.HintAspect mode,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_aspect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                                 
+         try {
+            ((Hint)wrapper).SetHintAspect( mode,  _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_aspect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode,  sz);
+      }
+   }
+   private static efl_gfx_hint_aspect_set_delegate efl_gfx_hint_aspect_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_get_api_delegate> efl_gfx_hint_size_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_get_api_delegate>(_Module, "efl_gfx_hint_size_max_get");
+    private static Eina.Size2D_StructInternal hint_size_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Hint)wrapper).GetHintSizeMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_max_get_delegate efl_gfx_hint_size_max_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_size_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_size_max_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_set_api_delegate> efl_gfx_hint_size_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_max_set_api_delegate>(_Module, "efl_gfx_hint_size_max_set");
+    private static  void hint_size_max_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Hint)wrapper).SetHintSizeMax( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_hint_size_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_hint_size_max_set_delegate efl_gfx_hint_size_max_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_get_api_delegate> efl_gfx_hint_size_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_get_api_delegate>(_Module, "efl_gfx_hint_size_min_get");
+    private static Eina.Size2D_StructInternal hint_size_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Hint)wrapper).GetHintSizeMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_min_get_delegate efl_gfx_hint_size_min_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_size_min_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_size_min_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_set_api_delegate> efl_gfx_hint_size_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_min_set_api_delegate>(_Module, "efl_gfx_hint_size_min_set");
+    private static  void hint_size_min_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Hint)wrapper).SetHintSizeMin( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_hint_size_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_hint_size_min_set_delegate efl_gfx_hint_size_min_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_restricted_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_restricted_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_get_api_delegate> efl_gfx_hint_size_restricted_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_get_api_delegate>(_Module, "efl_gfx_hint_size_restricted_min_get");
+    private static Eina.Size2D_StructInternal hint_size_restricted_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_restricted_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Hint)wrapper).GetHintSizeRestrictedMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_restricted_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_restricted_min_get_delegate efl_gfx_hint_size_restricted_min_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_size_restricted_min_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_gfx_hint_size_restricted_min_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_set_api_delegate> efl_gfx_hint_size_restricted_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_restricted_min_set_api_delegate>(_Module, "efl_gfx_hint_size_restricted_min_set");
+    private static  void hint_size_restricted_min_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_restricted_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Hint)wrapper).SetHintSizeRestrictedMin( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_hint_size_restricted_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_gfx_hint_size_restricted_min_set_delegate efl_gfx_hint_size_restricted_min_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_hint_size_combined_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_hint_size_combined_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_size_combined_min_get_api_delegate> efl_gfx_hint_size_combined_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_size_combined_min_get_api_delegate>(_Module, "efl_gfx_hint_size_combined_min_get");
+    private static Eina.Size2D_StructInternal hint_size_combined_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_size_combined_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Hint)wrapper).GetHintSizeCombinedMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_hint_size_combined_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_hint_size_combined_min_get_delegate efl_gfx_hint_size_combined_min_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_margin_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_hint_margin_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_get_api_delegate> efl_gfx_hint_margin_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_get_api_delegate>(_Module, "efl_gfx_hint_margin_get");
+    private static  void hint_margin_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_margin_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((Hint)wrapper).GetHintMargin( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_hint_margin_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_hint_margin_get_delegate efl_gfx_hint_margin_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_margin_set_delegate(System.IntPtr obj, System.IntPtr pd,    int l,    int r,    int t,    int b);
+
+
+    public delegate  void efl_gfx_hint_margin_set_api_delegate(System.IntPtr obj,    int l,    int r,    int t,    int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_set_api_delegate> efl_gfx_hint_margin_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_margin_set_api_delegate>(_Module, "efl_gfx_hint_margin_set");
+    private static  void hint_margin_set(System.IntPtr obj, System.IntPtr pd,   int l,   int r,   int t,   int b)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_margin_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Hint)wrapper).SetHintMargin( l,  r,  t,  b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_hint_margin_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l,  r,  t,  b);
+      }
+   }
+   private static efl_gfx_hint_margin_set_delegate efl_gfx_hint_margin_set_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_weight_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_hint_weight_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_get_api_delegate> efl_gfx_hint_weight_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_get_api_delegate>(_Module, "efl_gfx_hint_weight_get");
+    private static  void hint_weight_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_weight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Hint)wrapper).GetHintWeight( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_weight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_hint_weight_get_delegate efl_gfx_hint_weight_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_weight_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_hint_weight_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_set_api_delegate> efl_gfx_hint_weight_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_weight_set_api_delegate>(_Module, "efl_gfx_hint_weight_set");
+    private static  void hint_weight_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_weight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Hint)wrapper).SetHintWeight( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_weight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_hint_weight_set_delegate efl_gfx_hint_weight_set_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_hint_align_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_align_get_api_delegate> efl_gfx_hint_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_align_get_api_delegate>(_Module, "efl_gfx_hint_align_get");
+    private static  void hint_align_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Hint)wrapper).GetHintAlign( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_hint_align_get_delegate efl_gfx_hint_align_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_hint_align_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_align_set_api_delegate> efl_gfx_hint_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_align_set_api_delegate>(_Module, "efl_gfx_hint_align_set");
+    private static  void hint_align_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Hint)wrapper).SetHintAlign( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_hint_align_set_delegate efl_gfx_hint_align_set_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_fill_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool x,  [MarshalAs(UnmanagedType.U1)]  out bool y);
+
+
+    public delegate  void efl_gfx_hint_fill_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool x,  [MarshalAs(UnmanagedType.U1)]  out bool y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_get_api_delegate> efl_gfx_hint_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_get_api_delegate>(_Module, "efl_gfx_hint_fill_get");
+    private static  void hint_fill_get(System.IntPtr obj, System.IntPtr pd,  out bool x,  out bool y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(bool);      y = default(bool);                     
+         try {
+            ((Hint)wrapper).GetHintFill( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_hint_fill_get_delegate efl_gfx_hint_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_hint_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool x,  [MarshalAs(UnmanagedType.U1)]  bool y);
+
+
+    public delegate  void efl_gfx_hint_fill_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool x,  [MarshalAs(UnmanagedType.U1)]  bool y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_set_api_delegate> efl_gfx_hint_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_hint_fill_set_api_delegate>(_Module, "efl_gfx_hint_fill_set");
+    private static  void hint_fill_set(System.IntPtr obj, System.IntPtr pd,  bool x,  bool y)
+   {
+      Eina.Log.Debug("function efl_gfx_hint_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Hint)wrapper).SetHintFill( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_hint_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_hint_fill_set_delegate efl_gfx_hint_fill_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_image.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_image.eo.cs
new file mode 100755 (executable)
index 0000000..bac6ef0
--- /dev/null
@@ -0,0 +1,1211 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Common APIs for all 2D images that can be rendered on the canvas.</summary>
+[ImageNativeInherit]
+public interface Image : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <returns>Whether to use smooth scale or not.</returns>
+bool GetSmoothScale();
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <param name="smooth_scale">Whether to use smooth scale or not.</param>
+/// <returns></returns>
+ void SetSmoothScale( bool smooth_scale);
+   /// <summary>Control how the image is scaled.</summary>
+/// <returns>Image scale type</returns>
+Efl.Gfx.ImageScaleType GetScaleType();
+   /// <summary>Control how the image is scaled.</summary>
+/// <param name="scale_type">Image scale type</param>
+/// <returns></returns>
+ void SetScaleType( Efl.Gfx.ImageScaleType scale_type);
+   /// <summary>Returns 1.0 if not applicable (eg. height = 0).</summary>
+/// <returns>The image&apos;s ratio.</returns>
+double GetRatio();
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+/// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+/// 
+/// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+/// 
+/// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+/// 
+/// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+/// 
+/// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+/// <param name="l">The border&apos;s left width.</param>
+/// <param name="r">The border&apos;s right width.</param>
+/// <param name="t">The border&apos;s top height.</param>
+/// <param name="b">The border&apos;s bottom height.</param>
+/// <returns></returns>
+ void GetBorder( out  int l,  out  int r,  out  int t,  out  int b);
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+/// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+/// 
+/// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+/// 
+/// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+/// 
+/// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+/// 
+/// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+/// <param name="l">The border&apos;s left width.</param>
+/// <param name="r">The border&apos;s right width.</param>
+/// <param name="t">The border&apos;s top height.</param>
+/// <param name="b">The border&apos;s bottom height.</param>
+/// <returns></returns>
+ void SetBorder(  int l,   int r,   int t,   int b);
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <returns>The scale factor.</returns>
+double GetBorderScale();
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <param name="scale">The scale factor.</param>
+/// <returns></returns>
+ void SetBorderScale( double scale);
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <returns>Fill mode of the center region.</returns>
+Efl.Gfx.BorderFillMode GetBorderCenterFill();
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <param name="fill">Fill mode of the center region.</param>
+/// <returns></returns>
+ void SetBorderCenterFill( Efl.Gfx.BorderFillMode fill);
+   /// <summary>This represents the size of the original image in pixels.
+/// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+/// 
+/// This is a read-only property, and may return 0x0.
+/// 1.20</summary>
+/// <returns>The size in pixels.</returns>
+Eina.Size2D GetImageSize();
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+/// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+/// <returns>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></returns>
+Efl.Gfx.ImageContentHint GetContentHint();
+   /// <summary>Set the content hint setting of a given image object of the canvas.
+/// This function sets the content hint value of the given image of the canvas. For example, if you&apos;re on the GL engine and your driver implementation supports it, setting this hint to #EVAS_IMAGE_CONTENT_HINT_DYNAMIC will make it need zero copies at texture upload time, which is an &quot;expensive&quot; operation.</summary>
+/// <param name="hint">Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></param>
+/// <returns></returns>
+ void SetContentHint( Efl.Gfx.ImageContentHint hint);
+   /// <summary>Get the scale hint of a given image of the canvas.
+/// This function returns the scale hint value of the given image object of the canvas.</summary>
+/// <returns>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></returns>
+Efl.Gfx.ImageScaleHint GetScaleHint();
+   /// <summary>Set the scale hint of a given image of the canvas.
+/// This function sets the scale hint value of the given image object in the canvas, which will affect how Evas is to cache scaled versions of its original source image.</summary>
+/// <param name="hint">Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></param>
+/// <returns></returns>
+ void SetScaleHint( Efl.Gfx.ImageScaleHint hint);
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <returns>The load error code.</returns>
+Efl.Gfx.ImageLoadError GetImageLoadError();
+                                                      /// <summary>Image data has been preloaded.</summary>
+   event EventHandler PreloadEvt;
+   /// <summary>Image was resized (its pixel data).</summary>
+   event EventHandler ResizeEvt;
+   /// <summary>Image data has been unloaded (by some mechanism in EFL that threw out the original image data).</summary>
+   event EventHandler UnloadEvt;
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <value>Whether to use smooth scale or not.</value>
+   bool SmoothScale {
+      get ;
+      set ;
+   }
+   /// <summary>Control how the image is scaled.</summary>
+/// <value>Image scale type</value>
+   Efl.Gfx.ImageScaleType ScaleType {
+      get ;
+      set ;
+   }
+   /// <summary>The native width/height ratio of the image.</summary>
+/// <value>The image&apos;s ratio.</value>
+   double Ratio {
+      get ;
+   }
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <value>The scale factor.</value>
+   double BorderScale {
+      get ;
+      set ;
+   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <value>Fill mode of the center region.</value>
+   Efl.Gfx.BorderFillMode BorderCenterFill {
+      get ;
+      set ;
+   }
+   /// <summary>This represents the size of the original image in pixels.
+/// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+/// 
+/// This is a read-only property, and may return 0x0.
+/// 1.20</summary>
+/// <value>The size in pixels.</value>
+   Eina.Size2D ImageSize {
+      get ;
+   }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+/// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+/// <value>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></value>
+   Efl.Gfx.ImageContentHint ContentHint {
+      get ;
+      set ;
+   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+/// This function returns the scale hint value of the given image object of the canvas.</summary>
+/// <value>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></value>
+   Efl.Gfx.ImageScaleHint ScaleHint {
+      get ;
+      set ;
+   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <value>The load error code.</value>
+   Efl.Gfx.ImageLoadError ImageLoadError {
+      get ;
+   }
+}
+/// <summary>Common APIs for all 2D images that can be rendered on the canvas.</summary>
+sealed public class ImageConcrete : 
+
+Image
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ImageConcrete))
+            return Efl.Gfx.ImageNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_image_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ImageConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ImageConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ImageConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ImageConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object PreloadEvtKey = new object();
+   /// <summary>Image data has been preloaded.</summary>
+   public event EventHandler PreloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PreloadEvt_delegate)) {
+               eventHandlers.AddHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (remove_cpp_event_handler(key, this.evt_PreloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PreloadEvt.</summary>
+   public void On_PreloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PreloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PreloadEvt_delegate;
+   private void on_PreloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PreloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ResizeEvtKey = new object();
+   /// <summary>Image was resized (its pixel data).</summary>
+   public event EventHandler ResizeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ResizeEvt_delegate)) {
+               eventHandlers.AddHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (remove_cpp_event_handler(key, this.evt_ResizeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ResizeEvt.</summary>
+   public void On_ResizeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ResizeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ResizeEvt_delegate;
+   private void on_ResizeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ResizeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnloadEvtKey = new object();
+   /// <summary>Image data has been unloaded (by some mechanism in EFL that threw out the original image data).</summary>
+   public event EventHandler UnloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnloadEvt_delegate)) {
+               eventHandlers.AddHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (remove_cpp_event_handler(key, this.evt_UnloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnloadEvt.</summary>
+   public void On_UnloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnloadEvt_delegate;
+   private void on_UnloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_PreloadEvt_delegate = new Efl.EventCb(on_PreloadEvt_NativeCallback);
+      evt_ResizeEvt_delegate = new Efl.EventCb(on_ResizeEvt_NativeCallback);
+      evt_UnloadEvt_delegate = new Efl.EventCb(on_UnloadEvt_NativeCallback);
+   }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <returns>Whether to use smooth scale or not.</returns>
+   public bool GetSmoothScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <param name="smooth_scale">Whether to use smooth scale or not.</param>
+   /// <returns></returns>
+   public  void SetSmoothScale( bool smooth_scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_set_ptr.Value.Delegate(this.NativeHandle, smooth_scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <returns>Image scale type</returns>
+   public Efl.Gfx.ImageScaleType GetScaleType() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <param name="scale_type">Image scale type</param>
+   /// <returns></returns>
+   public  void SetScaleType( Efl.Gfx.ImageScaleType scale_type) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_set_ptr.Value.Delegate(this.NativeHandle, scale_type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns 1.0 if not applicable (eg. height = 0).</summary>
+   /// <returns>The image&apos;s ratio.</returns>
+   public double GetRatio() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_ratio_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   public  void GetBorder( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_get_ptr.Value.Delegate(this.NativeHandle, out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   public  void SetBorder(  int l,   int r,   int t,   int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_set_ptr.Value.Delegate(this.NativeHandle, l,  r,  t,  b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <returns>The scale factor.</returns>
+   public double GetBorderScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <param name="scale">The scale factor.</param>
+   /// <returns></returns>
+   public  void SetBorderScale( double scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_set_ptr.Value.Delegate(this.NativeHandle, scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <returns>Fill mode of the center region.</returns>
+   public Efl.Gfx.BorderFillMode GetBorderCenterFill() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <param name="fill">Fill mode of the center region.</param>
+   /// <returns></returns>
+   public  void SetBorderCenterFill( Efl.Gfx.BorderFillMode fill) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_set_ptr.Value.Delegate(this.NativeHandle, fill);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This represents the size of the original image in pixels.
+   /// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+   /// 
+   /// This is a read-only property, and may return 0x0.
+   /// 1.20</summary>
+   /// <returns>The size in pixels.</returns>
+   public Eina.Size2D GetImageSize() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+   /// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+   /// <returns>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></returns>
+   public Efl.Gfx.ImageContentHint GetContentHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the content hint setting of a given image object of the canvas.
+   /// This function sets the content hint value of the given image of the canvas. For example, if you&apos;re on the GL engine and your driver implementation supports it, setting this hint to #EVAS_IMAGE_CONTENT_HINT_DYNAMIC will make it need zero copies at texture upload time, which is an &quot;expensive&quot; operation.</summary>
+   /// <param name="hint">Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></param>
+   /// <returns></returns>
+   public  void SetContentHint( Efl.Gfx.ImageContentHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_set_ptr.Value.Delegate(this.NativeHandle, hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+   /// This function returns the scale hint value of the given image object of the canvas.</summary>
+   /// <returns>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></returns>
+   public Efl.Gfx.ImageScaleHint GetScaleHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the scale hint of a given image of the canvas.
+   /// This function sets the scale hint value of the given image object in the canvas, which will affect how Evas is to cache scaled versions of its original source image.</summary>
+   /// <param name="hint">Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></param>
+   /// <returns></returns>
+   public  void SetScaleHint( Efl.Gfx.ImageScaleHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_set_ptr.Value.Delegate(this.NativeHandle, hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+   /// <returns>The load error code.</returns>
+   public Efl.Gfx.ImageLoadError GetImageLoadError() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_load_error_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <value>Whether to use smooth scale or not.</value>
+   public bool SmoothScale {
+      get { return GetSmoothScale(); }
+      set { SetSmoothScale( value); }
+   }
+   /// <summary>Control how the image is scaled.</summary>
+/// <value>Image scale type</value>
+   public Efl.Gfx.ImageScaleType ScaleType {
+      get { return GetScaleType(); }
+      set { SetScaleType( value); }
+   }
+   /// <summary>The native width/height ratio of the image.</summary>
+/// <value>The image&apos;s ratio.</value>
+   public double Ratio {
+      get { return GetRatio(); }
+   }
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <value>The scale factor.</value>
+   public double BorderScale {
+      get { return GetBorderScale(); }
+      set { SetBorderScale( value); }
+   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <value>Fill mode of the center region.</value>
+   public Efl.Gfx.BorderFillMode BorderCenterFill {
+      get { return GetBorderCenterFill(); }
+      set { SetBorderCenterFill( value); }
+   }
+   /// <summary>This represents the size of the original image in pixels.
+/// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+/// 
+/// This is a read-only property, and may return 0x0.
+/// 1.20</summary>
+/// <value>The size in pixels.</value>
+   public Eina.Size2D ImageSize {
+      get { return GetImageSize(); }
+   }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+/// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+/// <value>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></value>
+   public Efl.Gfx.ImageContentHint ContentHint {
+      get { return GetContentHint(); }
+      set { SetContentHint( value); }
+   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+/// This function returns the scale hint value of the given image object of the canvas.</summary>
+/// <value>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></value>
+   public Efl.Gfx.ImageScaleHint ScaleHint {
+      get { return GetScaleHint(); }
+      set { SetScaleHint( value); }
+   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <value>The load error code.</value>
+   public Efl.Gfx.ImageLoadError ImageLoadError {
+      get { return GetImageLoadError(); }
+   }
+}
+public class ImageNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_image_smooth_scale_get_static_delegate == null)
+      efl_gfx_image_smooth_scale_get_static_delegate = new efl_gfx_image_smooth_scale_get_delegate(smooth_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_get_static_delegate)});
+      if (efl_gfx_image_smooth_scale_set_static_delegate == null)
+      efl_gfx_image_smooth_scale_set_static_delegate = new efl_gfx_image_smooth_scale_set_delegate(smooth_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_set_static_delegate)});
+      if (efl_gfx_image_scale_type_get_static_delegate == null)
+      efl_gfx_image_scale_type_get_static_delegate = new efl_gfx_image_scale_type_get_delegate(scale_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_get_static_delegate)});
+      if (efl_gfx_image_scale_type_set_static_delegate == null)
+      efl_gfx_image_scale_type_set_static_delegate = new efl_gfx_image_scale_type_set_delegate(scale_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_set_static_delegate)});
+      if (efl_gfx_image_ratio_get_static_delegate == null)
+      efl_gfx_image_ratio_get_static_delegate = new efl_gfx_image_ratio_get_delegate(ratio_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_ratio_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_ratio_get_static_delegate)});
+      if (efl_gfx_image_border_get_static_delegate == null)
+      efl_gfx_image_border_get_static_delegate = new efl_gfx_image_border_get_delegate(border_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_get_static_delegate)});
+      if (efl_gfx_image_border_set_static_delegate == null)
+      efl_gfx_image_border_set_static_delegate = new efl_gfx_image_border_set_delegate(border_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_set_static_delegate)});
+      if (efl_gfx_image_border_scale_get_static_delegate == null)
+      efl_gfx_image_border_scale_get_static_delegate = new efl_gfx_image_border_scale_get_delegate(border_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_get_static_delegate)});
+      if (efl_gfx_image_border_scale_set_static_delegate == null)
+      efl_gfx_image_border_scale_set_static_delegate = new efl_gfx_image_border_scale_set_delegate(border_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_set_static_delegate)});
+      if (efl_gfx_image_border_center_fill_get_static_delegate == null)
+      efl_gfx_image_border_center_fill_get_static_delegate = new efl_gfx_image_border_center_fill_get_delegate(border_center_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_get_static_delegate)});
+      if (efl_gfx_image_border_center_fill_set_static_delegate == null)
+      efl_gfx_image_border_center_fill_set_static_delegate = new efl_gfx_image_border_center_fill_set_delegate(border_center_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_set_static_delegate)});
+      if (efl_gfx_image_size_get_static_delegate == null)
+      efl_gfx_image_size_get_static_delegate = new efl_gfx_image_size_get_delegate(image_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_size_get_static_delegate)});
+      if (efl_gfx_image_content_hint_get_static_delegate == null)
+      efl_gfx_image_content_hint_get_static_delegate = new efl_gfx_image_content_hint_get_delegate(content_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_get_static_delegate)});
+      if (efl_gfx_image_content_hint_set_static_delegate == null)
+      efl_gfx_image_content_hint_set_static_delegate = new efl_gfx_image_content_hint_set_delegate(content_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_set_static_delegate)});
+      if (efl_gfx_image_scale_hint_get_static_delegate == null)
+      efl_gfx_image_scale_hint_get_static_delegate = new efl_gfx_image_scale_hint_get_delegate(scale_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_get_static_delegate)});
+      if (efl_gfx_image_scale_hint_set_static_delegate == null)
+      efl_gfx_image_scale_hint_set_static_delegate = new efl_gfx_image_scale_hint_set_delegate(scale_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_set_static_delegate)});
+      if (efl_gfx_image_load_error_get_static_delegate == null)
+      efl_gfx_image_load_error_get_static_delegate = new efl_gfx_image_load_error_get_delegate(image_load_error_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_error_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_error_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.ImageConcrete.efl_gfx_image_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.ImageConcrete.efl_gfx_image_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_smooth_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_smooth_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate> efl_gfx_image_smooth_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate>(_Module, "efl_gfx_image_smooth_scale_get");
+    private static bool smooth_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetSmoothScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_smooth_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_smooth_scale_get_delegate efl_gfx_image_smooth_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_smooth_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+
+
+    public delegate  void efl_gfx_image_smooth_scale_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate> efl_gfx_image_smooth_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate>(_Module, "efl_gfx_image_smooth_scale_set");
+    private static  void smooth_scale_set(System.IntPtr obj, System.IntPtr pd,  bool smooth_scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetSmoothScale( smooth_scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_smooth_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  smooth_scale);
+      }
+   }
+   private static efl_gfx_image_smooth_scale_set_delegate efl_gfx_image_smooth_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate> efl_gfx_image_scale_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate>(_Module, "efl_gfx_image_scale_type_get");
+    private static Efl.Gfx.ImageScaleType scale_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleType _ret_var = default(Efl.Gfx.ImageScaleType);
+         try {
+            _ret_var = ((Image)wrapper).GetScaleType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_type_get_delegate efl_gfx_image_scale_type_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleType scale_type);
+
+
+    public delegate  void efl_gfx_image_scale_type_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleType scale_type);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate> efl_gfx_image_scale_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate>(_Module, "efl_gfx_image_scale_type_set");
+    private static  void scale_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleType scale_type)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetScaleType( scale_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale_type);
+      }
+   }
+   private static efl_gfx_image_scale_type_set_delegate efl_gfx_image_scale_type_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_ratio_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_ratio_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate> efl_gfx_image_ratio_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate>(_Module, "efl_gfx_image_ratio_get");
+    private static double ratio_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_ratio_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetRatio();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_ratio_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_ratio_get_delegate efl_gfx_image_ratio_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_image_border_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate> efl_gfx_image_border_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate>(_Module, "efl_gfx_image_border_get");
+    private static  void border_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((Image)wrapper).GetBorder( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_image_border_get_delegate efl_gfx_image_border_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_set_delegate(System.IntPtr obj, System.IntPtr pd,    int l,    int r,    int t,    int b);
+
+
+    public delegate  void efl_gfx_image_border_set_api_delegate(System.IntPtr obj,    int l,    int r,    int t,    int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate> efl_gfx_image_border_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate>(_Module, "efl_gfx_image_border_set");
+    private static  void border_set(System.IntPtr obj, System.IntPtr pd,   int l,   int r,   int t,   int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Image)wrapper).SetBorder( l,  r,  t,  b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l,  r,  t,  b);
+      }
+   }
+   private static efl_gfx_image_border_set_delegate efl_gfx_image_border_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_border_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_border_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate> efl_gfx_image_border_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate>(_Module, "efl_gfx_image_border_scale_get");
+    private static double border_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetBorderScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_scale_get_delegate efl_gfx_image_border_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_image_border_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate> efl_gfx_image_border_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate>(_Module, "efl_gfx_image_border_scale_set");
+    private static  void border_scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetBorderScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_image_border_scale_set_delegate efl_gfx_image_border_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate> efl_gfx_image_border_center_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate>(_Module, "efl_gfx_image_border_center_fill_get");
+    private static Efl.Gfx.BorderFillMode border_center_fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.BorderFillMode _ret_var = default(Efl.Gfx.BorderFillMode);
+         try {
+            _ret_var = ((Image)wrapper).GetBorderCenterFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_center_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_center_fill_get_delegate efl_gfx_image_border_center_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_center_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.BorderFillMode fill);
+
+
+    public delegate  void efl_gfx_image_border_center_fill_set_api_delegate(System.IntPtr obj,   Efl.Gfx.BorderFillMode fill);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate> efl_gfx_image_border_center_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate>(_Module, "efl_gfx_image_border_center_fill_set");
+    private static  void border_center_fill_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.BorderFillMode fill)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetBorderCenterFill( fill);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_center_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill);
+      }
+   }
+   private static efl_gfx_image_border_center_fill_set_delegate efl_gfx_image_border_center_fill_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate> efl_gfx_image_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate>(_Module, "efl_gfx_image_size_get");
+    private static Eina.Size2D_StructInternal image_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).GetImageSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_size_get_delegate efl_gfx_image_size_get_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate> efl_gfx_image_content_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate>(_Module, "efl_gfx_image_content_hint_get");
+    private static Efl.Gfx.ImageContentHint content_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageContentHint _ret_var = default(Efl.Gfx.ImageContentHint);
+         try {
+            _ret_var = ((Image)wrapper).GetContentHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_content_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_content_hint_get_delegate efl_gfx_image_content_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_content_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageContentHint hint);
+
+
+    public delegate  void efl_gfx_image_content_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageContentHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate> efl_gfx_image_content_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate>(_Module, "efl_gfx_image_content_hint_set");
+    private static  void content_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageContentHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetContentHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_content_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_content_hint_set_delegate efl_gfx_image_content_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate> efl_gfx_image_scale_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate>(_Module, "efl_gfx_image_scale_hint_get");
+    private static Efl.Gfx.ImageScaleHint scale_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleHint _ret_var = default(Efl.Gfx.ImageScaleHint);
+         try {
+            _ret_var = ((Image)wrapper).GetScaleHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_hint_get_delegate efl_gfx_image_scale_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleHint hint);
+
+
+    public delegate  void efl_gfx_image_scale_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate> efl_gfx_image_scale_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate>(_Module, "efl_gfx_image_scale_hint_set");
+    private static  void scale_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetScaleHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_scale_hint_set_delegate efl_gfx_image_scale_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate> efl_gfx_image_load_error_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate>(_Module, "efl_gfx_image_load_error_get");
+    private static Efl.Gfx.ImageLoadError image_load_error_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_error_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageLoadError _ret_var = default(Efl.Gfx.ImageLoadError);
+         try {
+            _ret_var = ((Image)wrapper).GetImageLoadError();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_error_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_error_get_delegate efl_gfx_image_load_error_get_static_delegate;
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>How an image&apos;s data is to be treated by EFL, for optimization.</summary>
+public enum ImageContentHint
+{
+/// <summary>No hint on the content (default).</summary>
+None = 0,
+/// <summary>The content will change over time.</summary>
+Dynamic = 1,
+/// <summary>The content won&apos;t change over time.</summary>
+Static = 2,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>How an image&apos;s data is to be treated by EFL, with regard to scaling cache.</summary>
+public enum ImageScaleHint
+{
+/// <summary>No hint on the scaling (default).</summary>
+None = 0,
+/// <summary>Image will be re-scaled over time, thus turning scaling cache OFF for its data.</summary>
+Dynamic = 1,
+/// <summary>Image will not be re-scaled over time, thus turning scaling cache ON for its data.</summary>
+Static = 2,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Enumeration that defines scale types of an image.</summary>
+public enum ImageScaleType
+{
+/// <summary>Scale the image so that it matches the object&apos;s area exactly. The image&apos;s aspect ratio might be changed.</summary>
+Fill = 0,
+/// <summary>Scale the image so that it fits inside the object&apos;s area while maintaining the aspect ratio. At least one of the dimensions of the image should be equal to the corresponding dimension of the object.</summary>
+FitInside = 1,
+/// <summary>Scale the image so that it covers the entire object area while maintaining the aspect ratio. At least one of the dimensions of the image should be equal to the corresponding dimension of the object.</summary>
+FitOutside = 2,
+/// <summary>Tile image at its original size.</summary>
+Tile = 3,
+/// <summary>Not scale the image</summary>
+None = 4,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_image_load_controller.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_image_load_controller.eo.cs
new file mode 100755 (executable)
index 0000000..09e5211
--- /dev/null
@@ -0,0 +1,968 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Common APIs for all loadable 2D images.</summary>
+[ImageLoadControllerNativeInherit]
+public interface ImageLoadController : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Returns the requested load size.</summary>
+/// <returns>The image load size.</returns>
+Eina.Size2D GetLoadSize();
+   /// <summary>Requests the canvas to load the image at the given size.
+/// EFL will try to load an image of the requested size but does not guarantee an exact match between the request and the loaded image dimensions.</summary>
+/// <param name="size">The image load size.</param>
+/// <returns></returns>
+ void SetLoadSize( Eina.Size2D size);
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+/// This function returns the DPI resolution of the given canvas image.</summary>
+/// <returns>The DPI resolution.</returns>
+double GetLoadDpi();
+   /// <summary>Set the DPI resolution of an image object&apos;s source image.
+/// This function sets the DPI resolution of a given loaded canvas image. Most useful for the SVG image loader.</summary>
+/// <param name="dpi">The DPI resolution.</param>
+/// <returns></returns>
+ void SetLoadDpi( double dpi);
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+/// 1.2</summary>
+/// <returns><c>true</c> if region load of the image is supported, <c>false</c> otherwise</returns>
+bool GetLoadRegionSupport();
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+/// <returns>A region of the image.</returns>
+Eina.Rect GetLoadRegion();
+   /// <summary>Inform a given image object to load a selective region of its source image.
+/// This function is useful when one is not showing all of an image&apos;s area on its image object.
+/// 
+/// Note: The image loader for the image format in question has to support selective region loading in order for this function to work.</summary>
+/// <param name="region">A region of the image.</param>
+/// <returns></returns>
+ void SetLoadRegion( Eina.Rect region);
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+/// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+/// 1.1</summary>
+/// <returns><c>true</c> means that it should honor the orientation information.</returns>
+bool GetLoadOrientation();
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+/// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+/// 1.1</summary>
+/// <param name="enable"><c>true</c> means that it should honor the orientation information.</param>
+/// <returns></returns>
+ void SetLoadOrientation( bool enable);
+   /// <summary>The scale down factor is a divider on the original image size.
+/// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+/// 
+/// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+/// 
+/// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+/// <returns>The scale down dividing factor.</returns>
+ int GetLoadScaleDown();
+   /// <summary>Requests the image loader to scale down by <c>div</c> times. Call this before starting the actual image load.</summary>
+/// <param name="div">The scale down dividing factor.</param>
+/// <returns></returns>
+ void SetLoadScaleDown(  int div);
+   /// <summary>Initial load should skip header check and leave it all to data load
+/// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+/// <returns>Will be true if header is to be skipped.</returns>
+bool GetLoadSkipHeader();
+   /// <summary>Set the skip header state for susbsequent loads of a file.</summary>
+/// <param name="skip">Will be true if header is to be skipped.</param>
+/// <returns></returns>
+ void SetLoadSkipHeader( bool skip);
+   /// <summary>Begin preloading an image object&apos;s image data in the background.
+/// Once the background task is complete the event <c>load</c>,done will be emitted.</summary>
+/// <returns></returns>
+ void LoadAsyncStart();
+   /// <summary>Cancel preloading an image object&apos;s image data in the background.
+/// The object should be left in a state where it has no image data. If cancel is called too late, the image will be kept in memory.</summary>
+/// <returns></returns>
+ void LoadAsyncCancel();
+                                                /// <summary>Called when he image was loaded</summary>
+   event EventHandler LoadDoneEvt;
+   /// <summary>Called when an error happened during image loading</summary>
+   event EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> LoadErrorEvt;
+   /// <summary>The load size of an image.
+/// The image will be loaded into memory as if it was the specified size instead of its original size. This can save a lot of memory and is important for scalable types like svg.
+/// 
+/// By default, the load size is not specified, so it is 0x0.</summary>
+/// <value>The image load size.</value>
+   Eina.Size2D LoadSize {
+      get ;
+      set ;
+   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+/// This function returns the DPI resolution of the given canvas image.</summary>
+/// <value>The DPI resolution.</value>
+   double LoadDpi {
+      get ;
+      set ;
+   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+/// 1.2</summary>
+/// <value><c>true</c> if region load of the image is supported, <c>false</c> otherwise</value>
+   bool LoadRegionSupport {
+      get ;
+   }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+/// <value>A region of the image.</value>
+   Eina.Rect LoadRegion {
+      get ;
+      set ;
+   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+/// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+/// 1.1</summary>
+/// <value><c>true</c> means that it should honor the orientation information.</value>
+   bool LoadOrientation {
+      get ;
+      set ;
+   }
+   /// <summary>The scale down factor is a divider on the original image size.
+/// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+/// 
+/// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+/// 
+/// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+/// <value>The scale down dividing factor.</value>
+    int LoadScaleDown {
+      get ;
+      set ;
+   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+/// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+/// <value>Will be true if header is to be skipped.</value>
+   bool LoadSkipHeader {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Gfx.ImageLoadController.LoadErrorEvt"/>.</summary>
+public class ImageLoadControllerLoadErrorEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Gfx.ImageLoadError arg { get; set; }
+}
+/// <summary>Common APIs for all loadable 2D images.</summary>
+sealed public class ImageLoadControllerConcrete : 
+
+ImageLoadController
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ImageLoadControllerConcrete))
+            return Efl.Gfx.ImageLoadControllerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_image_load_controller_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ImageLoadControllerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ImageLoadControllerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ImageLoadControllerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ImageLoadControllerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object LoadDoneEvtKey = new object();
+   /// <summary>Called when he image was loaded</summary>
+   public event EventHandler LoadDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadDoneEvt_delegate)) {
+               eventHandlers.AddHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (remove_cpp_event_handler(key, this.evt_LoadDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadDoneEvt.</summary>
+   public void On_LoadDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadDoneEvt_delegate;
+   private void on_LoadDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadErrorEvtKey = new object();
+   /// <summary>Called when an error happened during image loading</summary>
+   public event EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> LoadErrorEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadErrorEvt_delegate)) {
+               eventHandlers.AddHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (remove_cpp_event_handler(key, this.evt_LoadErrorEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadErrorEvt.</summary>
+   public void On_LoadErrorEvt(Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args>)eventHandlers[LoadErrorEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadErrorEvt_delegate;
+   private void on_LoadErrorEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args args = new Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args();
+      args.arg = default(Efl.Gfx.ImageLoadError);
+      try {
+         On_LoadErrorEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_LoadDoneEvt_delegate = new Efl.EventCb(on_LoadDoneEvt_NativeCallback);
+      evt_LoadErrorEvt_delegate = new Efl.EventCb(on_LoadErrorEvt_NativeCallback);
+   }
+   /// <summary>Returns the requested load size.</summary>
+   /// <returns>The image load size.</returns>
+   public Eina.Size2D GetLoadSize() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Requests the canvas to load the image at the given size.
+   /// EFL will try to load an image of the requested size but does not guarantee an exact match between the request and the loaded image dimensions.</summary>
+   /// <param name="size">The image load size.</param>
+   /// <returns></returns>
+   public  void SetLoadSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate(this.NativeHandle, _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+   /// This function returns the DPI resolution of the given canvas image.</summary>
+   /// <returns>The DPI resolution.</returns>
+   public double GetLoadDpi() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the DPI resolution of an image object&apos;s source image.
+   /// This function sets the DPI resolution of a given loaded canvas image. Most useful for the SVG image loader.</summary>
+   /// <param name="dpi">The DPI resolution.</param>
+   /// <returns></returns>
+   public  void SetLoadDpi( double dpi) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate(this.NativeHandle, dpi);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+   /// 1.2</summary>
+   /// <returns><c>true</c> if region load of the image is supported, <c>false</c> otherwise</returns>
+   public bool GetLoadRegionSupport() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+   /// <returns>A region of the image.</returns>
+   public Eina.Rect GetLoadRegion() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Inform a given image object to load a selective region of its source image.
+   /// This function is useful when one is not showing all of an image&apos;s area on its image object.
+   /// 
+   /// Note: The image loader for the image format in question has to support selective region loading in order for this function to work.</summary>
+   /// <param name="region">A region of the image.</param>
+   /// <returns></returns>
+   public  void SetLoadRegion( Eina.Rect region) {
+       var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate(this.NativeHandle, _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <returns><c>true</c> means that it should honor the orientation information.</returns>
+   public bool GetLoadOrientation() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <param name="enable"><c>true</c> means that it should honor the orientation information.</param>
+   /// <returns></returns>
+   public  void SetLoadOrientation( bool enable) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate(this.NativeHandle, enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The scale down factor is a divider on the original image size.
+   /// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+   /// 
+   /// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+   /// 
+   /// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+   /// <returns>The scale down dividing factor.</returns>
+   public  int GetLoadScaleDown() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Requests the image loader to scale down by <c>div</c> times. Call this before starting the actual image load.</summary>
+   /// <param name="div">The scale down dividing factor.</param>
+   /// <returns></returns>
+   public  void SetLoadScaleDown(  int div) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate(this.NativeHandle, div);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+   /// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+   /// <returns>Will be true if header is to be skipped.</returns>
+   public bool GetLoadSkipHeader() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the skip header state for susbsequent loads of a file.</summary>
+   /// <param name="skip">Will be true if header is to be skipped.</param>
+   /// <returns></returns>
+   public  void SetLoadSkipHeader( bool skip) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate(this.NativeHandle, skip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Begin preloading an image object&apos;s image data in the background.
+   /// Once the background task is complete the event <c>load</c>,done will be emitted.</summary>
+   /// <returns></returns>
+   public  void LoadAsyncStart() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Cancel preloading an image object&apos;s image data in the background.
+   /// The object should be left in a state where it has no image data. If cancel is called too late, the image will be kept in memory.</summary>
+   /// <returns></returns>
+   public  void LoadAsyncCancel() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The load size of an image.
+/// The image will be loaded into memory as if it was the specified size instead of its original size. This can save a lot of memory and is important for scalable types like svg.
+/// 
+/// By default, the load size is not specified, so it is 0x0.</summary>
+/// <value>The image load size.</value>
+   public Eina.Size2D LoadSize {
+      get { return GetLoadSize(); }
+      set { SetLoadSize( value); }
+   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+/// This function returns the DPI resolution of the given canvas image.</summary>
+/// <value>The DPI resolution.</value>
+   public double LoadDpi {
+      get { return GetLoadDpi(); }
+      set { SetLoadDpi( value); }
+   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+/// 1.2</summary>
+/// <value><c>true</c> if region load of the image is supported, <c>false</c> otherwise</value>
+   public bool LoadRegionSupport {
+      get { return GetLoadRegionSupport(); }
+   }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+/// <value>A region of the image.</value>
+   public Eina.Rect LoadRegion {
+      get { return GetLoadRegion(); }
+      set { SetLoadRegion( value); }
+   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+/// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+/// 1.1</summary>
+/// <value><c>true</c> means that it should honor the orientation information.</value>
+   public bool LoadOrientation {
+      get { return GetLoadOrientation(); }
+      set { SetLoadOrientation( value); }
+   }
+   /// <summary>The scale down factor is a divider on the original image size.
+/// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+/// 
+/// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+/// 
+/// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+/// <value>The scale down dividing factor.</value>
+   public  int LoadScaleDown {
+      get { return GetLoadScaleDown(); }
+      set { SetLoadScaleDown( value); }
+   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+/// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+/// <value>Will be true if header is to be skipped.</value>
+   public bool LoadSkipHeader {
+      get { return GetLoadSkipHeader(); }
+      set { SetLoadSkipHeader( value); }
+   }
+}
+public class ImageLoadControllerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_image_load_controller_load_size_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_get_static_delegate = new efl_gfx_image_load_controller_load_size_get_delegate(load_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_size_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_set_static_delegate = new efl_gfx_image_load_controller_load_size_set_delegate(load_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_get_static_delegate = new efl_gfx_image_load_controller_load_dpi_get_delegate(load_dpi_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_set_static_delegate = new efl_gfx_image_load_controller_load_dpi_set_delegate(load_dpi_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_support_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_support_get_static_delegate = new efl_gfx_image_load_controller_load_region_support_get_delegate(load_region_support_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_support_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_support_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_get_static_delegate = new efl_gfx_image_load_controller_load_region_get_delegate(load_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_set_static_delegate = new efl_gfx_image_load_controller_load_region_set_delegate(load_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_get_static_delegate = new efl_gfx_image_load_controller_load_orientation_get_delegate(load_orientation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_set_static_delegate = new efl_gfx_image_load_controller_load_orientation_set_delegate(load_orientation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_get_static_delegate = new efl_gfx_image_load_controller_load_scale_down_get_delegate(load_scale_down_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_set_static_delegate = new efl_gfx_image_load_controller_load_scale_down_set_delegate(load_scale_down_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_get_static_delegate = new efl_gfx_image_load_controller_load_skip_header_get_delegate(load_skip_header_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_set_static_delegate = new efl_gfx_image_load_controller_load_skip_header_set_delegate(load_skip_header_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_start_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_start_static_delegate = new efl_gfx_image_load_controller_load_async_start_delegate(load_async_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_start"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_start_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_cancel_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_cancel_static_delegate = new efl_gfx_image_load_controller_load_async_cancel_delegate(load_async_cancel);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_cancel"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_cancel_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.ImageLoadControllerConcrete.efl_gfx_image_load_controller_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.ImageLoadControllerConcrete.efl_gfx_image_load_controller_interface_get();
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate> efl_gfx_image_load_controller_load_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_get");
+    private static Eina.Size2D_StructInternal load_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ImageLoadController)wrapper).GetLoadSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_get_delegate efl_gfx_image_load_controller_load_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate> efl_gfx_image_load_controller_load_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_set");
+    private static  void load_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((ImageLoadController)wrapper).SetLoadSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_set_delegate efl_gfx_image_load_controller_load_size_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_load_controller_load_dpi_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_load_controller_load_dpi_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate> efl_gfx_image_load_controller_load_dpi_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_get");
+    private static double load_dpi_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ImageLoadController)wrapper).GetLoadDpi();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_get_delegate efl_gfx_image_load_controller_load_dpi_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_dpi_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dpi);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_dpi_set_api_delegate(System.IntPtr obj,   double dpi);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate> efl_gfx_image_load_controller_load_dpi_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_set");
+    private static  void load_dpi_set(System.IntPtr obj, System.IntPtr pd,  double dpi)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageLoadController)wrapper).SetLoadDpi( dpi);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dpi);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_set_delegate efl_gfx_image_load_controller_load_dpi_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_region_support_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_region_support_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate> efl_gfx_image_load_controller_load_region_support_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_support_get");
+    private static bool load_region_support_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_support_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageLoadController)wrapper).GetLoadRegionSupport();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_support_get_delegate efl_gfx_image_load_controller_load_region_support_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate> efl_gfx_image_load_controller_load_region_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_get");
+    private static Eina.Rect_StructInternal load_region_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ImageLoadController)wrapper).GetLoadRegion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_get_delegate efl_gfx_image_load_controller_load_region_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_region_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal region);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_region_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal region);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate> efl_gfx_image_load_controller_load_region_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_set");
+    private static  void load_region_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal region)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                     
+         try {
+            ((ImageLoadController)wrapper).SetLoadRegion( _in_region);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  region);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_set_delegate efl_gfx_image_load_controller_load_region_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_orientation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_orientation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate> efl_gfx_image_load_controller_load_orientation_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_get");
+    private static bool load_orientation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageLoadController)wrapper).GetLoadOrientation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_get_delegate efl_gfx_image_load_controller_load_orientation_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_orientation_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_orientation_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate> efl_gfx_image_load_controller_load_orientation_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_set");
+    private static  void load_orientation_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageLoadController)wrapper).SetLoadOrientation( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_set_delegate efl_gfx_image_load_controller_load_orientation_set_static_delegate;
+
+
+    private delegate  int efl_gfx_image_load_controller_load_scale_down_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_image_load_controller_load_scale_down_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate> efl_gfx_image_load_controller_load_scale_down_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_get");
+    private static  int load_scale_down_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((ImageLoadController)wrapper).GetLoadScaleDown();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_get_delegate efl_gfx_image_load_controller_load_scale_down_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_scale_down_set_delegate(System.IntPtr obj, System.IntPtr pd,    int div);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_scale_down_set_api_delegate(System.IntPtr obj,    int div);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate> efl_gfx_image_load_controller_load_scale_down_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_set");
+    private static  void load_scale_down_set(System.IntPtr obj, System.IntPtr pd,   int div)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageLoadController)wrapper).SetLoadScaleDown( div);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  div);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_set_delegate efl_gfx_image_load_controller_load_scale_down_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_skip_header_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_skip_header_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate> efl_gfx_image_load_controller_load_skip_header_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_get");
+    private static bool load_skip_header_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageLoadController)wrapper).GetLoadSkipHeader();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_get_delegate efl_gfx_image_load_controller_load_skip_header_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_skip_header_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_skip_header_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate> efl_gfx_image_load_controller_load_skip_header_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_set");
+    private static  void load_skip_header_set(System.IntPtr obj, System.IntPtr pd,  bool skip)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageLoadController)wrapper).SetLoadSkipHeader( skip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  skip);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_set_delegate efl_gfx_image_load_controller_load_skip_header_set_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate> efl_gfx_image_load_controller_load_async_start_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_start");
+    private static  void load_async_start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ImageLoadController)wrapper).LoadAsyncStart();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_start_delegate efl_gfx_image_load_controller_load_async_start_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_cancel_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_cancel_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate> efl_gfx_image_load_controller_load_async_cancel_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_cancel");
+    private static  void load_async_cancel(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_cancel was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ImageLoadController)wrapper).LoadAsyncCancel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_cancel_delegate efl_gfx_image_load_controller_load_async_cancel_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_mapping.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_mapping.eo.cs
new file mode 100755 (executable)
index 0000000..5348dcb
--- /dev/null
@@ -0,0 +1,1844 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Texture UV mapping for all objects (rotation, perspective, 3d, ...).
+/// Evas allows different transformations to be applied to all kinds of objects. These are applied by means of UV mapping.
+/// 
+/// With UV mapping, one maps points in the source object to a 3D space positioning at target. This allows rotation, perspective, scale and lots of other effects, depending on the map that is used.
+/// 
+/// Each map point may carry a multiplier color. If properly calculated, these can do shading effects on the object, producing 3D effects.
+/// 
+/// At the moment of writing, maps can only have 4 points (no more, no less).
+/// 1.20</summary>
+[MappingNativeInherit]
+public interface Mapping : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Number of points of a map.
+/// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+/// 1.20</summary>
+/// <returns>The number of points of map
+/// 1.20</returns>
+ int GetMappingPointCount();
+   /// <summary>Number of points of a map.
+/// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+/// 1.20</summary>
+/// <param name="count">The number of points of map
+/// 1.20</param>
+/// <returns></returns>
+ void SetMappingPointCount(  int count);
+   /// <summary>Clockwise state of a map (read-only).
+/// This determines if the output points (X and Y. Z is not used) are clockwise or counter-clockwise. This can be used for &quot;back-face culling&quot;. This is where you hide objects that &quot;face away&quot; from you. In this case objects that are not clockwise.
+/// 1.20</summary>
+/// <returns><c>true</c> if clockwise, <c>false</c> if counter clockwise
+/// 1.20</returns>
+bool GetMappingClockwise();
+   /// <summary>Smoothing state for map rendering.
+/// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+/// 1.20</summary>
+/// <returns><c>true</c> by default.
+/// 1.20</returns>
+bool GetMappingSmooth();
+   /// <summary>Smoothing state for map rendering.
+/// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+/// 1.20</summary>
+/// <param name="smooth"><c>true</c> by default.
+/// 1.20</param>
+/// <returns></returns>
+ void SetMappingSmooth( bool smooth);
+   /// <summary>Alpha flag for map rendering.
+/// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+/// 
+/// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+/// 1.20</summary>
+/// <returns><c>true</c> by default.
+/// 1.20</returns>
+bool GetMappingAlpha();
+   /// <summary>Alpha flag for map rendering.
+/// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+/// 
+/// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+/// 1.20</summary>
+/// <param name="alpha"><c>true</c> by default.
+/// 1.20</param>
+/// <returns></returns>
+ void SetMappingAlpha( bool alpha);
+   /// <summary>A point&apos;s absolute coordinate on the canvas.
+/// This sets/gets the fixed point&apos;s coordinate in the map. Note that points describe the outline of a quadrangle and are ordered either clockwise or counter-clockwise. Try to keep your quadrangles concave and non-complex. Though these polygon modes may work, they may not render a desired set of output. The quadrangle will use points 0 and 1 , 1 and 2, 2 and 3, and 3 and 0 to describe the edges of the quadrangle.
+/// 
+/// The X and Y and Z coordinates are in canvas units. Z is optional and may or may not be honored in drawing. Z is a hint and does not affect the X and Y rendered coordinates. It may be used for calculating fills with perspective correct rendering.
+/// 
+/// Remember all coordinates are canvas global ones as with move and resize in the canvas.
+/// 
+/// This property can be read to get the 4 points positions on the canvas, or set to manually place them.
+/// 1.20</summary>
+/// <param name="idx">ID of the point, from 0 to 3 (included).
+/// 1.20</param>
+/// <param name="x">Point X coordinate in absolute pixel coordinates.
+/// 1.20</param>
+/// <param name="y">Point Y coordinate in absolute pixel coordinates.
+/// 1.20</param>
+/// <param name="z">Point Z coordinate hint (pre-perspective transform).
+/// 1.20</param>
+/// <returns></returns>
+ void GetMappingCoordAbsolute(  int idx,  out double x,  out double y,  out double z);
+   /// <summary>A point&apos;s absolute coordinate on the canvas.
+/// This sets/gets the fixed point&apos;s coordinate in the map. Note that points describe the outline of a quadrangle and are ordered either clockwise or counter-clockwise. Try to keep your quadrangles concave and non-complex. Though these polygon modes may work, they may not render a desired set of output. The quadrangle will use points 0 and 1 , 1 and 2, 2 and 3, and 3 and 0 to describe the edges of the quadrangle.
+/// 
+/// The X and Y and Z coordinates are in canvas units. Z is optional and may or may not be honored in drawing. Z is a hint and does not affect the X and Y rendered coordinates. It may be used for calculating fills with perspective correct rendering.
+/// 
+/// Remember all coordinates are canvas global ones as with move and resize in the canvas.
+/// 
+/// This property can be read to get the 4 points positions on the canvas, or set to manually place them.
+/// 1.20</summary>
+/// <param name="idx">ID of the point, from 0 to 3 (included).
+/// 1.20</param>
+/// <param name="x">Point X coordinate in absolute pixel coordinates.
+/// 1.20</param>
+/// <param name="y">Point Y coordinate in absolute pixel coordinates.
+/// 1.20</param>
+/// <param name="z">Point Z coordinate hint (pre-perspective transform).
+/// 1.20</param>
+/// <returns></returns>
+ void SetMappingCoordAbsolute(  int idx,  double x,  double y,  double z);
+   /// <summary>Map point&apos;s U and V texture source point.
+/// This sets/gets the U and V coordinates for the point. This determines which coordinate in the source image is mapped to the given point, much like OpenGL and textures. Valid values range from 0.0 to 1.0.
+/// 
+/// By default the points are set in a clockwise order, as such: - 0: top-left, i.e. (0.0, 0.0), - 1: top-right, i.e. (1.0, 0.0), - 2: bottom-right, i.e. (1.0, 1.0), - 3: bottom-left, i.e. (0.0, 1.0).
+/// 1.20</summary>
+/// <param name="idx">ID of the point, from 0 to 3 (included).
+/// 1.20</param>
+/// <param name="u">Relative X coordinate within the image, from 0 to 1.
+/// 1.20</param>
+/// <param name="v">Relative Y coordinate within the image, from 0 to 1.
+/// 1.20</param>
+/// <returns></returns>
+ void GetMappingUv(  int idx,  out double u,  out double v);
+   /// <summary>Map point&apos;s U and V texture source point.
+/// This sets/gets the U and V coordinates for the point. This determines which coordinate in the source image is mapped to the given point, much like OpenGL and textures. Valid values range from 0.0 to 1.0.
+/// 
+/// By default the points are set in a clockwise order, as such: - 0: top-left, i.e. (0.0, 0.0), - 1: top-right, i.e. (1.0, 0.0), - 2: bottom-right, i.e. (1.0, 1.0), - 3: bottom-left, i.e. (0.0, 1.0).
+/// 1.20</summary>
+/// <param name="idx">ID of the point, from 0 to 3 (included).
+/// 1.20</param>
+/// <param name="u">Relative X coordinate within the image, from 0 to 1.
+/// 1.20</param>
+/// <param name="v">Relative Y coordinate within the image, from 0 to 1.
+/// 1.20</param>
+/// <returns></returns>
+ void SetMappingUv(  int idx,  double u,  double v);
+   /// <summary>Color of a vertex in the map.
+/// This sets the color of the vertex in the map. Colors will be linearly interpolated between vertex points through the map. Color will multiply the &quot;texture&quot; pixels (like GL_MODULATE in OpenGL). The default color of a vertex in a map is white solid (255, 255, 255, 255) which means it will have no affect on modifying the texture pixels.
+/// 
+/// The color values must be premultiplied (ie. <c>a</c> &gt;= {<c>r</c>, <c>g</c>, <c>b</c>}).
+/// 1.20</summary>
+/// <param name="idx">ID of the point, from 0 to 3 (included). -1 can be used to set the color for all points, but it is invalid for get().
+/// 1.20</param>
+/// <param name="r">Red (0 - 255)
+/// 1.20</param>
+/// <param name="g">Green (0 - 255)
+/// 1.20</param>
+/// <param name="b">Blue (0 - 255)
+/// 1.20</param>
+/// <param name="a">Alpha (0 - 255)
+/// 1.20</param>
+/// <returns></returns>
+ void GetMappingColor(  int idx,  out  int r,  out  int g,  out  int b,  out  int a);
+   /// <summary>Color of a vertex in the map.
+/// This sets the color of the vertex in the map. Colors will be linearly interpolated between vertex points through the map. Color will multiply the &quot;texture&quot; pixels (like GL_MODULATE in OpenGL). The default color of a vertex in a map is white solid (255, 255, 255, 255) which means it will have no affect on modifying the texture pixels.
+/// 
+/// The color values must be premultiplied (ie. <c>a</c> &gt;= {<c>r</c>, <c>g</c>, <c>b</c>}).
+/// 1.20</summary>
+/// <param name="idx">ID of the point, from 0 to 3 (included). -1 can be used to set the color for all points, but it is invalid for get().
+/// 1.20</param>
+/// <param name="r">Red (0 - 255)
+/// 1.20</param>
+/// <param name="g">Green (0 - 255)
+/// 1.20</param>
+/// <param name="b">Blue (0 - 255)
+/// 1.20</param>
+/// <param name="a">Alpha (0 - 255)
+/// 1.20</param>
+/// <returns></returns>
+ void SetMappingColor(  int idx,   int r,   int g,   int b,   int a);
+   /// <summary>Read-only property indicating whether an object is mapped.
+/// This will be <c>true</c> if any transformation is applied to this object.
+/// 1.20</summary>
+/// <returns><c>true</c> if the object is mapped.
+/// 1.20</returns>
+bool HasMapping();
+   /// <summary>Resets the map transformation to its default state.
+/// This will reset all transformations to identity, meaning the points&apos; colors, positions and UV coordinates will be reset to their default values. <see cref="Efl.Gfx.Mapping.HasMapping"/> will then return <c>false</c>. This function will not modify the values of <see cref="Efl.Gfx.Mapping.MappingSmooth"/> or <see cref="Efl.Gfx.Mapping.MappingAlpha"/>.
+/// 1.20</summary>
+/// <returns></returns>
+ void ResetMapping();
+   /// <summary>Apply a translation to the object using map.
+/// This does not change the real geometry of the object but will affect its visible position.
+/// 1.20</summary>
+/// <param name="dx">Distance in pixels along the X axis.
+/// 1.20</param>
+/// <param name="dy">Distance in pixels along the Y axis.
+/// 1.20</param>
+/// <param name="dz">Distance in pixels along the Z axis.
+/// 1.20</param>
+/// <returns></returns>
+ void Translate( double dx,  double dy,  double dz);
+   /// <summary>Apply a rotation to the object.
+/// This rotates the object clockwise by <c>degrees</c> degrees, around the center specified by the relative position (<c>cx</c>, <c>cy</c>) in the <c>pivot</c> object. If <c>pivot</c> is <c>null</c> then this object is used as its own pivot center. 360 degrees is a full rotation, equivalent to no rotation. Negative values for <c>degrees</c> will rotate clockwise by that amount.
+/// 
+/// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly.
+/// 
+/// By default, the center is at (0.5, 0.5). 0.0 means left or top while 1.0 means right or bottom of the <c>pivot</c> object.
+/// 1.20</summary>
+/// <param name="degrees">CCW rotation in degrees.
+/// 1.20</param>
+/// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+/// 1.20</param>
+/// <param name="cx">X relative coordinate of the center point.
+/// 1.20</param>
+/// <param name="cy">y relative coordinate of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void Rotate( double degrees,  Efl.Gfx.Entity pivot,  double cx,  double cy);
+   /// <summary>Rotate the object around 3 axes in 3D.
+/// This will rotate in 3D, not just around the &quot;Z&quot; axis as is the case with <see cref="Efl.Gfx.Mapping.Rotate"/>. You can rotate around the X, Y and Z axes. The Z axis points &quot;into&quot; the screen with low values at the screen and higher values further away. The X axis runs from left to right on the screen and the Y axis from top to bottom.
+/// 
+/// As with <see cref="Efl.Gfx.Mapping.Rotate"/>, you provide a pivot and center point to rotate around (in 3D). The Z coordinate of this center point is an absolute value, and not a relative one like X and Y, as objects are flat in a 2D space.
+/// 1.20</summary>
+/// <param name="dx">Rotation in degrees around X axis (0 to 360).
+/// 1.20</param>
+/// <param name="dy">Rotation in degrees around Y axis (0 to 360).
+/// 1.20</param>
+/// <param name="dz">Rotation in degrees around Z axis (0 to 360).
+/// 1.20</param>
+/// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+/// 1.20</param>
+/// <param name="cx">X relative coordinate of the center point.
+/// 1.20</param>
+/// <param name="cy">y relative coordinate of the center point.
+/// 1.20</param>
+/// <param name="cz">Z absolute coordinate of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void Rotate3d( double dx,  double dy,  double dz,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz);
+   /// <summary>Rotate the object in 3D using a unit quaternion.
+/// This is similar to <see cref="Efl.Gfx.Mapping.Rotate3d"/> but uses a unit quaternion (also known as versor) rather than a direct angle-based rotation around a center point. Use this to avoid gimbal locks.
+/// 
+/// As with <see cref="Efl.Gfx.Mapping.Rotate"/>, you provide a pivot and center point to rotate around (in 3D). The Z coordinate of this center point is an absolute value, and not a relative one like X and Y, as objects are flat in a 2D space.
+/// 1.20</summary>
+/// <param name="qx">The x component of the imaginary part of the quaternion.
+/// 1.20</param>
+/// <param name="qy">The y component of the imaginary part of the quaternion.
+/// 1.20</param>
+/// <param name="qz">The z component of the imaginary part of the quaternion.
+/// 1.20</param>
+/// <param name="qw">The w component of the real part of the quaternion.
+/// 1.20</param>
+/// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+/// 1.20</param>
+/// <param name="cx">X relative coordinate of the center point.
+/// 1.20</param>
+/// <param name="cy">y relative coordinate of the center point.
+/// 1.20</param>
+/// <param name="cz">Z absolute coordinate of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void RotateQuat( double qx,  double qy,  double qz,  double qw,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz);
+   /// <summary>Apply a zoom to the object.
+/// This zooms the points of the map from a center point. That center is defined by <c>cx</c> and <c>cy</c>. The <c>zoomx</c> and <c>zoomy</c> parameters specify how much to zoom in the X and Y direction respectively. A value of 1.0 means &quot;don&apos;t zoom&quot;. 2.0 means &quot;double the size&quot;. 0.5 is &quot;half the size&quot; etc.
+/// 
+/// By default, the center is at (0.5, 0.5). 0.0 means left or top while 1.0 means right or bottom.
+/// 1.20</summary>
+/// <param name="zoomx">Zoom in X direction
+/// 1.20</param>
+/// <param name="zoomy">Zoom in Y direction
+/// 1.20</param>
+/// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+/// 1.20</param>
+/// <param name="cx">X relative coordinate of the center point.
+/// 1.20</param>
+/// <param name="cy">y relative coordinate of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void Zoom( double zoomx,  double zoomy,  Efl.Gfx.Entity pivot,  double cx,  double cy);
+   /// <summary>Apply a lighting effect on the object.
+/// This is used to apply lighting calculations (from a single light source) to a given mapped object. The R, G and B values of each vertex will be modified to reflect the lighting based on the light point coordinates, the light color and the ambient color, and at what angle the map is facing the light source. A surface should have its points be declared in a clockwise fashion if the face is &quot;facing&quot; towards you (as opposed to away from you) as faces have a &quot;logical&quot; side for lighting.
+/// 
+/// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly. The Z position is absolute. If the <c>pivot</c> is <c>null</c> then this object will be its own pivot.
+/// 1.20</summary>
+/// <param name="pivot">A pivot object for the light point, can be <c>null</c>.
+/// 1.20</param>
+/// <param name="lx">X relative coordinate in space of light point.
+/// 1.20</param>
+/// <param name="ly">Y relative coordinate in space of light point.
+/// 1.20</param>
+/// <param name="lz">Z absolute coordinate in space of light point.
+/// 1.20</param>
+/// <param name="lr">Light red value (0 - 255).
+/// 1.20</param>
+/// <param name="lg">Light green value (0 - 255).
+/// 1.20</param>
+/// <param name="lb">Light blue value (0 - 255).
+/// 1.20</param>
+/// <param name="ar">Ambient color red value (0 - 255).
+/// 1.20</param>
+/// <param name="ag">Ambient color green value (0 - 255).
+/// 1.20</param>
+/// <param name="ab">Ambient color blue value (0 - 255).
+/// 1.20</param>
+/// <returns></returns>
+ void Lighting3d( Efl.Gfx.Entity pivot,  double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab);
+   /// <summary>Apply a perspective transform to the map
+/// This applies a given perspective (3D) to the map coordinates. X, Y and Z values are used. The px and py points specify the &quot;infinite distance&quot; point in the 3D conversion (where all lines converge to like when artists draw 3D by hand). The <c>z0</c> value specifies the z value at which there is a 1:1 mapping between spatial coordinates and screen coordinates. Any points on this z value will not have their X and Y values modified in the transform. Those further away (Z value higher) will shrink into the distance, and those under this value will expand and become bigger. The <c>foc</c> value determines the &quot;focal length&quot; of the camera. This is in reality the distance between the camera lens plane itself (at or closer than this rendering results are undefined) and the &quot;z0&quot; z value. This allows for some &quot;depth&quot; control and <c>foc</c> must be greater than 0.
+/// 
+/// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly. The Z position is absolute. If the <c>pivot</c> is <c>null</c> then this object will be its own pivot.
+/// 1.20</summary>
+/// <param name="pivot">A pivot object for the infinite point, can be <c>null</c>.
+/// 1.20</param>
+/// <param name="px">The perspective distance X relative coordinate.
+/// 1.20</param>
+/// <param name="py">The perspective distance Y relative coordinate.
+/// 1.20</param>
+/// <param name="z0">The &quot;0&quot; Z plane value.
+/// 1.20</param>
+/// <param name="foc">The focal distance, must be greater than 0.
+/// 1.20</param>
+/// <returns></returns>
+ void Perspective3d( Efl.Gfx.Entity pivot,  double px,  double py,  double z0,  double foc);
+   /// <summary>Apply a rotation to the object, using absolute coordinates.
+/// This rotates the object clockwise by <c>degrees</c> degrees, around the center specified by the relative position (<c>cx</c>, <c>cy</c>) in the <c>pivot</c> object. If <c>pivot</c> is <c>null</c> then this object is used as its own pivot center. 360 degrees is a full rotation, equivalent to no rotation. Negative values for <c>degrees</c> will rotate clockwise by that amount.
+/// 
+/// The given coordinates are absolute values in pixels. See also <see cref="Efl.Gfx.Mapping.Rotate"/> for a relative coordinate version.
+/// 1.20</summary>
+/// <param name="degrees">CCW rotation in degrees.
+/// 1.20</param>
+/// <param name="cx">X absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <param name="cy">y absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void RotateAbsolute( double degrees,  double cx,  double cy);
+   /// <summary>Rotate the object around 3 axes in 3D, using absolute coordinates.
+/// This will rotate in 3D and not just around the &quot;Z&quot; axis as the case with <see cref="Efl.Gfx.Mapping.Rotate"/>. This will rotate around the X, Y and Z axes. The Z axis points &quot;into&quot; the screen with low values at the screen and higher values further away. The X axis runs from left to right on the screen and the Y axis from top to bottom.
+/// 
+/// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Rotate3d"/> for a pivot-based 3D rotation.
+/// 1.20</summary>
+/// <param name="dx">Rotation in degrees around X axis (0 to 360).
+/// 1.20</param>
+/// <param name="dy">Rotation in degrees around Y axis (0 to 360).
+/// 1.20</param>
+/// <param name="dz">Rotation in degrees around Z axis (0 to 360).
+/// 1.20</param>
+/// <param name="cx">X absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <param name="cy">y absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <param name="cz">Z absolute coordinate of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void Rotate3dAbsolute( double dx,  double dy,  double dz,  double cx,  double cy,  double cz);
+   /// <summary>Rotate the object in 3D using a unit quaternion, using absolute coordinates.
+/// This is similar to <see cref="Efl.Gfx.Mapping.Rotate3d"/> but uses a unit quaternion (also known as versor) rather than a direct angle-based rotation around a center point. Use this to avoid gimbal locks.
+/// 
+/// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.RotateQuat"/> for a pivot-based 3D rotation.
+/// 1.20</summary>
+/// <param name="qx">The x component of the imaginary part of the quaternion.
+/// 1.20</param>
+/// <param name="qy">The y component of the imaginary part of the quaternion.
+/// 1.20</param>
+/// <param name="qz">The z component of the imaginary part of the quaternion.
+/// 1.20</param>
+/// <param name="qw">The w component of the real part of the quaternion.
+/// 1.20</param>
+/// <param name="cx">X absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <param name="cy">y absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <param name="cz">Z absolute coordinate of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void RotateQuatAbsolute( double qx,  double qy,  double qz,  double qw,  double cx,  double cy,  double cz);
+   /// <summary>Apply a zoom to the object, using absolute coordinates.
+/// This zooms the points of the map from a center point. That center is defined by <c>cx</c> and <c>cy</c>. The <c>zoomx</c> and <c>zoomy</c> parameters specify how much to zoom in the X and Y direction respectively. A value of 1.0 means &quot;don&apos;t zoom&quot;. 2.0 means &quot;double the size&quot;. 0.5 is &quot;half the size&quot; etc.
+/// 
+/// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Zoom"/> for a pivot-based zoom.
+/// 1.20</summary>
+/// <param name="zoomx">Zoom in X direction
+/// 1.20</param>
+/// <param name="zoomy">Zoom in Y direction
+/// 1.20</param>
+/// <param name="cx">X absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <param name="cy">y absolute coordinate in pixels of the center point.
+/// 1.20</param>
+/// <returns></returns>
+ void ZoomAbsolute( double zoomx,  double zoomy,  double cx,  double cy);
+   /// <summary>Apply a lighting effect to the object.
+/// This is used to apply lighting calculations (from a single light source) to a given mapped object. The RGB values of each vertex will be modified to reflect the lighting based on the light point coordinates, the light color, the ambient color and at what angle the map is facing the light source. A surface should have its points be declared in a clockwise fashion if the face is &quot;facing&quot; towards you (as opposed to away from you) as faces have a &quot;logical&quot; side for lighting.
+/// 
+/// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Lighting3d"/> for a pivot-based lighting effect.
+/// 1.20</summary>
+/// <param name="lx">X absolute coordinate in pixels of the light point.
+/// 1.20</param>
+/// <param name="ly">y absolute coordinate in pixels of the light point.
+/// 1.20</param>
+/// <param name="lz">Z absolute coordinate in space of light point.
+/// 1.20</param>
+/// <param name="lr">Light red value (0 - 255).
+/// 1.20</param>
+/// <param name="lg">Light green value (0 - 255).
+/// 1.20</param>
+/// <param name="lb">Light blue value (0 - 255).
+/// 1.20</param>
+/// <param name="ar">Ambient color red value (0 - 255).
+/// 1.20</param>
+/// <param name="ag">Ambient color green value (0 - 255).
+/// 1.20</param>
+/// <param name="ab">Ambient color blue value (0 - 255).
+/// 1.20</param>
+/// <returns></returns>
+ void Lighting3dAbsolute( double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab);
+   /// <summary>Apply a perspective transform to the map
+/// This applies a given perspective (3D) to the map coordinates. X, Y and Z values are used. The px and py points specify the &quot;infinite distance&quot; point in the 3D conversion (where all lines converge to like when artists draw 3D by hand). The <c>z0</c> value specifies the z value at which there is a 1:1 mapping between spatial coordinates and screen coordinates. Any points on this z value will not have their X and Y values modified in the transform. Those further away (Z value higher) will shrink into the distance, and those less than this value will expand and become bigger. The <c>foc</c> value determines the &quot;focal length&quot; of the camera. This is in reality the distance between the camera lens plane itself (at or closer than this rendering results are undefined) and the &quot;z0&quot; z value. This allows for some &quot;depth&quot; control and <c>foc</c> must be greater than 0.
+/// 
+/// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Perspective3d"/> for a pivot-based perspective effect.
+/// 1.20</summary>
+/// <param name="px">The perspective distance X relative coordinate.
+/// 1.20</param>
+/// <param name="py">The perspective distance Y relative coordinate.
+/// 1.20</param>
+/// <param name="z0">The &quot;0&quot; Z plane value.
+/// 1.20</param>
+/// <param name="foc">The focal distance, must be greater than 0.
+/// 1.20</param>
+/// <returns></returns>
+ void Perspective3dAbsolute( double px,  double py,  double z0,  double foc);
+                                                                                       /// <summary>Number of points of a map.
+/// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+/// 1.20</summary>
+/// <value>The number of points of map
+/// 1.20</value>
+    int MappingPointCount {
+      get ;
+      set ;
+   }
+   /// <summary>Clockwise state of a map (read-only).
+/// This determines if the output points (X and Y. Z is not used) are clockwise or counter-clockwise. This can be used for &quot;back-face culling&quot;. This is where you hide objects that &quot;face away&quot; from you. In this case objects that are not clockwise.
+/// 1.20</summary>
+/// <value><c>true</c> if clockwise, <c>false</c> if counter clockwise
+/// 1.20</value>
+   bool MappingClockwise {
+      get ;
+   }
+   /// <summary>Smoothing state for map rendering.
+/// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+/// 1.20</summary>
+/// <value><c>true</c> by default.
+/// 1.20</value>
+   bool MappingSmooth {
+      get ;
+      set ;
+   }
+   /// <summary>Alpha flag for map rendering.
+/// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+/// 
+/// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+/// 1.20</summary>
+/// <value><c>true</c> by default.
+/// 1.20</value>
+   bool MappingAlpha {
+      get ;
+      set ;
+   }
+}
+/// <summary>Texture UV mapping for all objects (rotation, perspective, 3d, ...).
+/// Evas allows different transformations to be applied to all kinds of objects. These are applied by means of UV mapping.
+/// 
+/// With UV mapping, one maps points in the source object to a 3D space positioning at target. This allows rotation, perspective, scale and lots of other effects, depending on the map that is used.
+/// 
+/// Each map point may carry a multiplier color. If properly calculated, these can do shading effects on the object, producing 3D effects.
+/// 
+/// At the moment of writing, maps can only have 4 points (no more, no less).
+/// 1.20</summary>
+sealed public class MappingConcrete : 
+
+Mapping
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (MappingConcrete))
+            return Efl.Gfx.MappingNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_gfx_mapping_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public MappingConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~MappingConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static MappingConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new MappingConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Number of points of a map.
+   /// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+   /// 1.20</summary>
+   /// <returns>The number of points of map
+   /// 1.20</returns>
+   public  int GetMappingPointCount() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_point_count_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Number of points of a map.
+   /// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+   /// 1.20</summary>
+   /// <param name="count">The number of points of map
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMappingPointCount(  int count) {
+                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_point_count_set_ptr.Value.Delegate(this.NativeHandle, count);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Clockwise state of a map (read-only).
+   /// This determines if the output points (X and Y. Z is not used) are clockwise or counter-clockwise. This can be used for &quot;back-face culling&quot;. This is where you hide objects that &quot;face away&quot; from you. In this case objects that are not clockwise.
+   /// 1.20</summary>
+   /// <returns><c>true</c> if clockwise, <c>false</c> if counter clockwise
+   /// 1.20</returns>
+   public bool GetMappingClockwise() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_clockwise_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Smoothing state for map rendering.
+   /// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+   /// 1.20</summary>
+   /// <returns><c>true</c> by default.
+   /// 1.20</returns>
+   public bool GetMappingSmooth() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_smooth_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Smoothing state for map rendering.
+   /// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+   /// 1.20</summary>
+   /// <param name="smooth"><c>true</c> by default.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMappingSmooth( bool smooth) {
+                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_smooth_set_ptr.Value.Delegate(this.NativeHandle, smooth);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Alpha flag for map rendering.
+   /// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+   /// 
+   /// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+   /// 1.20</summary>
+   /// <returns><c>true</c> by default.
+   /// 1.20</returns>
+   public bool GetMappingAlpha() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_alpha_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alpha flag for map rendering.
+   /// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+   /// 
+   /// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+   /// 1.20</summary>
+   /// <param name="alpha"><c>true</c> by default.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMappingAlpha( bool alpha) {
+                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_alpha_set_ptr.Value.Delegate(this.NativeHandle, alpha);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A point&apos;s absolute coordinate on the canvas.
+   /// This sets/gets the fixed point&apos;s coordinate in the map. Note that points describe the outline of a quadrangle and are ordered either clockwise or counter-clockwise. Try to keep your quadrangles concave and non-complex. Though these polygon modes may work, they may not render a desired set of output. The quadrangle will use points 0 and 1 , 1 and 2, 2 and 3, and 3 and 0 to describe the edges of the quadrangle.
+   /// 
+   /// The X and Y and Z coordinates are in canvas units. Z is optional and may or may not be honored in drawing. Z is a hint and does not affect the X and Y rendered coordinates. It may be used for calculating fills with perspective correct rendering.
+   /// 
+   /// Remember all coordinates are canvas global ones as with move and resize in the canvas.
+   /// 
+   /// This property can be read to get the 4 points positions on the canvas, or set to manually place them.
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="x">Point X coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="y">Point Y coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="z">Point Z coordinate hint (pre-perspective transform).
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetMappingCoordAbsolute(  int idx,  out double x,  out double y,  out double z) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_coord_absolute_get_ptr.Value.Delegate(this.NativeHandle, idx,  out x,  out y,  out z);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>A point&apos;s absolute coordinate on the canvas.
+   /// This sets/gets the fixed point&apos;s coordinate in the map. Note that points describe the outline of a quadrangle and are ordered either clockwise or counter-clockwise. Try to keep your quadrangles concave and non-complex. Though these polygon modes may work, they may not render a desired set of output. The quadrangle will use points 0 and 1 , 1 and 2, 2 and 3, and 3 and 0 to describe the edges of the quadrangle.
+   /// 
+   /// The X and Y and Z coordinates are in canvas units. Z is optional and may or may not be honored in drawing. Z is a hint and does not affect the X and Y rendered coordinates. It may be used for calculating fills with perspective correct rendering.
+   /// 
+   /// Remember all coordinates are canvas global ones as with move and resize in the canvas.
+   /// 
+   /// This property can be read to get the 4 points positions on the canvas, or set to manually place them.
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="x">Point X coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="y">Point Y coordinate in absolute pixel coordinates.
+   /// 1.20</param>
+   /// <param name="z">Point Z coordinate hint (pre-perspective transform).
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMappingCoordAbsolute(  int idx,  double x,  double y,  double z) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_coord_absolute_set_ptr.Value.Delegate(this.NativeHandle, idx,  x,  y,  z);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Map point&apos;s U and V texture source point.
+   /// This sets/gets the U and V coordinates for the point. This determines which coordinate in the source image is mapped to the given point, much like OpenGL and textures. Valid values range from 0.0 to 1.0.
+   /// 
+   /// By default the points are set in a clockwise order, as such: - 0: top-left, i.e. (0.0, 0.0), - 1: top-right, i.e. (1.0, 0.0), - 2: bottom-right, i.e. (1.0, 1.0), - 3: bottom-left, i.e. (0.0, 1.0).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="u">Relative X coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="v">Relative Y coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetMappingUv(  int idx,  out double u,  out double v) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_uv_get_ptr.Value.Delegate(this.NativeHandle, idx,  out u,  out v);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Map point&apos;s U and V texture source point.
+   /// This sets/gets the U and V coordinates for the point. This determines which coordinate in the source image is mapped to the given point, much like OpenGL and textures. Valid values range from 0.0 to 1.0.
+   /// 
+   /// By default the points are set in a clockwise order, as such: - 0: top-left, i.e. (0.0, 0.0), - 1: top-right, i.e. (1.0, 0.0), - 2: bottom-right, i.e. (1.0, 1.0), - 3: bottom-left, i.e. (0.0, 1.0).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included).
+   /// 1.20</param>
+   /// <param name="u">Relative X coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="v">Relative Y coordinate within the image, from 0 to 1.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMappingUv(  int idx,  double u,  double v) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_uv_set_ptr.Value.Delegate(this.NativeHandle, idx,  u,  v);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Color of a vertex in the map.
+   /// This sets the color of the vertex in the map. Colors will be linearly interpolated between vertex points through the map. Color will multiply the &quot;texture&quot; pixels (like GL_MODULATE in OpenGL). The default color of a vertex in a map is white solid (255, 255, 255, 255) which means it will have no affect on modifying the texture pixels.
+   /// 
+   /// The color values must be premultiplied (ie. <c>a</c> &gt;= {<c>r</c>, <c>g</c>, <c>b</c>}).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included). -1 can be used to set the color for all points, but it is invalid for get().
+   /// 1.20</param>
+   /// <param name="r">Red (0 - 255)
+   /// 1.20</param>
+   /// <param name="g">Green (0 - 255)
+   /// 1.20</param>
+   /// <param name="b">Blue (0 - 255)
+   /// 1.20</param>
+   /// <param name="a">Alpha (0 - 255)
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetMappingColor(  int idx,  out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_color_get_ptr.Value.Delegate(this.NativeHandle, idx,  out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Color of a vertex in the map.
+   /// This sets the color of the vertex in the map. Colors will be linearly interpolated between vertex points through the map. Color will multiply the &quot;texture&quot; pixels (like GL_MODULATE in OpenGL). The default color of a vertex in a map is white solid (255, 255, 255, 255) which means it will have no affect on modifying the texture pixels.
+   /// 
+   /// The color values must be premultiplied (ie. <c>a</c> &gt;= {<c>r</c>, <c>g</c>, <c>b</c>}).
+   /// 1.20</summary>
+   /// <param name="idx">ID of the point, from 0 to 3 (included). -1 can be used to set the color for all points, but it is invalid for get().
+   /// 1.20</param>
+   /// <param name="r">Red (0 - 255)
+   /// 1.20</param>
+   /// <param name="g">Green (0 - 255)
+   /// 1.20</param>
+   /// <param name="b">Blue (0 - 255)
+   /// 1.20</param>
+   /// <param name="a">Alpha (0 - 255)
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMappingColor(  int idx,   int r,   int g,   int b,   int a) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_color_set_ptr.Value.Delegate(this.NativeHandle, idx,  r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Read-only property indicating whether an object is mapped.
+   /// This will be <c>true</c> if any transformation is applied to this object.
+   /// 1.20</summary>
+   /// <returns><c>true</c> if the object is mapped.
+   /// 1.20</returns>
+   public bool HasMapping() {
+       var _ret_var = Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_has_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets the map transformation to its default state.
+   /// This will reset all transformations to identity, meaning the points&apos; colors, positions and UV coordinates will be reset to their default values. <see cref="Efl.Gfx.Mapping.HasMapping"/> will then return <c>false</c>. This function will not modify the values of <see cref="Efl.Gfx.Mapping.MappingSmooth"/> or <see cref="Efl.Gfx.Mapping.MappingAlpha"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void ResetMapping() {
+       Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_reset_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Apply a translation to the object using map.
+   /// This does not change the real geometry of the object but will affect its visible position.
+   /// 1.20</summary>
+   /// <param name="dx">Distance in pixels along the X axis.
+   /// 1.20</param>
+   /// <param name="dy">Distance in pixels along the Y axis.
+   /// 1.20</param>
+   /// <param name="dz">Distance in pixels along the Z axis.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Translate( double dx,  double dy,  double dz) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_translate_ptr.Value.Delegate(this.NativeHandle, dx,  dy,  dz);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Apply a rotation to the object.
+   /// This rotates the object clockwise by <c>degrees</c> degrees, around the center specified by the relative position (<c>cx</c>, <c>cy</c>) in the <c>pivot</c> object. If <c>pivot</c> is <c>null</c> then this object is used as its own pivot center. 360 degrees is a full rotation, equivalent to no rotation. Negative values for <c>degrees</c> will rotate clockwise by that amount.
+   /// 
+   /// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly.
+   /// 
+   /// By default, the center is at (0.5, 0.5). 0.0 means left or top while 1.0 means right or bottom of the <c>pivot</c> object.
+   /// 1.20</summary>
+   /// <param name="degrees">CCW rotation in degrees.
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Rotate( double degrees,  Efl.Gfx.Entity pivot,  double cx,  double cy) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_ptr.Value.Delegate(this.NativeHandle, degrees,  pivot,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Rotate the object around 3 axes in 3D.
+   /// This will rotate in 3D, not just around the &quot;Z&quot; axis as is the case with <see cref="Efl.Gfx.Mapping.Rotate"/>. You can rotate around the X, Y and Z axes. The Z axis points &quot;into&quot; the screen with low values at the screen and higher values further away. The X axis runs from left to right on the screen and the Y axis from top to bottom.
+   /// 
+   /// As with <see cref="Efl.Gfx.Mapping.Rotate"/>, you provide a pivot and center point to rotate around (in 3D). The Z coordinate of this center point is an absolute value, and not a relative one like X and Y, as objects are flat in a 2D space.
+   /// 1.20</summary>
+   /// <param name="dx">Rotation in degrees around X axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dy">Rotation in degrees around Y axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dz">Rotation in degrees around Z axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Rotate3d( double dx,  double dy,  double dz,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz) {
+                                                                                                                                     Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_3d_ptr.Value.Delegate(this.NativeHandle, dx,  dy,  dz,  pivot,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Rotate the object in 3D using a unit quaternion.
+   /// This is similar to <see cref="Efl.Gfx.Mapping.Rotate3d"/> but uses a unit quaternion (also known as versor) rather than a direct angle-based rotation around a center point. Use this to avoid gimbal locks.
+   /// 
+   /// As with <see cref="Efl.Gfx.Mapping.Rotate"/>, you provide a pivot and center point to rotate around (in 3D). The Z coordinate of this center point is an absolute value, and not a relative one like X and Y, as objects are flat in a 2D space.
+   /// 1.20</summary>
+   /// <param name="qx">The x component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qy">The y component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qz">The z component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qw">The w component of the real part of the quaternion.
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void RotateQuat( double qx,  double qy,  double qz,  double qw,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz) {
+                                                                                                                                                       Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_quat_ptr.Value.Delegate(this.NativeHandle, qx,  qy,  qz,  qw,  pivot,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                       }
+   /// <summary>Apply a zoom to the object.
+   /// This zooms the points of the map from a center point. That center is defined by <c>cx</c> and <c>cy</c>. The <c>zoomx</c> and <c>zoomy</c> parameters specify how much to zoom in the X and Y direction respectively. A value of 1.0 means &quot;don&apos;t zoom&quot;. 2.0 means &quot;double the size&quot;. 0.5 is &quot;half the size&quot; etc.
+   /// 
+   /// By default, the center is at (0.5, 0.5). 0.0 means left or top while 1.0 means right or bottom.
+   /// 1.20</summary>
+   /// <param name="zoomx">Zoom in X direction
+   /// 1.20</param>
+   /// <param name="zoomy">Zoom in Y direction
+   /// 1.20</param>
+   /// <param name="pivot">A pivot object for the center point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="cx">X relative coordinate of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y relative coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Zoom( double zoomx,  double zoomy,  Efl.Gfx.Entity pivot,  double cx,  double cy) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_zoom_ptr.Value.Delegate(this.NativeHandle, zoomx,  zoomy,  pivot,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Apply a lighting effect on the object.
+   /// This is used to apply lighting calculations (from a single light source) to a given mapped object. The R, G and B values of each vertex will be modified to reflect the lighting based on the light point coordinates, the light color and the ambient color, and at what angle the map is facing the light source. A surface should have its points be declared in a clockwise fashion if the face is &quot;facing&quot; towards you (as opposed to away from you) as faces have a &quot;logical&quot; side for lighting.
+   /// 
+   /// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly. The Z position is absolute. If the <c>pivot</c> is <c>null</c> then this object will be its own pivot.
+   /// 1.20</summary>
+   /// <param name="pivot">A pivot object for the light point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="lx">X relative coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="ly">Y relative coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="lz">Z absolute coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="lr">Light red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lg">Light green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lb">Light blue value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ar">Ambient color red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ag">Ambient color green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ab">Ambient color blue value (0 - 255).
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Lighting3d( Efl.Gfx.Entity pivot,  double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab) {
+                                                                                                                                                                                           Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_lighting_3d_ptr.Value.Delegate(this.NativeHandle, pivot,  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                               }
+   /// <summary>Apply a perspective transform to the map
+   /// This applies a given perspective (3D) to the map coordinates. X, Y and Z values are used. The px and py points specify the &quot;infinite distance&quot; point in the 3D conversion (where all lines converge to like when artists draw 3D by hand). The <c>z0</c> value specifies the z value at which there is a 1:1 mapping between spatial coordinates and screen coordinates. Any points on this z value will not have their X and Y values modified in the transform. Those further away (Z value higher) will shrink into the distance, and those under this value will expand and become bigger. The <c>foc</c> value determines the &quot;focal length&quot; of the camera. This is in reality the distance between the camera lens plane itself (at or closer than this rendering results are undefined) and the &quot;z0&quot; z value. This allows for some &quot;depth&quot; control and <c>foc</c> must be greater than 0.
+   /// 
+   /// The coordinates are set relative to the given <c>pivot</c> object. If its geometry changes, then the absolute position of the rotation center will change accordingly. The Z position is absolute. If the <c>pivot</c> is <c>null</c> then this object will be its own pivot.
+   /// 1.20</summary>
+   /// <param name="pivot">A pivot object for the infinite point, can be <c>null</c>.
+   /// 1.20</param>
+   /// <param name="px">The perspective distance X relative coordinate.
+   /// 1.20</param>
+   /// <param name="py">The perspective distance Y relative coordinate.
+   /// 1.20</param>
+   /// <param name="z0">The &quot;0&quot; Z plane value.
+   /// 1.20</param>
+   /// <param name="foc">The focal distance, must be greater than 0.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Perspective3d( Efl.Gfx.Entity pivot,  double px,  double py,  double z0,  double foc) {
+                                                                                                 Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_perspective_3d_ptr.Value.Delegate(this.NativeHandle, pivot,  px,  py,  z0,  foc);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Apply a rotation to the object, using absolute coordinates.
+   /// This rotates the object clockwise by <c>degrees</c> degrees, around the center specified by the relative position (<c>cx</c>, <c>cy</c>) in the <c>pivot</c> object. If <c>pivot</c> is <c>null</c> then this object is used as its own pivot center. 360 degrees is a full rotation, equivalent to no rotation. Negative values for <c>degrees</c> will rotate clockwise by that amount.
+   /// 
+   /// The given coordinates are absolute values in pixels. See also <see cref="Efl.Gfx.Mapping.Rotate"/> for a relative coordinate version.
+   /// 1.20</summary>
+   /// <param name="degrees">CCW rotation in degrees.
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void RotateAbsolute( double degrees,  double cx,  double cy) {
+                                                             Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_absolute_ptr.Value.Delegate(this.NativeHandle, degrees,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Rotate the object around 3 axes in 3D, using absolute coordinates.
+   /// This will rotate in 3D and not just around the &quot;Z&quot; axis as the case with <see cref="Efl.Gfx.Mapping.Rotate"/>. This will rotate around the X, Y and Z axes. The Z axis points &quot;into&quot; the screen with low values at the screen and higher values further away. The X axis runs from left to right on the screen and the Y axis from top to bottom.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Rotate3d"/> for a pivot-based 3D rotation.
+   /// 1.20</summary>
+   /// <param name="dx">Rotation in degrees around X axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dy">Rotation in degrees around Y axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="dz">Rotation in degrees around Z axis (0 to 360).
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Rotate3dAbsolute( double dx,  double dy,  double dz,  double cx,  double cy,  double cz) {
+                                                                                                                   Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_3d_absolute_ptr.Value.Delegate(this.NativeHandle, dx,  dy,  dz,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Rotate the object in 3D using a unit quaternion, using absolute coordinates.
+   /// This is similar to <see cref="Efl.Gfx.Mapping.Rotate3d"/> but uses a unit quaternion (also known as versor) rather than a direct angle-based rotation around a center point. Use this to avoid gimbal locks.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.RotateQuat"/> for a pivot-based 3D rotation.
+   /// 1.20</summary>
+   /// <param name="qx">The x component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qy">The y component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qz">The z component of the imaginary part of the quaternion.
+   /// 1.20</param>
+   /// <param name="qw">The w component of the real part of the quaternion.
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cz">Z absolute coordinate of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void RotateQuatAbsolute( double qx,  double qy,  double qz,  double qw,  double cx,  double cy,  double cz) {
+                                                                                                                                     Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_rotate_quat_absolute_ptr.Value.Delegate(this.NativeHandle, qx,  qy,  qz,  qw,  cx,  cy,  cz);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Apply a zoom to the object, using absolute coordinates.
+   /// This zooms the points of the map from a center point. That center is defined by <c>cx</c> and <c>cy</c>. The <c>zoomx</c> and <c>zoomy</c> parameters specify how much to zoom in the X and Y direction respectively. A value of 1.0 means &quot;don&apos;t zoom&quot;. 2.0 means &quot;double the size&quot;. 0.5 is &quot;half the size&quot; etc.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Zoom"/> for a pivot-based zoom.
+   /// 1.20</summary>
+   /// <param name="zoomx">Zoom in X direction
+   /// 1.20</param>
+   /// <param name="zoomy">Zoom in Y direction
+   /// 1.20</param>
+   /// <param name="cx">X absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <param name="cy">y absolute coordinate in pixels of the center point.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void ZoomAbsolute( double zoomx,  double zoomy,  double cx,  double cy) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_zoom_absolute_ptr.Value.Delegate(this.NativeHandle, zoomx,  zoomy,  cx,  cy);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Apply a lighting effect to the object.
+   /// This is used to apply lighting calculations (from a single light source) to a given mapped object. The RGB values of each vertex will be modified to reflect the lighting based on the light point coordinates, the light color, the ambient color and at what angle the map is facing the light source. A surface should have its points be declared in a clockwise fashion if the face is &quot;facing&quot; towards you (as opposed to away from you) as faces have a &quot;logical&quot; side for lighting.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Lighting3d"/> for a pivot-based lighting effect.
+   /// 1.20</summary>
+   /// <param name="lx">X absolute coordinate in pixels of the light point.
+   /// 1.20</param>
+   /// <param name="ly">y absolute coordinate in pixels of the light point.
+   /// 1.20</param>
+   /// <param name="lz">Z absolute coordinate in space of light point.
+   /// 1.20</param>
+   /// <param name="lr">Light red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lg">Light green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="lb">Light blue value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ar">Ambient color red value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ag">Ambient color green value (0 - 255).
+   /// 1.20</param>
+   /// <param name="ab">Ambient color blue value (0 - 255).
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Lighting3dAbsolute( double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab) {
+                                                                                                                                                                         Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_lighting_3d_absolute_ptr.Value.Delegate(this.NativeHandle, lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                   }
+   /// <summary>Apply a perspective transform to the map
+   /// This applies a given perspective (3D) to the map coordinates. X, Y and Z values are used. The px and py points specify the &quot;infinite distance&quot; point in the 3D conversion (where all lines converge to like when artists draw 3D by hand). The <c>z0</c> value specifies the z value at which there is a 1:1 mapping between spatial coordinates and screen coordinates. Any points on this z value will not have their X and Y values modified in the transform. Those further away (Z value higher) will shrink into the distance, and those less than this value will expand and become bigger. The <c>foc</c> value determines the &quot;focal length&quot; of the camera. This is in reality the distance between the camera lens plane itself (at or closer than this rendering results are undefined) and the &quot;z0&quot; z value. This allows for some &quot;depth&quot; control and <c>foc</c> must be greater than 0.
+   /// 
+   /// The coordinates of the center point are given in absolute canvas coordinates. See also <see cref="Efl.Gfx.Mapping.Perspective3d"/> for a pivot-based perspective effect.
+   /// 1.20</summary>
+   /// <param name="px">The perspective distance X relative coordinate.
+   /// 1.20</param>
+   /// <param name="py">The perspective distance Y relative coordinate.
+   /// 1.20</param>
+   /// <param name="z0">The &quot;0&quot; Z plane value.
+   /// 1.20</param>
+   /// <param name="foc">The focal distance, must be greater than 0.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void Perspective3dAbsolute( double px,  double py,  double z0,  double foc) {
+                                                                               Efl.Gfx.MappingNativeInherit.efl_gfx_mapping_perspective_3d_absolute_ptr.Value.Delegate(this.NativeHandle, px,  py,  z0,  foc);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Number of points of a map.
+/// This sets the number of points of map. Currently, the number of points must be multiples of 4.
+/// 1.20</summary>
+/// <value>The number of points of map
+/// 1.20</value>
+   public  int MappingPointCount {
+      get { return GetMappingPointCount(); }
+      set { SetMappingPointCount( value); }
+   }
+   /// <summary>Clockwise state of a map (read-only).
+/// This determines if the output points (X and Y. Z is not used) are clockwise or counter-clockwise. This can be used for &quot;back-face culling&quot;. This is where you hide objects that &quot;face away&quot; from you. In this case objects that are not clockwise.
+/// 1.20</summary>
+/// <value><c>true</c> if clockwise, <c>false</c> if counter clockwise
+/// 1.20</value>
+   public bool MappingClockwise {
+      get { return GetMappingClockwise(); }
+   }
+   /// <summary>Smoothing state for map rendering.
+/// This sets smoothing for map rendering. If the object is a type that has its own smoothing settings, then both the smooth settings for this object and the map must be turned off. By default smooth maps are enabled.
+/// 1.20</summary>
+/// <value><c>true</c> by default.
+/// 1.20</value>
+   public bool MappingSmooth {
+      get { return GetMappingSmooth(); }
+      set { SetMappingSmooth( value); }
+   }
+   /// <summary>Alpha flag for map rendering.
+/// This sets alpha flag for map rendering. If the object is a type that has its own alpha settings, then this will take precedence. Only image objects support this currently (<see cref="Efl.Canvas.Image"/> and its friends). Setting this to off stops alpha blending of the map area, and is useful if you know the object and/or all sub-objects is 100% solid.
+/// 
+/// Note that this may conflict with <see cref="Efl.Gfx.Mapping.MappingSmooth"/> depending on which algorithm is used for anti-aliasing.
+/// 1.20</summary>
+/// <value><c>true</c> by default.
+/// 1.20</value>
+   public bool MappingAlpha {
+      get { return GetMappingAlpha(); }
+      set { SetMappingAlpha( value); }
+   }
+}
+public class MappingNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_mapping_point_count_get_static_delegate == null)
+      efl_gfx_mapping_point_count_get_static_delegate = new efl_gfx_mapping_point_count_get_delegate(mapping_point_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_point_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_point_count_get_static_delegate)});
+      if (efl_gfx_mapping_point_count_set_static_delegate == null)
+      efl_gfx_mapping_point_count_set_static_delegate = new efl_gfx_mapping_point_count_set_delegate(mapping_point_count_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_point_count_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_point_count_set_static_delegate)});
+      if (efl_gfx_mapping_clockwise_get_static_delegate == null)
+      efl_gfx_mapping_clockwise_get_static_delegate = new efl_gfx_mapping_clockwise_get_delegate(mapping_clockwise_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_clockwise_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_clockwise_get_static_delegate)});
+      if (efl_gfx_mapping_smooth_get_static_delegate == null)
+      efl_gfx_mapping_smooth_get_static_delegate = new efl_gfx_mapping_smooth_get_delegate(mapping_smooth_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_smooth_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_smooth_get_static_delegate)});
+      if (efl_gfx_mapping_smooth_set_static_delegate == null)
+      efl_gfx_mapping_smooth_set_static_delegate = new efl_gfx_mapping_smooth_set_delegate(mapping_smooth_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_smooth_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_smooth_set_static_delegate)});
+      if (efl_gfx_mapping_alpha_get_static_delegate == null)
+      efl_gfx_mapping_alpha_get_static_delegate = new efl_gfx_mapping_alpha_get_delegate(mapping_alpha_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_alpha_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_alpha_get_static_delegate)});
+      if (efl_gfx_mapping_alpha_set_static_delegate == null)
+      efl_gfx_mapping_alpha_set_static_delegate = new efl_gfx_mapping_alpha_set_delegate(mapping_alpha_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_alpha_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_alpha_set_static_delegate)});
+      if (efl_gfx_mapping_coord_absolute_get_static_delegate == null)
+      efl_gfx_mapping_coord_absolute_get_static_delegate = new efl_gfx_mapping_coord_absolute_get_delegate(mapping_coord_absolute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_coord_absolute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_coord_absolute_get_static_delegate)});
+      if (efl_gfx_mapping_coord_absolute_set_static_delegate == null)
+      efl_gfx_mapping_coord_absolute_set_static_delegate = new efl_gfx_mapping_coord_absolute_set_delegate(mapping_coord_absolute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_coord_absolute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_coord_absolute_set_static_delegate)});
+      if (efl_gfx_mapping_uv_get_static_delegate == null)
+      efl_gfx_mapping_uv_get_static_delegate = new efl_gfx_mapping_uv_get_delegate(mapping_uv_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_uv_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_uv_get_static_delegate)});
+      if (efl_gfx_mapping_uv_set_static_delegate == null)
+      efl_gfx_mapping_uv_set_static_delegate = new efl_gfx_mapping_uv_set_delegate(mapping_uv_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_uv_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_uv_set_static_delegate)});
+      if (efl_gfx_mapping_color_get_static_delegate == null)
+      efl_gfx_mapping_color_get_static_delegate = new efl_gfx_mapping_color_get_delegate(mapping_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_color_get_static_delegate)});
+      if (efl_gfx_mapping_color_set_static_delegate == null)
+      efl_gfx_mapping_color_set_static_delegate = new efl_gfx_mapping_color_set_delegate(mapping_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_color_set_static_delegate)});
+      if (efl_gfx_mapping_has_static_delegate == null)
+      efl_gfx_mapping_has_static_delegate = new efl_gfx_mapping_has_delegate(mapping_has);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_has"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_has_static_delegate)});
+      if (efl_gfx_mapping_reset_static_delegate == null)
+      efl_gfx_mapping_reset_static_delegate = new efl_gfx_mapping_reset_delegate(mapping_reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_reset_static_delegate)});
+      if (efl_gfx_mapping_translate_static_delegate == null)
+      efl_gfx_mapping_translate_static_delegate = new efl_gfx_mapping_translate_delegate(translate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_translate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_translate_static_delegate)});
+      if (efl_gfx_mapping_rotate_static_delegate == null)
+      efl_gfx_mapping_rotate_static_delegate = new efl_gfx_mapping_rotate_delegate(rotate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_static_delegate)});
+      if (efl_gfx_mapping_rotate_3d_static_delegate == null)
+      efl_gfx_mapping_rotate_3d_static_delegate = new efl_gfx_mapping_rotate_3d_delegate(rotate_3d);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_3d"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_3d_static_delegate)});
+      if (efl_gfx_mapping_rotate_quat_static_delegate == null)
+      efl_gfx_mapping_rotate_quat_static_delegate = new efl_gfx_mapping_rotate_quat_delegate(rotate_quat);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_quat"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_quat_static_delegate)});
+      if (efl_gfx_mapping_zoom_static_delegate == null)
+      efl_gfx_mapping_zoom_static_delegate = new efl_gfx_mapping_zoom_delegate(zoom);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_zoom"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_zoom_static_delegate)});
+      if (efl_gfx_mapping_lighting_3d_static_delegate == null)
+      efl_gfx_mapping_lighting_3d_static_delegate = new efl_gfx_mapping_lighting_3d_delegate(lighting_3d);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_lighting_3d"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_lighting_3d_static_delegate)});
+      if (efl_gfx_mapping_perspective_3d_static_delegate == null)
+      efl_gfx_mapping_perspective_3d_static_delegate = new efl_gfx_mapping_perspective_3d_delegate(perspective_3d);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_perspective_3d"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_perspective_3d_static_delegate)});
+      if (efl_gfx_mapping_rotate_absolute_static_delegate == null)
+      efl_gfx_mapping_rotate_absolute_static_delegate = new efl_gfx_mapping_rotate_absolute_delegate(rotate_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_absolute_static_delegate)});
+      if (efl_gfx_mapping_rotate_3d_absolute_static_delegate == null)
+      efl_gfx_mapping_rotate_3d_absolute_static_delegate = new efl_gfx_mapping_rotate_3d_absolute_delegate(rotate_3d_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_3d_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_3d_absolute_static_delegate)});
+      if (efl_gfx_mapping_rotate_quat_absolute_static_delegate == null)
+      efl_gfx_mapping_rotate_quat_absolute_static_delegate = new efl_gfx_mapping_rotate_quat_absolute_delegate(rotate_quat_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_rotate_quat_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_rotate_quat_absolute_static_delegate)});
+      if (efl_gfx_mapping_zoom_absolute_static_delegate == null)
+      efl_gfx_mapping_zoom_absolute_static_delegate = new efl_gfx_mapping_zoom_absolute_delegate(zoom_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_zoom_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_zoom_absolute_static_delegate)});
+      if (efl_gfx_mapping_lighting_3d_absolute_static_delegate == null)
+      efl_gfx_mapping_lighting_3d_absolute_static_delegate = new efl_gfx_mapping_lighting_3d_absolute_delegate(lighting_3d_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_lighting_3d_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_lighting_3d_absolute_static_delegate)});
+      if (efl_gfx_mapping_perspective_3d_absolute_static_delegate == null)
+      efl_gfx_mapping_perspective_3d_absolute_static_delegate = new efl_gfx_mapping_perspective_3d_absolute_delegate(perspective_3d_absolute);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_mapping_perspective_3d_absolute"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_mapping_perspective_3d_absolute_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.MappingConcrete.efl_gfx_mapping_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.MappingConcrete.efl_gfx_mapping_mixin_get();
+   }
+
+
+    private delegate  int efl_gfx_mapping_point_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_mapping_point_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_get_api_delegate> efl_gfx_mapping_point_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_get_api_delegate>(_Module, "efl_gfx_mapping_point_count_get");
+    private static  int mapping_point_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_point_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((MappingConcrete)wrapper).GetMappingPointCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_point_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_point_count_get_delegate efl_gfx_mapping_point_count_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_point_count_set_delegate(System.IntPtr obj, System.IntPtr pd,    int count);
+
+
+    public delegate  void efl_gfx_mapping_point_count_set_api_delegate(System.IntPtr obj,    int count);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_set_api_delegate> efl_gfx_mapping_point_count_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_point_count_set_api_delegate>(_Module, "efl_gfx_mapping_point_count_set");
+    private static  void mapping_point_count_set(System.IntPtr obj, System.IntPtr pd,   int count)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_point_count_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((MappingConcrete)wrapper).SetMappingPointCount( count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_mapping_point_count_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  count);
+      }
+   }
+   private static efl_gfx_mapping_point_count_set_delegate efl_gfx_mapping_point_count_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_clockwise_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_clockwise_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_clockwise_get_api_delegate> efl_gfx_mapping_clockwise_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_clockwise_get_api_delegate>(_Module, "efl_gfx_mapping_clockwise_get");
+    private static bool mapping_clockwise_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_clockwise_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((MappingConcrete)wrapper).GetMappingClockwise();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_clockwise_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_clockwise_get_delegate efl_gfx_mapping_clockwise_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_smooth_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_smooth_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_get_api_delegate> efl_gfx_mapping_smooth_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_get_api_delegate>(_Module, "efl_gfx_mapping_smooth_get");
+    private static bool mapping_smooth_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_smooth_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((MappingConcrete)wrapper).GetMappingSmooth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_smooth_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_smooth_get_delegate efl_gfx_mapping_smooth_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_smooth_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool smooth);
+
+
+    public delegate  void efl_gfx_mapping_smooth_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool smooth);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_set_api_delegate> efl_gfx_mapping_smooth_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_smooth_set_api_delegate>(_Module, "efl_gfx_mapping_smooth_set");
+    private static  void mapping_smooth_set(System.IntPtr obj, System.IntPtr pd,  bool smooth)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_smooth_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((MappingConcrete)wrapper).SetMappingSmooth( smooth);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_mapping_smooth_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  smooth);
+      }
+   }
+   private static efl_gfx_mapping_smooth_set_delegate efl_gfx_mapping_smooth_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_alpha_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_alpha_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_get_api_delegate> efl_gfx_mapping_alpha_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_get_api_delegate>(_Module, "efl_gfx_mapping_alpha_get");
+    private static bool mapping_alpha_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_alpha_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((MappingConcrete)wrapper).GetMappingAlpha();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_alpha_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_alpha_get_delegate efl_gfx_mapping_alpha_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_alpha_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+
+
+    public delegate  void efl_gfx_mapping_alpha_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_set_api_delegate> efl_gfx_mapping_alpha_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_alpha_set_api_delegate>(_Module, "efl_gfx_mapping_alpha_set");
+    private static  void mapping_alpha_set(System.IntPtr obj, System.IntPtr pd,  bool alpha)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_alpha_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((MappingConcrete)wrapper).SetMappingAlpha( alpha);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_mapping_alpha_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  alpha);
+      }
+   }
+   private static efl_gfx_mapping_alpha_set_delegate efl_gfx_mapping_alpha_set_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_coord_absolute_get_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   out double x,   out double y,   out double z);
+
+
+    public delegate  void efl_gfx_mapping_coord_absolute_get_api_delegate(System.IntPtr obj,    int idx,   out double x,   out double y,   out double z);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_get_api_delegate> efl_gfx_mapping_coord_absolute_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_get_api_delegate>(_Module, "efl_gfx_mapping_coord_absolute_get");
+    private static  void mapping_coord_absolute_get(System.IntPtr obj, System.IntPtr pd,   int idx,  out double x,  out double y,  out double z)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_coord_absolute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                             x = default(double);      y = default(double);      z = default(double);                                 
+         try {
+            ((MappingConcrete)wrapper).GetMappingCoordAbsolute( idx,  out x,  out y,  out z);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_coord_absolute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  out x,  out y,  out z);
+      }
+   }
+   private static efl_gfx_mapping_coord_absolute_get_delegate efl_gfx_mapping_coord_absolute_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_coord_absolute_set_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   double x,   double y,   double z);
+
+
+    public delegate  void efl_gfx_mapping_coord_absolute_set_api_delegate(System.IntPtr obj,    int idx,   double x,   double y,   double z);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_set_api_delegate> efl_gfx_mapping_coord_absolute_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_coord_absolute_set_api_delegate>(_Module, "efl_gfx_mapping_coord_absolute_set");
+    private static  void mapping_coord_absolute_set(System.IntPtr obj, System.IntPtr pd,   int idx,  double x,  double y,  double z)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_coord_absolute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((MappingConcrete)wrapper).SetMappingCoordAbsolute( idx,  x,  y,  z);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_coord_absolute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  x,  y,  z);
+      }
+   }
+   private static efl_gfx_mapping_coord_absolute_set_delegate efl_gfx_mapping_coord_absolute_set_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_uv_get_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   out double u,   out double v);
+
+
+    public delegate  void efl_gfx_mapping_uv_get_api_delegate(System.IntPtr obj,    int idx,   out double u,   out double v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_get_api_delegate> efl_gfx_mapping_uv_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_get_api_delegate>(_Module, "efl_gfx_mapping_uv_get");
+    private static  void mapping_uv_get(System.IntPtr obj, System.IntPtr pd,   int idx,  out double u,  out double v)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_uv_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       u = default(double);      v = default(double);                           
+         try {
+            ((MappingConcrete)wrapper).GetMappingUv( idx,  out u,  out v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_uv_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  out u,  out v);
+      }
+   }
+   private static efl_gfx_mapping_uv_get_delegate efl_gfx_mapping_uv_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_uv_set_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   double u,   double v);
+
+
+    public delegate  void efl_gfx_mapping_uv_set_api_delegate(System.IntPtr obj,    int idx,   double u,   double v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_set_api_delegate> efl_gfx_mapping_uv_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_uv_set_api_delegate>(_Module, "efl_gfx_mapping_uv_set");
+    private static  void mapping_uv_set(System.IntPtr obj, System.IntPtr pd,   int idx,  double u,  double v)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_uv_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((MappingConcrete)wrapper).SetMappingUv( idx,  u,  v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_uv_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  u,  v);
+      }
+   }
+   private static efl_gfx_mapping_uv_set_delegate efl_gfx_mapping_uv_set_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_color_get_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_mapping_color_get_api_delegate(System.IntPtr obj,    int idx,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_get_api_delegate> efl_gfx_mapping_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_get_api_delegate>(_Module, "efl_gfx_mapping_color_get");
+    private static  void mapping_color_get(System.IntPtr obj, System.IntPtr pd,   int idx,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   r = default( int);      g = default( int);      b = default( int);      a = default( int);                                       
+         try {
+            ((MappingConcrete)wrapper).GetMappingColor( idx,  out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_mapping_color_get_delegate efl_gfx_mapping_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int idx,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_mapping_color_set_api_delegate(System.IntPtr obj,    int idx,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_set_api_delegate> efl_gfx_mapping_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_color_set_api_delegate>(_Module, "efl_gfx_mapping_color_set");
+    private static  void mapping_color_set(System.IntPtr obj, System.IntPtr pd,   int idx,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((MappingConcrete)wrapper).SetMappingColor( idx,  r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  idx,  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_mapping_color_set_delegate efl_gfx_mapping_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_mapping_has_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_mapping_has_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_has_api_delegate> efl_gfx_mapping_has_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_has_api_delegate>(_Module, "efl_gfx_mapping_has");
+    private static bool mapping_has(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_has was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((MappingConcrete)wrapper).HasMapping();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_mapping_has_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_has_delegate efl_gfx_mapping_has_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_mapping_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_reset_api_delegate> efl_gfx_mapping_reset_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_reset_api_delegate>(_Module, "efl_gfx_mapping_reset");
+    private static  void mapping_reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((MappingConcrete)wrapper).ResetMapping();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_mapping_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_mapping_reset_delegate efl_gfx_mapping_reset_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_translate_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy,   double dz);
+
+
+    public delegate  void efl_gfx_mapping_translate_api_delegate(System.IntPtr obj,   double dx,   double dy,   double dz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_translate_api_delegate> efl_gfx_mapping_translate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_translate_api_delegate>(_Module, "efl_gfx_mapping_translate");
+    private static  void translate(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy,  double dz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_translate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((MappingConcrete)wrapper).Translate( dx,  dy,  dz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_translate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy,  dz);
+      }
+   }
+   private static efl_gfx_mapping_translate_delegate efl_gfx_mapping_translate_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_delegate(System.IntPtr obj, System.IntPtr pd,   double degrees, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_rotate_api_delegate(System.IntPtr obj,   double degrees, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_api_delegate> efl_gfx_mapping_rotate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_api_delegate>(_Module, "efl_gfx_mapping_rotate");
+    private static  void rotate(System.IntPtr obj, System.IntPtr pd,  double degrees,  Efl.Gfx.Entity pivot,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((MappingConcrete)wrapper).Rotate( degrees,  pivot,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_rotate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  degrees,  pivot,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_rotate_delegate efl_gfx_mapping_rotate_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_3d_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy,   double dz, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_3d_api_delegate(System.IntPtr obj,   double dx,   double dy,   double dz, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_api_delegate> efl_gfx_mapping_rotate_3d_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_api_delegate>(_Module, "efl_gfx_mapping_rotate_3d");
+    private static  void rotate_3d(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy,  double dz,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_3d was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((MappingConcrete)wrapper).Rotate3d( dx,  dy,  dz,  pivot,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_mapping_rotate_3d_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy,  dz,  pivot,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_3d_delegate efl_gfx_mapping_rotate_3d_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_quat_delegate(System.IntPtr obj, System.IntPtr pd,   double qx,   double qy,   double qz,   double qw, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_quat_api_delegate(System.IntPtr obj,   double qx,   double qy,   double qz,   double qw, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_api_delegate> efl_gfx_mapping_rotate_quat_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_api_delegate>(_Module, "efl_gfx_mapping_rotate_quat");
+    private static  void rotate_quat(System.IntPtr obj, System.IntPtr pd,  double qx,  double qy,  double qz,  double qw,  Efl.Gfx.Entity pivot,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_quat was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                  
+         try {
+            ((MappingConcrete)wrapper).RotateQuat( qx,  qy,  qz,  qw,  pivot,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                            } else {
+         efl_gfx_mapping_rotate_quat_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  qx,  qy,  qz,  qw,  pivot,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_quat_delegate efl_gfx_mapping_rotate_quat_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_zoom_delegate(System.IntPtr obj, System.IntPtr pd,   double zoomx,   double zoomy, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_zoom_api_delegate(System.IntPtr obj,   double zoomx,   double zoomy, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_api_delegate> efl_gfx_mapping_zoom_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_api_delegate>(_Module, "efl_gfx_mapping_zoom");
+    private static  void zoom(System.IntPtr obj, System.IntPtr pd,  double zoomx,  double zoomy,  Efl.Gfx.Entity pivot,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_zoom was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((MappingConcrete)wrapper).Zoom( zoomx,  zoomy,  pivot,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_zoom_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  zoomx,  zoomy,  pivot,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_zoom_delegate efl_gfx_mapping_zoom_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_lighting_3d_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+
+
+    public delegate  void efl_gfx_mapping_lighting_3d_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_api_delegate> efl_gfx_mapping_lighting_3d_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_api_delegate>(_Module, "efl_gfx_mapping_lighting_3d");
+    private static  void lighting_3d(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity pivot,  double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_lighting_3d was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                                                      
+         try {
+            ((MappingConcrete)wrapper).Lighting3d( pivot,  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                                    } else {
+         efl_gfx_mapping_lighting_3d_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pivot,  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      }
+   }
+   private static efl_gfx_mapping_lighting_3d_delegate efl_gfx_mapping_lighting_3d_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_perspective_3d_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double px,   double py,   double z0,   double foc);
+
+
+    public delegate  void efl_gfx_mapping_perspective_3d_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity pivot,   double px,   double py,   double z0,   double foc);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_api_delegate> efl_gfx_mapping_perspective_3d_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_api_delegate>(_Module, "efl_gfx_mapping_perspective_3d");
+    private static  void perspective_3d(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity pivot,  double px,  double py,  double z0,  double foc)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_perspective_3d was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((MappingConcrete)wrapper).Perspective3d( pivot,  px,  py,  z0,  foc);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_mapping_perspective_3d_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pivot,  px,  py,  z0,  foc);
+      }
+   }
+   private static efl_gfx_mapping_perspective_3d_delegate efl_gfx_mapping_perspective_3d_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double degrees,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_rotate_absolute_api_delegate(System.IntPtr obj,   double degrees,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_absolute_api_delegate> efl_gfx_mapping_rotate_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_absolute_api_delegate>(_Module, "efl_gfx_mapping_rotate_absolute");
+    private static  void rotate_absolute(System.IntPtr obj, System.IntPtr pd,  double degrees,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((MappingConcrete)wrapper).RotateAbsolute( degrees,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_mapping_rotate_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  degrees,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_rotate_absolute_delegate efl_gfx_mapping_rotate_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_3d_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy,   double dz,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_3d_absolute_api_delegate(System.IntPtr obj,   double dx,   double dy,   double dz,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_absolute_api_delegate> efl_gfx_mapping_rotate_3d_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_3d_absolute_api_delegate>(_Module, "efl_gfx_mapping_rotate_3d_absolute");
+    private static  void rotate_3d_absolute(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy,  double dz,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_3d_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((MappingConcrete)wrapper).Rotate3dAbsolute( dx,  dy,  dz,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_mapping_rotate_3d_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy,  dz,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_3d_absolute_delegate efl_gfx_mapping_rotate_3d_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_rotate_quat_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double qx,   double qy,   double qz,   double qw,   double cx,   double cy,   double cz);
+
+
+    public delegate  void efl_gfx_mapping_rotate_quat_absolute_api_delegate(System.IntPtr obj,   double qx,   double qy,   double qz,   double qw,   double cx,   double cy,   double cz);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_absolute_api_delegate> efl_gfx_mapping_rotate_quat_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_rotate_quat_absolute_api_delegate>(_Module, "efl_gfx_mapping_rotate_quat_absolute");
+    private static  void rotate_quat_absolute(System.IntPtr obj, System.IntPtr pd,  double qx,  double qy,  double qz,  double qw,  double cx,  double cy,  double cz)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_rotate_quat_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((MappingConcrete)wrapper).RotateQuatAbsolute( qx,  qy,  qz,  qw,  cx,  cy,  cz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_mapping_rotate_quat_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  qx,  qy,  qz,  qw,  cx,  cy,  cz);
+      }
+   }
+   private static efl_gfx_mapping_rotate_quat_absolute_delegate efl_gfx_mapping_rotate_quat_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_zoom_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double zoomx,   double zoomy,   double cx,   double cy);
+
+
+    public delegate  void efl_gfx_mapping_zoom_absolute_api_delegate(System.IntPtr obj,   double zoomx,   double zoomy,   double cx,   double cy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_absolute_api_delegate> efl_gfx_mapping_zoom_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_zoom_absolute_api_delegate>(_Module, "efl_gfx_mapping_zoom_absolute");
+    private static  void zoom_absolute(System.IntPtr obj, System.IntPtr pd,  double zoomx,  double zoomy,  double cx,  double cy)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_zoom_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((MappingConcrete)wrapper).ZoomAbsolute( zoomx,  zoomy,  cx,  cy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_zoom_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  zoomx,  zoomy,  cx,  cy);
+      }
+   }
+   private static efl_gfx_mapping_zoom_absolute_delegate efl_gfx_mapping_zoom_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_lighting_3d_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+
+
+    public delegate  void efl_gfx_mapping_lighting_3d_absolute_api_delegate(System.IntPtr obj,   double lx,   double ly,   double lz,    int lr,    int lg,    int lb,    int ar,    int ag,    int ab);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_absolute_api_delegate> efl_gfx_mapping_lighting_3d_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_lighting_3d_absolute_api_delegate>(_Module, "efl_gfx_mapping_lighting_3d_absolute");
+    private static  void lighting_3d_absolute(System.IntPtr obj, System.IntPtr pd,  double lx,  double ly,  double lz,   int lr,   int lg,   int lb,   int ar,   int ag,   int ab)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_lighting_3d_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                                                    
+         try {
+            ((MappingConcrete)wrapper).Lighting3dAbsolute( lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                        } else {
+         efl_gfx_mapping_lighting_3d_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  lx,  ly,  lz,  lr,  lg,  lb,  ar,  ag,  ab);
+      }
+   }
+   private static efl_gfx_mapping_lighting_3d_absolute_delegate efl_gfx_mapping_lighting_3d_absolute_static_delegate;
+
+
+    private delegate  void efl_gfx_mapping_perspective_3d_absolute_delegate(System.IntPtr obj, System.IntPtr pd,   double px,   double py,   double z0,   double foc);
+
+
+    public delegate  void efl_gfx_mapping_perspective_3d_absolute_api_delegate(System.IntPtr obj,   double px,   double py,   double z0,   double foc);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_absolute_api_delegate> efl_gfx_mapping_perspective_3d_absolute_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_mapping_perspective_3d_absolute_api_delegate>(_Module, "efl_gfx_mapping_perspective_3d_absolute");
+    private static  void perspective_3d_absolute(System.IntPtr obj, System.IntPtr pd,  double px,  double py,  double z0,  double foc)
+   {
+      Eina.Log.Debug("function efl_gfx_mapping_perspective_3d_absolute was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((MappingConcrete)wrapper).Perspective3dAbsolute( px,  py,  z0,  foc);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_mapping_perspective_3d_absolute_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  px,  py,  z0,  foc);
+      }
+   }
+   private static efl_gfx_mapping_perspective_3d_absolute_delegate efl_gfx_mapping_perspective_3d_absolute_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_path.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_path.eo.cs
new file mode 100755 (executable)
index 0000000..cb39f65
--- /dev/null
@@ -0,0 +1,1180 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>EFL graphics path object interface</summary>
+[PathNativeInherit]
+public interface Path : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+/// 1.18</summary>
+/// <param name="op">Command list</param>
+/// <param name="points">Point list</param>
+/// <returns></returns>
+ void GetPath( out Efl.Gfx.PathCommandType op,  out double points);
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+/// 1.18</summary>
+/// <param name="op">Command list</param>
+/// <param name="points">Point list</param>
+/// <returns></returns>
+ void SetPath( Efl.Gfx.PathCommandType op,  double points);
+   /// <summary>Path length property</summary>
+/// <param name="commands">Commands</param>
+/// <param name="points">Points</param>
+/// <returns></returns>
+ void GetLength( out  uint commands,  out  uint points);
+   /// <summary>Current point coordinates</summary>
+/// <param name="x">X co-ordinate of the current point.</param>
+/// <param name="y">Y co-ordinate of the current point.</param>
+/// <returns></returns>
+ void GetCurrent( out double x,  out double y);
+   /// <summary>Current control point coordinates</summary>
+/// <param name="x">X co-ordinate of control point.</param>
+/// <param name="y">Y co-ordinate of control point.</param>
+/// <returns></returns>
+ void GetCurrentCtrl( out double x,  out double y);
+   /// <summary>Copy the path data from the object specified.
+/// 1.18</summary>
+/// <param name="dup_from">Shape object from where data will be copied.</param>
+/// <returns></returns>
+ void CopyFrom( Efl.Object dup_from);
+   /// <summary>Compute and return the bounding box of the currently set path
+/// 1.18</summary>
+/// <param name="r">Contain the bounding box of the currently set path</param>
+/// <returns></returns>
+ void GetBounds( out Eina.Rect r);
+   /// <summary>Reset the path data of the path object.
+/// 1.18</summary>
+/// <returns></returns>
+ void Reset();
+   /// <summary>Moves the current point to the given point,  implicitly starting a new subpath and closing the previous one.
+/// See also <see cref="Efl.Gfx.Path.CloseAppend"/>.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of the current point.</param>
+/// <param name="y">Y co-ordinate of the current point.</param>
+/// <returns></returns>
+ void AppendMoveTo( double x,  double y);
+   /// <summary>Adds a straight line from the current position to the given end point. After the line is drawn, the current position is updated to be at the end point of the line.
+/// If no current position present, it draws a line to itself, basically a point.
+/// 
+/// See also <see cref="Efl.Gfx.Path.AppendMoveTo"/>.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of end point of the line.</param>
+/// <param name="y">Y co-ordinate of end point of the line.</param>
+/// <returns></returns>
+ void AppendLineTo( double x,  double y);
+   /// <summary>Adds a quadratic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x, ctrl_y). After the path is drawn, the current position is updated to be at the end point of the path.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of end point of the line.</param>
+/// <param name="y">Y co-ordinate of end point of the line.</param>
+/// <param name="ctrl_x">X co-ordinate of control point.</param>
+/// <param name="ctrl_y">Y co-ordinate of control point.</param>
+/// <returns></returns>
+ void AppendQuadraticTo( double x,  double y,  double ctrl_x,  double ctrl_y);
+   /// <summary>Same as efl_gfx_path_append_quadratic_to() api only difference is that it uses the current control point to draw the bezier.
+/// See also <see cref="Efl.Gfx.Path.AppendQuadraticTo"/>.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of end point of the line.</param>
+/// <param name="y">Y co-ordinate of end point of the line.</param>
+/// <returns></returns>
+ void AppendSquadraticTo( double x,  double y);
+   /// <summary>Adds a cubic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x0, ctrl_y0), and (ctrl_x1, ctrl_y1). After the path is drawn, the current position is updated to be at the end point of the path.
+/// 1.18</summary>
+/// <param name="ctrl_x0">X co-ordinate of 1st control point.</param>
+/// <param name="ctrl_y0">Y co-ordinate of 1st control point.</param>
+/// <param name="ctrl_x1">X co-ordinate of 2nd control point.</param>
+/// <param name="ctrl_y1">Y co-ordinate of 2nd control point.</param>
+/// <param name="x">X co-ordinate of end point of the line.</param>
+/// <param name="y">Y co-ordinate of end point of the line.</param>
+/// <returns></returns>
+ void AppendCubicTo( double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y);
+   /// <summary>Same as efl_gfx_path_append_cubic_to() api only difference is that it uses the current control point to draw the bezier.
+/// See also <see cref="Efl.Gfx.Path.AppendCubicTo"/>.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of end point of the line.</param>
+/// <param name="y">Y co-ordinate of end point of the line.</param>
+/// <param name="ctrl_x">X co-ordinate of 2nd control point.</param>
+/// <param name="ctrl_y">Y co-ordinate of 2nd control point.</param>
+/// <returns></returns>
+ void AppendScubicTo( double x,  double y,  double ctrl_x,  double ctrl_y);
+   /// <summary>Append an arc that connects from the current point int the point list to the given point (x,y). The arc is defined by the given radius in  x-direction (rx) and radius in y direction (ry).
+/// Use this api if you know the end point&apos;s of the arc otherwise use more convenient function <see cref="Efl.Gfx.Path.AppendArc"/>.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of end point of the arc.</param>
+/// <param name="y">Y co-ordinate of end point of the arc.</param>
+/// <param name="rx">Radius of arc in x direction.</param>
+/// <param name="ry">Radius of arc in y direction.</param>
+/// <param name="angle">X-axis rotation , normally 0.</param>
+/// <param name="large_arc">Defines whether to draw the larger arc or smaller arc joining two point.</param>
+/// <param name="sweep">Defines whether the arc will be drawn counter-clockwise or clockwise from current point to the end point taking into account the large_arc property.</param>
+/// <returns></returns>
+ void AppendArcTo( double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep);
+   /// <summary>Append an arc that enclosed in the given rectangle (x, y, w, h). The angle is defined in counter clock wise , use -ve angle for clockwise arc.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of the rect.</param>
+/// <param name="y">Y co-ordinate of the rect.</param>
+/// <param name="w">Width of the rect.</param>
+/// <param name="h">Height of the rect.</param>
+/// <param name="start_angle">Angle at which the arc will start</param>
+/// <param name="sweep_length">@ Length of the arc.</param>
+/// <returns></returns>
+ void AppendArc( double x,  double y,  double w,  double h,  double start_angle,  double sweep_length);
+   /// <summary>Closes the current subpath by drawing a line to the beginning of the subpath, automatically starting a new path. The current point of the new path is (0, 0).
+/// If the subpath does not contain any points, this function does nothing.
+/// 1.18</summary>
+/// <returns></returns>
+ void CloseAppend();
+   /// <summary>Append a circle with given center and radius.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of the center of the circle.</param>
+/// <param name="y">Y co-ordinate of the center of the circle.</param>
+/// <param name="radius">Radius of the circle.</param>
+/// <returns></returns>
+ void AppendCircle( double x,  double y,  double radius);
+   /// <summary>Append the given rectangle with rounded corner to the path.
+/// The xr and yr arguments specify the radii of the ellipses defining the corners of the rounded rectangle.
+/// 
+/// xr and yr are specified in terms of width and height respectively.
+/// 
+/// If xr and yr are 0, then it will draw a rectangle without rounded corner.
+/// 1.18</summary>
+/// <param name="x">X co-ordinate of the rectangle.</param>
+/// <param name="y">Y co-ordinate of the rectangle.</param>
+/// <param name="w">Width of the rectangle.</param>
+/// <param name="h">Height of the rectangle.</param>
+/// <param name="rx">The x radius of the rounded corner and should be in range [ 0 to w/2 ]</param>
+/// <param name="ry">The y radius of the rounded corner and should be in range [ 0 to h/2 ]</param>
+/// <returns></returns>
+ void AppendRect( double x,  double y,  double w,  double h,  double rx,  double ry);
+   /// <summary>Append SVG path data</summary>
+/// <param name="svg_path_data">SVG path data to append</param>
+/// <returns></returns>
+ void AppendSvgPath(  System.String svg_path_data);
+   /// <summary>Creates intermediary path part-way between two paths
+/// Sets the points of the <c>obj</c> as the linear interpolation of the points in the <c>from</c> and <c>to</c> paths.  The path&apos;s x,y position and control point coordinates are likewise interpolated.
+/// 
+/// The <c>from</c> and <c>to</c> paths must not already have equivalent points, and <c>to</c> must contain at least as many points as <c>from</c>, else the function returns <c>false</c> with no interpolation performed.  If <c>to</c> has more points than <c>from</c>, the excess points are ignored.</summary>
+/// <param name="from">Source path</param>
+/// <param name="to">Destination path</param>
+/// <param name="pos_map">Position map in range 0.0 to 1.0</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool Interpolate( Efl.Object from,  Efl.Object to,  double pos_map);
+   /// <summary>Equal commands in object</summary>
+/// <param name="with">Object</param>
+/// <returns>True on success, <c>false</c> otherwise</returns>
+bool EqualCommands( Efl.Object with);
+   /// <summary>Reserve path commands buffer in advance. If you know the count of path commands coming, you can reserve commands buffer in advance to avoid buffer growing job.
+/// 1.22</summary>
+/// <param name="cmd_count">Commands count to reserve</param>
+/// <param name="pts_count">Pointers count to reserve</param>
+/// <returns></returns>
+ void Reserve(  uint cmd_count,   uint pts_count);
+   /// <summary>Request to update the path object.
+/// One path object may get appending several path calls (such as append_cubic, append_rect, etc) to construct the final path data. Here commit means all path data is prepared and now object could update its own internal status based on the last path information.</summary>
+/// <returns></returns>
+ void Commit();
+                                                                        }
+/// <summary>EFL graphics path object interface</summary>
+sealed public class PathConcrete : 
+
+Path
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PathConcrete))
+            return Efl.Gfx.PathNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_path_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PathConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PathConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PathConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PathConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   public  void GetPath( out Efl.Gfx.PathCommandType op,  out double points) {
+                   System.IntPtr _out_op = System.IntPtr.Zero;
+      System.IntPtr _out_points = System.IntPtr.Zero;
+                  Efl.Gfx.PathNativeInherit.efl_gfx_path_get_ptr.Value.Delegate(this.NativeHandle, out _out_op,  out _out_points);
+      Eina.Error.RaiseIfUnhandledException();
+      op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(_out_op);
+      points = Eina.PrimitiveConversion.PointerToManaged<double>(_out_points);
+                   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   public  void SetPath( Efl.Gfx.PathCommandType op,  double points) {
+       var _in_op = Eina.PrimitiveConversion.ManagedToPointerAlloc(op);
+      var _in_points = Eina.PrimitiveConversion.ManagedToPointerAlloc(points);
+                              Efl.Gfx.PathNativeInherit.efl_gfx_path_set_ptr.Value.Delegate(this.NativeHandle, _in_op,  _in_points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Path length property</summary>
+   /// <param name="commands">Commands</param>
+   /// <param name="points">Points</param>
+   /// <returns></returns>
+   public  void GetLength( out  uint commands,  out  uint points) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_length_get_ptr.Value.Delegate(this.NativeHandle, out commands,  out points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current point coordinates</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   public  void GetCurrent( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current control point coordinates</summary>
+   /// <param name="x">X co-ordinate of control point.</param>
+   /// <param name="y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   public  void GetCurrentCtrl( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_ctrl_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Copy the path data from the object specified.
+   /// 1.18</summary>
+   /// <param name="dup_from">Shape object from where data will be copied.</param>
+   /// <returns></returns>
+   public  void CopyFrom( Efl.Object dup_from) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_copy_from_ptr.Value.Delegate(this.NativeHandle, dup_from);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Compute and return the bounding box of the currently set path
+   /// 1.18</summary>
+   /// <param name="r">Contain the bounding box of the currently set path</param>
+   /// <returns></returns>
+   public  void GetBounds( out Eina.Rect r) {
+             var _out_r = new Eina.Rect_StructInternal();
+            Efl.Gfx.PathNativeInherit.efl_gfx_path_bounds_get_ptr.Value.Delegate(this.NativeHandle, out _out_r);
+      Eina.Error.RaiseIfUnhandledException();
+      r = Eina.Rect_StructConversion.ToManaged(_out_r);
+             }
+   /// <summary>Reset the path data of the path object.
+   /// 1.18</summary>
+   /// <returns></returns>
+   public  void Reset() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_reset_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Moves the current point to the given point,  implicitly starting a new subpath and closing the previous one.
+   /// See also <see cref="Efl.Gfx.Path.CloseAppend"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   public  void AppendMoveTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_move_to_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a straight line from the current position to the given end point. After the line is drawn, the current position is updated to be at the end point of the line.
+   /// If no current position present, it draws a line to itself, basically a point.
+   /// 
+   /// See also <see cref="Efl.Gfx.Path.AppendMoveTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   public  void AppendLineTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_line_to_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a quadratic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x, ctrl_y). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   public  void AppendQuadraticTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_quadratic_to_ptr.Value.Delegate(this.NativeHandle, x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Same as efl_gfx_path_append_quadratic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendQuadraticTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   public  void AppendSquadraticTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_squadratic_to_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a cubic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x0, ctrl_y0), and (ctrl_x1, ctrl_y1). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="ctrl_x0">X co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_y0">Y co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_x1">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y1">Y co-ordinate of 2nd control point.</param>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   public  void AppendCubicTo( double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_cubic_to_ptr.Value.Delegate(this.NativeHandle, ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Same as efl_gfx_path_append_cubic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendCubicTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of 2nd control point.</param>
+   /// <returns></returns>
+   public  void AppendScubicTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_scubic_to_ptr.Value.Delegate(this.NativeHandle, x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Append an arc that connects from the current point int the point list to the given point (x,y). The arc is defined by the given radius in  x-direction (rx) and radius in y direction (ry).
+   /// Use this api if you know the end point&apos;s of the arc otherwise use more convenient function <see cref="Efl.Gfx.Path.AppendArc"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the arc.</param>
+   /// <param name="y">Y co-ordinate of end point of the arc.</param>
+   /// <param name="rx">Radius of arc in x direction.</param>
+   /// <param name="ry">Radius of arc in y direction.</param>
+   /// <param name="angle">X-axis rotation , normally 0.</param>
+   /// <param name="large_arc">Defines whether to draw the larger arc or smaller arc joining two point.</param>
+   /// <param name="sweep">Defines whether the arc will be drawn counter-clockwise or clockwise from current point to the end point taking into account the large_arc property.</param>
+   /// <returns></returns>
+   public  void AppendArcTo( double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep) {
+                                                                                                                                     Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_to_ptr.Value.Delegate(this.NativeHandle, x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Append an arc that enclosed in the given rectangle (x, y, w, h). The angle is defined in counter clock wise , use -ve angle for clockwise arc.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rect.</param>
+   /// <param name="y">Y co-ordinate of the rect.</param>
+   /// <param name="w">Width of the rect.</param>
+   /// <param name="h">Height of the rect.</param>
+   /// <param name="start_angle">Angle at which the arc will start</param>
+   /// <param name="sweep_length">@ Length of the arc.</param>
+   /// <returns></returns>
+   public  void AppendArc( double x,  double y,  double w,  double h,  double start_angle,  double sweep_length) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_ptr.Value.Delegate(this.NativeHandle, x,  y,  w,  h,  start_angle,  sweep_length);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Closes the current subpath by drawing a line to the beginning of the subpath, automatically starting a new path. The current point of the new path is (0, 0).
+   /// If the subpath does not contain any points, this function does nothing.
+   /// 1.18</summary>
+   /// <returns></returns>
+   public  void CloseAppend() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_append_close_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Append a circle with given center and radius.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the center of the circle.</param>
+   /// <param name="y">Y co-ordinate of the center of the circle.</param>
+   /// <param name="radius">Radius of the circle.</param>
+   /// <returns></returns>
+   public  void AppendCircle( double x,  double y,  double radius) {
+                                                             Efl.Gfx.PathNativeInherit.efl_gfx_path_append_circle_ptr.Value.Delegate(this.NativeHandle, x,  y,  radius);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Append the given rectangle with rounded corner to the path.
+   /// The xr and yr arguments specify the radii of the ellipses defining the corners of the rounded rectangle.
+   /// 
+   /// xr and yr are specified in terms of width and height respectively.
+   /// 
+   /// If xr and yr are 0, then it will draw a rectangle without rounded corner.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rectangle.</param>
+   /// <param name="y">Y co-ordinate of the rectangle.</param>
+   /// <param name="w">Width of the rectangle.</param>
+   /// <param name="h">Height of the rectangle.</param>
+   /// <param name="rx">The x radius of the rounded corner and should be in range [ 0 to w/2 ]</param>
+   /// <param name="ry">The y radius of the rounded corner and should be in range [ 0 to h/2 ]</param>
+   /// <returns></returns>
+   public  void AppendRect( double x,  double y,  double w,  double h,  double rx,  double ry) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_rect_ptr.Value.Delegate(this.NativeHandle, x,  y,  w,  h,  rx,  ry);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Append SVG path data</summary>
+   /// <param name="svg_path_data">SVG path data to append</param>
+   /// <returns></returns>
+   public  void AppendSvgPath(  System.String svg_path_data) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_append_svg_path_ptr.Value.Delegate(this.NativeHandle, svg_path_data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates intermediary path part-way between two paths
+   /// Sets the points of the <c>obj</c> as the linear interpolation of the points in the <c>from</c> and <c>to</c> paths.  The path&apos;s x,y position and control point coordinates are likewise interpolated.
+   /// 
+   /// The <c>from</c> and <c>to</c> paths must not already have equivalent points, and <c>to</c> must contain at least as many points as <c>from</c>, else the function returns <c>false</c> with no interpolation performed.  If <c>to</c> has more points than <c>from</c>, the excess points are ignored.</summary>
+   /// <param name="from">Source path</param>
+   /// <param name="to">Destination path</param>
+   /// <param name="pos_map">Position map in range 0.0 to 1.0</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool Interpolate( Efl.Object from,  Efl.Object to,  double pos_map) {
+                                                             var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_interpolate_ptr.Value.Delegate(this.NativeHandle, from,  to,  pos_map);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Equal commands in object</summary>
+   /// <param name="with">Object</param>
+   /// <returns>True on success, <c>false</c> otherwise</returns>
+   public bool EqualCommands( Efl.Object with) {
+                         var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_equal_commands_ptr.Value.Delegate(this.NativeHandle, with);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Reserve path commands buffer in advance. If you know the count of path commands coming, you can reserve commands buffer in advance to avoid buffer growing job.
+   /// 1.22</summary>
+   /// <param name="cmd_count">Commands count to reserve</param>
+   /// <param name="pts_count">Pointers count to reserve</param>
+   /// <returns></returns>
+   public  void Reserve(  uint cmd_count,   uint pts_count) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_reserve_ptr.Value.Delegate(this.NativeHandle, cmd_count,  pts_count);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Request to update the path object.
+   /// One path object may get appending several path calls (such as append_cubic, append_rect, etc) to construct the final path data. Here commit means all path data is prepared and now object could update its own internal status based on the last path information.</summary>
+   /// <returns></returns>
+   public  void Commit() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_commit_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+}
+public class PathNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_path_get_static_delegate == null)
+      efl_gfx_path_get_static_delegate = new efl_gfx_path_get_delegate(path_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_get_static_delegate)});
+      if (efl_gfx_path_set_static_delegate == null)
+      efl_gfx_path_set_static_delegate = new efl_gfx_path_set_delegate(path_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_set_static_delegate)});
+      if (efl_gfx_path_length_get_static_delegate == null)
+      efl_gfx_path_length_get_static_delegate = new efl_gfx_path_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_length_get_static_delegate)});
+      if (efl_gfx_path_current_get_static_delegate == null)
+      efl_gfx_path_current_get_static_delegate = new efl_gfx_path_current_get_delegate(current_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_get_static_delegate)});
+      if (efl_gfx_path_current_ctrl_get_static_delegate == null)
+      efl_gfx_path_current_ctrl_get_static_delegate = new efl_gfx_path_current_ctrl_get_delegate(current_ctrl_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_ctrl_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_ctrl_get_static_delegate)});
+      if (efl_gfx_path_copy_from_static_delegate == null)
+      efl_gfx_path_copy_from_static_delegate = new efl_gfx_path_copy_from_delegate(copy_from);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_copy_from"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_copy_from_static_delegate)});
+      if (efl_gfx_path_bounds_get_static_delegate == null)
+      efl_gfx_path_bounds_get_static_delegate = new efl_gfx_path_bounds_get_delegate(bounds_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_bounds_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_bounds_get_static_delegate)});
+      if (efl_gfx_path_reset_static_delegate == null)
+      efl_gfx_path_reset_static_delegate = new efl_gfx_path_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reset_static_delegate)});
+      if (efl_gfx_path_append_move_to_static_delegate == null)
+      efl_gfx_path_append_move_to_static_delegate = new efl_gfx_path_append_move_to_delegate(append_move_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_move_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_move_to_static_delegate)});
+      if (efl_gfx_path_append_line_to_static_delegate == null)
+      efl_gfx_path_append_line_to_static_delegate = new efl_gfx_path_append_line_to_delegate(append_line_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_line_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_line_to_static_delegate)});
+      if (efl_gfx_path_append_quadratic_to_static_delegate == null)
+      efl_gfx_path_append_quadratic_to_static_delegate = new efl_gfx_path_append_quadratic_to_delegate(append_quadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_quadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_quadratic_to_static_delegate)});
+      if (efl_gfx_path_append_squadratic_to_static_delegate == null)
+      efl_gfx_path_append_squadratic_to_static_delegate = new efl_gfx_path_append_squadratic_to_delegate(append_squadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_squadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_squadratic_to_static_delegate)});
+      if (efl_gfx_path_append_cubic_to_static_delegate == null)
+      efl_gfx_path_append_cubic_to_static_delegate = new efl_gfx_path_append_cubic_to_delegate(append_cubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_cubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_cubic_to_static_delegate)});
+      if (efl_gfx_path_append_scubic_to_static_delegate == null)
+      efl_gfx_path_append_scubic_to_static_delegate = new efl_gfx_path_append_scubic_to_delegate(append_scubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_scubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_scubic_to_static_delegate)});
+      if (efl_gfx_path_append_arc_to_static_delegate == null)
+      efl_gfx_path_append_arc_to_static_delegate = new efl_gfx_path_append_arc_to_delegate(append_arc_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_to_static_delegate)});
+      if (efl_gfx_path_append_arc_static_delegate == null)
+      efl_gfx_path_append_arc_static_delegate = new efl_gfx_path_append_arc_delegate(append_arc);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_static_delegate)});
+      if (efl_gfx_path_append_close_static_delegate == null)
+      efl_gfx_path_append_close_static_delegate = new efl_gfx_path_append_close_delegate(append_close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_close"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_close_static_delegate)});
+      if (efl_gfx_path_append_circle_static_delegate == null)
+      efl_gfx_path_append_circle_static_delegate = new efl_gfx_path_append_circle_delegate(append_circle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_circle"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_circle_static_delegate)});
+      if (efl_gfx_path_append_rect_static_delegate == null)
+      efl_gfx_path_append_rect_static_delegate = new efl_gfx_path_append_rect_delegate(append_rect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_rect"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_rect_static_delegate)});
+      if (efl_gfx_path_append_svg_path_static_delegate == null)
+      efl_gfx_path_append_svg_path_static_delegate = new efl_gfx_path_append_svg_path_delegate(append_svg_path);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_svg_path"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_svg_path_static_delegate)});
+      if (efl_gfx_path_interpolate_static_delegate == null)
+      efl_gfx_path_interpolate_static_delegate = new efl_gfx_path_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_interpolate_static_delegate)});
+      if (efl_gfx_path_equal_commands_static_delegate == null)
+      efl_gfx_path_equal_commands_static_delegate = new efl_gfx_path_equal_commands_delegate(equal_commands);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_equal_commands"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_equal_commands_static_delegate)});
+      if (efl_gfx_path_reserve_static_delegate == null)
+      efl_gfx_path_reserve_static_delegate = new efl_gfx_path_reserve_delegate(reserve);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reserve"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reserve_static_delegate)});
+      if (efl_gfx_path_commit_static_delegate == null)
+      efl_gfx_path_commit_static_delegate = new efl_gfx_path_commit_delegate(commit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_commit"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_commit_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.PathConcrete.efl_gfx_path_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.PathConcrete.efl_gfx_path_mixin_get();
+   }
+
+
+    private delegate  void efl_gfx_path_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr op,   out  System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_get_api_delegate(System.IntPtr obj,   out  System.IntPtr op,   out  System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate> efl_gfx_path_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate>(_Module, "efl_gfx_path_get");
+    private static  void path_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr op,  out  System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.PathCommandType _out_op = default(Efl.Gfx.PathCommandType);
+      double _out_points = default(double);
+                     
+         try {
+            ((PathConcrete)wrapper).GetPath( out _out_op,  out _out_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      op = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_op);
+      points = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_points);
+                        } else {
+         efl_gfx_path_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out op,  out points);
+      }
+   }
+   private static efl_gfx_path_get_delegate efl_gfx_path_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr op,    System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_set_api_delegate(System.IntPtr obj,    System.IntPtr op,    System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate> efl_gfx_path_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate>(_Module, "efl_gfx_path_set");
+    private static  void path_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr op,   System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(op);
+      var _in_points = Eina.PrimitiveConversion.PointerToManaged<double>(points);
+                                 
+         try {
+            ((PathConcrete)wrapper).SetPath( _in_op,  _in_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  op,  points);
+      }
+   }
+   private static efl_gfx_path_set_delegate efl_gfx_path_set_static_delegate;
+
+
+    private delegate  void efl_gfx_path_length_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  uint commands,   out  uint points);
+
+
+    public delegate  void efl_gfx_path_length_get_api_delegate(System.IntPtr obj,   out  uint commands,   out  uint points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate> efl_gfx_path_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate>(_Module, "efl_gfx_path_length_get");
+    private static  void length_get(System.IntPtr obj, System.IntPtr pd,  out  uint commands,  out  uint points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           commands = default( uint);      points = default( uint);                     
+         try {
+            ((PathConcrete)wrapper).GetLength( out commands,  out points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out commands,  out points);
+      }
+   }
+   private static efl_gfx_path_length_get_delegate efl_gfx_path_length_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate> efl_gfx_path_current_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate>(_Module, "efl_gfx_path_current_get");
+    private static  void current_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((PathConcrete)wrapper).GetCurrent( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_get_delegate efl_gfx_path_current_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_ctrl_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_ctrl_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate> efl_gfx_path_current_ctrl_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate>(_Module, "efl_gfx_path_current_ctrl_get");
+    private static  void current_ctrl_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_ctrl_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((PathConcrete)wrapper).GetCurrentCtrl( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_ctrl_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_ctrl_get_delegate efl_gfx_path_current_ctrl_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_copy_from_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+
+
+    public delegate  void efl_gfx_path_copy_from_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate> efl_gfx_path_copy_from_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate>(_Module, "efl_gfx_path_copy_from");
+    private static  void copy_from(System.IntPtr obj, System.IntPtr pd,  Efl.Object dup_from)
+   {
+      Eina.Log.Debug("function efl_gfx_path_copy_from was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PathConcrete)wrapper).CopyFrom( dup_from);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_copy_from_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dup_from);
+      }
+   }
+   private static efl_gfx_path_copy_from_delegate efl_gfx_path_copy_from_static_delegate;
+
+
+    private delegate  void efl_gfx_path_bounds_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Eina.Rect_StructInternal r);
+
+
+    public delegate  void efl_gfx_path_bounds_get_api_delegate(System.IntPtr obj,   out Eina.Rect_StructInternal r);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate> efl_gfx_path_bounds_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate>(_Module, "efl_gfx_path_bounds_get");
+    private static  void bounds_get(System.IntPtr obj, System.IntPtr pd,  out Eina.Rect_StructInternal r)
+   {
+      Eina.Log.Debug("function efl_gfx_path_bounds_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     Eina.Rect _out_r = default(Eina.Rect);
+               
+         try {
+            ((PathConcrete)wrapper).GetBounds( out _out_r);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      r = Eina.Rect_StructConversion.ToInternal(_out_r);
+                  } else {
+         efl_gfx_path_bounds_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r);
+      }
+   }
+   private static efl_gfx_path_bounds_get_delegate efl_gfx_path_bounds_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate> efl_gfx_path_reset_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate>(_Module, "efl_gfx_path_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((PathConcrete)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_reset_delegate efl_gfx_path_reset_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_move_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_move_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate> efl_gfx_path_append_move_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate>(_Module, "efl_gfx_path_append_move_to");
+    private static  void append_move_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_move_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PathConcrete)wrapper).AppendMoveTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_move_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_move_to_delegate efl_gfx_path_append_move_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_line_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_line_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate> efl_gfx_path_append_line_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate>(_Module, "efl_gfx_path_append_line_to");
+    private static  void append_line_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_line_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PathConcrete)wrapper).AppendLineTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_line_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_line_to_delegate efl_gfx_path_append_line_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_quadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_quadratic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate> efl_gfx_path_append_quadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate>(_Module, "efl_gfx_path_append_quadratic_to");
+    private static  void append_quadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_quadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((PathConcrete)wrapper).AppendQuadraticTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_quadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_quadratic_to_delegate efl_gfx_path_append_quadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_squadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_squadratic_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate> efl_gfx_path_append_squadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate>(_Module, "efl_gfx_path_append_squadratic_to");
+    private static  void append_squadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_squadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PathConcrete)wrapper).AppendSquadraticTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_squadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_squadratic_to_delegate efl_gfx_path_append_squadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_cubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_cubic_to_api_delegate(System.IntPtr obj,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate> efl_gfx_path_append_cubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate>(_Module, "efl_gfx_path_append_cubic_to");
+    private static  void append_cubic_to(System.IntPtr obj, System.IntPtr pd,  double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_cubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((PathConcrete)wrapper).AppendCubicTo( ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_cubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_cubic_to_delegate efl_gfx_path_append_cubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_scubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_scubic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate> efl_gfx_path_append_scubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate>(_Module, "efl_gfx_path_append_scubic_to");
+    private static  void append_scubic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_scubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((PathConcrete)wrapper).AppendScubicTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_scubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_scubic_to_delegate efl_gfx_path_append_scubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+
+
+    public delegate  void efl_gfx_path_append_arc_to_api_delegate(System.IntPtr obj,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate> efl_gfx_path_append_arc_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate>(_Module, "efl_gfx_path_append_arc_to");
+    private static  void append_arc_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((PathConcrete)wrapper).AppendArcTo( x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_path_append_arc_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      }
+   }
+   private static efl_gfx_path_append_arc_to_delegate efl_gfx_path_append_arc_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+
+
+    public delegate  void efl_gfx_path_append_arc_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate> efl_gfx_path_append_arc_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate>(_Module, "efl_gfx_path_append_arc");
+    private static  void append_arc(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double start_angle,  double sweep_length)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((PathConcrete)wrapper).AppendArc( x,  y,  w,  h,  start_angle,  sweep_length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_arc_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  start_angle,  sweep_length);
+      }
+   }
+   private static efl_gfx_path_append_arc_delegate efl_gfx_path_append_arc_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_append_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate> efl_gfx_path_append_close_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate>(_Module, "efl_gfx_path_append_close");
+    private static  void append_close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((PathConcrete)wrapper).CloseAppend();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_append_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_append_close_delegate efl_gfx_path_append_close_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_circle_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double radius);
+
+
+    public delegate  void efl_gfx_path_append_circle_api_delegate(System.IntPtr obj,   double x,   double y,   double radius);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate> efl_gfx_path_append_circle_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate>(_Module, "efl_gfx_path_append_circle");
+    private static  void append_circle(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double radius)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_circle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((PathConcrete)wrapper).AppendCircle( x,  y,  radius);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_path_append_circle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  radius);
+      }
+   }
+   private static efl_gfx_path_append_circle_delegate efl_gfx_path_append_circle_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_rect_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double rx,   double ry);
+
+
+    public delegate  void efl_gfx_path_append_rect_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double rx,   double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate> efl_gfx_path_append_rect_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate>(_Module, "efl_gfx_path_append_rect");
+    private static  void append_rect(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double rx,  double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_rect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((PathConcrete)wrapper).AppendRect( x,  y,  w,  h,  rx,  ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_rect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  rx,  ry);
+      }
+   }
+   private static efl_gfx_path_append_rect_delegate efl_gfx_path_append_rect_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_svg_path_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+
+
+    public delegate  void efl_gfx_path_append_svg_path_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate> efl_gfx_path_append_svg_path_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate>(_Module, "efl_gfx_path_append_svg_path");
+    private static  void append_svg_path(System.IntPtr obj, System.IntPtr pd,   System.String svg_path_data)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_svg_path was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PathConcrete)wrapper).AppendSvgPath( svg_path_data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_append_svg_path_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  svg_path_data);
+      }
+   }
+   private static efl_gfx_path_append_svg_path_delegate efl_gfx_path_append_svg_path_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_interpolate_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_interpolate_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate> efl_gfx_path_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate>(_Module, "efl_gfx_path_interpolate");
+    private static bool interpolate(System.IntPtr obj, System.IntPtr pd,  Efl.Object from,  Efl.Object to,  double pos_map)
+   {
+      Eina.Log.Debug("function efl_gfx_path_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PathConcrete)wrapper).Interpolate( from,  to,  pos_map);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_path_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from,  to,  pos_map);
+      }
+   }
+   private static efl_gfx_path_interpolate_delegate efl_gfx_path_interpolate_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_equal_commands_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_equal_commands_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate> efl_gfx_path_equal_commands_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate>(_Module, "efl_gfx_path_equal_commands");
+    private static bool equal_commands(System.IntPtr obj, System.IntPtr pd,  Efl.Object with)
+   {
+      Eina.Log.Debug("function efl_gfx_path_equal_commands was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PathConcrete)wrapper).EqualCommands( with);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_path_equal_commands_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  with);
+      }
+   }
+   private static efl_gfx_path_equal_commands_delegate efl_gfx_path_equal_commands_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reserve_delegate(System.IntPtr obj, System.IntPtr pd,    uint cmd_count,    uint pts_count);
+
+
+    public delegate  void efl_gfx_path_reserve_api_delegate(System.IntPtr obj,    uint cmd_count,    uint pts_count);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate> efl_gfx_path_reserve_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate>(_Module, "efl_gfx_path_reserve");
+    private static  void reserve(System.IntPtr obj, System.IntPtr pd,   uint cmd_count,   uint pts_count)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reserve was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PathConcrete)wrapper).Reserve( cmd_count,  pts_count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_reserve_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cmd_count,  pts_count);
+      }
+   }
+   private static efl_gfx_path_reserve_delegate efl_gfx_path_reserve_static_delegate;
+
+
+    private delegate  void efl_gfx_path_commit_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_commit_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate> efl_gfx_path_commit_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate>(_Module, "efl_gfx_path_commit");
+    private static  void commit(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_commit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((PathConcrete)wrapper).Commit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_commit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_commit_delegate efl_gfx_path_commit_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_shape.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_shape.eo.cs
new file mode 100755 (executable)
index 0000000..8b58cd5
--- /dev/null
@@ -0,0 +1,1768 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>EFL graphics shape object interface</summary>
+[ShapeNativeInherit]
+public interface Shape : 
+   Efl.Gfx.Path ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+/// 1.14</summary>
+/// <returns>Stroke scale value</returns>
+double GetStrokeScale();
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+/// 1.14</summary>
+/// <param name="s">Stroke scale value</param>
+/// <returns></returns>
+ void SetStrokeScale( double s);
+   /// <summary>The color to be used for stroking the path.
+/// 1.14</summary>
+/// <param name="r">The red component of the given color.</param>
+/// <param name="g">The green component of the given color.</param>
+/// <param name="b">The blue component of the given color.</param>
+/// <param name="a">The alpha component of the given color.</param>
+/// <returns></returns>
+ void GetStrokeColor( out  int r,  out  int g,  out  int b,  out  int a);
+   /// <summary>The color to be used for stroking the path.
+/// 1.14</summary>
+/// <param name="r">The red component of the given color.</param>
+/// <param name="g">The green component of the given color.</param>
+/// <param name="b">The blue component of the given color.</param>
+/// <param name="a">The alpha component of the given color.</param>
+/// <returns></returns>
+ void SetStrokeColor(  int r,   int g,   int b,   int a);
+   /// <summary>The stroke width to be used for stroking the path.
+/// 1.14</summary>
+/// <returns>Stroke width to be used</returns>
+double GetStrokeWidth();
+   /// <summary>The stroke width to be used for stroking the path.
+/// 1.14</summary>
+/// <param name="w">Stroke width to be used</param>
+/// <returns></returns>
+ void SetStrokeWidth( double w);
+   /// <summary>Not implemented</summary>
+/// <returns>Centered stroke location</returns>
+double GetStrokeLocation();
+   /// <summary>Not implemented</summary>
+/// <param name="centered">Centered stroke location</param>
+/// <returns></returns>
+ void SetStrokeLocation( double centered);
+   /// <summary>Set stroke dash pattern. A dash pattern is specified by dashes, an array of <see cref="Efl.Gfx.Dash"/>. <see cref="Efl.Gfx.Dash"/> values(length, gap) must be positive.
+/// See also <see cref="Efl.Gfx.Dash"/></summary>
+/// <param name="dash">Stroke dash</param>
+/// <param name="length">Stroke dash length</param>
+/// <returns></returns>
+ void GetStrokeDash( out Efl.Gfx.Dash dash,  out  uint length);
+   /// <summary>Set stroke dash pattern. A dash pattern is specified by dashes, an array of <see cref="Efl.Gfx.Dash"/>. <see cref="Efl.Gfx.Dash"/> values(length, gap) must be positive.
+/// See also <see cref="Efl.Gfx.Dash"/></summary>
+/// <param name="dash">Stroke dash</param>
+/// <param name="length">Stroke dash length</param>
+/// <returns></returns>
+ void SetStrokeDash( ref Efl.Gfx.Dash dash,   uint length);
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+/// See also <see cref="Efl.Gfx.Cap"/>.
+/// 1.14</summary>
+/// <returns>Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></returns>
+Efl.Gfx.Cap GetStrokeCap();
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+/// See also <see cref="Efl.Gfx.Cap"/>.
+/// 1.14</summary>
+/// <param name="c">Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></param>
+/// <returns></returns>
+ void SetStrokeCap( Efl.Gfx.Cap c);
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+/// See also <see cref="Efl.Gfx.Join"/>.
+/// 1.14</summary>
+/// <returns>Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></returns>
+Efl.Gfx.Join GetStrokeJoin();
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+/// See also <see cref="Efl.Gfx.Join"/>.
+/// 1.14</summary>
+/// <param name="j">Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></param>
+/// <returns></returns>
+ void SetStrokeJoin( Efl.Gfx.Join j);
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+/// 1.14</summary>
+/// <returns>The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></returns>
+Efl.Gfx.FillRule GetFillRule();
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+/// 1.14</summary>
+/// <param name="fill_rule">The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></param>
+/// <returns></returns>
+ void SetFillRule( Efl.Gfx.FillRule fill_rule);
+                                                   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+/// 1.14</summary>
+/// <value>Stroke scale value</value>
+   double StrokeScale {
+      get ;
+      set ;
+   }
+   /// <summary>The stroke width to be used for stroking the path.
+/// 1.14</summary>
+/// <value>Stroke width to be used</value>
+   double StrokeWidth {
+      get ;
+      set ;
+   }
+   /// <summary>Not implemented</summary>
+/// <value>Centered stroke location</value>
+   double StrokeLocation {
+      get ;
+      set ;
+   }
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+/// See also <see cref="Efl.Gfx.Cap"/>.
+/// 1.14</summary>
+/// <value>Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></value>
+   Efl.Gfx.Cap StrokeCap {
+      get ;
+      set ;
+   }
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+/// See also <see cref="Efl.Gfx.Join"/>.
+/// 1.14</summary>
+/// <value>Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></value>
+   Efl.Gfx.Join StrokeJoin {
+      get ;
+      set ;
+   }
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+/// 1.14</summary>
+/// <value>The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></value>
+   Efl.Gfx.FillRule FillRule {
+      get ;
+      set ;
+   }
+}
+/// <summary>EFL graphics shape object interface</summary>
+sealed public class ShapeConcrete : 
+
+Shape
+   , Efl.Gfx.Path
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ShapeConcrete))
+            return Efl.Gfx.ShapeNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_shape_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ShapeConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ShapeConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ShapeConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ShapeConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+   /// 1.14</summary>
+   /// <returns>Stroke scale value</returns>
+   public double GetStrokeScale() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_scale_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+   /// 1.14</summary>
+   /// <param name="s">Stroke scale value</param>
+   /// <returns></returns>
+   public  void SetStrokeScale( double s) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_scale_set_ptr.Value.Delegate(this.NativeHandle, s);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The color to be used for stroking the path.
+   /// 1.14</summary>
+   /// <param name="r">The red component of the given color.</param>
+   /// <param name="g">The green component of the given color.</param>
+   /// <param name="b">The blue component of the given color.</param>
+   /// <param name="a">The alpha component of the given color.</param>
+   /// <returns></returns>
+   public  void GetStrokeColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>The color to be used for stroking the path.
+   /// 1.14</summary>
+   /// <param name="r">The red component of the given color.</param>
+   /// <param name="g">The green component of the given color.</param>
+   /// <param name="b">The blue component of the given color.</param>
+   /// <param name="a">The alpha component of the given color.</param>
+   /// <returns></returns>
+   public  void SetStrokeColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>The stroke width to be used for stroking the path.
+   /// 1.14</summary>
+   /// <returns>Stroke width to be used</returns>
+   public double GetStrokeWidth() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_width_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The stroke width to be used for stroking the path.
+   /// 1.14</summary>
+   /// <param name="w">Stroke width to be used</param>
+   /// <returns></returns>
+   public  void SetStrokeWidth( double w) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_width_set_ptr.Value.Delegate(this.NativeHandle, w);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Not implemented</summary>
+   /// <returns>Centered stroke location</returns>
+   public double GetStrokeLocation() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_location_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Not implemented</summary>
+   /// <param name="centered">Centered stroke location</param>
+   /// <returns></returns>
+   public  void SetStrokeLocation( double centered) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_location_set_ptr.Value.Delegate(this.NativeHandle, centered);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set stroke dash pattern. A dash pattern is specified by dashes, an array of <see cref="Efl.Gfx.Dash"/>. <see cref="Efl.Gfx.Dash"/> values(length, gap) must be positive.
+   /// See also <see cref="Efl.Gfx.Dash"/></summary>
+   /// <param name="dash">Stroke dash</param>
+   /// <param name="length">Stroke dash length</param>
+   /// <returns></returns>
+   public  void GetStrokeDash( out Efl.Gfx.Dash dash,  out  uint length) {
+                   var _out_dash = new  System.IntPtr();
+                        Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_dash_get_ptr.Value.Delegate(this.NativeHandle, out _out_dash,  out length);
+      Eina.Error.RaiseIfUnhandledException();
+      dash = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.Dash>(_out_dash);
+                         }
+   /// <summary>Set stroke dash pattern. A dash pattern is specified by dashes, an array of <see cref="Efl.Gfx.Dash"/>. <see cref="Efl.Gfx.Dash"/> values(length, gap) must be positive.
+   /// See also <see cref="Efl.Gfx.Dash"/></summary>
+   /// <param name="dash">Stroke dash</param>
+   /// <param name="length">Stroke dash length</param>
+   /// <returns></returns>
+   public  void SetStrokeDash( ref Efl.Gfx.Dash dash,   uint length) {
+       var _in_dash = Efl.Gfx.Dash_StructConversion.ToInternal(dash);
+                                    Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_dash_set_ptr.Value.Delegate(this.NativeHandle, ref _in_dash,  length);
+      Eina.Error.RaiseIfUnhandledException();
+                  dash = Efl.Gfx.Dash_StructConversion.ToManaged(_in_dash);
+             }
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+   /// See also <see cref="Efl.Gfx.Cap"/>.
+   /// 1.14</summary>
+   /// <returns>Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></returns>
+   public Efl.Gfx.Cap GetStrokeCap() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_cap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+   /// See also <see cref="Efl.Gfx.Cap"/>.
+   /// 1.14</summary>
+   /// <param name="c">Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></param>
+   /// <returns></returns>
+   public  void SetStrokeCap( Efl.Gfx.Cap c) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_cap_set_ptr.Value.Delegate(this.NativeHandle, c);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+   /// See also <see cref="Efl.Gfx.Join"/>.
+   /// 1.14</summary>
+   /// <returns>Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></returns>
+   public Efl.Gfx.Join GetStrokeJoin() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_join_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+   /// See also <see cref="Efl.Gfx.Join"/>.
+   /// 1.14</summary>
+   /// <param name="j">Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></param>
+   /// <returns></returns>
+   public  void SetStrokeJoin( Efl.Gfx.Join j) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_stroke_join_set_ptr.Value.Delegate(this.NativeHandle, j);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+   /// 1.14</summary>
+   /// <returns>The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></returns>
+   public Efl.Gfx.FillRule GetFillRule() {
+       var _ret_var = Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_fill_rule_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+   /// 1.14</summary>
+   /// <param name="fill_rule">The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></param>
+   /// <returns></returns>
+   public  void SetFillRule( Efl.Gfx.FillRule fill_rule) {
+                         Efl.Gfx.ShapeNativeInherit.efl_gfx_shape_fill_rule_set_ptr.Value.Delegate(this.NativeHandle, fill_rule);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   public  void GetPath( out Efl.Gfx.PathCommandType op,  out double points) {
+                   System.IntPtr _out_op = System.IntPtr.Zero;
+      System.IntPtr _out_points = System.IntPtr.Zero;
+                  Efl.Gfx.PathNativeInherit.efl_gfx_path_get_ptr.Value.Delegate(this.NativeHandle, out _out_op,  out _out_points);
+      Eina.Error.RaiseIfUnhandledException();
+      op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(_out_op);
+      points = Eina.PrimitiveConversion.PointerToManaged<double>(_out_points);
+                   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   public  void SetPath( Efl.Gfx.PathCommandType op,  double points) {
+       var _in_op = Eina.PrimitiveConversion.ManagedToPointerAlloc(op);
+      var _in_points = Eina.PrimitiveConversion.ManagedToPointerAlloc(points);
+                              Efl.Gfx.PathNativeInherit.efl_gfx_path_set_ptr.Value.Delegate(this.NativeHandle, _in_op,  _in_points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Path length property</summary>
+   /// <param name="commands">Commands</param>
+   /// <param name="points">Points</param>
+   /// <returns></returns>
+   public  void GetLength( out  uint commands,  out  uint points) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_length_get_ptr.Value.Delegate(this.NativeHandle, out commands,  out points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current point coordinates</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   public  void GetCurrent( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current control point coordinates</summary>
+   /// <param name="x">X co-ordinate of control point.</param>
+   /// <param name="y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   public  void GetCurrentCtrl( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_ctrl_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Copy the path data from the object specified.
+   /// 1.18</summary>
+   /// <param name="dup_from">Shape object from where data will be copied.</param>
+   /// <returns></returns>
+   public  void CopyFrom( Efl.Object dup_from) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_copy_from_ptr.Value.Delegate(this.NativeHandle, dup_from);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Compute and return the bounding box of the currently set path
+   /// 1.18</summary>
+   /// <param name="r">Contain the bounding box of the currently set path</param>
+   /// <returns></returns>
+   public  void GetBounds( out Eina.Rect r) {
+             var _out_r = new Eina.Rect_StructInternal();
+            Efl.Gfx.PathNativeInherit.efl_gfx_path_bounds_get_ptr.Value.Delegate(this.NativeHandle, out _out_r);
+      Eina.Error.RaiseIfUnhandledException();
+      r = Eina.Rect_StructConversion.ToManaged(_out_r);
+             }
+   /// <summary>Reset the path data of the path object.
+   /// 1.18</summary>
+   /// <returns></returns>
+   public  void Reset() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_reset_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Moves the current point to the given point,  implicitly starting a new subpath and closing the previous one.
+   /// See also <see cref="Efl.Gfx.Path.CloseAppend"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   public  void AppendMoveTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_move_to_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a straight line from the current position to the given end point. After the line is drawn, the current position is updated to be at the end point of the line.
+   /// If no current position present, it draws a line to itself, basically a point.
+   /// 
+   /// See also <see cref="Efl.Gfx.Path.AppendMoveTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   public  void AppendLineTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_line_to_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a quadratic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x, ctrl_y). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   public  void AppendQuadraticTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_quadratic_to_ptr.Value.Delegate(this.NativeHandle, x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Same as efl_gfx_path_append_quadratic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendQuadraticTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   public  void AppendSquadraticTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_squadratic_to_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a cubic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x0, ctrl_y0), and (ctrl_x1, ctrl_y1). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="ctrl_x0">X co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_y0">Y co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_x1">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y1">Y co-ordinate of 2nd control point.</param>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   public  void AppendCubicTo( double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_cubic_to_ptr.Value.Delegate(this.NativeHandle, ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Same as efl_gfx_path_append_cubic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendCubicTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of 2nd control point.</param>
+   /// <returns></returns>
+   public  void AppendScubicTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_scubic_to_ptr.Value.Delegate(this.NativeHandle, x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Append an arc that connects from the current point int the point list to the given point (x,y). The arc is defined by the given radius in  x-direction (rx) and radius in y direction (ry).
+   /// Use this api if you know the end point&apos;s of the arc otherwise use more convenient function <see cref="Efl.Gfx.Path.AppendArc"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the arc.</param>
+   /// <param name="y">Y co-ordinate of end point of the arc.</param>
+   /// <param name="rx">Radius of arc in x direction.</param>
+   /// <param name="ry">Radius of arc in y direction.</param>
+   /// <param name="angle">X-axis rotation , normally 0.</param>
+   /// <param name="large_arc">Defines whether to draw the larger arc or smaller arc joining two point.</param>
+   /// <param name="sweep">Defines whether the arc will be drawn counter-clockwise or clockwise from current point to the end point taking into account the large_arc property.</param>
+   /// <returns></returns>
+   public  void AppendArcTo( double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep) {
+                                                                                                                                     Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_to_ptr.Value.Delegate(this.NativeHandle, x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Append an arc that enclosed in the given rectangle (x, y, w, h). The angle is defined in counter clock wise , use -ve angle for clockwise arc.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rect.</param>
+   /// <param name="y">Y co-ordinate of the rect.</param>
+   /// <param name="w">Width of the rect.</param>
+   /// <param name="h">Height of the rect.</param>
+   /// <param name="start_angle">Angle at which the arc will start</param>
+   /// <param name="sweep_length">@ Length of the arc.</param>
+   /// <returns></returns>
+   public  void AppendArc( double x,  double y,  double w,  double h,  double start_angle,  double sweep_length) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_ptr.Value.Delegate(this.NativeHandle, x,  y,  w,  h,  start_angle,  sweep_length);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Closes the current subpath by drawing a line to the beginning of the subpath, automatically starting a new path. The current point of the new path is (0, 0).
+   /// If the subpath does not contain any points, this function does nothing.
+   /// 1.18</summary>
+   /// <returns></returns>
+   public  void CloseAppend() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_append_close_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Append a circle with given center and radius.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the center of the circle.</param>
+   /// <param name="y">Y co-ordinate of the center of the circle.</param>
+   /// <param name="radius">Radius of the circle.</param>
+   /// <returns></returns>
+   public  void AppendCircle( double x,  double y,  double radius) {
+                                                             Efl.Gfx.PathNativeInherit.efl_gfx_path_append_circle_ptr.Value.Delegate(this.NativeHandle, x,  y,  radius);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Append the given rectangle with rounded corner to the path.
+   /// The xr and yr arguments specify the radii of the ellipses defining the corners of the rounded rectangle.
+   /// 
+   /// xr and yr are specified in terms of width and height respectively.
+   /// 
+   /// If xr and yr are 0, then it will draw a rectangle without rounded corner.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rectangle.</param>
+   /// <param name="y">Y co-ordinate of the rectangle.</param>
+   /// <param name="w">Width of the rectangle.</param>
+   /// <param name="h">Height of the rectangle.</param>
+   /// <param name="rx">The x radius of the rounded corner and should be in range [ 0 to w/2 ]</param>
+   /// <param name="ry">The y radius of the rounded corner and should be in range [ 0 to h/2 ]</param>
+   /// <returns></returns>
+   public  void AppendRect( double x,  double y,  double w,  double h,  double rx,  double ry) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_rect_ptr.Value.Delegate(this.NativeHandle, x,  y,  w,  h,  rx,  ry);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Append SVG path data</summary>
+   /// <param name="svg_path_data">SVG path data to append</param>
+   /// <returns></returns>
+   public  void AppendSvgPath(  System.String svg_path_data) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_append_svg_path_ptr.Value.Delegate(this.NativeHandle, svg_path_data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates intermediary path part-way between two paths
+   /// Sets the points of the <c>obj</c> as the linear interpolation of the points in the <c>from</c> and <c>to</c> paths.  The path&apos;s x,y position and control point coordinates are likewise interpolated.
+   /// 
+   /// The <c>from</c> and <c>to</c> paths must not already have equivalent points, and <c>to</c> must contain at least as many points as <c>from</c>, else the function returns <c>false</c> with no interpolation performed.  If <c>to</c> has more points than <c>from</c>, the excess points are ignored.</summary>
+   /// <param name="from">Source path</param>
+   /// <param name="to">Destination path</param>
+   /// <param name="pos_map">Position map in range 0.0 to 1.0</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool Interpolate( Efl.Object from,  Efl.Object to,  double pos_map) {
+                                                             var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_interpolate_ptr.Value.Delegate(this.NativeHandle, from,  to,  pos_map);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Equal commands in object</summary>
+   /// <param name="with">Object</param>
+   /// <returns>True on success, <c>false</c> otherwise</returns>
+   public bool EqualCommands( Efl.Object with) {
+                         var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_equal_commands_ptr.Value.Delegate(this.NativeHandle, with);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Reserve path commands buffer in advance. If you know the count of path commands coming, you can reserve commands buffer in advance to avoid buffer growing job.
+   /// 1.22</summary>
+   /// <param name="cmd_count">Commands count to reserve</param>
+   /// <param name="pts_count">Pointers count to reserve</param>
+   /// <returns></returns>
+   public  void Reserve(  uint cmd_count,   uint pts_count) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_reserve_ptr.Value.Delegate(this.NativeHandle, cmd_count,  pts_count);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Request to update the path object.
+   /// One path object may get appending several path calls (such as append_cubic, append_rect, etc) to construct the final path data. Here commit means all path data is prepared and now object could update its own internal status based on the last path information.</summary>
+   /// <returns></returns>
+   public  void Commit() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_commit_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The stroke scale to be used for stroking the path. Will be used along with stroke width property.
+/// 1.14</summary>
+/// <value>Stroke scale value</value>
+   public double StrokeScale {
+      get { return GetStrokeScale(); }
+      set { SetStrokeScale( value); }
+   }
+   /// <summary>The stroke width to be used for stroking the path.
+/// 1.14</summary>
+/// <value>Stroke width to be used</value>
+   public double StrokeWidth {
+      get { return GetStrokeWidth(); }
+      set { SetStrokeWidth( value); }
+   }
+   /// <summary>Not implemented</summary>
+/// <value>Centered stroke location</value>
+   public double StrokeLocation {
+      get { return GetStrokeLocation(); }
+      set { SetStrokeLocation( value); }
+   }
+   /// <summary>The cap style to be used for stroking the path. The cap will be used for capping the end point of a open subpath.
+/// See also <see cref="Efl.Gfx.Cap"/>.
+/// 1.14</summary>
+/// <value>Cap style to use, default is <see cref="Efl.Gfx.Cap.Butt"/></value>
+   public Efl.Gfx.Cap StrokeCap {
+      get { return GetStrokeCap(); }
+      set { SetStrokeCap( value); }
+   }
+   /// <summary>The join style to be used for stroking the path. The join style will be used for joining the two line segment while stroking the path.
+/// See also <see cref="Efl.Gfx.Join"/>.
+/// 1.14</summary>
+/// <value>Join style to use, default is <see cref="Efl.Gfx.Join.Miter"/></value>
+   public Efl.Gfx.Join StrokeJoin {
+      get { return GetStrokeJoin(); }
+      set { SetStrokeJoin( value); }
+   }
+   /// <summary>The fill rule of the given shape object. <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/>.
+/// 1.14</summary>
+/// <value>The current fill rule of the shape object. One of <see cref="Efl.Gfx.FillRule.Winding"/> or <see cref="Efl.Gfx.FillRule.OddEven"/></value>
+   public Efl.Gfx.FillRule FillRule {
+      get { return GetFillRule(); }
+      set { SetFillRule( value); }
+   }
+}
+public class ShapeNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_shape_stroke_scale_get_static_delegate == null)
+      efl_gfx_shape_stroke_scale_get_static_delegate = new efl_gfx_shape_stroke_scale_get_delegate(stroke_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_scale_get_static_delegate)});
+      if (efl_gfx_shape_stroke_scale_set_static_delegate == null)
+      efl_gfx_shape_stroke_scale_set_static_delegate = new efl_gfx_shape_stroke_scale_set_delegate(stroke_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_scale_set_static_delegate)});
+      if (efl_gfx_shape_stroke_color_get_static_delegate == null)
+      efl_gfx_shape_stroke_color_get_static_delegate = new efl_gfx_shape_stroke_color_get_delegate(stroke_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_color_get_static_delegate)});
+      if (efl_gfx_shape_stroke_color_set_static_delegate == null)
+      efl_gfx_shape_stroke_color_set_static_delegate = new efl_gfx_shape_stroke_color_set_delegate(stroke_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_color_set_static_delegate)});
+      if (efl_gfx_shape_stroke_width_get_static_delegate == null)
+      efl_gfx_shape_stroke_width_get_static_delegate = new efl_gfx_shape_stroke_width_get_delegate(stroke_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_width_get_static_delegate)});
+      if (efl_gfx_shape_stroke_width_set_static_delegate == null)
+      efl_gfx_shape_stroke_width_set_static_delegate = new efl_gfx_shape_stroke_width_set_delegate(stroke_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_width_set_static_delegate)});
+      if (efl_gfx_shape_stroke_location_get_static_delegate == null)
+      efl_gfx_shape_stroke_location_get_static_delegate = new efl_gfx_shape_stroke_location_get_delegate(stroke_location_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_location_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_location_get_static_delegate)});
+      if (efl_gfx_shape_stroke_location_set_static_delegate == null)
+      efl_gfx_shape_stroke_location_set_static_delegate = new efl_gfx_shape_stroke_location_set_delegate(stroke_location_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_location_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_location_set_static_delegate)});
+      if (efl_gfx_shape_stroke_dash_get_static_delegate == null)
+      efl_gfx_shape_stroke_dash_get_static_delegate = new efl_gfx_shape_stroke_dash_get_delegate(stroke_dash_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_dash_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_dash_get_static_delegate)});
+      if (efl_gfx_shape_stroke_dash_set_static_delegate == null)
+      efl_gfx_shape_stroke_dash_set_static_delegate = new efl_gfx_shape_stroke_dash_set_delegate(stroke_dash_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_dash_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_dash_set_static_delegate)});
+      if (efl_gfx_shape_stroke_cap_get_static_delegate == null)
+      efl_gfx_shape_stroke_cap_get_static_delegate = new efl_gfx_shape_stroke_cap_get_delegate(stroke_cap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_cap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_cap_get_static_delegate)});
+      if (efl_gfx_shape_stroke_cap_set_static_delegate == null)
+      efl_gfx_shape_stroke_cap_set_static_delegate = new efl_gfx_shape_stroke_cap_set_delegate(stroke_cap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_cap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_cap_set_static_delegate)});
+      if (efl_gfx_shape_stroke_join_get_static_delegate == null)
+      efl_gfx_shape_stroke_join_get_static_delegate = new efl_gfx_shape_stroke_join_get_delegate(stroke_join_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_join_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_join_get_static_delegate)});
+      if (efl_gfx_shape_stroke_join_set_static_delegate == null)
+      efl_gfx_shape_stroke_join_set_static_delegate = new efl_gfx_shape_stroke_join_set_delegate(stroke_join_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_stroke_join_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_stroke_join_set_static_delegate)});
+      if (efl_gfx_shape_fill_rule_get_static_delegate == null)
+      efl_gfx_shape_fill_rule_get_static_delegate = new efl_gfx_shape_fill_rule_get_delegate(fill_rule_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_fill_rule_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_fill_rule_get_static_delegate)});
+      if (efl_gfx_shape_fill_rule_set_static_delegate == null)
+      efl_gfx_shape_fill_rule_set_static_delegate = new efl_gfx_shape_fill_rule_set_delegate(fill_rule_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_shape_fill_rule_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_shape_fill_rule_set_static_delegate)});
+      if (efl_gfx_path_get_static_delegate == null)
+      efl_gfx_path_get_static_delegate = new efl_gfx_path_get_delegate(path_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_get_static_delegate)});
+      if (efl_gfx_path_set_static_delegate == null)
+      efl_gfx_path_set_static_delegate = new efl_gfx_path_set_delegate(path_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_set_static_delegate)});
+      if (efl_gfx_path_length_get_static_delegate == null)
+      efl_gfx_path_length_get_static_delegate = new efl_gfx_path_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_length_get_static_delegate)});
+      if (efl_gfx_path_current_get_static_delegate == null)
+      efl_gfx_path_current_get_static_delegate = new efl_gfx_path_current_get_delegate(current_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_get_static_delegate)});
+      if (efl_gfx_path_current_ctrl_get_static_delegate == null)
+      efl_gfx_path_current_ctrl_get_static_delegate = new efl_gfx_path_current_ctrl_get_delegate(current_ctrl_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_ctrl_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_ctrl_get_static_delegate)});
+      if (efl_gfx_path_copy_from_static_delegate == null)
+      efl_gfx_path_copy_from_static_delegate = new efl_gfx_path_copy_from_delegate(copy_from);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_copy_from"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_copy_from_static_delegate)});
+      if (efl_gfx_path_bounds_get_static_delegate == null)
+      efl_gfx_path_bounds_get_static_delegate = new efl_gfx_path_bounds_get_delegate(bounds_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_bounds_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_bounds_get_static_delegate)});
+      if (efl_gfx_path_reset_static_delegate == null)
+      efl_gfx_path_reset_static_delegate = new efl_gfx_path_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reset_static_delegate)});
+      if (efl_gfx_path_append_move_to_static_delegate == null)
+      efl_gfx_path_append_move_to_static_delegate = new efl_gfx_path_append_move_to_delegate(append_move_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_move_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_move_to_static_delegate)});
+      if (efl_gfx_path_append_line_to_static_delegate == null)
+      efl_gfx_path_append_line_to_static_delegate = new efl_gfx_path_append_line_to_delegate(append_line_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_line_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_line_to_static_delegate)});
+      if (efl_gfx_path_append_quadratic_to_static_delegate == null)
+      efl_gfx_path_append_quadratic_to_static_delegate = new efl_gfx_path_append_quadratic_to_delegate(append_quadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_quadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_quadratic_to_static_delegate)});
+      if (efl_gfx_path_append_squadratic_to_static_delegate == null)
+      efl_gfx_path_append_squadratic_to_static_delegate = new efl_gfx_path_append_squadratic_to_delegate(append_squadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_squadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_squadratic_to_static_delegate)});
+      if (efl_gfx_path_append_cubic_to_static_delegate == null)
+      efl_gfx_path_append_cubic_to_static_delegate = new efl_gfx_path_append_cubic_to_delegate(append_cubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_cubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_cubic_to_static_delegate)});
+      if (efl_gfx_path_append_scubic_to_static_delegate == null)
+      efl_gfx_path_append_scubic_to_static_delegate = new efl_gfx_path_append_scubic_to_delegate(append_scubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_scubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_scubic_to_static_delegate)});
+      if (efl_gfx_path_append_arc_to_static_delegate == null)
+      efl_gfx_path_append_arc_to_static_delegate = new efl_gfx_path_append_arc_to_delegate(append_arc_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_to_static_delegate)});
+      if (efl_gfx_path_append_arc_static_delegate == null)
+      efl_gfx_path_append_arc_static_delegate = new efl_gfx_path_append_arc_delegate(append_arc);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_static_delegate)});
+      if (efl_gfx_path_append_close_static_delegate == null)
+      efl_gfx_path_append_close_static_delegate = new efl_gfx_path_append_close_delegate(append_close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_close"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_close_static_delegate)});
+      if (efl_gfx_path_append_circle_static_delegate == null)
+      efl_gfx_path_append_circle_static_delegate = new efl_gfx_path_append_circle_delegate(append_circle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_circle"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_circle_static_delegate)});
+      if (efl_gfx_path_append_rect_static_delegate == null)
+      efl_gfx_path_append_rect_static_delegate = new efl_gfx_path_append_rect_delegate(append_rect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_rect"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_rect_static_delegate)});
+      if (efl_gfx_path_append_svg_path_static_delegate == null)
+      efl_gfx_path_append_svg_path_static_delegate = new efl_gfx_path_append_svg_path_delegate(append_svg_path);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_svg_path"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_svg_path_static_delegate)});
+      if (efl_gfx_path_interpolate_static_delegate == null)
+      efl_gfx_path_interpolate_static_delegate = new efl_gfx_path_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_interpolate_static_delegate)});
+      if (efl_gfx_path_equal_commands_static_delegate == null)
+      efl_gfx_path_equal_commands_static_delegate = new efl_gfx_path_equal_commands_delegate(equal_commands);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_equal_commands"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_equal_commands_static_delegate)});
+      if (efl_gfx_path_reserve_static_delegate == null)
+      efl_gfx_path_reserve_static_delegate = new efl_gfx_path_reserve_delegate(reserve);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reserve"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reserve_static_delegate)});
+      if (efl_gfx_path_commit_static_delegate == null)
+      efl_gfx_path_commit_static_delegate = new efl_gfx_path_commit_delegate(commit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_commit"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_commit_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.ShapeConcrete.efl_gfx_shape_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.ShapeConcrete.efl_gfx_shape_mixin_get();
+   }
+
+
+    private delegate double efl_gfx_shape_stroke_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_shape_stroke_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_get_api_delegate> efl_gfx_shape_stroke_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_get_api_delegate>(_Module, "efl_gfx_shape_stroke_scale_get");
+    private static double stroke_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).GetStrokeScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_scale_get_delegate efl_gfx_shape_stroke_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double s);
+
+
+    public delegate  void efl_gfx_shape_stroke_scale_set_api_delegate(System.IntPtr obj,   double s);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_set_api_delegate> efl_gfx_shape_stroke_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_scale_set_api_delegate>(_Module, "efl_gfx_shape_stroke_scale_set");
+    private static  void stroke_scale_set(System.IntPtr obj, System.IntPtr pd,  double s)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).SetStrokeScale( s);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  s);
+      }
+   }
+   private static efl_gfx_shape_stroke_scale_set_delegate efl_gfx_shape_stroke_scale_set_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_shape_stroke_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_get_api_delegate> efl_gfx_shape_stroke_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_get_api_delegate>(_Module, "efl_gfx_shape_stroke_color_get");
+    private static  void stroke_color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((ShapeConcrete)wrapper).GetStrokeColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_shape_stroke_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_shape_stroke_color_get_delegate efl_gfx_shape_stroke_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_shape_stroke_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_set_api_delegate> efl_gfx_shape_stroke_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_color_set_api_delegate>(_Module, "efl_gfx_shape_stroke_color_set");
+    private static  void stroke_color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((ShapeConcrete)wrapper).SetStrokeColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_shape_stroke_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_shape_stroke_color_set_delegate efl_gfx_shape_stroke_color_set_static_delegate;
+
+
+    private delegate double efl_gfx_shape_stroke_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_shape_stroke_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_get_api_delegate> efl_gfx_shape_stroke_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_get_api_delegate>(_Module, "efl_gfx_shape_stroke_width_get");
+    private static double stroke_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).GetStrokeWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_width_get_delegate efl_gfx_shape_stroke_width_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_width_set_delegate(System.IntPtr obj, System.IntPtr pd,   double w);
+
+
+    public delegate  void efl_gfx_shape_stroke_width_set_api_delegate(System.IntPtr obj,   double w);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_set_api_delegate> efl_gfx_shape_stroke_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_width_set_api_delegate>(_Module, "efl_gfx_shape_stroke_width_set");
+    private static  void stroke_width_set(System.IntPtr obj, System.IntPtr pd,  double w)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).SetStrokeWidth( w);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w);
+      }
+   }
+   private static efl_gfx_shape_stroke_width_set_delegate efl_gfx_shape_stroke_width_set_static_delegate;
+
+
+    private delegate double efl_gfx_shape_stroke_location_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_shape_stroke_location_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_get_api_delegate> efl_gfx_shape_stroke_location_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_get_api_delegate>(_Module, "efl_gfx_shape_stroke_location_get");
+    private static double stroke_location_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_location_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).GetStrokeLocation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_location_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_location_get_delegate efl_gfx_shape_stroke_location_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_location_set_delegate(System.IntPtr obj, System.IntPtr pd,   double centered);
+
+
+    public delegate  void efl_gfx_shape_stroke_location_set_api_delegate(System.IntPtr obj,   double centered);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_set_api_delegate> efl_gfx_shape_stroke_location_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_location_set_api_delegate>(_Module, "efl_gfx_shape_stroke_location_set");
+    private static  void stroke_location_set(System.IntPtr obj, System.IntPtr pd,  double centered)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_location_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).SetStrokeLocation( centered);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_location_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  centered);
+      }
+   }
+   private static efl_gfx_shape_stroke_location_set_delegate efl_gfx_shape_stroke_location_set_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_dash_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr dash,   out  uint length);
+
+
+    public delegate  void efl_gfx_shape_stroke_dash_get_api_delegate(System.IntPtr obj,   out  System.IntPtr dash,   out  uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_get_api_delegate> efl_gfx_shape_stroke_dash_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_get_api_delegate>(_Module, "efl_gfx_shape_stroke_dash_get");
+    private static  void stroke_dash_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr dash,  out  uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_dash_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.Dash _out_dash = default(Efl.Gfx.Dash);
+      length = default( uint);                     
+         try {
+            ((ShapeConcrete)wrapper).GetStrokeDash( out _out_dash,  out length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      dash = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_dash);
+                              } else {
+         efl_gfx_shape_stroke_dash_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dash,  out length);
+      }
+   }
+   private static efl_gfx_shape_stroke_dash_get_delegate efl_gfx_shape_stroke_dash_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_dash_set_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Gfx.Dash_StructInternal dash,    uint length);
+
+
+    public delegate  void efl_gfx_shape_stroke_dash_set_api_delegate(System.IntPtr obj,   ref Efl.Gfx.Dash_StructInternal dash,    uint length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_set_api_delegate> efl_gfx_shape_stroke_dash_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_dash_set_api_delegate>(_Module, "efl_gfx_shape_stroke_dash_set");
+    private static  void stroke_dash_set(System.IntPtr obj, System.IntPtr pd,  ref Efl.Gfx.Dash_StructInternal dash,   uint length)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_dash_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_dash = Efl.Gfx.Dash_StructConversion.ToManaged(dash);
+                                       
+         try {
+            ((ShapeConcrete)wrapper).SetStrokeDash( ref _in_dash,  length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  dash = Efl.Gfx.Dash_StructConversion.ToInternal(_in_dash);
+                  } else {
+         efl_gfx_shape_stroke_dash_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref dash,  length);
+      }
+   }
+   private static efl_gfx_shape_stroke_dash_set_delegate efl_gfx_shape_stroke_dash_set_static_delegate;
+
+
+    private delegate Efl.Gfx.Cap efl_gfx_shape_stroke_cap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.Cap efl_gfx_shape_stroke_cap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_get_api_delegate> efl_gfx_shape_stroke_cap_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_get_api_delegate>(_Module, "efl_gfx_shape_stroke_cap_get");
+    private static Efl.Gfx.Cap stroke_cap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_cap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Cap _ret_var = default(Efl.Gfx.Cap);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).GetStrokeCap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_cap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_cap_get_delegate efl_gfx_shape_stroke_cap_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_cap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.Cap c);
+
+
+    public delegate  void efl_gfx_shape_stroke_cap_set_api_delegate(System.IntPtr obj,   Efl.Gfx.Cap c);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_set_api_delegate> efl_gfx_shape_stroke_cap_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_cap_set_api_delegate>(_Module, "efl_gfx_shape_stroke_cap_set");
+    private static  void stroke_cap_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Cap c)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_cap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).SetStrokeCap( c);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_cap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  c);
+      }
+   }
+   private static efl_gfx_shape_stroke_cap_set_delegate efl_gfx_shape_stroke_cap_set_static_delegate;
+
+
+    private delegate Efl.Gfx.Join efl_gfx_shape_stroke_join_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.Join efl_gfx_shape_stroke_join_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_get_api_delegate> efl_gfx_shape_stroke_join_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_get_api_delegate>(_Module, "efl_gfx_shape_stroke_join_get");
+    private static Efl.Gfx.Join stroke_join_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_join_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Join _ret_var = default(Efl.Gfx.Join);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).GetStrokeJoin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_stroke_join_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_stroke_join_get_delegate efl_gfx_shape_stroke_join_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_stroke_join_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.Join j);
+
+
+    public delegate  void efl_gfx_shape_stroke_join_set_api_delegate(System.IntPtr obj,   Efl.Gfx.Join j);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_set_api_delegate> efl_gfx_shape_stroke_join_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_stroke_join_set_api_delegate>(_Module, "efl_gfx_shape_stroke_join_set");
+    private static  void stroke_join_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Join j)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_stroke_join_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).SetStrokeJoin( j);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_stroke_join_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  j);
+      }
+   }
+   private static efl_gfx_shape_stroke_join_set_delegate efl_gfx_shape_stroke_join_set_static_delegate;
+
+
+    private delegate Efl.Gfx.FillRule efl_gfx_shape_fill_rule_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.FillRule efl_gfx_shape_fill_rule_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_get_api_delegate> efl_gfx_shape_fill_rule_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_get_api_delegate>(_Module, "efl_gfx_shape_fill_rule_get");
+    private static Efl.Gfx.FillRule fill_rule_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_fill_rule_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.FillRule _ret_var = default(Efl.Gfx.FillRule);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).GetFillRule();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_shape_fill_rule_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_shape_fill_rule_get_delegate efl_gfx_shape_fill_rule_get_static_delegate;
+
+
+    private delegate  void efl_gfx_shape_fill_rule_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.FillRule fill_rule);
+
+
+    public delegate  void efl_gfx_shape_fill_rule_set_api_delegate(System.IntPtr obj,   Efl.Gfx.FillRule fill_rule);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_set_api_delegate> efl_gfx_shape_fill_rule_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_shape_fill_rule_set_api_delegate>(_Module, "efl_gfx_shape_fill_rule_set");
+    private static  void fill_rule_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.FillRule fill_rule)
+   {
+      Eina.Log.Debug("function efl_gfx_shape_fill_rule_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).SetFillRule( fill_rule);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_shape_fill_rule_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill_rule);
+      }
+   }
+   private static efl_gfx_shape_fill_rule_set_delegate efl_gfx_shape_fill_rule_set_static_delegate;
+
+
+    private delegate  void efl_gfx_path_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr op,   out  System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_get_api_delegate(System.IntPtr obj,   out  System.IntPtr op,   out  System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate> efl_gfx_path_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate>(_Module, "efl_gfx_path_get");
+    private static  void path_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr op,  out  System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.PathCommandType _out_op = default(Efl.Gfx.PathCommandType);
+      double _out_points = default(double);
+                     
+         try {
+            ((ShapeConcrete)wrapper).GetPath( out _out_op,  out _out_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      op = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_op);
+      points = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_points);
+                        } else {
+         efl_gfx_path_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out op,  out points);
+      }
+   }
+   private static efl_gfx_path_get_delegate efl_gfx_path_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr op,    System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_set_api_delegate(System.IntPtr obj,    System.IntPtr op,    System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate> efl_gfx_path_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate>(_Module, "efl_gfx_path_set");
+    private static  void path_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr op,   System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(op);
+      var _in_points = Eina.PrimitiveConversion.PointerToManaged<double>(points);
+                                 
+         try {
+            ((ShapeConcrete)wrapper).SetPath( _in_op,  _in_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  op,  points);
+      }
+   }
+   private static efl_gfx_path_set_delegate efl_gfx_path_set_static_delegate;
+
+
+    private delegate  void efl_gfx_path_length_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  uint commands,   out  uint points);
+
+
+    public delegate  void efl_gfx_path_length_get_api_delegate(System.IntPtr obj,   out  uint commands,   out  uint points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate> efl_gfx_path_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate>(_Module, "efl_gfx_path_length_get");
+    private static  void length_get(System.IntPtr obj, System.IntPtr pd,  out  uint commands,  out  uint points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           commands = default( uint);      points = default( uint);                     
+         try {
+            ((ShapeConcrete)wrapper).GetLength( out commands,  out points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out commands,  out points);
+      }
+   }
+   private static efl_gfx_path_length_get_delegate efl_gfx_path_length_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate> efl_gfx_path_current_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate>(_Module, "efl_gfx_path_current_get");
+    private static  void current_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((ShapeConcrete)wrapper).GetCurrent( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_get_delegate efl_gfx_path_current_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_ctrl_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_ctrl_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate> efl_gfx_path_current_ctrl_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate>(_Module, "efl_gfx_path_current_ctrl_get");
+    private static  void current_ctrl_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_ctrl_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((ShapeConcrete)wrapper).GetCurrentCtrl( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_ctrl_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_ctrl_get_delegate efl_gfx_path_current_ctrl_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_copy_from_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+
+
+    public delegate  void efl_gfx_path_copy_from_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate> efl_gfx_path_copy_from_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate>(_Module, "efl_gfx_path_copy_from");
+    private static  void copy_from(System.IntPtr obj, System.IntPtr pd,  Efl.Object dup_from)
+   {
+      Eina.Log.Debug("function efl_gfx_path_copy_from was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).CopyFrom( dup_from);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_copy_from_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dup_from);
+      }
+   }
+   private static efl_gfx_path_copy_from_delegate efl_gfx_path_copy_from_static_delegate;
+
+
+    private delegate  void efl_gfx_path_bounds_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Eina.Rect_StructInternal r);
+
+
+    public delegate  void efl_gfx_path_bounds_get_api_delegate(System.IntPtr obj,   out Eina.Rect_StructInternal r);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate> efl_gfx_path_bounds_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate>(_Module, "efl_gfx_path_bounds_get");
+    private static  void bounds_get(System.IntPtr obj, System.IntPtr pd,  out Eina.Rect_StructInternal r)
+   {
+      Eina.Log.Debug("function efl_gfx_path_bounds_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     Eina.Rect _out_r = default(Eina.Rect);
+               
+         try {
+            ((ShapeConcrete)wrapper).GetBounds( out _out_r);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      r = Eina.Rect_StructConversion.ToInternal(_out_r);
+                  } else {
+         efl_gfx_path_bounds_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r);
+      }
+   }
+   private static efl_gfx_path_bounds_get_delegate efl_gfx_path_bounds_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate> efl_gfx_path_reset_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate>(_Module, "efl_gfx_path_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ShapeConcrete)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_reset_delegate efl_gfx_path_reset_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_move_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_move_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate> efl_gfx_path_append_move_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate>(_Module, "efl_gfx_path_append_move_to");
+    private static  void append_move_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_move_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ShapeConcrete)wrapper).AppendMoveTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_move_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_move_to_delegate efl_gfx_path_append_move_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_line_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_line_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate> efl_gfx_path_append_line_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate>(_Module, "efl_gfx_path_append_line_to");
+    private static  void append_line_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_line_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ShapeConcrete)wrapper).AppendLineTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_line_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_line_to_delegate efl_gfx_path_append_line_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_quadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_quadratic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate> efl_gfx_path_append_quadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate>(_Module, "efl_gfx_path_append_quadratic_to");
+    private static  void append_quadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_quadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((ShapeConcrete)wrapper).AppendQuadraticTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_quadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_quadratic_to_delegate efl_gfx_path_append_quadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_squadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_squadratic_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate> efl_gfx_path_append_squadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate>(_Module, "efl_gfx_path_append_squadratic_to");
+    private static  void append_squadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_squadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ShapeConcrete)wrapper).AppendSquadraticTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_squadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_squadratic_to_delegate efl_gfx_path_append_squadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_cubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_cubic_to_api_delegate(System.IntPtr obj,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate> efl_gfx_path_append_cubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate>(_Module, "efl_gfx_path_append_cubic_to");
+    private static  void append_cubic_to(System.IntPtr obj, System.IntPtr pd,  double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_cubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((ShapeConcrete)wrapper).AppendCubicTo( ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_cubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_cubic_to_delegate efl_gfx_path_append_cubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_scubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_scubic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate> efl_gfx_path_append_scubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate>(_Module, "efl_gfx_path_append_scubic_to");
+    private static  void append_scubic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_scubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((ShapeConcrete)wrapper).AppendScubicTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_scubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_scubic_to_delegate efl_gfx_path_append_scubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+
+
+    public delegate  void efl_gfx_path_append_arc_to_api_delegate(System.IntPtr obj,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate> efl_gfx_path_append_arc_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate>(_Module, "efl_gfx_path_append_arc_to");
+    private static  void append_arc_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((ShapeConcrete)wrapper).AppendArcTo( x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_path_append_arc_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      }
+   }
+   private static efl_gfx_path_append_arc_to_delegate efl_gfx_path_append_arc_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+
+
+    public delegate  void efl_gfx_path_append_arc_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate> efl_gfx_path_append_arc_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate>(_Module, "efl_gfx_path_append_arc");
+    private static  void append_arc(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double start_angle,  double sweep_length)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((ShapeConcrete)wrapper).AppendArc( x,  y,  w,  h,  start_angle,  sweep_length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_arc_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  start_angle,  sweep_length);
+      }
+   }
+   private static efl_gfx_path_append_arc_delegate efl_gfx_path_append_arc_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_append_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate> efl_gfx_path_append_close_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate>(_Module, "efl_gfx_path_append_close");
+    private static  void append_close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ShapeConcrete)wrapper).CloseAppend();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_append_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_append_close_delegate efl_gfx_path_append_close_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_circle_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double radius);
+
+
+    public delegate  void efl_gfx_path_append_circle_api_delegate(System.IntPtr obj,   double x,   double y,   double radius);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate> efl_gfx_path_append_circle_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate>(_Module, "efl_gfx_path_append_circle");
+    private static  void append_circle(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double radius)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_circle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((ShapeConcrete)wrapper).AppendCircle( x,  y,  radius);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_path_append_circle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  radius);
+      }
+   }
+   private static efl_gfx_path_append_circle_delegate efl_gfx_path_append_circle_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_rect_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double rx,   double ry);
+
+
+    public delegate  void efl_gfx_path_append_rect_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double rx,   double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate> efl_gfx_path_append_rect_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate>(_Module, "efl_gfx_path_append_rect");
+    private static  void append_rect(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double rx,  double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_rect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((ShapeConcrete)wrapper).AppendRect( x,  y,  w,  h,  rx,  ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_rect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  rx,  ry);
+      }
+   }
+   private static efl_gfx_path_append_rect_delegate efl_gfx_path_append_rect_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_svg_path_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+
+
+    public delegate  void efl_gfx_path_append_svg_path_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate> efl_gfx_path_append_svg_path_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate>(_Module, "efl_gfx_path_append_svg_path");
+    private static  void append_svg_path(System.IntPtr obj, System.IntPtr pd,   System.String svg_path_data)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_svg_path was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ShapeConcrete)wrapper).AppendSvgPath( svg_path_data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_append_svg_path_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  svg_path_data);
+      }
+   }
+   private static efl_gfx_path_append_svg_path_delegate efl_gfx_path_append_svg_path_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_interpolate_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_interpolate_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate> efl_gfx_path_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate>(_Module, "efl_gfx_path_interpolate");
+    private static bool interpolate(System.IntPtr obj, System.IntPtr pd,  Efl.Object from,  Efl.Object to,  double pos_map)
+   {
+      Eina.Log.Debug("function efl_gfx_path_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).Interpolate( from,  to,  pos_map);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_path_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from,  to,  pos_map);
+      }
+   }
+   private static efl_gfx_path_interpolate_delegate efl_gfx_path_interpolate_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_equal_commands_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_equal_commands_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate> efl_gfx_path_equal_commands_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate>(_Module, "efl_gfx_path_equal_commands");
+    private static bool equal_commands(System.IntPtr obj, System.IntPtr pd,  Efl.Object with)
+   {
+      Eina.Log.Debug("function efl_gfx_path_equal_commands was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ShapeConcrete)wrapper).EqualCommands( with);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_path_equal_commands_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  with);
+      }
+   }
+   private static efl_gfx_path_equal_commands_delegate efl_gfx_path_equal_commands_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reserve_delegate(System.IntPtr obj, System.IntPtr pd,    uint cmd_count,    uint pts_count);
+
+
+    public delegate  void efl_gfx_path_reserve_api_delegate(System.IntPtr obj,    uint cmd_count,    uint pts_count);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate> efl_gfx_path_reserve_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate>(_Module, "efl_gfx_path_reserve");
+    private static  void reserve(System.IntPtr obj, System.IntPtr pd,   uint cmd_count,   uint pts_count)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reserve was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ShapeConcrete)wrapper).Reserve( cmd_count,  pts_count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_reserve_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cmd_count,  pts_count);
+      }
+   }
+   private static efl_gfx_path_reserve_delegate efl_gfx_path_reserve_static_delegate;
+
+
+    private delegate  void efl_gfx_path_commit_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_commit_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate> efl_gfx_path_commit_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate>(_Module, "efl_gfx_path_commit");
+    private static  void commit(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_commit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ShapeConcrete)wrapper).Commit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_commit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_commit_delegate efl_gfx_path_commit_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_size_class.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_size_class.eo.cs
new file mode 100755 (executable)
index 0000000..45cb7e1
--- /dev/null
@@ -0,0 +1,256 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl Gfx Size Class interface</summary>
+[SizeClassNativeInherit]
+public interface SizeClass : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get width and height of size class.
+/// This function gets width and height for a size class. These values will only be valid until the size class is changed or the edje object is deleted.
+/// 1.17</summary>
+/// <param name="size_class">The name of size class</param>
+/// <param name="minw">minimum width</param>
+/// <param name="minh">minimum height</param>
+/// <param name="maxw">maximum width</param>
+/// <param name="maxh">maximum height</param>
+/// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+bool GetSizeClass(  System.String size_class,  out  int minw,  out  int minh,  out  int maxw,  out  int maxh);
+   /// <summary>Set width and height of size class.
+/// This function sets width and height for a size class. This will make all edje parts in the specified object that have the specified size class update their size with given values.
+/// 1.17</summary>
+/// <param name="size_class">The name of size class</param>
+/// <param name="minw">minimum width</param>
+/// <param name="minh">minimum height</param>
+/// <param name="maxw">maximum width</param>
+/// <param name="maxh">maximum height</param>
+/// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+bool SetSizeClass(  System.String size_class,   int minw,   int minh,   int maxw,   int maxh);
+   /// <summary>Delete the size class.
+/// This function deletes any values for the specified size class.
+/// 
+/// Deleting the size class will revert it to the values defined by <see cref="Efl.Gfx.SizeClass.GetSizeClass"/> or the size class defined in the theme file.
+/// 1.17</summary>
+/// <param name="size_class">The size class to be deleted.</param>
+/// <returns></returns>
+ void DelSizeClass(  System.String size_class);
+         }
+/// <summary>Efl Gfx Size Class interface</summary>
+sealed public class SizeClassConcrete : 
+
+SizeClass
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SizeClassConcrete))
+            return Efl.Gfx.SizeClassNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_size_class_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SizeClassConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~SizeClassConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static SizeClassConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SizeClassConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get width and height of size class.
+   /// This function gets width and height for a size class. These values will only be valid until the size class is changed or the edje object is deleted.
+   /// 1.17</summary>
+   /// <param name="size_class">The name of size class</param>
+   /// <param name="minw">minimum width</param>
+   /// <param name="minh">minimum height</param>
+   /// <param name="maxw">maximum width</param>
+   /// <param name="maxh">maximum height</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   public bool GetSizeClass(  System.String size_class,  out  int minw,  out  int minh,  out  int maxw,  out  int maxh) {
+                                                                                                 var _ret_var = Efl.Gfx.SizeClassNativeInherit.efl_gfx_size_class_get_ptr.Value.Delegate(this.NativeHandle, size_class,  out minw,  out minh,  out maxw,  out maxh);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Set width and height of size class.
+   /// This function sets width and height for a size class. This will make all edje parts in the specified object that have the specified size class update their size with given values.
+   /// 1.17</summary>
+   /// <param name="size_class">The name of size class</param>
+   /// <param name="minw">minimum width</param>
+   /// <param name="minh">minimum height</param>
+   /// <param name="maxw">maximum width</param>
+   /// <param name="maxh">maximum height</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   public bool SetSizeClass(  System.String size_class,   int minw,   int minh,   int maxw,   int maxh) {
+                                                                                                 var _ret_var = Efl.Gfx.SizeClassNativeInherit.efl_gfx_size_class_set_ptr.Value.Delegate(this.NativeHandle, size_class,  minw,  minh,  maxw,  maxh);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Delete the size class.
+   /// This function deletes any values for the specified size class.
+   /// 
+   /// Deleting the size class will revert it to the values defined by <see cref="Efl.Gfx.SizeClass.GetSizeClass"/> or the size class defined in the theme file.
+   /// 1.17</summary>
+   /// <param name="size_class">The size class to be deleted.</param>
+   /// <returns></returns>
+   public  void DelSizeClass(  System.String size_class) {
+                         Efl.Gfx.SizeClassNativeInherit.efl_gfx_size_class_del_ptr.Value.Delegate(this.NativeHandle, size_class);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+}
+public class SizeClassNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_size_class_get_static_delegate == null)
+      efl_gfx_size_class_get_static_delegate = new efl_gfx_size_class_get_delegate(size_class_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_size_class_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_size_class_get_static_delegate)});
+      if (efl_gfx_size_class_set_static_delegate == null)
+      efl_gfx_size_class_set_static_delegate = new efl_gfx_size_class_set_delegate(size_class_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_size_class_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_size_class_set_static_delegate)});
+      if (efl_gfx_size_class_del_static_delegate == null)
+      efl_gfx_size_class_del_static_delegate = new efl_gfx_size_class_del_delegate(size_class_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_size_class_del"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_size_class_del_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.SizeClassConcrete.efl_gfx_size_class_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.SizeClassConcrete.efl_gfx_size_class_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_size_class_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,   out  int minw,   out  int minh,   out  int maxw,   out  int maxh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_size_class_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,   out  int minw,   out  int minh,   out  int maxw,   out  int maxh);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_size_class_get_api_delegate> efl_gfx_size_class_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_size_class_get_api_delegate>(_Module, "efl_gfx_size_class_get");
+    private static bool size_class_get(System.IntPtr obj, System.IntPtr pd,   System.String size_class,  out  int minw,  out  int minh,  out  int maxw,  out  int maxh)
+   {
+      Eina.Log.Debug("function efl_gfx_size_class_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   minw = default( int);      minh = default( int);      maxw = default( int);      maxh = default( int);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SizeClass)wrapper).GetSizeClass( size_class,  out minw,  out minh,  out maxw,  out maxh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_size_class_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size_class,  out minw,  out minh,  out maxw,  out maxh);
+      }
+   }
+   private static efl_gfx_size_class_get_delegate efl_gfx_size_class_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_size_class_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,    int minw,    int minh,    int maxw,    int maxh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_size_class_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class,    int minw,    int minh,    int maxw,    int maxh);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_size_class_set_api_delegate> efl_gfx_size_class_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_size_class_set_api_delegate>(_Module, "efl_gfx_size_class_set");
+    private static bool size_class_set(System.IntPtr obj, System.IntPtr pd,   System.String size_class,   int minw,   int minh,   int maxw,   int maxh)
+   {
+      Eina.Log.Debug("function efl_gfx_size_class_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SizeClass)wrapper).SetSizeClass( size_class,  minw,  minh,  maxw,  maxh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_gfx_size_class_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size_class,  minw,  minh,  maxw,  maxh);
+      }
+   }
+   private static efl_gfx_size_class_set_delegate efl_gfx_size_class_set_static_delegate;
+
+
+    private delegate  void efl_gfx_size_class_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class);
+
+
+    public delegate  void efl_gfx_size_class_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String size_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_size_class_del_api_delegate> efl_gfx_size_class_del_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_size_class_del_api_delegate>(_Module, "efl_gfx_size_class_del");
+    private static  void size_class_del(System.IntPtr obj, System.IntPtr pd,   System.String size_class)
+   {
+      Eina.Log.Debug("function efl_gfx_size_class_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((SizeClass)wrapper).DelSizeClass( size_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_size_class_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size_class);
+      }
+   }
+   private static efl_gfx_size_class_del_delegate efl_gfx_size_class_del_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_stack.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_stack.eo.cs
new file mode 100755 (executable)
index 0000000..48ea62e
--- /dev/null
@@ -0,0 +1,631 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+public partial class Constants {
+   public static readonly  short StackLayerMin = -32768;
+}
+} } 
+namespace Efl { namespace Gfx { 
+public partial class Constants {
+   public static readonly  short StackLayerMax = 32767;
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics stack interface</summary>
+[StackNativeInherit]
+public interface Stack : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+/// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+/// <returns>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</returns>
+ short GetLayer();
+   /// <summary>Sets the layer of its canvas that the given object will be part of.
+/// If you don&apos;t use this function, you&apos;ll be dealing with an unique layer of objects (the default one). Additional layers are handy when you don&apos;t want a set of objects to interfere with another set with regard to stacking. Two layers are completely disjoint in that matter.
+/// 
+/// This is a low-level function, which you&apos;d be using when something should be always on top, for example.
+/// 
+/// Warning: Don&apos;t change the layer of smart objects&apos; children. Smart objects have a layer of their own, which should contain all their child objects.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/></summary>
+/// <param name="l">The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</param>
+/// <returns></returns>
+ void SetLayer(  short l);
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+Efl.Gfx.Stack GetBelow();
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+Efl.Gfx.Stack GetAbove();
+   /// <summary>Stack <c>obj</c> immediately <c>below</c>
+/// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+/// 
+/// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+/// 
+/// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>below</c> must also be a member of the same smart object.
+/// 
+/// Similarly, if <c>obj</c> is not a member of a smart object, <c>below</c> must not be either.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+/// <param name="below">The object below which to stack</param>
+/// <returns></returns>
+ void StackBelow( Efl.Gfx.Stack below);
+   /// <summary>Raise <c>obj</c> to the top of its layer.
+/// <c>obj</c> will, then, be the highest one in the layer it belongs to. Object on other layers won&apos;t get touched.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.LowerToBottom"/></summary>
+/// <returns></returns>
+ void RaiseToTop();
+   /// <summary>Stack <c>obj</c> immediately <c>above</c>
+/// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+/// 
+/// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+/// 
+/// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>above</c> must also be a member of the same smart object.
+/// 
+/// Similarly, if <c>obj</c> is not a member of a smart object, <c>above</c> must not be either.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+/// <param name="above">The object above which to stack</param>
+/// <returns></returns>
+ void StackAbove( Efl.Gfx.Stack above);
+   /// <summary>Lower <c>obj</c> to the bottom of its layer.
+/// <c>obj</c> will, then, be the lowest one in the layer it belongs to. Objects on other layers won&apos;t get touched.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.RaiseToTop"/></summary>
+/// <returns></returns>
+ void LowerToBottom();
+                           /// <summary>Object stacking was changed.</summary>
+   event EventHandler StackingChangedEvt;
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+/// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+/// <value>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</value>
+    short Layer {
+      get ;
+      set ;
+   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   Efl.Gfx.Stack Below {
+      get ;
+   }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   Efl.Gfx.Stack Above {
+      get ;
+   }
+}
+/// <summary>Efl graphics stack interface</summary>
+sealed public class StackConcrete : 
+
+Stack
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (StackConcrete))
+            return Efl.Gfx.StackNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_stack_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public StackConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~StackConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static StackConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new StackConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object StackingChangedEvtKey = new object();
+   /// <summary>Object stacking was changed.</summary>
+   public event EventHandler StackingChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_StackingChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StackingChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StackingChangedEvt.</summary>
+   public void On_StackingChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StackingChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StackingChangedEvt_delegate;
+   private void on_StackingChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StackingChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_StackingChangedEvt_delegate = new Efl.EventCb(on_StackingChangedEvt_NativeCallback);
+   }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+   /// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+   /// <returns>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</returns>
+   public  short GetLayer() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the layer of its canvas that the given object will be part of.
+   /// If you don&apos;t use this function, you&apos;ll be dealing with an unique layer of objects (the default one). Additional layers are handy when you don&apos;t want a set of objects to interfere with another set with regard to stacking. Two layers are completely disjoint in that matter.
+   /// 
+   /// This is a low-level function, which you&apos;d be using when something should be always on top, for example.
+   /// 
+   /// Warning: Don&apos;t change the layer of smart objects&apos; children. Smart objects have a layer of their own, which should contain all their child objects.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/></summary>
+   /// <param name="l">The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</param>
+   /// <returns></returns>
+   public  void SetLayer(  short l) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_set_ptr.Value.Delegate(this.NativeHandle, l);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   public Efl.Gfx.Stack GetBelow() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   public Efl.Gfx.Stack GetAbove() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stack <c>obj</c> immediately <c>below</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>below</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>below</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="below">The object below which to stack</param>
+   /// <returns></returns>
+   public  void StackBelow( Efl.Gfx.Stack below) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_ptr.Value.Delegate(this.NativeHandle, below);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Raise <c>obj</c> to the top of its layer.
+   /// <c>obj</c> will, then, be the highest one in the layer it belongs to. Object on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.LowerToBottom"/></summary>
+   /// <returns></returns>
+   public  void RaiseToTop() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_raise_to_top_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stack <c>obj</c> immediately <c>above</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>above</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>above</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="above">The object above which to stack</param>
+   /// <returns></returns>
+   public  void StackAbove( Efl.Gfx.Stack above) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_ptr.Value.Delegate(this.NativeHandle, above);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Lower <c>obj</c> to the bottom of its layer.
+   /// <c>obj</c> will, then, be the lowest one in the layer it belongs to. Objects on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.RaiseToTop"/></summary>
+   /// <returns></returns>
+   public  void LowerToBottom() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+/// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+/// <value>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</value>
+   public  short Layer {
+      get { return GetLayer(); }
+      set { SetLayer( value); }
+   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Below {
+      get { return GetBelow(); }
+   }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Above {
+      get { return GetAbove(); }
+   }
+}
+public class StackNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_stack_layer_get_static_delegate == null)
+      efl_gfx_stack_layer_get_static_delegate = new efl_gfx_stack_layer_get_delegate(layer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_get_static_delegate)});
+      if (efl_gfx_stack_layer_set_static_delegate == null)
+      efl_gfx_stack_layer_set_static_delegate = new efl_gfx_stack_layer_set_delegate(layer_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_set_static_delegate)});
+      if (efl_gfx_stack_below_get_static_delegate == null)
+      efl_gfx_stack_below_get_static_delegate = new efl_gfx_stack_below_get_delegate(below_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_get_static_delegate)});
+      if (efl_gfx_stack_above_get_static_delegate == null)
+      efl_gfx_stack_above_get_static_delegate = new efl_gfx_stack_above_get_delegate(above_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_get_static_delegate)});
+      if (efl_gfx_stack_below_static_delegate == null)
+      efl_gfx_stack_below_static_delegate = new efl_gfx_stack_below_delegate(stack_below);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_static_delegate)});
+      if (efl_gfx_stack_raise_to_top_static_delegate == null)
+      efl_gfx_stack_raise_to_top_static_delegate = new efl_gfx_stack_raise_to_top_delegate(raise_to_top);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_raise_to_top"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_raise_to_top_static_delegate)});
+      if (efl_gfx_stack_above_static_delegate == null)
+      efl_gfx_stack_above_static_delegate = new efl_gfx_stack_above_delegate(stack_above);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_static_delegate)});
+      if (efl_gfx_stack_lower_to_bottom_static_delegate == null)
+      efl_gfx_stack_lower_to_bottom_static_delegate = new efl_gfx_stack_lower_to_bottom_delegate(lower_to_bottom);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_lower_to_bottom"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_lower_to_bottom_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.StackConcrete.efl_gfx_stack_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.StackConcrete.efl_gfx_stack_interface_get();
+   }
+
+
+    private delegate  short efl_gfx_stack_layer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  short efl_gfx_stack_layer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate> efl_gfx_stack_layer_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate>(_Module, "efl_gfx_stack_layer_get");
+    private static  short layer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   short _ret_var = default( short);
+         try {
+            _ret_var = ((Stack)wrapper).GetLayer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_layer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_layer_get_delegate efl_gfx_stack_layer_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_layer_set_delegate(System.IntPtr obj, System.IntPtr pd,    short l);
+
+
+    public delegate  void efl_gfx_stack_layer_set_api_delegate(System.IntPtr obj,    short l);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate> efl_gfx_stack_layer_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate>(_Module, "efl_gfx_stack_layer_set");
+    private static  void layer_set(System.IntPtr obj, System.IntPtr pd,   short l)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Stack)wrapper).SetLayer( l);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_layer_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l);
+      }
+   }
+   private static efl_gfx_stack_layer_set_delegate efl_gfx_stack_layer_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_below_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_below_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate> efl_gfx_stack_below_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate>(_Module, "efl_gfx_stack_below_get");
+    private static Efl.Gfx.Stack below_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Stack)wrapper).GetBelow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_below_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_below_get_delegate efl_gfx_stack_below_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_above_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_above_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate> efl_gfx_stack_above_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate>(_Module, "efl_gfx_stack_above_get");
+    private static Efl.Gfx.Stack above_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Stack)wrapper).GetAbove();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_above_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_above_get_delegate efl_gfx_stack_above_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_below_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+
+
+    public delegate  void efl_gfx_stack_below_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate> efl_gfx_stack_below_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate>(_Module, "efl_gfx_stack_below");
+    private static  void stack_below(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack below)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Stack)wrapper).StackBelow( below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_below_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  below);
+      }
+   }
+   private static efl_gfx_stack_below_delegate efl_gfx_stack_below_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_raise_to_top_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_raise_to_top_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate> efl_gfx_stack_raise_to_top_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate>(_Module, "efl_gfx_stack_raise_to_top");
+    private static  void raise_to_top(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_raise_to_top was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Stack)wrapper).RaiseToTop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_raise_to_top_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_raise_to_top_delegate efl_gfx_stack_raise_to_top_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_above_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+
+
+    public delegate  void efl_gfx_stack_above_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate> efl_gfx_stack_above_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate>(_Module, "efl_gfx_stack_above");
+    private static  void stack_above(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack above)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Stack)wrapper).StackAbove( above);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_above_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  above);
+      }
+   }
+   private static efl_gfx_stack_above_delegate efl_gfx_stack_above_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_lower_to_bottom_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_lower_to_bottom_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate> efl_gfx_stack_lower_to_bottom_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate>(_Module, "efl_gfx_stack_lower_to_bottom");
+    private static  void lower_to_bottom(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_lower_to_bottom was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Stack)wrapper).LowerToBottom();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_lower_to_bottom_delegate efl_gfx_stack_lower_to_bottom_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_text_class.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_text_class.eo.cs
new file mode 100755 (executable)
index 0000000..a95f130
--- /dev/null
@@ -0,0 +1,246 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl Gfx Text Class interface</summary>
+[TextClassNativeInherit]
+public interface TextClass : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get font and font size from edje text class.
+/// This function gets the font and the font size from text class. The font string will only be valid until the text class is changed or the edje object is deleted.</summary>
+/// <param name="text_class">The text class name</param>
+/// <param name="font">Font name</param>
+/// <param name="size">Font Size</param>
+/// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+bool GetTextClass(  System.String text_class,  out  System.String font,  out Efl.Font.Size size);
+   /// <summary>Set Edje text class.
+/// This function sets the text class for the Edje.</summary>
+/// <param name="text_class">The text class name</param>
+/// <param name="font">Font name</param>
+/// <param name="size">Font Size</param>
+/// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+bool SetTextClass(  System.String text_class,   System.String font,  Efl.Font.Size size);
+   /// <summary>Delete the text class.
+/// This function deletes any values for the specified text class.
+/// 
+/// Deleting the text class will revert it to the values defined by <see cref="Efl.Gfx.TextClass.GetTextClass"/> or the text class defined in the theme file.
+/// 1.17</summary>
+/// <param name="text_class">The text class to be deleted.</param>
+/// <returns></returns>
+ void DelTextClass(  System.String text_class);
+         }
+/// <summary>Efl Gfx Text Class interface</summary>
+sealed public class TextClassConcrete : 
+
+TextClass
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextClassConcrete))
+            return Efl.Gfx.TextClassNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_text_class_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextClassConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextClassConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextClassConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextClassConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get font and font size from edje text class.
+   /// This function gets the font and the font size from text class. The font string will only be valid until the text class is changed or the edje object is deleted.</summary>
+   /// <param name="text_class">The text class name</param>
+   /// <param name="font">Font name</param>
+   /// <param name="size">Font Size</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   public bool GetTextClass(  System.String text_class,  out  System.String font,  out Efl.Font.Size size) {
+                                                             var _ret_var = Efl.Gfx.TextClassNativeInherit.efl_gfx_text_class_get_ptr.Value.Delegate(this.NativeHandle, text_class,  out font,  out size);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Set Edje text class.
+   /// This function sets the text class for the Edje.</summary>
+   /// <param name="text_class">The text class name</param>
+   /// <param name="font">Font name</param>
+   /// <param name="size">Font Size</param>
+   /// <returns><c>true</c>, on success or <c>false</c>, on error</returns>
+   public bool SetTextClass(  System.String text_class,   System.String font,  Efl.Font.Size size) {
+                                                             var _ret_var = Efl.Gfx.TextClassNativeInherit.efl_gfx_text_class_set_ptr.Value.Delegate(this.NativeHandle, text_class,  font,  size);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Delete the text class.
+   /// This function deletes any values for the specified text class.
+   /// 
+   /// Deleting the text class will revert it to the values defined by <see cref="Efl.Gfx.TextClass.GetTextClass"/> or the text class defined in the theme file.
+   /// 1.17</summary>
+   /// <param name="text_class">The text class to be deleted.</param>
+   /// <returns></returns>
+   public  void DelTextClass(  System.String text_class) {
+                         Efl.Gfx.TextClassNativeInherit.efl_gfx_text_class_del_ptr.Value.Delegate(this.NativeHandle, text_class);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+}
+public class TextClassNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_text_class_get_static_delegate == null)
+      efl_gfx_text_class_get_static_delegate = new efl_gfx_text_class_get_delegate(text_class_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_text_class_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_text_class_get_static_delegate)});
+      if (efl_gfx_text_class_set_static_delegate == null)
+      efl_gfx_text_class_set_static_delegate = new efl_gfx_text_class_set_delegate(text_class_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_text_class_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_text_class_set_static_delegate)});
+      if (efl_gfx_text_class_del_static_delegate == null)
+      efl_gfx_text_class_del_static_delegate = new efl_gfx_text_class_del_delegate(text_class_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_text_class_del"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_text_class_del_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.TextClassConcrete.efl_gfx_text_class_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.TextClassConcrete.efl_gfx_text_class_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_text_class_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_text_class_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_text_class_get_api_delegate> efl_gfx_text_class_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_text_class_get_api_delegate>(_Module, "efl_gfx_text_class_get");
+    private static bool text_class_get(System.IntPtr obj, System.IntPtr pd,   System.String text_class,  out  System.String font,  out Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_gfx_text_class_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                        System.String _out_font = default( System.String);
+      size = default(Efl.Font.Size);                           bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextClass)wrapper).GetTextClass( text_class,  out _out_font,  out size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            font = _out_font;
+                              return _ret_var;
+      } else {
+         return efl_gfx_text_class_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text_class,  out font,  out size);
+      }
+   }
+   private static efl_gfx_text_class_get_delegate efl_gfx_text_class_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_text_class_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_text_class_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_text_class_set_api_delegate> efl_gfx_text_class_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_text_class_set_api_delegate>(_Module, "efl_gfx_text_class_set");
+    private static bool text_class_set(System.IntPtr obj, System.IntPtr pd,   System.String text_class,   System.String font,  Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_gfx_text_class_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextClass)wrapper).SetTextClass( text_class,  font,  size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_text_class_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text_class,  font,  size);
+      }
+   }
+   private static efl_gfx_text_class_set_delegate efl_gfx_text_class_set_static_delegate;
+
+
+    private delegate  void efl_gfx_text_class_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class);
+
+
+    public delegate  void efl_gfx_text_class_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text_class);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_text_class_del_api_delegate> efl_gfx_text_class_del_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_text_class_del_api_delegate>(_Module, "efl_gfx_text_class_del");
+    private static  void text_class_del(System.IntPtr obj, System.IntPtr pd,   System.String text_class)
+   {
+      Eina.Log.Debug("function efl_gfx_text_class_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextClass)wrapper).DelTextClass( text_class);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_text_class_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text_class);
+      }
+   }
+   private static efl_gfx_text_class_del_delegate efl_gfx_text_class_del_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_gfx_types.eot.cs
new file mode 100755 (executable)
index 0000000..19fae87
--- /dev/null
@@ -0,0 +1,784 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Font { 
+public struct Size {
+   private  int payload;
+   public static implicit operator Size( int x)
+   {
+      return new Size{payload=x};
+   }
+   public static implicit operator  int(Size x)
+   {
+      return x.payload;
+   }
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Graphics colorspace type</summary>
+public enum Colorspace
+{
+/// <summary>ARGB 32 bits per pixel, high-byte is Alpha, accessed one 32bit word at a time.</summary>
+Argb8888 = 0,
+/// <summary>YCbCr 4:2:2 Planar, ITU.BT-601 specifications. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb, then Cr rows.</summary>
+Ycbcr422p601Pl = 1,
+/// <summary>YCbCr 4:2:2 Planar, ITU.BT-709 specifications. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb, then Cr rows.</summary>
+Ycbcr422p709Pl = 2,
+/// <summary>16bit rgb565 + Alpha plane at end - 5 bits of the 8 being used per alpha byte.</summary>
+Rgb565A5p = 3,
+/// <summary>8-bit gray image, or alpha only.</summary>
+Gry8 = 4,
+/// <summary>YCbCr 4:2:2, ITU.BT-601 specifications. The data pointed to is just an array of row pointer, pointing to line of Y,Cb,Y,Cr bytes.</summary>
+Ycbcr422601Pl = 5,
+/// <summary>YCbCr 4:2:0, ITU.BT-601 specifications. The data pointed to is just an array of row pointer, pointing to the Y rows, then the Cb,Cr rows..</summary>
+Ycbcr420nv12601Pl = 6,
+/// <summary>YCbCr 4:2:0, ITU.BT-601 specifications. The data pointed to is just an array of tiled row pointer, pointing to the Y rows, then the Cb,Cr rows..</summary>
+Ycbcr420tm12601Pl = 7,
+/// <summary>AY 8bits Alpha and 8bits Grey, accessed 1 16bits at a time.</summary>
+Agry88 = 8,
+/// <summary>OpenGL ETC1 encoding of RGB texture (4 bit per pixel)
+/// 1.10.</summary>
+Etc1 = 9,
+/// <summary>OpenGL GL_COMPRESSED_RGB8_ETC2 texture compression format (4 bit per pixel)
+/// 1.10.</summary>
+Rgb8Etc2 = 10,
+/// <summary>OpenGL GL_COMPRESSED_RGBA8_ETC2_EAC texture compression format, supports alpha (8 bit per pixel)
+/// 1.10.</summary>
+Rgba8Etc2Eac = 11,
+/// <summary>ETC1 with alpha support using two planes: ETC1 RGB and ETC1 grey for alpha
+/// 1.11.</summary>
+Etc1Alpha = 12,
+/// <summary>OpenGL COMPRESSED_RGB_S3TC_DXT1_EXT format with RGB only.
+/// 1.11.</summary>
+RgbS3tcDxt1 = 13,
+/// <summary>OpenGL COMPRESSED_RGBA_S3TC_DXT1_EXT format with RGBA punchthrough.
+/// 1.11.</summary>
+RgbaS3tcDxt1 = 14,
+/// <summary>DirectDraw DXT2 format with premultiplied RGBA. Not supported by OpenGL itself.
+/// 1.11.</summary>
+RgbaS3tcDxt2 = 15,
+/// <summary>OpenGL COMPRESSED_RGBA_S3TC_DXT3_EXT format with RGBA.
+/// 1.11.</summary>
+RgbaS3tcDxt3 = 16,
+/// <summary>DirectDraw DXT4 format with premultiplied RGBA. Not supported by OpenGL itself.
+/// 1.11.</summary>
+RgbaS3tcDxt4 = 17,
+/// <summary>OpenGL COMPRESSED_RGBA_S3TC_DXT5_EXT format with RGBA.
+/// 1.11.</summary>
+RgbaS3tcDxt5 = 18,
+/// <summary></summary>
+Palette = 19,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Graphics render operation mode</summary>
+public enum RenderOp
+{
+/// <summary>Alpha blending onto destination (default); d = d*(1-sa) + s.</summary>
+Blend = 0,
+/// <summary>Copy source to destination; d = s.</summary>
+Copy = 1,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 2,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>These values determine how the points are interpreted in a stream of points.
+/// 1.14</summary>
+public enum PathCommandType
+{
+/// <summary>The end of stream , no more points to process.</summary>
+End = 0,
+/// <summary>The next point is the start point of a sub path.</summary>
+MoveTo = 1,
+/// <summary>The next point is used to draw a line from current point.</summary>
+LineTo = 2,
+/// <summary>The next three point is used to draw a cubic bezier curve from current point.</summary>
+CubicTo = 3,
+/// <summary>Close the current subpath by drawing a line between current point and the first point of current subpath.</summary>
+Close = 4,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 5,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>These values determine how the end of opened sub-paths are rendered in a stroke. <see cref="Efl.Gfx.Shape.SetStrokeCap"/>
+/// 1.14</summary>
+public enum Cap
+{
+/// <summary>The end of lines is rendered as a full stop on the last point itself.</summary>
+Butt = 0,
+/// <summary>The end of lines is rendered as a half-circle around the last point.</summary>
+Round = 1,
+/// <summary>The end of lines is rendered as a square around the last point.</summary>
+Square = 2,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 3,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>These values determine how two joining lines are rendered in a stroker. <see cref="Efl.Gfx.Shape.SetStrokeJoin"/>
+/// 1.14</summary>
+public enum Join
+{
+/// <summary>Used to render rounded line joins. Circular arcs are used to join two lines smoothly.</summary>
+Miter = 0,
+/// <summary>Used to render beveled line joins. The outer corner of the joined lines is filled by enclosing the triangular region of the corner with a straight line between the outer corners of each stroke.</summary>
+Round = 1,
+/// <summary>Used to render mitered line joins. The intersection of the strokes is clipped at a line perpendicular to the bisector of the angle between the strokes, at the distance from the intersection of the segments equal to the product of the miter limit value and the border radius.  This prevents long spikes being created.</summary>
+Bevel = 2,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 3,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Specifies how the area outside the gradient area should be filled. <see cref="Efl.Gfx.Gradient.SetSpread"/>
+/// 1.14</summary>
+public enum GradientSpread
+{
+/// <summary>The area is filled with the closest stop color. This is the default.</summary>
+Pad = 0,
+/// <summary>The gradient is reflected outside the gradient area.</summary>
+Reflect = 1,
+/// <summary>The gradient is repeated outside the gradient area.</summary>
+Repeat = 2,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 3,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Type defining how an image content get filled.
+/// 1.14</summary>
+public enum FillRule
+{
+/// <summary>Draw a horizontal line from the point to a location outside the shape. Determine whether the direction of the line at each intersection point is up or down. The winding number is determined by summing the direction of each intersection. If the number is non zero, the point is inside the shape. This mode is the default</summary>
+Winding = 0,
+/// <summary>Draw a horizontal line from the point to a location outside the shape, and count the number of intersections. If the number of intersections is an odd number, the point is inside the shape.</summary>
+OddEven = 1,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>How an image&apos;s center region (the complement to the border region) should be rendered by EFL</summary>
+public enum BorderFillMode
+{
+/// <summary>Image&apos;s center region is <c>not</c> to be rendered</summary>
+None = 0,
+/// <summary>Image&apos;s center region is to be <c>blended</c> with objects underneath it, if it has transparency. This is the default behavior for image objects</summary>
+Default = 1,
+/// <summary>Image&apos;s center region is to be made solid, even if it has transparency on it</summary>
+Solid = 2,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>What property got changed for this object
+/// 1.18</summary>
+public enum ChangeFlag
+{
+/// <summary>No change</summary>
+None = 0,
+/// <summary>matrix got changed</summary>
+Matrix = 1,
+/// <summary>path got changes</summary>
+Path = 2,
+/// <summary>coloring or fill information changed, not geometry</summary>
+Fill = 4,
+/// <summary>all properties got changed</summary>
+All = 65535,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Aspect types/policies for scaling size hints.
+/// See also <see cref="Efl.Gfx.Hint.GetHintAspect"/>.</summary>
+public enum HintAspect
+{
+/// <summary>No preference on either direction of the container for aspect ratio control.</summary>
+None = 0,
+/// <summary>Same effect as disabling aspect ratio preference</summary>
+Neither = 1,
+/// <summary>Use all horizontal container space to place an object, using the given aspect.</summary>
+Horizontal = 2,
+/// <summary>Use all vertical container space to place an object, using the given aspect.</summary>
+Vertical = 3,
+/// <summary>Use all horizontal and vertical container spaces to place an object (never growing it out of those bounds), using the given aspect.</summary>
+Both = 4,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Image or Edje load error type</summary>
+public enum ImageLoadError
+{
+/// <summary>No error on load</summary>
+None = 0,
+/// <summary>A non-specific error occurred</summary>
+Generic = 1,
+/// <summary>File (or file path) does not exist</summary>
+DoesNotExist = 2,
+/// <summary>Permission denied to an existing file (or path)</summary>
+PermissionDenied = 3,
+/// <summary>Allocation of resources failure prevented load</summary>
+ResourceAllocationFailed = 4,
+/// <summary>File corrupt (but was detected as a known format)</summary>
+CorruptFile = 5,
+/// <summary>File is not a known format</summary>
+UnknownFormat = 6,
+/// <summary>Reading operation has been cancelled during decoding</summary>
+Cancelled = 7,
+/// <summary>(Edje only) The file pointed to is incompatible, i.e., it doesn&apos;t match the library&apos;s current version&apos;s format.</summary>
+IncompatibleFile = 8,
+/// <summary>(Edje only) The group/collection set to load from was not found in the file</summary>
+UnknownCollection = 9,
+/// <summary>(Edje only) The group/collection set to load from had recursive references on its components</summary>
+RecursiveReference = 10,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Efl Gfx Color Class layer enum</summary>
+public enum ColorClassLayer
+{
+/// <summary>Default color</summary>
+Normal = 0,
+/// <summary>Outline color</summary>
+Outline = 1,
+/// <summary>Shadow color</summary>
+Shadow = 2,
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Type describing dash. <see cref="Efl.Gfx.Shape.GetStrokeDash"/>
+/// 1.14</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Dash
+{
+   /// <summary>Dash drawing length.</summary>
+   public double Length;
+   /// <summary>Distance between two dashes.</summary>
+   public double Gap;
+   ///<summary>Constructor for Dash.</summary>
+   public Dash(
+      double Length=default(double),
+      double Gap=default(double)   )
+   {
+      this.Length = Length;
+      this.Gap = Gap;
+   }
+public static implicit operator Dash(IntPtr ptr)
+   {
+      var tmp = (Dash_StructInternal)Marshal.PtrToStructure(ptr, typeof(Dash_StructInternal));
+      return Dash_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Dash.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Dash_StructInternal
+{
+   
+   public double Length;
+   
+   public double Gap;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Dash(Dash_StructInternal struct_)
+   {
+      return Dash_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Dash_StructInternal(Dash struct_)
+   {
+      return Dash_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Dash</summary>
+public static class Dash_StructConversion
+{
+   internal static Dash_StructInternal ToInternal(Dash _external_struct)
+   {
+      var _internal_struct = new Dash_StructInternal();
+
+      _internal_struct.Length = _external_struct.Length;
+      _internal_struct.Gap = _external_struct.Gap;
+
+      return _internal_struct;
+   }
+
+   internal static Dash ToManaged(Dash_StructInternal _internal_struct)
+   {
+      var _external_struct = new Dash();
+
+      _external_struct.Length = _internal_struct.Length;
+      _external_struct.Gap = _internal_struct.Gap;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Type defining gradient stops. Describes the location and color of a transition point in a gradient.
+/// 1.14</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct GradientStop
+{
+   /// <summary>The location of the gradient stop within the gradient vector</summary>
+   public double Offset;
+   /// <summary>The component R color of the gradient stop</summary>
+   public  int R;
+   /// <summary>The component G color of the gradient stop</summary>
+   public  int G;
+   /// <summary>The component B color of the gradient stop</summary>
+   public  int B;
+   /// <summary>The component A color of the gradient stop</summary>
+   public  int A;
+   ///<summary>Constructor for GradientStop.</summary>
+   public GradientStop(
+      double Offset=default(double),
+       int R=default( int),
+       int G=default( int),
+       int B=default( int),
+       int A=default( int)   )
+   {
+      this.Offset = Offset;
+      this.R = R;
+      this.G = G;
+      this.B = B;
+      this.A = A;
+   }
+public static implicit operator GradientStop(IntPtr ptr)
+   {
+      var tmp = (GradientStop_StructInternal)Marshal.PtrToStructure(ptr, typeof(GradientStop_StructInternal));
+      return GradientStop_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct GradientStop.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct GradientStop_StructInternal
+{
+   
+   public double Offset;
+   
+   public  int R;
+   
+   public  int G;
+   
+   public  int B;
+   
+   public  int A;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator GradientStop(GradientStop_StructInternal struct_)
+   {
+      return GradientStop_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator GradientStop_StructInternal(GradientStop struct_)
+   {
+      return GradientStop_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct GradientStop</summary>
+public static class GradientStop_StructConversion
+{
+   internal static GradientStop_StructInternal ToInternal(GradientStop _external_struct)
+   {
+      var _internal_struct = new GradientStop_StructInternal();
+
+      _internal_struct.Offset = _external_struct.Offset;
+      _internal_struct.R = _external_struct.R;
+      _internal_struct.G = _external_struct.G;
+      _internal_struct.B = _external_struct.B;
+      _internal_struct.A = _external_struct.A;
+
+      return _internal_struct;
+   }
+
+   internal static GradientStop ToManaged(GradientStop_StructInternal _internal_struct)
+   {
+      var _external_struct = new GradientStop();
+
+      _external_struct.Offset = _internal_struct.Offset;
+      _external_struct.R = _internal_struct.R;
+      _external_struct.G = _internal_struct.G;
+      _external_struct.B = _internal_struct.B;
+      _external_struct.A = _internal_struct.A;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Internal structure for <see cref="Efl.Gfx.Stroke"/>.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StrokeColor
+{
+   /// <summary>The component R color of the stroke</summary>
+   public  int R;
+   /// <summary>The component G color of the stroke</summary>
+   public  int G;
+   /// <summary>The component B color of the stroke</summary>
+   public  int B;
+   /// <summary>The component A color of the stroke</summary>
+   public  int A;
+   ///<summary>Constructor for StrokeColor.</summary>
+   public StrokeColor(
+       int R=default( int),
+       int G=default( int),
+       int B=default( int),
+       int A=default( int)   )
+   {
+      this.R = R;
+      this.G = G;
+      this.B = B;
+      this.A = A;
+   }
+public static implicit operator StrokeColor(IntPtr ptr)
+   {
+      var tmp = (StrokeColor_StructInternal)Marshal.PtrToStructure(ptr, typeof(StrokeColor_StructInternal));
+      return StrokeColor_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct StrokeColor.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StrokeColor_StructInternal
+{
+   
+   public  int R;
+   
+   public  int G;
+   
+   public  int B;
+   
+   public  int A;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator StrokeColor(StrokeColor_StructInternal struct_)
+   {
+      return StrokeColor_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator StrokeColor_StructInternal(StrokeColor struct_)
+   {
+      return StrokeColor_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct StrokeColor</summary>
+public static class StrokeColor_StructConversion
+{
+   internal static StrokeColor_StructInternal ToInternal(StrokeColor _external_struct)
+   {
+      var _internal_struct = new StrokeColor_StructInternal();
+
+      _internal_struct.R = _external_struct.R;
+      _internal_struct.G = _external_struct.G;
+      _internal_struct.B = _external_struct.B;
+      _internal_struct.A = _external_struct.A;
+
+      return _internal_struct;
+   }
+
+   internal static StrokeColor ToManaged(StrokeColor_StructInternal _internal_struct)
+   {
+      var _external_struct = new StrokeColor();
+
+      _external_struct.R = _internal_struct.R;
+      _external_struct.G = _internal_struct.G;
+      _external_struct.B = _internal_struct.B;
+      _external_struct.A = _internal_struct.A;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Type defining stroke information. Describes the properties to define the path stroke.
+/// 1.14</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Stroke
+{
+   /// <summary>Stroke scale</summary>
+   public double Scale;
+   /// <summary>Stroke width</summary>
+   public double Width;
+   /// <summary>Stroke centered</summary>
+   public double Centered;
+   /// <summary>Stroke color</summary>
+   public Efl.Gfx.StrokeColor Color;
+   /// <summary>Stroke dash</summary>
+   public Efl.Gfx.Dash Dash;
+   /// <summary>Stroke dash length</summary>
+   public  uint Dash_length;
+   /// <summary>Stroke cap</summary>
+   public Efl.Gfx.Cap Cap;
+   /// <summary>Stroke join</summary>
+   public Efl.Gfx.Join Join;
+   ///<summary>Constructor for Stroke.</summary>
+   public Stroke(
+      double Scale=default(double),
+      double Width=default(double),
+      double Centered=default(double),
+      Efl.Gfx.StrokeColor Color=default(Efl.Gfx.StrokeColor),
+      Efl.Gfx.Dash Dash=default(Efl.Gfx.Dash),
+       uint Dash_length=default( uint),
+      Efl.Gfx.Cap Cap=default(Efl.Gfx.Cap),
+      Efl.Gfx.Join Join=default(Efl.Gfx.Join)   )
+   {
+      this.Scale = Scale;
+      this.Width = Width;
+      this.Centered = Centered;
+      this.Color = Color;
+      this.Dash = Dash;
+      this.Dash_length = Dash_length;
+      this.Cap = Cap;
+      this.Join = Join;
+   }
+public static implicit operator Stroke(IntPtr ptr)
+   {
+      var tmp = (Stroke_StructInternal)Marshal.PtrToStructure(ptr, typeof(Stroke_StructInternal));
+      return Stroke_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Stroke.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Stroke_StructInternal
+{
+   
+   public double Scale;
+   
+   public double Width;
+   
+   public double Centered;
+   
+   public Efl.Gfx.StrokeColor_StructInternal Color;
+   
+   public Efl.Gfx.Dash_StructInternal Dash;
+   
+   public  uint Dash_length;
+   
+   public Efl.Gfx.Cap Cap;
+   
+   public Efl.Gfx.Join Join;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Stroke(Stroke_StructInternal struct_)
+   {
+      return Stroke_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Stroke_StructInternal(Stroke struct_)
+   {
+      return Stroke_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Stroke</summary>
+public static class Stroke_StructConversion
+{
+   internal static Stroke_StructInternal ToInternal(Stroke _external_struct)
+   {
+      var _internal_struct = new Stroke_StructInternal();
+
+      _internal_struct.Scale = _external_struct.Scale;
+      _internal_struct.Width = _external_struct.Width;
+      _internal_struct.Centered = _external_struct.Centered;
+      _internal_struct.Color = Efl.Gfx.StrokeColor_StructConversion.ToInternal(_external_struct.Color);
+      _internal_struct.Dash = Efl.Gfx.Dash_StructConversion.ToInternal(_external_struct.Dash);
+      _internal_struct.Dash_length = _external_struct.Dash_length;
+      _internal_struct.Cap = _external_struct.Cap;
+      _internal_struct.Join = _external_struct.Join;
+
+      return _internal_struct;
+   }
+
+   internal static Stroke ToManaged(Stroke_StructInternal _internal_struct)
+   {
+      var _external_struct = new Stroke();
+
+      _external_struct.Scale = _internal_struct.Scale;
+      _external_struct.Width = _internal_struct.Width;
+      _external_struct.Centered = _internal_struct.Centered;
+      _external_struct.Color = Efl.Gfx.StrokeColor_StructConversion.ToManaged(_internal_struct.Color);
+      _external_struct.Dash = Efl.Gfx.Dash_StructConversion.ToManaged(_internal_struct.Dash);
+      _external_struct.Dash_length = _internal_struct.Dash_length;
+      _external_struct.Cap = _internal_struct.Cap;
+      _external_struct.Join = _internal_struct.Join;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary>Public shape</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ShapePublic
+{
+   /// <summary>Internal representation as stroke</summary>
+   public Efl.Gfx.Stroke Stroke;
+   ///<summary>Constructor for ShapePublic.</summary>
+   public ShapePublic(
+      Efl.Gfx.Stroke Stroke=default(Efl.Gfx.Stroke)   )
+   {
+      this.Stroke = Stroke;
+   }
+public static implicit operator ShapePublic(IntPtr ptr)
+   {
+      var tmp = (ShapePublic_StructInternal)Marshal.PtrToStructure(ptr, typeof(ShapePublic_StructInternal));
+      return ShapePublic_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ShapePublic.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ShapePublic_StructInternal
+{
+   
+   public Efl.Gfx.Stroke_StructInternal Stroke;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ShapePublic(ShapePublic_StructInternal struct_)
+   {
+      return ShapePublic_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ShapePublic_StructInternal(ShapePublic struct_)
+   {
+      return ShapePublic_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ShapePublic</summary>
+public static class ShapePublic_StructConversion
+{
+   internal static ShapePublic_StructInternal ToInternal(ShapePublic _external_struct)
+   {
+      var _internal_struct = new ShapePublic_StructInternal();
+
+      _internal_struct.Stroke = Efl.Gfx.Stroke_StructConversion.ToInternal(_external_struct.Stroke);
+
+      return _internal_struct;
+   }
+
+   internal static ShapePublic ToManaged(ShapePublic_StructInternal _internal_struct)
+   {
+      var _external_struct = new ShapePublic();
+
+      _external_struct.Stroke = Efl.Gfx.Stroke_StructConversion.ToManaged(_internal_struct.Stroke);
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Gfx { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct PathChangeEvent
+{
+   /// <summary>Indicates what changed.</summary>
+   public Efl.Gfx.ChangeFlag What;
+   ///<summary>Constructor for PathChangeEvent.</summary>
+   public PathChangeEvent(
+      Efl.Gfx.ChangeFlag What=default(Efl.Gfx.ChangeFlag)   )
+   {
+      this.What = What;
+   }
+public static implicit operator PathChangeEvent(IntPtr ptr)
+   {
+      var tmp = (PathChangeEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(PathChangeEvent_StructInternal));
+      return PathChangeEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct PathChangeEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct PathChangeEvent_StructInternal
+{
+   
+   public Efl.Gfx.ChangeFlag What;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator PathChangeEvent(PathChangeEvent_StructInternal struct_)
+   {
+      return PathChangeEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator PathChangeEvent_StructInternal(PathChangeEvent struct_)
+   {
+      return PathChangeEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct PathChangeEvent</summary>
+public static class PathChangeEvent_StructConversion
+{
+   internal static PathChangeEvent_StructInternal ToInternal(PathChangeEvent _external_struct)
+   {
+      var _internal_struct = new PathChangeEvent_StructInternal();
+
+      _internal_struct.What = _external_struct.What;
+
+      return _internal_struct;
+   }
+
+   internal static PathChangeEvent ToManaged(PathChangeEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new PathChangeEvent();
+
+      _external_struct.What = _internal_struct.What;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Gfx { namespace Event { 
+/// <summary>Data sent along a &quot;render,post&quot; event, after a frame has been rendered.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct RenderPost
+{
+   /// <summary>A list of rectangles that were updated in the canvas.</summary>
+   public Eina.List<Eina.Rect> Updated_area;
+   ///<summary>Constructor for RenderPost.</summary>
+   public RenderPost(
+      Eina.List<Eina.Rect> Updated_area=default(Eina.List<Eina.Rect>)   )
+   {
+      this.Updated_area = Updated_area;
+   }
+public static implicit operator RenderPost(IntPtr ptr)
+   {
+      var tmp = (RenderPost_StructInternal)Marshal.PtrToStructure(ptr, typeof(RenderPost_StructInternal));
+      return RenderPost_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct RenderPost.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct RenderPost_StructInternal
+{
+   
+   public  System.IntPtr Updated_area;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator RenderPost(RenderPost_StructInternal struct_)
+   {
+      return RenderPost_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator RenderPost_StructInternal(RenderPost struct_)
+   {
+      return RenderPost_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct RenderPost</summary>
+public static class RenderPost_StructConversion
+{
+   internal static RenderPost_StructInternal ToInternal(RenderPost _external_struct)
+   {
+      var _internal_struct = new RenderPost_StructInternal();
+
+      _internal_struct.Updated_area = _external_struct.Updated_area.Handle;
+
+      return _internal_struct;
+   }
+
+   internal static RenderPost ToManaged(RenderPost_StructInternal _internal_struct)
+   {
+      var _external_struct = new RenderPost();
+
+      _external_struct.Updated_area = new Eina.List<Eina.Rect>(_internal_struct.Updated_area, false, false);
+
+      return _external_struct;
+   }
+
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_gfx_view.eo.cs b/internals/src/EflSharp/EflSharp/efl_gfx_view.eo.cs
new file mode 100755 (executable)
index 0000000..7d3e6bc
--- /dev/null
@@ -0,0 +1,250 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Gfx { 
+/// <summary>Efl graphics view interface</summary>
+[ViewNativeInherit]
+public interface View : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The dimensions of this object&apos;s viewport.
+/// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+/// 
+/// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+/// 
+/// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+/// 
+/// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+/// 
+/// Refer to each implementing class specific documentation for more details.</summary>
+/// <returns>Size of the view.</returns>
+Eina.Size2D GetViewSize();
+   /// <summary>The dimensions of this object&apos;s viewport.
+/// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+/// 
+/// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+/// 
+/// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+/// 
+/// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+/// 
+/// Refer to each implementing class specific documentation for more details.</summary>
+/// <param name="size">Size of the view.</param>
+/// <returns></returns>
+ void SetViewSize( Eina.Size2D size);
+         /// <summary>The dimensions of this object&apos;s viewport.
+/// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+/// 
+/// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+/// 
+/// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+/// 
+/// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+/// 
+/// Refer to each implementing class specific documentation for more details.</summary>
+/// <value>Size of the view.</value>
+   Eina.Size2D ViewSize {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl graphics view interface</summary>
+sealed public class ViewConcrete : 
+
+View
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ViewConcrete))
+            return Efl.Gfx.ViewNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_gfx_view_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ViewConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ViewConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ViewConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ViewConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The dimensions of this object&apos;s viewport.
+   /// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+   /// 
+   /// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+   /// 
+   /// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+   /// 
+   /// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+   /// 
+   /// Refer to each implementing class specific documentation for more details.</summary>
+   /// <returns>Size of the view.</returns>
+   public Eina.Size2D GetViewSize() {
+       var _ret_var = Efl.Gfx.ViewNativeInherit.efl_gfx_view_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The dimensions of this object&apos;s viewport.
+   /// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+   /// 
+   /// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+   /// 
+   /// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+   /// 
+   /// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+   /// 
+   /// Refer to each implementing class specific documentation for more details.</summary>
+   /// <param name="size">Size of the view.</param>
+   /// <returns></returns>
+   public  void SetViewSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.ViewNativeInherit.efl_gfx_view_size_set_ptr.Value.Delegate(this.NativeHandle, _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The dimensions of this object&apos;s viewport.
+/// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+/// 
+/// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+/// 
+/// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+/// 
+/// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+/// 
+/// Refer to each implementing class specific documentation for more details.</summary>
+/// <value>Size of the view.</value>
+   public Eina.Size2D ViewSize {
+      get { return GetViewSize(); }
+      set { SetViewSize( value); }
+   }
+}
+public class ViewNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_view_size_get_static_delegate == null)
+      efl_gfx_view_size_get_static_delegate = new efl_gfx_view_size_get_delegate(view_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_view_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_view_size_get_static_delegate)});
+      if (efl_gfx_view_size_set_static_delegate == null)
+      efl_gfx_view_size_set_static_delegate = new efl_gfx_view_size_set_delegate(view_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_view_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_view_size_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Gfx.ViewConcrete.efl_gfx_view_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Gfx.ViewConcrete.efl_gfx_view_interface_get();
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_view_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_view_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_view_size_get_api_delegate> efl_gfx_view_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_view_size_get_api_delegate>(_Module, "efl_gfx_view_size_get");
+    private static Eina.Size2D_StructInternal view_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_view_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((View)wrapper).GetViewSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_view_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_view_size_get_delegate efl_gfx_view_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_view_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_view_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_view_size_set_api_delegate> efl_gfx_view_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_view_size_set_api_delegate>(_Module, "efl_gfx_view_size_set");
+    private static  void view_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_view_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((View)wrapper).SetViewSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_view_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_view_size_set_delegate efl_gfx_view_size_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_device.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_device.eo.cs
new file mode 100755 (executable)
index 0000000..30bcf90
--- /dev/null
@@ -0,0 +1,523 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>Represents a pointing device such as a touch finger, pen or mouse.
+/// 1.18</summary>
+[DeviceNativeInherit]
+public class Device : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Input.DeviceNativeInherit nativeInherit = new Efl.Input.DeviceNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Device))
+            return Efl.Input.DeviceNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_input_device_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Device(Efl.Object parent= null
+         ) :
+      base(efl_input_device_class_get(), typeof(Device), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Device(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Device(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Device static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Device(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Device type property
+   /// 1.18</summary>
+   /// <returns>Input device class
+   /// 1.18</returns>
+   virtual public Efl.Input.DeviceType GetDeviceType() {
+       var _ret_var = Efl.Input.DeviceNativeInherit.efl_input_device_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Device type property
+   /// 1.18</summary>
+   /// <param name="klass">Input device class
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetDeviceType( Efl.Input.DeviceType klass) {
+                         Efl.Input.DeviceNativeInherit.efl_input_device_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), klass);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Device source property
+   /// 1.18</summary>
+   /// <returns>Input device
+   /// 1.18</returns>
+   virtual public Efl.Input.Device GetSource() {
+       var _ret_var = Efl.Input.DeviceNativeInherit.efl_input_device_source_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Device source property
+   /// 1.18</summary>
+   /// <param name="src">Input device
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetSource( Efl.Input.Device src) {
+                         Efl.Input.DeviceNativeInherit.efl_input_device_source_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), src);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the <see cref="Efl.Input.Device"/> that represents a seat.
+   /// This method will find the seat the device belongs to.
+   /// 
+   /// For this, it walk through device&apos;s parents looking for a device with <see cref="Efl.Input.DeviceType.Seat"/>. It may be the device itself.
+   /// 
+   /// In case no seat is found, <c>null</c> is returned.
+   /// 1.18</summary>
+   /// <returns>The seat this device belongs to.
+   /// 1.18</returns>
+   virtual public Efl.Input.Device GetSeat() {
+       var _ret_var = Efl.Input.DeviceNativeInherit.efl_input_device_seat_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Seat id number
+   /// 1.20</summary>
+   /// <returns>The id of the seat
+   /// 1.18</returns>
+   virtual public  uint GetSeatId() {
+       var _ret_var = Efl.Input.DeviceNativeInherit.efl_input_device_seat_id_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Seat id number
+   /// 1.20</summary>
+   /// <param name="id">The id of the seat
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetSeatId(  uint id) {
+                         Efl.Input.DeviceNativeInherit.efl_input_device_seat_id_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Lists the children attached to this device.
+   /// This is only meaningful with seat devices, as they are groups of real input devices.
+   /// 1.20</summary>
+   /// <returns>List of device children
+   /// 1.18</returns>
+   virtual public Eina.Iterator<Efl.Input.Device> ChildrenIterate() {
+       var _ret_var = Efl.Input.DeviceNativeInherit.efl_input_device_children_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Input.Device>(_ret_var, true, false);
+ }
+   /// <summary>Determine whether a device has pointer capabilities.
+   /// Returns 1 for Mouse, Touch, Pen, Pointer, and Wand type devices.
+   /// 
+   /// If a seat device is passed returns the number of pointer devices in the seat.
+   /// 1.20</summary>
+   /// <returns>Pointer caps
+   /// 1.18</returns>
+   virtual public  uint HasPointerCaps() {
+       var _ret_var = Efl.Input.DeviceNativeInherit.efl_input_device_has_pointer_caps_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Device type property
+/// 1.18</summary>
+/// <value>Input device class
+/// 1.18</value>
+   public Efl.Input.DeviceType DeviceType {
+      get { return GetDeviceType(); }
+      set { SetDeviceType( value); }
+   }
+   /// <summary>Device source property
+/// 1.18</summary>
+/// <value>Input device
+/// 1.18</value>
+   public Efl.Input.Device Source {
+      get { return GetSource(); }
+      set { SetSource( value); }
+   }
+   /// <summary>Get the <see cref="Efl.Input.Device"/> that represents a seat.
+/// This method will find the seat the device belongs to.
+/// 
+/// For this, it walk through device&apos;s parents looking for a device with <see cref="Efl.Input.DeviceType.Seat"/>. It may be the device itself.
+/// 
+/// In case no seat is found, <c>null</c> is returned.
+/// 1.18</summary>
+/// <value>The seat this device belongs to.
+/// 1.18</value>
+   public Efl.Input.Device Seat {
+      get { return GetSeat(); }
+   }
+   /// <summary>Seat id number
+/// 1.20</summary>
+/// <value>The id of the seat
+/// 1.18</value>
+   public  uint SeatId {
+      get { return GetSeatId(); }
+      set { SetSeatId( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Device.efl_input_device_class_get();
+   }
+}
+public class DeviceNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_device_type_get_static_delegate == null)
+      efl_input_device_type_get_static_delegate = new efl_input_device_type_get_delegate(device_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_type_get_static_delegate)});
+      if (efl_input_device_type_set_static_delegate == null)
+      efl_input_device_type_set_static_delegate = new efl_input_device_type_set_delegate(device_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_type_set_static_delegate)});
+      if (efl_input_device_source_get_static_delegate == null)
+      efl_input_device_source_get_static_delegate = new efl_input_device_source_get_delegate(source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_source_get_static_delegate)});
+      if (efl_input_device_source_set_static_delegate == null)
+      efl_input_device_source_set_static_delegate = new efl_input_device_source_set_delegate(source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_source_set_static_delegate)});
+      if (efl_input_device_seat_get_static_delegate == null)
+      efl_input_device_seat_get_static_delegate = new efl_input_device_seat_get_delegate(seat_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_seat_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_seat_get_static_delegate)});
+      if (efl_input_device_seat_id_get_static_delegate == null)
+      efl_input_device_seat_id_get_static_delegate = new efl_input_device_seat_id_get_delegate(seat_id_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_seat_id_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_seat_id_get_static_delegate)});
+      if (efl_input_device_seat_id_set_static_delegate == null)
+      efl_input_device_seat_id_set_static_delegate = new efl_input_device_seat_id_set_delegate(seat_id_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_seat_id_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_seat_id_set_static_delegate)});
+      if (efl_input_device_children_iterate_static_delegate == null)
+      efl_input_device_children_iterate_static_delegate = new efl_input_device_children_iterate_delegate(children_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_children_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_children_iterate_static_delegate)});
+      if (efl_input_device_has_pointer_caps_static_delegate == null)
+      efl_input_device_has_pointer_caps_static_delegate = new efl_input_device_has_pointer_caps_delegate(has_pointer_caps);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_has_pointer_caps"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_has_pointer_caps_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.Device.efl_input_device_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Device.efl_input_device_class_get();
+   }
+
+
+    private delegate Efl.Input.DeviceType efl_input_device_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Input.DeviceType efl_input_device_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_type_get_api_delegate> efl_input_device_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_type_get_api_delegate>(_Module, "efl_input_device_type_get");
+    private static Efl.Input.DeviceType device_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.DeviceType _ret_var = default(Efl.Input.DeviceType);
+         try {
+            _ret_var = ((Device)wrapper).GetDeviceType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_type_get_delegate efl_input_device_type_get_static_delegate;
+
+
+    private delegate  void efl_input_device_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.DeviceType klass);
+
+
+    public delegate  void efl_input_device_type_set_api_delegate(System.IntPtr obj,   Efl.Input.DeviceType klass);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_type_set_api_delegate> efl_input_device_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_type_set_api_delegate>(_Module, "efl_input_device_type_set");
+    private static  void device_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.DeviceType klass)
+   {
+      Eina.Log.Debug("function efl_input_device_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Device)wrapper).SetDeviceType( klass);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  klass);
+      }
+   }
+   private static efl_input_device_type_set_delegate efl_input_device_type_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_input_device_source_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_input_device_source_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_source_get_api_delegate> efl_input_device_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_source_get_api_delegate>(_Module, "efl_input_device_source_get");
+    private static Efl.Input.Device source_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Device)wrapper).GetSource();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_source_get_delegate efl_input_device_source_get_static_delegate;
+
+
+    private delegate  void efl_input_device_source_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device src);
+
+
+    public delegate  void efl_input_device_source_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device src);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_source_set_api_delegate> efl_input_device_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_source_set_api_delegate>(_Module, "efl_input_device_source_set");
+    private static  void source_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device src)
+   {
+      Eina.Log.Debug("function efl_input_device_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Device)wrapper).SetSource( src);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  src);
+      }
+   }
+   private static efl_input_device_source_set_delegate efl_input_device_source_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_input_device_seat_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_input_device_seat_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_seat_get_api_delegate> efl_input_device_seat_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_seat_get_api_delegate>(_Module, "efl_input_device_seat_get");
+    private static Efl.Input.Device seat_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_seat_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Device)wrapper).GetSeat();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_seat_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_seat_get_delegate efl_input_device_seat_get_static_delegate;
+
+
+    private delegate  uint efl_input_device_seat_id_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_input_device_seat_id_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_seat_id_get_api_delegate> efl_input_device_seat_id_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_seat_id_get_api_delegate>(_Module, "efl_input_device_seat_id_get");
+    private static  uint seat_id_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_seat_id_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Device)wrapper).GetSeatId();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_seat_id_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_seat_id_get_delegate efl_input_device_seat_id_get_static_delegate;
+
+
+    private delegate  void efl_input_device_seat_id_set_delegate(System.IntPtr obj, System.IntPtr pd,    uint id);
+
+
+    public delegate  void efl_input_device_seat_id_set_api_delegate(System.IntPtr obj,    uint id);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_seat_id_set_api_delegate> efl_input_device_seat_id_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_seat_id_set_api_delegate>(_Module, "efl_input_device_seat_id_set");
+    private static  void seat_id_set(System.IntPtr obj, System.IntPtr pd,   uint id)
+   {
+      Eina.Log.Debug("function efl_input_device_seat_id_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Device)wrapper).SetSeatId( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_seat_id_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_input_device_seat_id_set_delegate efl_input_device_seat_id_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_input_device_children_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_input_device_children_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_children_iterate_api_delegate> efl_input_device_children_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_children_iterate_api_delegate>(_Module, "efl_input_device_children_iterate");
+    private static  System.IntPtr children_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_children_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Input.Device> _ret_var = default(Eina.Iterator<Efl.Input.Device>);
+         try {
+            _ret_var = ((Device)wrapper).ChildrenIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_input_device_children_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_children_iterate_delegate efl_input_device_children_iterate_static_delegate;
+
+
+    private delegate  uint efl_input_device_has_pointer_caps_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_input_device_has_pointer_caps_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_has_pointer_caps_api_delegate> efl_input_device_has_pointer_caps_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_has_pointer_caps_api_delegate>(_Module, "efl_input_device_has_pointer_caps");
+    private static  uint has_pointer_caps(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_has_pointer_caps was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Device)wrapper).HasPointerCaps();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_has_pointer_caps_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_has_pointer_caps_delegate efl_input_device_has_pointer_caps_static_delegate;
+}
+} } 
+namespace Efl { namespace Input { 
+/// <summary>General type of input device.
+/// Legacy support since 1.8 as <c>Evas_Device_Class</c>.</summary>
+public enum DeviceType
+{
+/// <summary>Not a device.</summary>
+None = 0,
+/// <summary>The user/seat (the user themselves).</summary>
+Seat = 1,
+/// <summary>A regular keyboard, numberpad or attached buttons.</summary>
+Keyboard = 2,
+/// <summary>A mouse, trackball or touchpad relative motion device.</summary>
+Mouse = 3,
+/// <summary>A touchscreen with fingers or stylus.</summary>
+Touch = 4,
+/// <summary>A special pen device.</summary>
+Pen = 5,
+/// <summary>A laser pointer, wii-style or &quot;Minority Report&quot; pointing device.</summary>
+Wand = 6,
+/// <summary>A gamepad controller or joystick.</summary>
+Gamepad = 7,
+}
+} } 
+namespace Efl { namespace Input { 
+/// <summary>General type of input device.
+/// Legacy support since 1.8 as <c>Evas_Device_Subclass</c>.</summary>
+public enum DeviceSubtype
+{
+/// <summary>Not a device.</summary>
+None = 0,
+/// <summary>The normal flat of your finger.</summary>
+Finger = 1,
+/// <summary>A fingernai.</summary>
+Fingernail = 2,
+/// <summary>A Knuckle.</summary>
+Knuckle = 3,
+/// <summary>The palm of a users hand.</summary>
+Palm = 4,
+/// <summary>The side of your hand.</summary>
+HandSize = 5,
+/// <summary>The flat of your hand.</summary>
+HandFlat = 6,
+/// <summary>The tip of a pen.</summary>
+PenTip = 7,
+/// <summary>A trackpad style mouse.</summary>
+Trackpad = 8,
+/// <summary>A trackpoint style mouse.</summary>
+Trackpoint = 9,
+/// <summary>A trackball style mouse.</summary>
+Trackball = 10,
+/// <summary>A remote controller.</summary>
+Remocon = 11,
+/// <summary>A virtual keyboard.</summary>
+VirtualKeyboard = 12,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_event.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_event.eo.cs
new file mode 100755 (executable)
index 0000000..6932726
--- /dev/null
@@ -0,0 +1,745 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>Represents a generic event data.
+/// Note: Most Efl Events do not carry Efl Objects, rather simple data structures. This class is intended to carry more complex event data, such as pointer events.
+/// 1.19</summary>
+[EventNativeInherit]
+public interface Event : 
+   Efl.Duplicate ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The time at which an event was generated.
+/// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+/// 1.19</summary>
+/// <returns>Time in milliseconds when the event happened.
+/// 1.19</returns>
+double GetTimestamp();
+   /// <summary>Call this when generating events manually.
+/// 1.19</summary>
+/// <param name="ms">Time in milliseconds when the event happened.
+/// 1.19</param>
+/// <returns></returns>
+ void SetTimestamp( double ms);
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <returns>Input device origin
+/// 1.19</returns>
+Efl.Input.Device GetDevice();
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <param name="dev">Input device origin
+/// 1.19</param>
+/// <returns></returns>
+ void SetDevice( Efl.Input.Device dev);
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <returns>Input event flags
+/// 1.19</returns>
+Efl.Input.Flags GetEventFlags();
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <param name="flags">Input event flags
+/// 1.19</param>
+/// <returns></returns>
+ void SetEventFlags( Efl.Input.Flags flags);
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <returns><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetProcessed();
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <param name="val"><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</param>
+/// <returns></returns>
+ void SetProcessed( bool val);
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <returns><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetScrolling();
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <param name="val"><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</param>
+/// <returns></returns>
+ void SetScrolling( bool val);
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+/// 1.19</summary>
+/// <returns><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetFake();
+   /// <summary>Resets the internal data to 0 or default values.
+/// 1.19</summary>
+/// <returns></returns>
+ void Reset();
+                                       /// <summary>The time at which an event was generated.
+/// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+/// 1.19</summary>
+/// <value>Time in milliseconds when the event happened.
+/// 1.19</value>
+   double Timestamp {
+      get ;
+      set ;
+   }
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <value>Input device origin
+/// 1.19</value>
+   Efl.Input.Device Device {
+      get ;
+      set ;
+   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <value>Input event flags
+/// 1.19</value>
+   Efl.Input.Flags EventFlags {
+      get ;
+      set ;
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <value><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</value>
+   bool Processed {
+      get ;
+      set ;
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <value><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</value>
+   bool Scrolling {
+      get ;
+      set ;
+   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+/// 1.19</summary>
+/// <value><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+/// 1.19</value>
+   bool Fake {
+      get ;
+   }
+}
+/// <summary>Represents a generic event data.
+/// Note: Most Efl Events do not carry Efl Objects, rather simple data structures. This class is intended to carry more complex event data, such as pointer events.
+/// 1.19</summary>
+sealed public class EventConcrete : 
+
+Event
+   , Efl.Duplicate
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (EventConcrete))
+            return Efl.Input.EventNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_input_event_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public EventConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~EventConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static EventConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new EventConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The time at which an event was generated.
+   /// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+   /// 1.19</summary>
+   /// <returns>Time in milliseconds when the event happened.
+   /// 1.19</returns>
+   public double GetTimestamp() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_timestamp_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Call this when generating events manually.
+   /// 1.19</summary>
+   /// <param name="ms">Time in milliseconds when the event happened.
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetTimestamp( double ms) {
+                         Efl.Input.EventNativeInherit.efl_input_timestamp_set_ptr.Value.Delegate(this.NativeHandle, ms);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <returns>Input device origin
+   /// 1.19</returns>
+   public Efl.Input.Device GetDevice() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_device_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <param name="dev">Input device origin
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetDevice( Efl.Input.Device dev) {
+                         Efl.Input.EventNativeInherit.efl_input_device_set_ptr.Value.Delegate(this.NativeHandle, dev);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <returns>Input event flags
+   /// 1.19</returns>
+   public Efl.Input.Flags GetEventFlags() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_event_flags_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <param name="flags">Input event flags
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetEventFlags( Efl.Input.Flags flags) {
+                         Efl.Input.EventNativeInherit.efl_input_event_flags_set_ptr.Value.Delegate(this.NativeHandle, flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetProcessed() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_processed_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetProcessed( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_processed_set_ptr.Value.Delegate(this.NativeHandle, val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetScrolling() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_scrolling_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetScrolling( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_scrolling_set_ptr.Value.Delegate(this.NativeHandle, val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetFake() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_fake_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets the internal data to 0 or default values.
+   /// 1.19</summary>
+   /// <returns></returns>
+   public  void Reset() {
+       Efl.Input.EventNativeInherit.efl_input_reset_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The time at which an event was generated.
+/// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+/// 1.19</summary>
+/// <value>Time in milliseconds when the event happened.
+/// 1.19</value>
+   public double Timestamp {
+      get { return GetTimestamp(); }
+      set { SetTimestamp( value); }
+   }
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <value>Input device origin
+/// 1.19</value>
+   public Efl.Input.Device Device {
+      get { return GetDevice(); }
+      set { SetDevice( value); }
+   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <value>Input event flags
+/// 1.19</value>
+   public Efl.Input.Flags EventFlags {
+      get { return GetEventFlags(); }
+      set { SetEventFlags( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <value><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Processed {
+      get { return GetProcessed(); }
+      set { SetProcessed( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <value><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Scrolling {
+      get { return GetScrolling(); }
+      set { SetScrolling( value); }
+   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+/// 1.19</summary>
+/// <value><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Fake {
+      get { return GetFake(); }
+   }
+}
+public class EventNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_timestamp_get_static_delegate == null)
+      efl_input_timestamp_get_static_delegate = new efl_input_timestamp_get_delegate(timestamp_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_get_static_delegate)});
+      if (efl_input_timestamp_set_static_delegate == null)
+      efl_input_timestamp_set_static_delegate = new efl_input_timestamp_set_delegate(timestamp_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_set_static_delegate)});
+      if (efl_input_device_get_static_delegate == null)
+      efl_input_device_get_static_delegate = new efl_input_device_get_delegate(device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_get_static_delegate)});
+      if (efl_input_device_set_static_delegate == null)
+      efl_input_device_set_static_delegate = new efl_input_device_set_delegate(device_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_set_static_delegate)});
+      if (efl_input_event_flags_get_static_delegate == null)
+      efl_input_event_flags_get_static_delegate = new efl_input_event_flags_get_delegate(event_flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_get_static_delegate)});
+      if (efl_input_event_flags_set_static_delegate == null)
+      efl_input_event_flags_set_static_delegate = new efl_input_event_flags_set_delegate(event_flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_set_static_delegate)});
+      if (efl_input_processed_get_static_delegate == null)
+      efl_input_processed_get_static_delegate = new efl_input_processed_get_delegate(processed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_get_static_delegate)});
+      if (efl_input_processed_set_static_delegate == null)
+      efl_input_processed_set_static_delegate = new efl_input_processed_set_delegate(processed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_set_static_delegate)});
+      if (efl_input_scrolling_get_static_delegate == null)
+      efl_input_scrolling_get_static_delegate = new efl_input_scrolling_get_delegate(scrolling_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_get_static_delegate)});
+      if (efl_input_scrolling_set_static_delegate == null)
+      efl_input_scrolling_set_static_delegate = new efl_input_scrolling_set_delegate(scrolling_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_set_static_delegate)});
+      if (efl_input_fake_get_static_delegate == null)
+      efl_input_fake_get_static_delegate = new efl_input_fake_get_delegate(fake_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_fake_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_fake_get_static_delegate)});
+      if (efl_input_reset_static_delegate == null)
+      efl_input_reset_static_delegate = new efl_input_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_input_reset_static_delegate)});
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.EventConcrete.efl_input_event_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.EventConcrete.efl_input_event_mixin_get();
+   }
+
+
+    private delegate double efl_input_timestamp_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_input_timestamp_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate> efl_input_timestamp_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate>(_Module, "efl_input_timestamp_get");
+    private static double timestamp_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((EventConcrete)wrapper).GetTimestamp();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_timestamp_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_timestamp_get_delegate efl_input_timestamp_get_static_delegate;
+
+
+    private delegate  void efl_input_timestamp_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ms);
+
+
+    public delegate  void efl_input_timestamp_set_api_delegate(System.IntPtr obj,   double ms);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate> efl_input_timestamp_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate>(_Module, "efl_input_timestamp_set");
+    private static  void timestamp_set(System.IntPtr obj, System.IntPtr pd,  double ms)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((EventConcrete)wrapper).SetTimestamp( ms);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_timestamp_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ms);
+      }
+   }
+   private static efl_input_timestamp_set_delegate efl_input_timestamp_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_input_device_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_input_device_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate> efl_input_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate>(_Module, "efl_input_device_get");
+    private static Efl.Input.Device device_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((EventConcrete)wrapper).GetDevice();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_get_delegate efl_input_device_get_static_delegate;
+
+
+    private delegate  void efl_input_device_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+
+
+    public delegate  void efl_input_device_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate> efl_input_device_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate>(_Module, "efl_input_device_set");
+    private static  void device_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device dev)
+   {
+      Eina.Log.Debug("function efl_input_device_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((EventConcrete)wrapper).SetDevice( dev);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dev);
+      }
+   }
+   private static efl_input_device_set_delegate efl_input_device_set_static_delegate;
+
+
+    private delegate Efl.Input.Flags efl_input_event_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Input.Flags efl_input_event_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate> efl_input_event_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate>(_Module, "efl_input_event_flags_get");
+    private static Efl.Input.Flags event_flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Flags _ret_var = default(Efl.Input.Flags);
+         try {
+            _ret_var = ((EventConcrete)wrapper).GetEventFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_event_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_event_flags_get_delegate efl_input_event_flags_get_static_delegate;
+
+
+    private delegate  void efl_input_event_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Flags flags);
+
+
+    public delegate  void efl_input_event_flags_set_api_delegate(System.IntPtr obj,   Efl.Input.Flags flags);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate> efl_input_event_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate>(_Module, "efl_input_event_flags_set");
+    private static  void event_flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Flags flags)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((EventConcrete)wrapper).SetEventFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_event_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_input_event_flags_set_delegate efl_input_event_flags_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_processed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_processed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate> efl_input_processed_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate>(_Module, "efl_input_processed_get");
+    private static bool processed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_processed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((EventConcrete)wrapper).GetProcessed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_processed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_processed_get_delegate efl_input_processed_get_static_delegate;
+
+
+    private delegate  void efl_input_processed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_processed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate> efl_input_processed_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate>(_Module, "efl_input_processed_set");
+    private static  void processed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_processed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((EventConcrete)wrapper).SetProcessed( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_processed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_processed_set_delegate efl_input_processed_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_scrolling_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_scrolling_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate> efl_input_scrolling_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate>(_Module, "efl_input_scrolling_get");
+    private static bool scrolling_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((EventConcrete)wrapper).GetScrolling();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_scrolling_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_scrolling_get_delegate efl_input_scrolling_get_static_delegate;
+
+
+    private delegate  void efl_input_scrolling_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_scrolling_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate> efl_input_scrolling_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate>(_Module, "efl_input_scrolling_set");
+    private static  void scrolling_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((EventConcrete)wrapper).SetScrolling( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_scrolling_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_scrolling_set_delegate efl_input_scrolling_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_fake_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_fake_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate> efl_input_fake_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate>(_Module, "efl_input_fake_get");
+    private static bool fake_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_fake_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((EventConcrete)wrapper).GetFake();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_fake_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_fake_get_delegate efl_input_fake_get_static_delegate;
+
+
+    private delegate  void efl_input_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_input_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate> efl_input_reset_ptr = new Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate>(_Module, "efl_input_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((EventConcrete)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_input_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_reset_delegate efl_input_reset_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((EventConcrete)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_focus.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_focus.eo.cs
new file mode 100755 (executable)
index 0000000..d21a5b3
--- /dev/null
@@ -0,0 +1,694 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>Represents a focus event.
+/// 1.19</summary>
+[FocusNativeInherit]
+public class Focus : Efl.Object, Efl.Eo.IWrapper,Efl.Duplicate,Efl.Input.Event
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Input.FocusNativeInherit nativeInherit = new Efl.Input.FocusNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Focus))
+            return Efl.Input.FocusNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_input_focus_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Focus(Efl.Object parent= null
+         ) :
+      base(efl_input_focus_class_get(), typeof(Focus), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Focus(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Focus(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Focus static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Focus(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The focused object
+   /// 1.19</summary>
+   /// <returns>The focused object. In case this represents a canvas focus the object will be <c>null</c>
+   /// 1.19</returns>
+   virtual public Efl.Object GetObject() {
+       var _ret_var = Efl.Input.FocusNativeInherit.efl_input_focus_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The focused object
+   /// 1.19</summary>
+   /// <param name="kw_object">The focused object. In case this represents a canvas focus the object will be <c>null</c>
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetObject( Efl.Object kw_object) {
+                         Efl.Input.FocusNativeInherit.efl_input_focus_object_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_object);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   virtual public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The time at which an event was generated.
+   /// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+   /// 1.19</summary>
+   /// <returns>Time in milliseconds when the event happened.
+   /// 1.19</returns>
+   virtual public double GetTimestamp() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_timestamp_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Call this when generating events manually.
+   /// 1.19</summary>
+   /// <param name="ms">Time in milliseconds when the event happened.
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetTimestamp( double ms) {
+                         Efl.Input.EventNativeInherit.efl_input_timestamp_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ms);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <returns>Input device origin
+   /// 1.19</returns>
+   virtual public Efl.Input.Device GetDevice() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_device_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <param name="dev">Input device origin
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetDevice( Efl.Input.Device dev) {
+                         Efl.Input.EventNativeInherit.efl_input_device_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dev);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <returns>Input event flags
+   /// 1.19</returns>
+   virtual public Efl.Input.Flags GetEventFlags() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_event_flags_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <param name="flags">Input event flags
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEventFlags( Efl.Input.Flags flags) {
+                         Efl.Input.EventNativeInherit.efl_input_event_flags_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetProcessed() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_processed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetProcessed( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_processed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetScrolling() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_scrolling_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetScrolling( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_scrolling_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetFake() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_fake_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets the internal data to 0 or default values.
+   /// 1.19</summary>
+   /// <returns></returns>
+   virtual public  void Reset() {
+       Efl.Input.EventNativeInherit.efl_input_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The focused object
+/// 1.19</summary>
+/// <value>The focused object. In case this represents a canvas focus the object will be <c>null</c>
+/// 1.19</value>
+   public Efl.Object Object {
+      get { return GetObject(); }
+      set { SetObject( value); }
+   }
+   /// <summary>The time at which an event was generated.
+/// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+/// 1.19</summary>
+/// <value>Time in milliseconds when the event happened.
+/// 1.19</value>
+   public double Timestamp {
+      get { return GetTimestamp(); }
+      set { SetTimestamp( value); }
+   }
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <value>Input device origin
+/// 1.19</value>
+   public Efl.Input.Device Device {
+      get { return GetDevice(); }
+      set { SetDevice( value); }
+   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <value>Input event flags
+/// 1.19</value>
+   public Efl.Input.Flags EventFlags {
+      get { return GetEventFlags(); }
+      set { SetEventFlags( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <value><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Processed {
+      get { return GetProcessed(); }
+      set { SetProcessed( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <value><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Scrolling {
+      get { return GetScrolling(); }
+      set { SetScrolling( value); }
+   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+/// 1.19</summary>
+/// <value><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Fake {
+      get { return GetFake(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Focus.efl_input_focus_class_get();
+   }
+}
+public class FocusNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_focus_object_get_static_delegate == null)
+      efl_input_focus_object_get_static_delegate = new efl_input_focus_object_get_delegate(object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_focus_object_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_focus_object_get_static_delegate)});
+      if (efl_input_focus_object_set_static_delegate == null)
+      efl_input_focus_object_set_static_delegate = new efl_input_focus_object_set_delegate(object_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_focus_object_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_focus_object_set_static_delegate)});
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      if (efl_input_timestamp_get_static_delegate == null)
+      efl_input_timestamp_get_static_delegate = new efl_input_timestamp_get_delegate(timestamp_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_get_static_delegate)});
+      if (efl_input_timestamp_set_static_delegate == null)
+      efl_input_timestamp_set_static_delegate = new efl_input_timestamp_set_delegate(timestamp_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_set_static_delegate)});
+      if (efl_input_device_get_static_delegate == null)
+      efl_input_device_get_static_delegate = new efl_input_device_get_delegate(device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_get_static_delegate)});
+      if (efl_input_device_set_static_delegate == null)
+      efl_input_device_set_static_delegate = new efl_input_device_set_delegate(device_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_set_static_delegate)});
+      if (efl_input_event_flags_get_static_delegate == null)
+      efl_input_event_flags_get_static_delegate = new efl_input_event_flags_get_delegate(event_flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_get_static_delegate)});
+      if (efl_input_event_flags_set_static_delegate == null)
+      efl_input_event_flags_set_static_delegate = new efl_input_event_flags_set_delegate(event_flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_set_static_delegate)});
+      if (efl_input_processed_get_static_delegate == null)
+      efl_input_processed_get_static_delegate = new efl_input_processed_get_delegate(processed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_get_static_delegate)});
+      if (efl_input_processed_set_static_delegate == null)
+      efl_input_processed_set_static_delegate = new efl_input_processed_set_delegate(processed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_set_static_delegate)});
+      if (efl_input_scrolling_get_static_delegate == null)
+      efl_input_scrolling_get_static_delegate = new efl_input_scrolling_get_delegate(scrolling_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_get_static_delegate)});
+      if (efl_input_scrolling_set_static_delegate == null)
+      efl_input_scrolling_set_static_delegate = new efl_input_scrolling_set_delegate(scrolling_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_set_static_delegate)});
+      if (efl_input_fake_get_static_delegate == null)
+      efl_input_fake_get_static_delegate = new efl_input_fake_get_delegate(fake_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_fake_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_fake_get_static_delegate)});
+      if (efl_input_reset_static_delegate == null)
+      efl_input_reset_static_delegate = new efl_input_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_input_reset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.Focus.efl_input_focus_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Focus.efl_input_focus_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_input_focus_object_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_input_focus_object_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_focus_object_get_api_delegate> efl_input_focus_object_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_focus_object_get_api_delegate>(_Module, "efl_input_focus_object_get");
+    private static Efl.Object object_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_focus_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Focus)wrapper).GetObject();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_focus_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_focus_object_get_delegate efl_input_focus_object_get_static_delegate;
+
+
+    private delegate  void efl_input_focus_object_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object kw_object);
+
+
+    public delegate  void efl_input_focus_object_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object kw_object);
+    public static Efl.Eo.FunctionWrapper<efl_input_focus_object_set_api_delegate> efl_input_focus_object_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_focus_object_set_api_delegate>(_Module, "efl_input_focus_object_set");
+    private static  void object_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object kw_object)
+   {
+      Eina.Log.Debug("function efl_input_focus_object_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Focus)wrapper).SetObject( kw_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_focus_object_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_object);
+      }
+   }
+   private static efl_input_focus_object_set_delegate efl_input_focus_object_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((Focus)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+
+
+    private delegate double efl_input_timestamp_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_input_timestamp_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate> efl_input_timestamp_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate>(_Module, "efl_input_timestamp_get");
+    private static double timestamp_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Focus)wrapper).GetTimestamp();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_timestamp_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_timestamp_get_delegate efl_input_timestamp_get_static_delegate;
+
+
+    private delegate  void efl_input_timestamp_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ms);
+
+
+    public delegate  void efl_input_timestamp_set_api_delegate(System.IntPtr obj,   double ms);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate> efl_input_timestamp_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate>(_Module, "efl_input_timestamp_set");
+    private static  void timestamp_set(System.IntPtr obj, System.IntPtr pd,  double ms)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Focus)wrapper).SetTimestamp( ms);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_timestamp_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ms);
+      }
+   }
+   private static efl_input_timestamp_set_delegate efl_input_timestamp_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_input_device_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_input_device_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate> efl_input_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate>(_Module, "efl_input_device_get");
+    private static Efl.Input.Device device_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Focus)wrapper).GetDevice();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_get_delegate efl_input_device_get_static_delegate;
+
+
+    private delegate  void efl_input_device_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+
+
+    public delegate  void efl_input_device_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate> efl_input_device_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate>(_Module, "efl_input_device_set");
+    private static  void device_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device dev)
+   {
+      Eina.Log.Debug("function efl_input_device_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Focus)wrapper).SetDevice( dev);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dev);
+      }
+   }
+   private static efl_input_device_set_delegate efl_input_device_set_static_delegate;
+
+
+    private delegate Efl.Input.Flags efl_input_event_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Input.Flags efl_input_event_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate> efl_input_event_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate>(_Module, "efl_input_event_flags_get");
+    private static Efl.Input.Flags event_flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Flags _ret_var = default(Efl.Input.Flags);
+         try {
+            _ret_var = ((Focus)wrapper).GetEventFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_event_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_event_flags_get_delegate efl_input_event_flags_get_static_delegate;
+
+
+    private delegate  void efl_input_event_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Flags flags);
+
+
+    public delegate  void efl_input_event_flags_set_api_delegate(System.IntPtr obj,   Efl.Input.Flags flags);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate> efl_input_event_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate>(_Module, "efl_input_event_flags_set");
+    private static  void event_flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Flags flags)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Focus)wrapper).SetEventFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_event_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_input_event_flags_set_delegate efl_input_event_flags_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_processed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_processed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate> efl_input_processed_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate>(_Module, "efl_input_processed_get");
+    private static bool processed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_processed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Focus)wrapper).GetProcessed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_processed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_processed_get_delegate efl_input_processed_get_static_delegate;
+
+
+    private delegate  void efl_input_processed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_processed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate> efl_input_processed_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate>(_Module, "efl_input_processed_set");
+    private static  void processed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_processed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Focus)wrapper).SetProcessed( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_processed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_processed_set_delegate efl_input_processed_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_scrolling_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_scrolling_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate> efl_input_scrolling_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate>(_Module, "efl_input_scrolling_get");
+    private static bool scrolling_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Focus)wrapper).GetScrolling();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_scrolling_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_scrolling_get_delegate efl_input_scrolling_get_static_delegate;
+
+
+    private delegate  void efl_input_scrolling_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_scrolling_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate> efl_input_scrolling_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate>(_Module, "efl_input_scrolling_set");
+    private static  void scrolling_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Focus)wrapper).SetScrolling( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_scrolling_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_scrolling_set_delegate efl_input_scrolling_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_fake_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_fake_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate> efl_input_fake_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate>(_Module, "efl_input_fake_get");
+    private static bool fake_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_fake_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Focus)wrapper).GetFake();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_fake_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_fake_get_delegate efl_input_fake_get_static_delegate;
+
+
+    private delegate  void efl_input_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_input_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate> efl_input_reset_ptr = new Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate>(_Module, "efl_input_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Focus)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_input_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_reset_delegate efl_input_reset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_hold.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_hold.eo.cs
new file mode 100755 (executable)
index 0000000..49ae15d
--- /dev/null
@@ -0,0 +1,681 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>Event data sent when inputs are put on hold or resumed.</summary>
+[HoldNativeInherit]
+public class Hold : Efl.Object, Efl.Eo.IWrapper,Efl.Duplicate,Efl.Input.Event
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Input.HoldNativeInherit nativeInherit = new Efl.Input.HoldNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Hold))
+            return Efl.Input.HoldNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_input_hold_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Hold(Efl.Object parent= null
+         ) :
+      base(efl_input_hold_class_get(), typeof(Hold), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Hold(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Hold(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Hold static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Hold(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Property to show if inputs are now on hold.</summary>
+   /// <returns><c>true</c> if inputs are on hold, <c>false</c> otherwise</returns>
+   virtual public bool GetHold() {
+       var _ret_var = Efl.Input.HoldNativeInherit.efl_input_hold_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Property to show if inputs are now on hold.</summary>
+   /// <param name="val"><c>true</c> if inputs are on hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetHold( bool val) {
+                         Efl.Input.HoldNativeInherit.efl_input_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   virtual public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The time at which an event was generated.
+   /// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+   /// 1.19</summary>
+   /// <returns>Time in milliseconds when the event happened.
+   /// 1.19</returns>
+   virtual public double GetTimestamp() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_timestamp_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Call this when generating events manually.
+   /// 1.19</summary>
+   /// <param name="ms">Time in milliseconds when the event happened.
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetTimestamp( double ms) {
+                         Efl.Input.EventNativeInherit.efl_input_timestamp_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ms);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <returns>Input device origin
+   /// 1.19</returns>
+   virtual public Efl.Input.Device GetDevice() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_device_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <param name="dev">Input device origin
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetDevice( Efl.Input.Device dev) {
+                         Efl.Input.EventNativeInherit.efl_input_device_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dev);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <returns>Input event flags
+   /// 1.19</returns>
+   virtual public Efl.Input.Flags GetEventFlags() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_event_flags_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <param name="flags">Input event flags
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEventFlags( Efl.Input.Flags flags) {
+                         Efl.Input.EventNativeInherit.efl_input_event_flags_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetProcessed() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_processed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetProcessed( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_processed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetScrolling() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_scrolling_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetScrolling( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_scrolling_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetFake() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_fake_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets the internal data to 0 or default values.
+   /// 1.19</summary>
+   /// <returns></returns>
+   virtual public  void Reset() {
+       Efl.Input.EventNativeInherit.efl_input_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The time at which an event was generated.
+/// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+/// 1.19</summary>
+/// <value>Time in milliseconds when the event happened.
+/// 1.19</value>
+   public double Timestamp {
+      get { return GetTimestamp(); }
+      set { SetTimestamp( value); }
+   }
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <value>Input device origin
+/// 1.19</value>
+   public Efl.Input.Device Device {
+      get { return GetDevice(); }
+      set { SetDevice( value); }
+   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <value>Input event flags
+/// 1.19</value>
+   public Efl.Input.Flags EventFlags {
+      get { return GetEventFlags(); }
+      set { SetEventFlags( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <value><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Processed {
+      get { return GetProcessed(); }
+      set { SetProcessed( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <value><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Scrolling {
+      get { return GetScrolling(); }
+      set { SetScrolling( value); }
+   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+/// 1.19</summary>
+/// <value><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Fake {
+      get { return GetFake(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Hold.efl_input_hold_class_get();
+   }
+}
+public class HoldNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_hold_get_static_delegate == null)
+      efl_input_hold_get_static_delegate = new efl_input_hold_get_delegate(hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_hold_get_static_delegate)});
+      if (efl_input_hold_set_static_delegate == null)
+      efl_input_hold_set_static_delegate = new efl_input_hold_set_delegate(hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_hold_set_static_delegate)});
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      if (efl_input_timestamp_get_static_delegate == null)
+      efl_input_timestamp_get_static_delegate = new efl_input_timestamp_get_delegate(timestamp_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_get_static_delegate)});
+      if (efl_input_timestamp_set_static_delegate == null)
+      efl_input_timestamp_set_static_delegate = new efl_input_timestamp_set_delegate(timestamp_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_set_static_delegate)});
+      if (efl_input_device_get_static_delegate == null)
+      efl_input_device_get_static_delegate = new efl_input_device_get_delegate(device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_get_static_delegate)});
+      if (efl_input_device_set_static_delegate == null)
+      efl_input_device_set_static_delegate = new efl_input_device_set_delegate(device_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_set_static_delegate)});
+      if (efl_input_event_flags_get_static_delegate == null)
+      efl_input_event_flags_get_static_delegate = new efl_input_event_flags_get_delegate(event_flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_get_static_delegate)});
+      if (efl_input_event_flags_set_static_delegate == null)
+      efl_input_event_flags_set_static_delegate = new efl_input_event_flags_set_delegate(event_flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_set_static_delegate)});
+      if (efl_input_processed_get_static_delegate == null)
+      efl_input_processed_get_static_delegate = new efl_input_processed_get_delegate(processed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_get_static_delegate)});
+      if (efl_input_processed_set_static_delegate == null)
+      efl_input_processed_set_static_delegate = new efl_input_processed_set_delegate(processed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_set_static_delegate)});
+      if (efl_input_scrolling_get_static_delegate == null)
+      efl_input_scrolling_get_static_delegate = new efl_input_scrolling_get_delegate(scrolling_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_get_static_delegate)});
+      if (efl_input_scrolling_set_static_delegate == null)
+      efl_input_scrolling_set_static_delegate = new efl_input_scrolling_set_delegate(scrolling_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_set_static_delegate)});
+      if (efl_input_fake_get_static_delegate == null)
+      efl_input_fake_get_static_delegate = new efl_input_fake_get_delegate(fake_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_fake_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_fake_get_static_delegate)});
+      if (efl_input_reset_static_delegate == null)
+      efl_input_reset_static_delegate = new efl_input_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_input_reset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.Hold.efl_input_hold_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Hold.efl_input_hold_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_hold_get_api_delegate> efl_input_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_hold_get_api_delegate>(_Module, "efl_input_hold_get");
+    private static bool hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Hold)wrapper).GetHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_hold_get_delegate efl_input_hold_get_static_delegate;
+
+
+    private delegate  void efl_input_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_hold_set_api_delegate> efl_input_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_hold_set_api_delegate>(_Module, "efl_input_hold_set");
+    private static  void hold_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Hold)wrapper).SetHold( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_hold_set_delegate efl_input_hold_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((Hold)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+
+
+    private delegate double efl_input_timestamp_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_input_timestamp_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate> efl_input_timestamp_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate>(_Module, "efl_input_timestamp_get");
+    private static double timestamp_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Hold)wrapper).GetTimestamp();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_timestamp_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_timestamp_get_delegate efl_input_timestamp_get_static_delegate;
+
+
+    private delegate  void efl_input_timestamp_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ms);
+
+
+    public delegate  void efl_input_timestamp_set_api_delegate(System.IntPtr obj,   double ms);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate> efl_input_timestamp_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate>(_Module, "efl_input_timestamp_set");
+    private static  void timestamp_set(System.IntPtr obj, System.IntPtr pd,  double ms)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Hold)wrapper).SetTimestamp( ms);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_timestamp_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ms);
+      }
+   }
+   private static efl_input_timestamp_set_delegate efl_input_timestamp_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_input_device_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_input_device_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate> efl_input_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate>(_Module, "efl_input_device_get");
+    private static Efl.Input.Device device_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Hold)wrapper).GetDevice();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_get_delegate efl_input_device_get_static_delegate;
+
+
+    private delegate  void efl_input_device_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+
+
+    public delegate  void efl_input_device_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate> efl_input_device_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate>(_Module, "efl_input_device_set");
+    private static  void device_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device dev)
+   {
+      Eina.Log.Debug("function efl_input_device_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Hold)wrapper).SetDevice( dev);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dev);
+      }
+   }
+   private static efl_input_device_set_delegate efl_input_device_set_static_delegate;
+
+
+    private delegate Efl.Input.Flags efl_input_event_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Input.Flags efl_input_event_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate> efl_input_event_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate>(_Module, "efl_input_event_flags_get");
+    private static Efl.Input.Flags event_flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Flags _ret_var = default(Efl.Input.Flags);
+         try {
+            _ret_var = ((Hold)wrapper).GetEventFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_event_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_event_flags_get_delegate efl_input_event_flags_get_static_delegate;
+
+
+    private delegate  void efl_input_event_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Flags flags);
+
+
+    public delegate  void efl_input_event_flags_set_api_delegate(System.IntPtr obj,   Efl.Input.Flags flags);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate> efl_input_event_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate>(_Module, "efl_input_event_flags_set");
+    private static  void event_flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Flags flags)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Hold)wrapper).SetEventFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_event_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_input_event_flags_set_delegate efl_input_event_flags_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_processed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_processed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate> efl_input_processed_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate>(_Module, "efl_input_processed_get");
+    private static bool processed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_processed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Hold)wrapper).GetProcessed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_processed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_processed_get_delegate efl_input_processed_get_static_delegate;
+
+
+    private delegate  void efl_input_processed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_processed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate> efl_input_processed_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate>(_Module, "efl_input_processed_set");
+    private static  void processed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_processed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Hold)wrapper).SetProcessed( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_processed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_processed_set_delegate efl_input_processed_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_scrolling_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_scrolling_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate> efl_input_scrolling_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate>(_Module, "efl_input_scrolling_get");
+    private static bool scrolling_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Hold)wrapper).GetScrolling();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_scrolling_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_scrolling_get_delegate efl_input_scrolling_get_static_delegate;
+
+
+    private delegate  void efl_input_scrolling_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_scrolling_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate> efl_input_scrolling_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate>(_Module, "efl_input_scrolling_set");
+    private static  void scrolling_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Hold)wrapper).SetScrolling( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_scrolling_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_scrolling_set_delegate efl_input_scrolling_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_fake_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_fake_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate> efl_input_fake_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate>(_Module, "efl_input_fake_get");
+    private static bool fake_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_fake_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Hold)wrapper).GetFake();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_fake_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_fake_get_delegate efl_input_fake_get_static_delegate;
+
+
+    private delegate  void efl_input_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_input_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate> efl_input_reset_ptr = new Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate>(_Module, "efl_input_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Hold)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_input_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_reset_delegate efl_input_reset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_interface.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_interface.eo.cs
new file mode 100755 (executable)
index 0000000..a5b3efe
--- /dev/null
@@ -0,0 +1,1140 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>An object implementing this interface can send pointer events.
+/// Windows and canvas objects may send input events.
+/// 
+/// A &quot;pointer&quot; refers to the main pointing device, which could be a mouse, trackpad, finger, pen, etc... In other words, the finger id in any pointer event will always be 0.
+/// 
+/// A &quot;finger&quot; refers to a single point of input, usually in an absolute coordinates input device, and that can support more than one input position at at time (think multi-touch screens). The first finger (id 0) is sent along with a pointer event, so be careful to not handle those events twice. Note that if the input device can support &quot;hovering&quot;, it is entirely possible to receive move events without down coming first.
+/// 
+/// A &quot;key&quot; is a key press from a keyboard or equivalent type of input device. Long, repeated, key presses will always happen like this: down...up,down...up,down...up (not down...up or down...down...down...up).
+/// 1.19</summary>
+[InterfaceNativeInherit]
+public interface Interface : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Check if input events from a given seat is enabled.
+/// 1.19</summary>
+/// <param name="seat">The seat to act on.
+/// 1.19</param>
+/// <returns><c>true</c> to enable events for a seat or <c>false</c> otherwise.
+/// 1.19</returns>
+bool GetSeatEventFilter( Efl.Input.Device seat);
+   /// <summary>Add or remove a given seat to the filter list. If the filter list is empty this object will report mouse, keyboard and focus events from any seat, otherwise those events will only be reported if the event comes from a seat that is in the list.
+/// 1.19</summary>
+/// <param name="seat">The seat to act on.
+/// 1.19</param>
+/// <param name="enable"><c>true</c> to enable events for a seat or <c>false</c> otherwise.
+/// 1.19</param>
+/// <returns></returns>
+ void SetSeatEventFilter( Efl.Input.Device seat,  bool enable);
+         /// <summary>Main pointer move (current and previous positions are known).
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerMoveEvt_Args> PointerMoveEvt;
+   /// <summary>Main pointer button pressed (button id is known).
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerDownEvt_Args> PointerDownEvt;
+   /// <summary>Main pointer button released (button id is known).
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerUpEvt_Args> PointerUpEvt;
+   /// <summary>Main pointer button press was cancelled (button id is known). This can happen in rare cases when the window manager passes the focus to a more urgent window, for instance. You probably don&apos;t need to listen to this event, as it will be accompanied by an up event.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerCancelEvt_Args> PointerCancelEvt;
+   /// <summary>Pointer entered a window or a widget.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerInEvt_Args> PointerInEvt;
+   /// <summary>Pointer left a window or a widget.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerOutEvt_Args> PointerOutEvt;
+   /// <summary>Mouse wheel event.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerWheelEvt_Args> PointerWheelEvt;
+   /// <summary>Pen or other axis event update.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfacePointerAxisEvt_Args> PointerAxisEvt;
+   /// <summary>Finger moved (current and previous positions are known).
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceFingerMoveEvt_Args> FingerMoveEvt;
+   /// <summary>Finger pressed (finger id is known).
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceFingerDownEvt_Args> FingerDownEvt;
+   /// <summary>Finger released (finger id is known).
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceFingerUpEvt_Args> FingerUpEvt;
+   /// <summary>Keyboard key press.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceKeyDownEvt_Args> KeyDownEvt;
+   /// <summary>Keyboard key release.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceKeyUpEvt_Args> KeyUpEvt;
+   /// <summary>All input events are on hold or resumed.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceHoldEvt_Args> HoldEvt;
+   /// <summary>A focus in event.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceFocusInEvt_Args> FocusInEvt;
+   /// <summary>A focus out event.
+   /// 1.19</summary>
+   event EventHandler<Efl.Input.InterfaceFocusOutEvt_Args> FocusOutEvt;
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerMoveEvt"/>.</summary>
+public class InterfacePointerMoveEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerDownEvt"/>.</summary>
+public class InterfacePointerDownEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerUpEvt"/>.</summary>
+public class InterfacePointerUpEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerCancelEvt"/>.</summary>
+public class InterfacePointerCancelEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerInEvt"/>.</summary>
+public class InterfacePointerInEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerOutEvt"/>.</summary>
+public class InterfacePointerOutEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerWheelEvt"/>.</summary>
+public class InterfacePointerWheelEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.PointerAxisEvt"/>.</summary>
+public class InterfacePointerAxisEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.FingerMoveEvt"/>.</summary>
+public class InterfaceFingerMoveEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.FingerDownEvt"/>.</summary>
+public class InterfaceFingerDownEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.FingerUpEvt"/>.</summary>
+public class InterfaceFingerUpEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Pointer arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.KeyDownEvt"/>.</summary>
+public class InterfaceKeyDownEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Key arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.KeyUpEvt"/>.</summary>
+public class InterfaceKeyUpEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Key arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.HoldEvt"/>.</summary>
+public class InterfaceHoldEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Hold arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.FocusInEvt"/>.</summary>
+public class InterfaceFocusInEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Focus arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Input.Interface.FocusOutEvt"/>.</summary>
+public class InterfaceFocusOutEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Input.Focus arg { get; set; }
+}
+/// <summary>An object implementing this interface can send pointer events.
+/// Windows and canvas objects may send input events.
+/// 
+/// A &quot;pointer&quot; refers to the main pointing device, which could be a mouse, trackpad, finger, pen, etc... In other words, the finger id in any pointer event will always be 0.
+/// 
+/// A &quot;finger&quot; refers to a single point of input, usually in an absolute coordinates input device, and that can support more than one input position at at time (think multi-touch screens). The first finger (id 0) is sent along with a pointer event, so be careful to not handle those events twice. Note that if the input device can support &quot;hovering&quot;, it is entirely possible to receive move events without down coming first.
+/// 
+/// A &quot;key&quot; is a key press from a keyboard or equivalent type of input device. Long, repeated, key presses will always happen like this: down...up,down...up,down...up (not down...up or down...down...down...up).
+/// 1.19</summary>
+sealed public class InterfaceConcrete : 
+
+Interface
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (InterfaceConcrete))
+            return Efl.Input.InterfaceNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_input_interface_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public InterfaceConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~InterfaceConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static InterfaceConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new InterfaceConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Evas, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object PointerMoveEvtKey = new object();
+   /// <summary>Main pointer move (current and previous positions are known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerMoveEvt_Args> PointerMoveEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_MOVE";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerMoveEvt_delegate)) {
+               eventHandlers.AddHandler(PointerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_MOVE";
+            if (remove_cpp_event_handler(key, this.evt_PointerMoveEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerMoveEvt.</summary>
+   public void On_PointerMoveEvt(Efl.Input.InterfacePointerMoveEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerMoveEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerMoveEvt_Args>)eventHandlers[PointerMoveEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerMoveEvt_delegate;
+   private void on_PointerMoveEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerMoveEvt_Args args = new Efl.Input.InterfacePointerMoveEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerMoveEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerDownEvtKey = new object();
+   /// <summary>Main pointer button pressed (button id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerDownEvt_Args> PointerDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerDownEvt_delegate)) {
+               eventHandlers.AddHandler(PointerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_PointerDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerDownEvt.</summary>
+   public void On_PointerDownEvt(Efl.Input.InterfacePointerDownEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerDownEvt_Args>)eventHandlers[PointerDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerDownEvt_delegate;
+   private void on_PointerDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerDownEvt_Args args = new Efl.Input.InterfacePointerDownEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerUpEvtKey = new object();
+   /// <summary>Main pointer button released (button id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerUpEvt_Args> PointerUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_UP";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerUpEvt_delegate)) {
+               eventHandlers.AddHandler(PointerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_UP";
+            if (remove_cpp_event_handler(key, this.evt_PointerUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerUpEvt.</summary>
+   public void On_PointerUpEvt(Efl.Input.InterfacePointerUpEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerUpEvt_Args>)eventHandlers[PointerUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerUpEvt_delegate;
+   private void on_PointerUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerUpEvt_Args args = new Efl.Input.InterfacePointerUpEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerCancelEvtKey = new object();
+   /// <summary>Main pointer button press was cancelled (button id is known). This can happen in rare cases when the window manager passes the focus to a more urgent window, for instance. You probably don&apos;t need to listen to this event, as it will be accompanied by an up event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerCancelEvt_Args> PointerCancelEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_CANCEL";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerCancelEvt_delegate)) {
+               eventHandlers.AddHandler(PointerCancelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_CANCEL";
+            if (remove_cpp_event_handler(key, this.evt_PointerCancelEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerCancelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerCancelEvt.</summary>
+   public void On_PointerCancelEvt(Efl.Input.InterfacePointerCancelEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerCancelEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerCancelEvt_Args>)eventHandlers[PointerCancelEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerCancelEvt_delegate;
+   private void on_PointerCancelEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerCancelEvt_Args args = new Efl.Input.InterfacePointerCancelEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerCancelEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerInEvtKey = new object();
+   /// <summary>Pointer entered a window or a widget.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerInEvt_Args> PointerInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_IN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerInEvt_delegate)) {
+               eventHandlers.AddHandler(PointerInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_IN";
+            if (remove_cpp_event_handler(key, this.evt_PointerInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerInEvt.</summary>
+   public void On_PointerInEvt(Efl.Input.InterfacePointerInEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerInEvt_Args>)eventHandlers[PointerInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerInEvt_delegate;
+   private void on_PointerInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerInEvt_Args args = new Efl.Input.InterfacePointerInEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerOutEvtKey = new object();
+   /// <summary>Pointer left a window or a widget.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerOutEvt_Args> PointerOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_OUT";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerOutEvt_delegate)) {
+               eventHandlers.AddHandler(PointerOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_OUT";
+            if (remove_cpp_event_handler(key, this.evt_PointerOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerOutEvt.</summary>
+   public void On_PointerOutEvt(Efl.Input.InterfacePointerOutEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerOutEvt_Args>)eventHandlers[PointerOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerOutEvt_delegate;
+   private void on_PointerOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerOutEvt_Args args = new Efl.Input.InterfacePointerOutEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerWheelEvtKey = new object();
+   /// <summary>Mouse wheel event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerWheelEvt_Args> PointerWheelEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_WHEEL";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerWheelEvt_delegate)) {
+               eventHandlers.AddHandler(PointerWheelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_WHEEL";
+            if (remove_cpp_event_handler(key, this.evt_PointerWheelEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerWheelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerWheelEvt.</summary>
+   public void On_PointerWheelEvt(Efl.Input.InterfacePointerWheelEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerWheelEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerWheelEvt_Args>)eventHandlers[PointerWheelEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerWheelEvt_delegate;
+   private void on_PointerWheelEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerWheelEvt_Args args = new Efl.Input.InterfacePointerWheelEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerWheelEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PointerAxisEvtKey = new object();
+   /// <summary>Pen or other axis event update.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfacePointerAxisEvt_Args> PointerAxisEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_AXIS";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_PointerAxisEvt_delegate)) {
+               eventHandlers.AddHandler(PointerAxisEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_POINTER_AXIS";
+            if (remove_cpp_event_handler(key, this.evt_PointerAxisEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PointerAxisEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PointerAxisEvt.</summary>
+   public void On_PointerAxisEvt(Efl.Input.InterfacePointerAxisEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfacePointerAxisEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfacePointerAxisEvt_Args>)eventHandlers[PointerAxisEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PointerAxisEvt_delegate;
+   private void on_PointerAxisEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfacePointerAxisEvt_Args args = new Efl.Input.InterfacePointerAxisEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_PointerAxisEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FingerMoveEvtKey = new object();
+   /// <summary>Finger moved (current and previous positions are known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFingerMoveEvt_Args> FingerMoveEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_MOVE";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FingerMoveEvt_delegate)) {
+               eventHandlers.AddHandler(FingerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_MOVE";
+            if (remove_cpp_event_handler(key, this.evt_FingerMoveEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FingerMoveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FingerMoveEvt.</summary>
+   public void On_FingerMoveEvt(Efl.Input.InterfaceFingerMoveEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFingerMoveEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFingerMoveEvt_Args>)eventHandlers[FingerMoveEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FingerMoveEvt_delegate;
+   private void on_FingerMoveEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFingerMoveEvt_Args args = new Efl.Input.InterfaceFingerMoveEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_FingerMoveEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FingerDownEvtKey = new object();
+   /// <summary>Finger pressed (finger id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFingerDownEvt_Args> FingerDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FingerDownEvt_delegate)) {
+               eventHandlers.AddHandler(FingerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_FingerDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FingerDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FingerDownEvt.</summary>
+   public void On_FingerDownEvt(Efl.Input.InterfaceFingerDownEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFingerDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFingerDownEvt_Args>)eventHandlers[FingerDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FingerDownEvt_delegate;
+   private void on_FingerDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFingerDownEvt_Args args = new Efl.Input.InterfaceFingerDownEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_FingerDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FingerUpEvtKey = new object();
+   /// <summary>Finger released (finger id is known).
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFingerUpEvt_Args> FingerUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_UP";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FingerUpEvt_delegate)) {
+               eventHandlers.AddHandler(FingerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FINGER_UP";
+            if (remove_cpp_event_handler(key, this.evt_FingerUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FingerUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FingerUpEvt.</summary>
+   public void On_FingerUpEvt(Efl.Input.InterfaceFingerUpEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFingerUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFingerUpEvt_Args>)eventHandlers[FingerUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FingerUpEvt_delegate;
+   private void on_FingerUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFingerUpEvt_Args args = new Efl.Input.InterfaceFingerUpEvt_Args();
+      args.arg = new Efl.Input.Pointer(evt.Info);
+      try {
+         On_FingerUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object KeyDownEvtKey = new object();
+   /// <summary>Keyboard key press.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceKeyDownEvt_Args> KeyDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_KeyDownEvt_delegate)) {
+               eventHandlers.AddHandler(KeyDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_KeyDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(KeyDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event KeyDownEvt.</summary>
+   public void On_KeyDownEvt(Efl.Input.InterfaceKeyDownEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceKeyDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceKeyDownEvt_Args>)eventHandlers[KeyDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_KeyDownEvt_delegate;
+   private void on_KeyDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceKeyDownEvt_Args args = new Efl.Input.InterfaceKeyDownEvt_Args();
+      args.arg = new Efl.Input.Key(evt.Info);
+      try {
+         On_KeyDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object KeyUpEvtKey = new object();
+   /// <summary>Keyboard key release.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceKeyUpEvt_Args> KeyUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_UP";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_KeyUpEvt_delegate)) {
+               eventHandlers.AddHandler(KeyUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_KEY_UP";
+            if (remove_cpp_event_handler(key, this.evt_KeyUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(KeyUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event KeyUpEvt.</summary>
+   public void On_KeyUpEvt(Efl.Input.InterfaceKeyUpEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceKeyUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceKeyUpEvt_Args>)eventHandlers[KeyUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_KeyUpEvt_delegate;
+   private void on_KeyUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceKeyUpEvt_Args args = new Efl.Input.InterfaceKeyUpEvt_Args();
+      args.arg = new Efl.Input.Key(evt.Info);
+      try {
+         On_KeyUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object HoldEvtKey = new object();
+   /// <summary>All input events are on hold or resumed.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceHoldEvt_Args> HoldEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_HOLD";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_HoldEvt_delegate)) {
+               eventHandlers.AddHandler(HoldEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_HOLD";
+            if (remove_cpp_event_handler(key, this.evt_HoldEvt_delegate)) { 
+               eventHandlers.RemoveHandler(HoldEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event HoldEvt.</summary>
+   public void On_HoldEvt(Efl.Input.InterfaceHoldEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceHoldEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceHoldEvt_Args>)eventHandlers[HoldEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_HoldEvt_delegate;
+   private void on_HoldEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceHoldEvt_Args args = new Efl.Input.InterfaceHoldEvt_Args();
+      args.arg = new Efl.Input.Hold(evt.Info);
+      try {
+         On_HoldEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FocusInEvtKey = new object();
+   /// <summary>A focus in event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFocusInEvt_Args> FocusInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_IN";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FocusInEvt_delegate)) {
+               eventHandlers.AddHandler(FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_IN";
+            if (remove_cpp_event_handler(key, this.evt_FocusInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusInEvt.</summary>
+   public void On_FocusInEvt(Efl.Input.InterfaceFocusInEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFocusInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFocusInEvt_Args>)eventHandlers[FocusInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusInEvt_delegate;
+   private void on_FocusInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFocusInEvt_Args args = new Efl.Input.InterfaceFocusInEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_FocusInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FocusOutEvtKey = new object();
+   /// <summary>A focus out event.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Input.InterfaceFocusOutEvt_Args> FocusOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_OUT";
+            if (add_cpp_event_handler(efl.Libs.Evas, key, this.evt_FocusOutEvt_delegate)) {
+               eventHandlers.AddHandler(FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_FOCUS_OUT";
+            if (remove_cpp_event_handler(key, this.evt_FocusOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusOutEvt.</summary>
+   public void On_FocusOutEvt(Efl.Input.InterfaceFocusOutEvt_Args e)
+   {
+      EventHandler<Efl.Input.InterfaceFocusOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Input.InterfaceFocusOutEvt_Args>)eventHandlers[FocusOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusOutEvt_delegate;
+   private void on_FocusOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Input.InterfaceFocusOutEvt_Args args = new Efl.Input.InterfaceFocusOutEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_FocusOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_PointerMoveEvt_delegate = new Efl.EventCb(on_PointerMoveEvt_NativeCallback);
+      evt_PointerDownEvt_delegate = new Efl.EventCb(on_PointerDownEvt_NativeCallback);
+      evt_PointerUpEvt_delegate = new Efl.EventCb(on_PointerUpEvt_NativeCallback);
+      evt_PointerCancelEvt_delegate = new Efl.EventCb(on_PointerCancelEvt_NativeCallback);
+      evt_PointerInEvt_delegate = new Efl.EventCb(on_PointerInEvt_NativeCallback);
+      evt_PointerOutEvt_delegate = new Efl.EventCb(on_PointerOutEvt_NativeCallback);
+      evt_PointerWheelEvt_delegate = new Efl.EventCb(on_PointerWheelEvt_NativeCallback);
+      evt_PointerAxisEvt_delegate = new Efl.EventCb(on_PointerAxisEvt_NativeCallback);
+      evt_FingerMoveEvt_delegate = new Efl.EventCb(on_FingerMoveEvt_NativeCallback);
+      evt_FingerDownEvt_delegate = new Efl.EventCb(on_FingerDownEvt_NativeCallback);
+      evt_FingerUpEvt_delegate = new Efl.EventCb(on_FingerUpEvt_NativeCallback);
+      evt_KeyDownEvt_delegate = new Efl.EventCb(on_KeyDownEvt_NativeCallback);
+      evt_KeyUpEvt_delegate = new Efl.EventCb(on_KeyUpEvt_NativeCallback);
+      evt_HoldEvt_delegate = new Efl.EventCb(on_HoldEvt_NativeCallback);
+      evt_FocusInEvt_delegate = new Efl.EventCb(on_FocusInEvt_NativeCallback);
+      evt_FocusOutEvt_delegate = new Efl.EventCb(on_FocusOutEvt_NativeCallback);
+   }
+   /// <summary>Check if input events from a given seat is enabled.
+   /// 1.19</summary>
+   /// <param name="seat">The seat to act on.
+   /// 1.19</param>
+   /// <returns><c>true</c> to enable events for a seat or <c>false</c> otherwise.
+   /// 1.19</returns>
+   public bool GetSeatEventFilter( Efl.Input.Device seat) {
+                         var _ret_var = Efl.Input.InterfaceNativeInherit.efl_input_seat_event_filter_get_ptr.Value.Delegate(this.NativeHandle, seat);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Add or remove a given seat to the filter list. If the filter list is empty this object will report mouse, keyboard and focus events from any seat, otherwise those events will only be reported if the event comes from a seat that is in the list.
+   /// 1.19</summary>
+   /// <param name="seat">The seat to act on.
+   /// 1.19</param>
+   /// <param name="enable"><c>true</c> to enable events for a seat or <c>false</c> otherwise.
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetSeatEventFilter( Efl.Input.Device seat,  bool enable) {
+                                           Efl.Input.InterfaceNativeInherit.efl_input_seat_event_filter_set_ptr.Value.Delegate(this.NativeHandle, seat,  enable);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+}
+public class InterfaceNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_seat_event_filter_get_static_delegate == null)
+      efl_input_seat_event_filter_get_static_delegate = new efl_input_seat_event_filter_get_delegate(seat_event_filter_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_seat_event_filter_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_seat_event_filter_get_static_delegate)});
+      if (efl_input_seat_event_filter_set_static_delegate == null)
+      efl_input_seat_event_filter_set_static_delegate = new efl_input_seat_event_filter_set_delegate(seat_event_filter_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_seat_event_filter_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_seat_event_filter_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.InterfaceConcrete.efl_input_interface_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.InterfaceConcrete.efl_input_interface_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_seat_event_filter_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_seat_event_filter_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_get_api_delegate> efl_input_seat_event_filter_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_get_api_delegate>(_Module, "efl_input_seat_event_filter_get");
+    private static bool seat_event_filter_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_seat_event_filter_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Interface)wrapper).GetSeatEventFilter( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_input_seat_event_filter_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_input_seat_event_filter_get_delegate efl_input_seat_event_filter_get_static_delegate;
+
+
+    private delegate  void efl_input_seat_event_filter_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_input_seat_event_filter_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_set_api_delegate> efl_input_seat_event_filter_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_seat_event_filter_set_api_delegate>(_Module, "efl_input_seat_event_filter_set");
+    private static  void seat_event_filter_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat,  bool enable)
+   {
+      Eina.Log.Debug("function efl_input_seat_event_filter_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Interface)wrapper).SetSeatEventFilter( seat,  enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_input_seat_event_filter_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat,  enable);
+      }
+   }
+   private static efl_input_seat_event_filter_set_delegate efl_input_seat_event_filter_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_key.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_key.eo.cs
new file mode 100755 (executable)
index 0000000..254cebc
--- /dev/null
@@ -0,0 +1,1170 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>Represents a single key event from a keyboard or similar device.
+/// 1.18</summary>
+[KeyNativeInherit]
+public class Key : Efl.Object, Efl.Eo.IWrapper,Efl.Duplicate,Efl.Input.Event,Efl.Input.State
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Input.KeyNativeInherit nativeInherit = new Efl.Input.KeyNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Key))
+            return Efl.Input.KeyNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_input_key_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Key(Efl.Object parent= null
+         ) :
+      base(efl_input_key_class_get(), typeof(Key), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Key(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Key(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Key static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Key(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary><c>true</c> if the key is down, <c>false</c> if it is released.
+   /// 1.18</summary>
+   /// <returns><c>true</c> if the key is pressed, <c>false</c> otherwise
+   /// 1.18</returns>
+   virtual public bool GetPressed() {
+       var _ret_var = Efl.Input.KeyNativeInherit.efl_input_key_pressed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if the key is down, <c>false</c> if it is released.
+   /// 1.18</summary>
+   /// <param name="val"><c>true</c> if the key is pressed, <c>false</c> otherwise
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetPressed( bool val) {
+                         Efl.Input.KeyNativeInherit.efl_input_key_pressed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Name string of the key.
+   /// 1.18</summary>
+   /// <returns>Key name
+   /// 1.18</returns>
+   virtual public  System.String GetKeyName() {
+       var _ret_var = Efl.Input.KeyNativeInherit.efl_input_key_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Name string of the key.
+   /// 1.18</summary>
+   /// <param name="val">Key name
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetKeyName(  System.String val) {
+                         Efl.Input.KeyNativeInherit.efl_input_key_name_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Logical key.
+   /// Eg. Shift + 1 = exclamation
+   /// 1.18</summary>
+   /// <returns>Logical key name
+   /// 1.18</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.Input.KeyNativeInherit.efl_input_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Logical key.
+   /// Eg. Shift + 1 = exclamation
+   /// 1.18</summary>
+   /// <param name="val">Logical key name
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String val) {
+                         Efl.Input.KeyNativeInherit.efl_input_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A UTF8 string if this keystroke has produced a visible string to be added.
+   /// 1.18</summary>
+   /// <returns>Visible string from key press in UTF8
+   /// 1.18</returns>
+   virtual public  System.String GetString() {
+       var _ret_var = Efl.Input.KeyNativeInherit.efl_input_key_string_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>A UTF8 string if this keystroke has produced a visible string to be added.
+   /// 1.18</summary>
+   /// <param name="val">Visible string from key press in UTF8
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetString(  System.String val) {
+                         Efl.Input.KeyNativeInherit.efl_input_key_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A UTF8 string if this keystroke has modified a string in the middle of being composed.
+   /// Note: This string replaces the previous one
+   /// 1.18</summary>
+   /// <returns>Composed key string in UTF8
+   /// 1.18</returns>
+   virtual public  System.String GetCompose() {
+       var _ret_var = Efl.Input.KeyNativeInherit.efl_input_key_compose_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>A UTF8 string if this keystroke has modified a string in the middle of being composed.
+   /// Note: This string replaces the previous one
+   /// 1.18</summary>
+   /// <param name="val">Composed key string in UTF8
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetCompose(  System.String val) {
+                         Efl.Input.KeyNativeInherit.efl_input_key_compose_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Key scan code numeric value.
+   /// 1.18</summary>
+   /// <returns>Key scan code
+   /// 1.18</returns>
+   virtual public  int GetKeyCode() {
+       var _ret_var = Efl.Input.KeyNativeInherit.efl_input_key_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Key scan code numeric value.
+   /// 1.18</summary>
+   /// <param name="val">Key scan code
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetKeyCode(  int val) {
+                         Efl.Input.KeyNativeInherit.efl_input_key_code_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   virtual public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The time at which an event was generated.
+   /// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+   /// 1.19</summary>
+   /// <returns>Time in milliseconds when the event happened.
+   /// 1.19</returns>
+   virtual public double GetTimestamp() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_timestamp_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Call this when generating events manually.
+   /// 1.19</summary>
+   /// <param name="ms">Time in milliseconds when the event happened.
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetTimestamp( double ms) {
+                         Efl.Input.EventNativeInherit.efl_input_timestamp_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ms);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <returns>Input device origin
+   /// 1.19</returns>
+   virtual public Efl.Input.Device GetDevice() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_device_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <param name="dev">Input device origin
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetDevice( Efl.Input.Device dev) {
+                         Efl.Input.EventNativeInherit.efl_input_device_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dev);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <returns>Input event flags
+   /// 1.19</returns>
+   virtual public Efl.Input.Flags GetEventFlags() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_event_flags_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <param name="flags">Input event flags
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEventFlags( Efl.Input.Flags flags) {
+                         Efl.Input.EventNativeInherit.efl_input_event_flags_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetProcessed() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_processed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetProcessed( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_processed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetScrolling() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_scrolling_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetScrolling( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_scrolling_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetFake() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_fake_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets the internal data to 0 or default values.
+   /// 1.19</summary>
+   /// <returns></returns>
+   virtual public  void Reset() {
+       Efl.Input.EventNativeInherit.efl_input_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Indicates whether a key modifier is on, such as Ctrl, Shift, ...</summary>
+   /// <param name="mod">The modifier key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key modifier is pressed.</returns>
+   virtual public bool GetModifierEnabled( Efl.Input.Modifier mod,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_modifier_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mod,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Indicates whether a key lock is on, such as NumLock, CapsLock, ...</summary>
+   /// <param name="kw_lock">The lock key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key lock is on.</returns>
+   virtual public bool GetLockEnabled( Efl.Input.Lock kw_lock,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_lock_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_lock,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary><c>true</c> if the key is down, <c>false</c> if it is released.
+/// 1.18</summary>
+/// <value><c>true</c> if the key is pressed, <c>false</c> otherwise
+/// 1.18</value>
+   public bool Pressed {
+      get { return GetPressed(); }
+      set { SetPressed( value); }
+   }
+   /// <summary>Name string of the key.
+/// 1.18</summary>
+/// <value>Key name
+/// 1.18</value>
+   public  System.String KeyName {
+      get { return GetKeyName(); }
+      set { SetKeyName( value); }
+   }
+   /// <summary>A UTF8 string if this keystroke has produced a visible string to be added.
+/// 1.18</summary>
+/// <value>Visible string from key press in UTF8
+/// 1.18</value>
+   public  System.String String {
+      get { return GetString(); }
+      set { SetString( value); }
+   }
+   /// <summary>A UTF8 string if this keystroke has modified a string in the middle of being composed.
+/// Note: This string replaces the previous one
+/// 1.18</summary>
+/// <value>Composed key string in UTF8
+/// 1.18</value>
+   public  System.String Compose {
+      get { return GetCompose(); }
+      set { SetCompose( value); }
+   }
+   /// <summary>Key scan code numeric value.
+/// 1.18</summary>
+/// <value>Key scan code
+/// 1.18</value>
+   public  int KeyCode {
+      get { return GetKeyCode(); }
+      set { SetKeyCode( value); }
+   }
+   /// <summary>The time at which an event was generated.
+/// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+/// 1.19</summary>
+/// <value>Time in milliseconds when the event happened.
+/// 1.19</value>
+   public double Timestamp {
+      get { return GetTimestamp(); }
+      set { SetTimestamp( value); }
+   }
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <value>Input device origin
+/// 1.19</value>
+   public Efl.Input.Device Device {
+      get { return GetDevice(); }
+      set { SetDevice( value); }
+   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <value>Input event flags
+/// 1.19</value>
+   public Efl.Input.Flags EventFlags {
+      get { return GetEventFlags(); }
+      set { SetEventFlags( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <value><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Processed {
+      get { return GetProcessed(); }
+      set { SetProcessed( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <value><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Scrolling {
+      get { return GetScrolling(); }
+      set { SetScrolling( value); }
+   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+/// 1.19</summary>
+/// <value><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Fake {
+      get { return GetFake(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Key.efl_input_key_class_get();
+   }
+}
+public class KeyNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_key_pressed_get_static_delegate == null)
+      efl_input_key_pressed_get_static_delegate = new efl_input_key_pressed_get_delegate(pressed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_pressed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_pressed_get_static_delegate)});
+      if (efl_input_key_pressed_set_static_delegate == null)
+      efl_input_key_pressed_set_static_delegate = new efl_input_key_pressed_set_delegate(pressed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_pressed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_pressed_set_static_delegate)});
+      if (efl_input_key_name_get_static_delegate == null)
+      efl_input_key_name_get_static_delegate = new efl_input_key_name_get_delegate(key_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_name_get_static_delegate)});
+      if (efl_input_key_name_set_static_delegate == null)
+      efl_input_key_name_set_static_delegate = new efl_input_key_name_set_delegate(key_name_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_name_set_static_delegate)});
+      if (efl_input_key_get_static_delegate == null)
+      efl_input_key_get_static_delegate = new efl_input_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_get_static_delegate)});
+      if (efl_input_key_set_static_delegate == null)
+      efl_input_key_set_static_delegate = new efl_input_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_set_static_delegate)});
+      if (efl_input_key_string_get_static_delegate == null)
+      efl_input_key_string_get_static_delegate = new efl_input_key_string_get_delegate(string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_string_get_static_delegate)});
+      if (efl_input_key_string_set_static_delegate == null)
+      efl_input_key_string_set_static_delegate = new efl_input_key_string_set_delegate(string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_string_set_static_delegate)});
+      if (efl_input_key_compose_get_static_delegate == null)
+      efl_input_key_compose_get_static_delegate = new efl_input_key_compose_get_delegate(compose_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_compose_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_compose_get_static_delegate)});
+      if (efl_input_key_compose_set_static_delegate == null)
+      efl_input_key_compose_set_static_delegate = new efl_input_key_compose_set_delegate(compose_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_compose_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_compose_set_static_delegate)});
+      if (efl_input_key_code_get_static_delegate == null)
+      efl_input_key_code_get_static_delegate = new efl_input_key_code_get_delegate(key_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_code_get_static_delegate)});
+      if (efl_input_key_code_set_static_delegate == null)
+      efl_input_key_code_set_static_delegate = new efl_input_key_code_set_delegate(key_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_key_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_key_code_set_static_delegate)});
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      if (efl_input_timestamp_get_static_delegate == null)
+      efl_input_timestamp_get_static_delegate = new efl_input_timestamp_get_delegate(timestamp_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_get_static_delegate)});
+      if (efl_input_timestamp_set_static_delegate == null)
+      efl_input_timestamp_set_static_delegate = new efl_input_timestamp_set_delegate(timestamp_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_set_static_delegate)});
+      if (efl_input_device_get_static_delegate == null)
+      efl_input_device_get_static_delegate = new efl_input_device_get_delegate(device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_get_static_delegate)});
+      if (efl_input_device_set_static_delegate == null)
+      efl_input_device_set_static_delegate = new efl_input_device_set_delegate(device_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_set_static_delegate)});
+      if (efl_input_event_flags_get_static_delegate == null)
+      efl_input_event_flags_get_static_delegate = new efl_input_event_flags_get_delegate(event_flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_get_static_delegate)});
+      if (efl_input_event_flags_set_static_delegate == null)
+      efl_input_event_flags_set_static_delegate = new efl_input_event_flags_set_delegate(event_flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_set_static_delegate)});
+      if (efl_input_processed_get_static_delegate == null)
+      efl_input_processed_get_static_delegate = new efl_input_processed_get_delegate(processed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_get_static_delegate)});
+      if (efl_input_processed_set_static_delegate == null)
+      efl_input_processed_set_static_delegate = new efl_input_processed_set_delegate(processed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_set_static_delegate)});
+      if (efl_input_scrolling_get_static_delegate == null)
+      efl_input_scrolling_get_static_delegate = new efl_input_scrolling_get_delegate(scrolling_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_get_static_delegate)});
+      if (efl_input_scrolling_set_static_delegate == null)
+      efl_input_scrolling_set_static_delegate = new efl_input_scrolling_set_delegate(scrolling_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_set_static_delegate)});
+      if (efl_input_fake_get_static_delegate == null)
+      efl_input_fake_get_static_delegate = new efl_input_fake_get_delegate(fake_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_fake_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_fake_get_static_delegate)});
+      if (efl_input_reset_static_delegate == null)
+      efl_input_reset_static_delegate = new efl_input_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_input_reset_static_delegate)});
+      if (efl_input_modifier_enabled_get_static_delegate == null)
+      efl_input_modifier_enabled_get_static_delegate = new efl_input_modifier_enabled_get_delegate(modifier_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_modifier_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_modifier_enabled_get_static_delegate)});
+      if (efl_input_lock_enabled_get_static_delegate == null)
+      efl_input_lock_enabled_get_static_delegate = new efl_input_lock_enabled_get_delegate(lock_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_lock_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_lock_enabled_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.Key.efl_input_key_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Key.efl_input_key_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_key_pressed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_key_pressed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_pressed_get_api_delegate> efl_input_key_pressed_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_pressed_get_api_delegate>(_Module, "efl_input_key_pressed_get");
+    private static bool pressed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_key_pressed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Key)wrapper).GetPressed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_key_pressed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_key_pressed_get_delegate efl_input_key_pressed_get_static_delegate;
+
+
+    private delegate  void efl_input_key_pressed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_key_pressed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_pressed_set_api_delegate> efl_input_key_pressed_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_pressed_set_api_delegate>(_Module, "efl_input_key_pressed_set");
+    private static  void pressed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_key_pressed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetPressed( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_key_pressed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_key_pressed_set_delegate efl_input_key_pressed_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_input_key_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_input_key_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_name_get_api_delegate> efl_input_key_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_name_get_api_delegate>(_Module, "efl_input_key_name_get");
+    private static  System.String key_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_key_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Key)wrapper).GetKeyName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_key_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_key_name_get_delegate efl_input_key_name_get_static_delegate;
+
+
+    private delegate  void efl_input_key_name_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+
+
+    public delegate  void efl_input_key_name_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_name_set_api_delegate> efl_input_key_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_name_set_api_delegate>(_Module, "efl_input_key_name_set");
+    private static  void key_name_set(System.IntPtr obj, System.IntPtr pd,   System.String val)
+   {
+      Eina.Log.Debug("function efl_input_key_name_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetKeyName( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_key_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_key_name_set_delegate efl_input_key_name_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_input_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_input_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_get_api_delegate> efl_input_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_get_api_delegate>(_Module, "efl_input_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Key)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_key_get_delegate efl_input_key_get_static_delegate;
+
+
+    private delegate  void efl_input_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+
+
+    public delegate  void efl_input_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_set_api_delegate> efl_input_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_set_api_delegate>(_Module, "efl_input_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String val)
+   {
+      Eina.Log.Debug("function efl_input_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetKey( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_key_set_delegate efl_input_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_input_key_string_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_input_key_string_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_string_get_api_delegate> efl_input_key_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_string_get_api_delegate>(_Module, "efl_input_key_string_get");
+    private static  System.String string_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_key_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Key)wrapper).GetString();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_key_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_key_string_get_delegate efl_input_key_string_get_static_delegate;
+
+
+    private delegate  void efl_input_key_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+
+
+    public delegate  void efl_input_key_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_string_set_api_delegate> efl_input_key_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_string_set_api_delegate>(_Module, "efl_input_key_string_set");
+    private static  void string_set(System.IntPtr obj, System.IntPtr pd,   System.String val)
+   {
+      Eina.Log.Debug("function efl_input_key_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetString( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_key_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_key_string_set_delegate efl_input_key_string_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_input_key_compose_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_input_key_compose_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_compose_get_api_delegate> efl_input_key_compose_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_compose_get_api_delegate>(_Module, "efl_input_key_compose_get");
+    private static  System.String compose_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_key_compose_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Key)wrapper).GetCompose();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_key_compose_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_key_compose_get_delegate efl_input_key_compose_get_static_delegate;
+
+
+    private delegate  void efl_input_key_compose_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+
+
+    public delegate  void efl_input_key_compose_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String val);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_compose_set_api_delegate> efl_input_key_compose_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_compose_set_api_delegate>(_Module, "efl_input_key_compose_set");
+    private static  void compose_set(System.IntPtr obj, System.IntPtr pd,   System.String val)
+   {
+      Eina.Log.Debug("function efl_input_key_compose_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetCompose( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_key_compose_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_key_compose_set_delegate efl_input_key_compose_set_static_delegate;
+
+
+    private delegate  int efl_input_key_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_input_key_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_code_get_api_delegate> efl_input_key_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_code_get_api_delegate>(_Module, "efl_input_key_code_get");
+    private static  int key_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_key_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Key)wrapper).GetKeyCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_key_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_key_code_get_delegate efl_input_key_code_get_static_delegate;
+
+
+    private delegate  void efl_input_key_code_set_delegate(System.IntPtr obj, System.IntPtr pd,    int val);
+
+
+    public delegate  void efl_input_key_code_set_api_delegate(System.IntPtr obj,    int val);
+    public static Efl.Eo.FunctionWrapper<efl_input_key_code_set_api_delegate> efl_input_key_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_key_code_set_api_delegate>(_Module, "efl_input_key_code_set");
+    private static  void key_code_set(System.IntPtr obj, System.IntPtr pd,   int val)
+   {
+      Eina.Log.Debug("function efl_input_key_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetKeyCode( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_key_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_key_code_set_delegate efl_input_key_code_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((Key)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+
+
+    private delegate double efl_input_timestamp_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_input_timestamp_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate> efl_input_timestamp_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate>(_Module, "efl_input_timestamp_get");
+    private static double timestamp_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Key)wrapper).GetTimestamp();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_timestamp_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_timestamp_get_delegate efl_input_timestamp_get_static_delegate;
+
+
+    private delegate  void efl_input_timestamp_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ms);
+
+
+    public delegate  void efl_input_timestamp_set_api_delegate(System.IntPtr obj,   double ms);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate> efl_input_timestamp_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate>(_Module, "efl_input_timestamp_set");
+    private static  void timestamp_set(System.IntPtr obj, System.IntPtr pd,  double ms)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetTimestamp( ms);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_timestamp_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ms);
+      }
+   }
+   private static efl_input_timestamp_set_delegate efl_input_timestamp_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_input_device_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_input_device_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate> efl_input_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate>(_Module, "efl_input_device_get");
+    private static Efl.Input.Device device_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Key)wrapper).GetDevice();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_get_delegate efl_input_device_get_static_delegate;
+
+
+    private delegate  void efl_input_device_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+
+
+    public delegate  void efl_input_device_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate> efl_input_device_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate>(_Module, "efl_input_device_set");
+    private static  void device_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device dev)
+   {
+      Eina.Log.Debug("function efl_input_device_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetDevice( dev);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dev);
+      }
+   }
+   private static efl_input_device_set_delegate efl_input_device_set_static_delegate;
+
+
+    private delegate Efl.Input.Flags efl_input_event_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Input.Flags efl_input_event_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate> efl_input_event_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate>(_Module, "efl_input_event_flags_get");
+    private static Efl.Input.Flags event_flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Flags _ret_var = default(Efl.Input.Flags);
+         try {
+            _ret_var = ((Key)wrapper).GetEventFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_event_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_event_flags_get_delegate efl_input_event_flags_get_static_delegate;
+
+
+    private delegate  void efl_input_event_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Flags flags);
+
+
+    public delegate  void efl_input_event_flags_set_api_delegate(System.IntPtr obj,   Efl.Input.Flags flags);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate> efl_input_event_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate>(_Module, "efl_input_event_flags_set");
+    private static  void event_flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Flags flags)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetEventFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_event_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_input_event_flags_set_delegate efl_input_event_flags_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_processed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_processed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate> efl_input_processed_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate>(_Module, "efl_input_processed_get");
+    private static bool processed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_processed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Key)wrapper).GetProcessed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_processed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_processed_get_delegate efl_input_processed_get_static_delegate;
+
+
+    private delegate  void efl_input_processed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_processed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate> efl_input_processed_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate>(_Module, "efl_input_processed_set");
+    private static  void processed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_processed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetProcessed( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_processed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_processed_set_delegate efl_input_processed_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_scrolling_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_scrolling_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate> efl_input_scrolling_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate>(_Module, "efl_input_scrolling_get");
+    private static bool scrolling_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Key)wrapper).GetScrolling();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_scrolling_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_scrolling_get_delegate efl_input_scrolling_get_static_delegate;
+
+
+    private delegate  void efl_input_scrolling_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_scrolling_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate> efl_input_scrolling_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate>(_Module, "efl_input_scrolling_set");
+    private static  void scrolling_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Key)wrapper).SetScrolling( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_scrolling_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_scrolling_set_delegate efl_input_scrolling_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_fake_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_fake_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate> efl_input_fake_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate>(_Module, "efl_input_fake_get");
+    private static bool fake_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_fake_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Key)wrapper).GetFake();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_fake_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_fake_get_delegate efl_input_fake_get_static_delegate;
+
+
+    private delegate  void efl_input_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_input_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate> efl_input_reset_ptr = new Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate>(_Module, "efl_input_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Key)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_input_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_reset_delegate efl_input_reset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_modifier_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_modifier_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate> efl_input_modifier_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate>(_Module, "efl_input_modifier_enabled_get");
+    private static bool modifier_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Modifier mod,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_modifier_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Key)wrapper).GetModifierEnabled( mod,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_modifier_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mod,  seat);
+      }
+   }
+   private static efl_input_modifier_enabled_get_delegate efl_input_modifier_enabled_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_lock_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_lock_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate> efl_input_lock_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate>(_Module, "efl_input_lock_enabled_get");
+    private static bool lock_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Lock kw_lock,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_lock_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Key)wrapper).GetLockEnabled( kw_lock,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_lock_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_lock,  seat);
+      }
+   }
+   private static efl_input_lock_enabled_get_delegate efl_input_lock_enabled_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_pointer.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_pointer.eo.cs
new file mode 100755 (executable)
index 0000000..4c0c3be
--- /dev/null
@@ -0,0 +1,1899 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>Event data carried over with any pointer event (mouse, touch, pen, ...)
+/// 1.18</summary>
+[PointerNativeInherit]
+public class Pointer : Efl.Object, Efl.Eo.IWrapper,Efl.Duplicate,Efl.Input.Event,Efl.Input.State
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Input.PointerNativeInherit nativeInherit = new Efl.Input.PointerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Pointer))
+            return Efl.Input.PointerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_input_pointer_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Pointer(Efl.Object parent= null
+         ) :
+      base(efl_input_pointer_class_get(), typeof(Pointer), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Pointer(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Pointer(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Pointer static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Pointer(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The action represented by this event.
+   /// 1.18</summary>
+   /// <returns>Event action
+   /// 1.18</returns>
+   virtual public Efl.Pointer.Action GetAction() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_action_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The action represented by this event.
+   /// 1.18</summary>
+   /// <param name="act">Event action
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetAction( Efl.Pointer.Action act) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_action_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), act);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if this event carries a valid value for the specified <c>key</c>.
+   /// 1.18</summary>
+   /// <param name="key">Pressed <c>key</c>
+   /// 1.18</param>
+   /// <returns><c>true</c> if input value is valid, <c>false</c> otherwise
+   /// 1.18</returns>
+   virtual public bool GetValueHas( Efl.Input.Value key) {
+                         var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_value_has_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Represents a generic value for this event.
+   /// Refer to the documentation of <see cref="Efl.Input.Value"/> for each value&apos;s meaning, type and range. Call <see cref="Efl.Input.Pointer.GetValueHas"/> to determine whether the returned value is valid or not for this event.
+   /// 
+   /// Most values are precise floating point values, usually in pixels, radians, or in a range of [-1, 1] or [0, 1]. Some values are discrete values (integers) and thus should preferably be queried with the other methods of this class.
+   /// 1.18</summary>
+   /// <param name="key"><c>key</c>
+   /// 1.18</param>
+   /// <returns><c>key</c> value
+   /// 1.18</returns>
+   virtual public double GetValue( Efl.Input.Value key) {
+                         var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Represents a generic value for this event.
+   /// Refer to the documentation of <see cref="Efl.Input.Value"/> for each value&apos;s meaning, type and range. Call <see cref="Efl.Input.Pointer.GetValueHas"/> to determine whether the returned value is valid or not for this event.
+   /// 
+   /// Most values are precise floating point values, usually in pixels, radians, or in a range of [-1, 1] or [0, 1]. Some values are discrete values (integers) and thus should preferably be queried with the other methods of this class.
+   /// 1.18</summary>
+   /// <param name="key"><c>key</c>
+   /// 1.18</param>
+   /// <param name="val"><c>key</c> value
+   /// 1.18</param>
+   /// <returns><c>false</c> if the value could not be set (eg. delta).
+   /// 1.18</returns>
+   virtual public bool SetValue( Efl.Input.Value key,  double val) {
+                                           var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  val);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>The mouse button that triggered the event.
+   /// Valid if and only if <see cref="Efl.Input.Pointer.GetValueHas"/>(<c>button</c>) is <c>true</c>.
+   /// 1.18</summary>
+   /// <returns>1 to 32, 0 if not a button event.
+   /// 1.18</returns>
+   virtual public  int GetButton() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_button_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The mouse button that triggered the event.
+   /// Valid if and only if <see cref="Efl.Input.Pointer.GetValueHas"/>(<c>button</c>) is <c>true</c>.
+   /// 1.18</summary>
+   /// <param name="but">1 to 32, 0 if not a button event.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetButton(  int but) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_button_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), but);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether a mouse button is pressed at the moment of the event.
+   /// Valid if and only if <see cref="Efl.Input.Pointer.GetValueHas"/>(<c>button_pressed</c>) is <c>true</c>.
+   /// 1.18</summary>
+   /// <param name="button">1 to 32, 0 if not a button event.
+   /// 1.18</param>
+   /// <returns><c>true</c> when the button was pressed, <c>false</c> otherwise
+   /// 1.18</returns>
+   virtual public bool GetButtonPressed(  int button) {
+                         var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_button_pressed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), button);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Whether a mouse button is pressed at the moment of the event.
+   /// Valid if and only if <see cref="Efl.Input.Pointer.GetValueHas"/>(<c>button_pressed</c>) is <c>true</c>.
+   /// 1.18</summary>
+   /// <param name="button">1 to 32, 0 if not a button event.
+   /// 1.18</param>
+   /// <param name="pressed"><c>true</c> when the button was pressed, <c>false</c> otherwise
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetButtonPressed(  int button,  bool pressed) {
+                                           Efl.Input.PointerNativeInherit.efl_input_pointer_button_pressed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), button,  pressed);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Position where the event happened, relative to the window.
+   /// See <see cref="Efl.Input.Pointer.PrecisePosition"/> for floating point precision (subpixel location).
+   /// 1.18</summary>
+   /// <returns>The position of the event, in pixels.
+   /// 1.18</returns>
+   virtual public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Position where the event happened, relative to the window.
+   /// See <see cref="Efl.Input.Pointer.PrecisePosition"/> for floating point precision (subpixel location).
+   /// 1.18</summary>
+   /// <param name="pos">The position of the event, in pixels.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Input.PointerNativeInherit.efl_input_pointer_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Position where the event happened, relative to the window.
+   /// This position is in floating point values, for more precise coordinates, in subpixels. Note that many input devices are unable to give better precision than a single pixel, so this may be equal to <see cref="Efl.Input.Pointer.Position"/>.
+   /// 
+   /// See also <see cref="Efl.Input.Pointer.Position"/>.
+   /// 1.18</summary>
+   /// <returns>The position of the event, in pixels.
+   /// 1.18</returns>
+   virtual public Eina.Vector2 GetPrecisePosition() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_precise_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Vector2_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Position where the event happened, relative to the window.
+   /// This position is in floating point values, for more precise coordinates, in subpixels. Note that many input devices are unable to give better precision than a single pixel, so this may be equal to <see cref="Efl.Input.Pointer.Position"/>.
+   /// 
+   /// See also <see cref="Efl.Input.Pointer.Position"/>.
+   /// 1.18</summary>
+   /// <param name="pos">The position of the event, in pixels.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetPrecisePosition( Eina.Vector2 pos) {
+       var _in_pos = Eina.Vector2_StructConversion.ToInternal(pos);
+                  Efl.Input.PointerNativeInherit.efl_input_pointer_precise_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Position of the previous event, valid for move events.
+   /// Relative to the window. May be equal to <see cref="Efl.Input.Pointer.Position"/> (by default).
+   /// 
+   /// This position, in integers, is an approximation of <see cref="Efl.Input.Pointer.GetValue"/>(<c>previous_x</c>), <see cref="Efl.Input.Pointer.GetValue"/>(<c>previous_y</c>). Use <see cref="Efl.Input.Pointer.PreviousPosition"/> if you need simple pixel positions, but prefer the generic interface if you need precise coordinates.
+   /// 1.18</summary>
+   /// <returns>The position of the event, in pixels.
+   /// 1.18</returns>
+   virtual public Eina.Position2D GetPreviousPosition() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_previous_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Position of the previous event, valid for move events.
+   /// Relative to the window. May be equal to <see cref="Efl.Input.Pointer.Position"/> (by default).
+   /// 
+   /// This position, in integers, is an approximation of <see cref="Efl.Input.Pointer.GetValue"/>(<c>previous_x</c>), <see cref="Efl.Input.Pointer.GetValue"/>(<c>previous_y</c>). Use <see cref="Efl.Input.Pointer.PreviousPosition"/> if you need simple pixel positions, but prefer the generic interface if you need precise coordinates.
+   /// 1.18</summary>
+   /// <param name="pos">The position of the event, in pixels.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetPreviousPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Input.PointerNativeInherit.efl_input_pointer_previous_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>ID of the tool (eg. pen) that triggered this event.
+   /// 1.18</summary>
+   /// <returns>Tool ID
+   /// 1.18</returns>
+   virtual public  int GetTool() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_tool_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>ID of the tool (eg. pen) that triggered this event.
+   /// 1.18</summary>
+   /// <param name="id">Tool ID
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetTool(  int id) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_tool_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The object where this event first originated, in case of propagation or repetition of the event.
+   /// 1.18</summary>
+   /// <returns>Source object: <see cref="Efl.Gfx.Entity"/>
+   /// 1.18</returns>
+   virtual public Efl.Object GetSource() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_source_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The object where this event first originated, in case of propagation or repetition of the event.
+   /// 1.18</summary>
+   /// <param name="src">Source object: <see cref="Efl.Gfx.Entity"/>
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetSource( Efl.Object src) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_source_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), src);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Double or triple click information.
+   /// 1.18</summary>
+   /// <returns>Button information flags
+   /// 1.18</returns>
+   virtual public Efl.Pointer.Flags GetButtonFlags() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_button_flags_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Double or triple click information.
+   /// 1.18</summary>
+   /// <param name="flags">Button information flags
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetButtonFlags( Efl.Pointer.Flags flags) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_button_flags_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Pointer.ButtonFlags"/> indicates a double click (2nd press).
+   /// This is just a helper function around <see cref="Efl.Input.Pointer.ButtonFlags"/>.
+   /// 1.18</summary>
+   /// <returns><c>true</c> if the button press was a double click, <c>false</c> otherwise
+   /// 1.18</returns>
+   virtual public bool GetDoubleClick() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_double_click_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Pointer.ButtonFlags"/> indicates a double click (2nd press).
+   /// This is just a helper function around <see cref="Efl.Input.Pointer.ButtonFlags"/>.
+   /// 1.18</summary>
+   /// <param name="val"><c>true</c> if the button press was a double click, <c>false</c> otherwise
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetDoubleClick( bool val) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_double_click_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Pointer.ButtonFlags"/> indicates a triple click (3rd press).
+   /// This is just a helper function around <see cref="Efl.Input.Pointer.ButtonFlags"/>.
+   /// 1.18</summary>
+   /// <returns><c>true</c> if the button press was a triple click, <c>false</c> otherwise
+   /// 1.18</returns>
+   virtual public bool GetTripleClick() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_triple_click_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Pointer.ButtonFlags"/> indicates a triple click (3rd press).
+   /// This is just a helper function around <see cref="Efl.Input.Pointer.ButtonFlags"/>.
+   /// 1.18</summary>
+   /// <param name="val"><c>true</c> if the button press was a triple click, <c>false</c> otherwise
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetTripleClick( bool val) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_triple_click_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Direction of the wheel, usually vertical.
+   /// 1.18</summary>
+   /// <returns>If <c>true</c> this was a horizontal wheel.
+   /// 1.18</returns>
+   virtual public bool GetWheelHorizontal() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_wheel_horizontal_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Direction of the wheel, usually vertical.
+   /// 1.18</summary>
+   /// <param name="horizontal">If <c>true</c> this was a horizontal wheel.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetWheelHorizontal( bool horizontal) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_wheel_horizontal_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horizontal);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Delta movement of the wheel in discrete steps.
+   /// 1.18</summary>
+   /// <returns>Wheel movement delta
+   /// 1.18</returns>
+   virtual public  int GetWheelDelta() {
+       var _ret_var = Efl.Input.PointerNativeInherit.efl_input_pointer_wheel_delta_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Delta movement of the wheel in discrete steps.
+   /// 1.18</summary>
+   /// <param name="dist">Wheel movement delta
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetWheelDelta(  int dist) {
+                         Efl.Input.PointerNativeInherit.efl_input_pointer_wheel_delta_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dist);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates a carbon copy of this object and returns it.
+   /// The newly created object will have no event handlers or anything of the sort.</summary>
+   /// <returns>Returned carbon copy</returns>
+   virtual public Efl.Duplicate DoDuplicate() {
+       var _ret_var = Efl.DuplicateNativeInherit.efl_duplicate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The time at which an event was generated.
+   /// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+   /// 1.19</summary>
+   /// <returns>Time in milliseconds when the event happened.
+   /// 1.19</returns>
+   virtual public double GetTimestamp() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_timestamp_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Call this when generating events manually.
+   /// 1.19</summary>
+   /// <param name="ms">Time in milliseconds when the event happened.
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetTimestamp( double ms) {
+                         Efl.Input.EventNativeInherit.efl_input_timestamp_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ms);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <returns>Input device origin
+   /// 1.19</returns>
+   virtual public Efl.Input.Device GetDevice() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_device_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Input device that originated this event.
+   /// 1.19</summary>
+   /// <param name="dev">Input device origin
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetDevice( Efl.Input.Device dev) {
+                         Efl.Input.EventNativeInherit.efl_input_device_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dev);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <returns>Input event flags
+   /// 1.19</returns>
+   virtual public Efl.Input.Flags GetEventFlags() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_event_flags_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Extra flags for this event, may be changed by the user.
+   /// 1.19</summary>
+   /// <param name="flags">Input event flags
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEventFlags( Efl.Input.Flags flags) {
+                         Efl.Input.EventNativeInherit.efl_input_event_flags_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetProcessed() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_processed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event is on hold, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetProcessed( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_processed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetScrolling() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_scrolling_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+   /// 1.19</summary>
+   /// <param name="val"><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetScrolling( bool val) {
+                         Efl.Input.EventNativeInherit.efl_input_scrolling_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetFake() {
+       var _ret_var = Efl.Input.EventNativeInherit.efl_input_fake_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets the internal data to 0 or default values.
+   /// 1.19</summary>
+   /// <returns></returns>
+   virtual public  void Reset() {
+       Efl.Input.EventNativeInherit.efl_input_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Indicates whether a key modifier is on, such as Ctrl, Shift, ...</summary>
+   /// <param name="mod">The modifier key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key modifier is pressed.</returns>
+   virtual public bool GetModifierEnabled( Efl.Input.Modifier mod,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_modifier_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mod,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Indicates whether a key lock is on, such as NumLock, CapsLock, ...</summary>
+   /// <param name="kw_lock">The lock key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key lock is on.</returns>
+   virtual public bool GetLockEnabled( Efl.Input.Lock kw_lock,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_lock_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_lock,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>The action represented by this event.
+/// 1.18</summary>
+/// <value>Event action
+/// 1.18</value>
+   public Efl.Pointer.Action Action {
+      get { return GetAction(); }
+      set { SetAction( value); }
+   }
+   /// <summary>The mouse button that triggered the event.
+/// Valid if and only if <see cref="Efl.Input.Pointer.GetValueHas"/>(<c>button</c>) is <c>true</c>.
+/// 1.18</summary>
+/// <value>1 to 32, 0 if not a button event.
+/// 1.18</value>
+   public  int Button {
+      get { return GetButton(); }
+      set { SetButton( value); }
+   }
+   /// <summary>Position where the event happened, relative to the window.
+/// See <see cref="Efl.Input.Pointer.PrecisePosition"/> for floating point precision (subpixel location).
+/// 1.18</summary>
+/// <value>The position of the event, in pixels.
+/// 1.18</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>Position where the event happened, relative to the window.
+/// This position is in floating point values, for more precise coordinates, in subpixels. Note that many input devices are unable to give better precision than a single pixel, so this may be equal to <see cref="Efl.Input.Pointer.Position"/>.
+/// 
+/// See also <see cref="Efl.Input.Pointer.Position"/>.
+/// 1.18</summary>
+/// <value>The position of the event, in pixels.
+/// 1.18</value>
+   public Eina.Vector2 PrecisePosition {
+      get { return GetPrecisePosition(); }
+      set { SetPrecisePosition( value); }
+   }
+   /// <summary>Position of the previous event, valid for move events.
+/// Relative to the window. May be equal to <see cref="Efl.Input.Pointer.Position"/> (by default).
+/// 
+/// This position, in integers, is an approximation of <see cref="Efl.Input.Pointer.GetValue"/>(<c>previous_x</c>), <see cref="Efl.Input.Pointer.GetValue"/>(<c>previous_y</c>). Use <see cref="Efl.Input.Pointer.PreviousPosition"/> if you need simple pixel positions, but prefer the generic interface if you need precise coordinates.
+/// 1.18</summary>
+/// <value>The position of the event, in pixels.
+/// 1.18</value>
+   public Eina.Position2D PreviousPosition {
+      get { return GetPreviousPosition(); }
+      set { SetPreviousPosition( value); }
+   }
+   /// <summary>ID of the tool (eg. pen) that triggered this event.
+/// 1.18</summary>
+/// <value>Tool ID
+/// 1.18</value>
+   public  int Tool {
+      get { return GetTool(); }
+      set { SetTool( value); }
+   }
+   /// <summary>The object where this event first originated, in case of propagation or repetition of the event.
+/// 1.18</summary>
+/// <value>Source object: <see cref="Efl.Gfx.Entity"/>
+/// 1.18</value>
+   public Efl.Object Source {
+      get { return GetSource(); }
+      set { SetSource( value); }
+   }
+   /// <summary>Double or triple click information.
+/// 1.18</summary>
+/// <value>Button information flags
+/// 1.18</value>
+   public Efl.Pointer.Flags ButtonFlags {
+      get { return GetButtonFlags(); }
+      set { SetButtonFlags( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Pointer.ButtonFlags"/> indicates a double click (2nd press).
+/// This is just a helper function around <see cref="Efl.Input.Pointer.ButtonFlags"/>.
+/// 1.18</summary>
+/// <value><c>true</c> if the button press was a double click, <c>false</c> otherwise
+/// 1.18</value>
+   public bool DoubleClick {
+      get { return GetDoubleClick(); }
+      set { SetDoubleClick( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Pointer.ButtonFlags"/> indicates a triple click (3rd press).
+/// This is just a helper function around <see cref="Efl.Input.Pointer.ButtonFlags"/>.
+/// 1.18</summary>
+/// <value><c>true</c> if the button press was a triple click, <c>false</c> otherwise
+/// 1.18</value>
+   public bool TripleClick {
+      get { return GetTripleClick(); }
+      set { SetTripleClick( value); }
+   }
+   /// <summary>Direction of the wheel, usually vertical.
+/// 1.18</summary>
+/// <value>If <c>true</c> this was a horizontal wheel.
+/// 1.18</value>
+   public bool WheelHorizontal {
+      get { return GetWheelHorizontal(); }
+      set { SetWheelHorizontal( value); }
+   }
+   /// <summary>Delta movement of the wheel in discrete steps.
+/// 1.18</summary>
+/// <value>Wheel movement delta
+/// 1.18</value>
+   public  int WheelDelta {
+      get { return GetWheelDelta(); }
+      set { SetWheelDelta( value); }
+   }
+   /// <summary>The time at which an event was generated.
+/// If the event is generated by a server (eg. X.org or Wayland), then the time may be set by the server. Usually this time will be based on the monotonic clock, if available, but this class can not guarantee it.
+/// 1.19</summary>
+/// <value>Time in milliseconds when the event happened.
+/// 1.19</value>
+   public double Timestamp {
+      get { return GetTimestamp(); }
+      set { SetTimestamp( value); }
+   }
+   /// <summary>Input device that originated this event.
+/// 1.19</summary>
+/// <value>Input device origin
+/// 1.19</value>
+   public Efl.Input.Device Device {
+      get { return GetDevice(); }
+      set { SetDevice( value); }
+   }
+   /// <summary>Extra flags for this event, may be changed by the user.
+/// 1.19</summary>
+/// <value>Input event flags
+/// 1.19</value>
+   public Efl.Input.Flags EventFlags {
+      get { return GetEventFlags(); }
+      set { SetEventFlags( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event is on hold.
+/// 1.19</summary>
+/// <value><c>true</c> if the event is on hold, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Processed {
+      get { return GetProcessed(); }
+      set { SetProcessed( value); }
+   }
+   /// <summary><c>true</c> if <see cref="Efl.Input.Event.EventFlags"/> indicates the event happened while scrolling.
+/// 1.19</summary>
+/// <value><c>true</c> if the event happened while scrolling, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Scrolling {
+      get { return GetScrolling(); }
+      set { SetScrolling( value); }
+   }
+   /// <summary><c>true</c> if the event was fake, not triggered by real hardware.
+/// 1.19</summary>
+/// <value><c>true</c> if the event was not from real hardware, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Fake {
+      get { return GetFake(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Pointer.efl_input_pointer_class_get();
+   }
+}
+public class PointerNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_pointer_action_get_static_delegate == null)
+      efl_input_pointer_action_get_static_delegate = new efl_input_pointer_action_get_delegate(action_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_action_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_action_get_static_delegate)});
+      if (efl_input_pointer_action_set_static_delegate == null)
+      efl_input_pointer_action_set_static_delegate = new efl_input_pointer_action_set_delegate(action_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_action_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_action_set_static_delegate)});
+      if (efl_input_pointer_value_has_get_static_delegate == null)
+      efl_input_pointer_value_has_get_static_delegate = new efl_input_pointer_value_has_get_delegate(value_has_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_value_has_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_value_has_get_static_delegate)});
+      if (efl_input_pointer_value_get_static_delegate == null)
+      efl_input_pointer_value_get_static_delegate = new efl_input_pointer_value_get_delegate(value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_value_get_static_delegate)});
+      if (efl_input_pointer_value_set_static_delegate == null)
+      efl_input_pointer_value_set_static_delegate = new efl_input_pointer_value_set_delegate(value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_value_set_static_delegate)});
+      if (efl_input_pointer_button_get_static_delegate == null)
+      efl_input_pointer_button_get_static_delegate = new efl_input_pointer_button_get_delegate(button_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_button_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_button_get_static_delegate)});
+      if (efl_input_pointer_button_set_static_delegate == null)
+      efl_input_pointer_button_set_static_delegate = new efl_input_pointer_button_set_delegate(button_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_button_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_button_set_static_delegate)});
+      if (efl_input_pointer_button_pressed_get_static_delegate == null)
+      efl_input_pointer_button_pressed_get_static_delegate = new efl_input_pointer_button_pressed_get_delegate(button_pressed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_button_pressed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_button_pressed_get_static_delegate)});
+      if (efl_input_pointer_button_pressed_set_static_delegate == null)
+      efl_input_pointer_button_pressed_set_static_delegate = new efl_input_pointer_button_pressed_set_delegate(button_pressed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_button_pressed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_button_pressed_set_static_delegate)});
+      if (efl_input_pointer_position_get_static_delegate == null)
+      efl_input_pointer_position_get_static_delegate = new efl_input_pointer_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_position_get_static_delegate)});
+      if (efl_input_pointer_position_set_static_delegate == null)
+      efl_input_pointer_position_set_static_delegate = new efl_input_pointer_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_position_set_static_delegate)});
+      if (efl_input_pointer_precise_position_get_static_delegate == null)
+      efl_input_pointer_precise_position_get_static_delegate = new efl_input_pointer_precise_position_get_delegate(precise_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_precise_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_precise_position_get_static_delegate)});
+      if (efl_input_pointer_precise_position_set_static_delegate == null)
+      efl_input_pointer_precise_position_set_static_delegate = new efl_input_pointer_precise_position_set_delegate(precise_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_precise_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_precise_position_set_static_delegate)});
+      if (efl_input_pointer_previous_position_get_static_delegate == null)
+      efl_input_pointer_previous_position_get_static_delegate = new efl_input_pointer_previous_position_get_delegate(previous_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_previous_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_previous_position_get_static_delegate)});
+      if (efl_input_pointer_previous_position_set_static_delegate == null)
+      efl_input_pointer_previous_position_set_static_delegate = new efl_input_pointer_previous_position_set_delegate(previous_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_previous_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_previous_position_set_static_delegate)});
+      if (efl_input_pointer_tool_get_static_delegate == null)
+      efl_input_pointer_tool_get_static_delegate = new efl_input_pointer_tool_get_delegate(tool_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_tool_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_tool_get_static_delegate)});
+      if (efl_input_pointer_tool_set_static_delegate == null)
+      efl_input_pointer_tool_set_static_delegate = new efl_input_pointer_tool_set_delegate(tool_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_tool_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_tool_set_static_delegate)});
+      if (efl_input_pointer_source_get_static_delegate == null)
+      efl_input_pointer_source_get_static_delegate = new efl_input_pointer_source_get_delegate(source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_source_get_static_delegate)});
+      if (efl_input_pointer_source_set_static_delegate == null)
+      efl_input_pointer_source_set_static_delegate = new efl_input_pointer_source_set_delegate(source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_source_set_static_delegate)});
+      if (efl_input_pointer_button_flags_get_static_delegate == null)
+      efl_input_pointer_button_flags_get_static_delegate = new efl_input_pointer_button_flags_get_delegate(button_flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_button_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_button_flags_get_static_delegate)});
+      if (efl_input_pointer_button_flags_set_static_delegate == null)
+      efl_input_pointer_button_flags_set_static_delegate = new efl_input_pointer_button_flags_set_delegate(button_flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_button_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_button_flags_set_static_delegate)});
+      if (efl_input_pointer_double_click_get_static_delegate == null)
+      efl_input_pointer_double_click_get_static_delegate = new efl_input_pointer_double_click_get_delegate(double_click_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_double_click_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_double_click_get_static_delegate)});
+      if (efl_input_pointer_double_click_set_static_delegate == null)
+      efl_input_pointer_double_click_set_static_delegate = new efl_input_pointer_double_click_set_delegate(double_click_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_double_click_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_double_click_set_static_delegate)});
+      if (efl_input_pointer_triple_click_get_static_delegate == null)
+      efl_input_pointer_triple_click_get_static_delegate = new efl_input_pointer_triple_click_get_delegate(triple_click_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_triple_click_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_triple_click_get_static_delegate)});
+      if (efl_input_pointer_triple_click_set_static_delegate == null)
+      efl_input_pointer_triple_click_set_static_delegate = new efl_input_pointer_triple_click_set_delegate(triple_click_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_triple_click_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_triple_click_set_static_delegate)});
+      if (efl_input_pointer_wheel_horizontal_get_static_delegate == null)
+      efl_input_pointer_wheel_horizontal_get_static_delegate = new efl_input_pointer_wheel_horizontal_get_delegate(wheel_horizontal_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_wheel_horizontal_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_wheel_horizontal_get_static_delegate)});
+      if (efl_input_pointer_wheel_horizontal_set_static_delegate == null)
+      efl_input_pointer_wheel_horizontal_set_static_delegate = new efl_input_pointer_wheel_horizontal_set_delegate(wheel_horizontal_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_wheel_horizontal_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_wheel_horizontal_set_static_delegate)});
+      if (efl_input_pointer_wheel_delta_get_static_delegate == null)
+      efl_input_pointer_wheel_delta_get_static_delegate = new efl_input_pointer_wheel_delta_get_delegate(wheel_delta_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_wheel_delta_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_wheel_delta_get_static_delegate)});
+      if (efl_input_pointer_wheel_delta_set_static_delegate == null)
+      efl_input_pointer_wheel_delta_set_static_delegate = new efl_input_pointer_wheel_delta_set_delegate(wheel_delta_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_pointer_wheel_delta_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_pointer_wheel_delta_set_static_delegate)});
+      if (efl_duplicate_static_delegate == null)
+      efl_duplicate_static_delegate = new efl_duplicate_delegate(duplicate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_duplicate"), func = Marshal.GetFunctionPointerForDelegate(efl_duplicate_static_delegate)});
+      if (efl_input_timestamp_get_static_delegate == null)
+      efl_input_timestamp_get_static_delegate = new efl_input_timestamp_get_delegate(timestamp_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_get_static_delegate)});
+      if (efl_input_timestamp_set_static_delegate == null)
+      efl_input_timestamp_set_static_delegate = new efl_input_timestamp_set_delegate(timestamp_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_timestamp_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_timestamp_set_static_delegate)});
+      if (efl_input_device_get_static_delegate == null)
+      efl_input_device_get_static_delegate = new efl_input_device_get_delegate(device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_get_static_delegate)});
+      if (efl_input_device_set_static_delegate == null)
+      efl_input_device_set_static_delegate = new efl_input_device_set_delegate(device_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_device_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_device_set_static_delegate)});
+      if (efl_input_event_flags_get_static_delegate == null)
+      efl_input_event_flags_get_static_delegate = new efl_input_event_flags_get_delegate(event_flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_get_static_delegate)});
+      if (efl_input_event_flags_set_static_delegate == null)
+      efl_input_event_flags_set_static_delegate = new efl_input_event_flags_set_delegate(event_flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_event_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_event_flags_set_static_delegate)});
+      if (efl_input_processed_get_static_delegate == null)
+      efl_input_processed_get_static_delegate = new efl_input_processed_get_delegate(processed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_get_static_delegate)});
+      if (efl_input_processed_set_static_delegate == null)
+      efl_input_processed_set_static_delegate = new efl_input_processed_set_delegate(processed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_processed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_processed_set_static_delegate)});
+      if (efl_input_scrolling_get_static_delegate == null)
+      efl_input_scrolling_get_static_delegate = new efl_input_scrolling_get_delegate(scrolling_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_get_static_delegate)});
+      if (efl_input_scrolling_set_static_delegate == null)
+      efl_input_scrolling_set_static_delegate = new efl_input_scrolling_set_delegate(scrolling_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_scrolling_set"), func = Marshal.GetFunctionPointerForDelegate(efl_input_scrolling_set_static_delegate)});
+      if (efl_input_fake_get_static_delegate == null)
+      efl_input_fake_get_static_delegate = new efl_input_fake_get_delegate(fake_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_fake_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_fake_get_static_delegate)});
+      if (efl_input_reset_static_delegate == null)
+      efl_input_reset_static_delegate = new efl_input_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_input_reset_static_delegate)});
+      if (efl_input_modifier_enabled_get_static_delegate == null)
+      efl_input_modifier_enabled_get_static_delegate = new efl_input_modifier_enabled_get_delegate(modifier_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_modifier_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_modifier_enabled_get_static_delegate)});
+      if (efl_input_lock_enabled_get_static_delegate == null)
+      efl_input_lock_enabled_get_static_delegate = new efl_input_lock_enabled_get_delegate(lock_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_lock_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_lock_enabled_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.Pointer.efl_input_pointer_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.Pointer.efl_input_pointer_class_get();
+   }
+
+
+    private delegate Efl.Pointer.Action efl_input_pointer_action_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Pointer.Action efl_input_pointer_action_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_action_get_api_delegate> efl_input_pointer_action_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_action_get_api_delegate>(_Module, "efl_input_pointer_action_get");
+    private static Efl.Pointer.Action action_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_action_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Pointer.Action _ret_var = default(Efl.Pointer.Action);
+         try {
+            _ret_var = ((Pointer)wrapper).GetAction();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_action_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_action_get_delegate efl_input_pointer_action_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_action_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Pointer.Action act);
+
+
+    public delegate  void efl_input_pointer_action_set_api_delegate(System.IntPtr obj,   Efl.Pointer.Action act);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_action_set_api_delegate> efl_input_pointer_action_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_action_set_api_delegate>(_Module, "efl_input_pointer_action_set");
+    private static  void action_set(System.IntPtr obj, System.IntPtr pd,  Efl.Pointer.Action act)
+   {
+      Eina.Log.Debug("function efl_input_pointer_action_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetAction( act);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_action_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  act);
+      }
+   }
+   private static efl_input_pointer_action_set_delegate efl_input_pointer_action_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_pointer_value_has_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Value key);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_pointer_value_has_get_api_delegate(System.IntPtr obj,   Efl.Input.Value key);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_value_has_get_api_delegate> efl_input_pointer_value_has_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_value_has_get_api_delegate>(_Module, "efl_input_pointer_value_has_get");
+    private static bool value_has_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Value key)
+   {
+      Eina.Log.Debug("function efl_input_pointer_value_has_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetValueHas( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_input_pointer_value_has_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_input_pointer_value_has_get_delegate efl_input_pointer_value_has_get_static_delegate;
+
+
+    private delegate double efl_input_pointer_value_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Value key);
+
+
+    public delegate double efl_input_pointer_value_get_api_delegate(System.IntPtr obj,   Efl.Input.Value key);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_value_get_api_delegate> efl_input_pointer_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_value_get_api_delegate>(_Module, "efl_input_pointer_value_get");
+    private static double value_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Value key)
+   {
+      Eina.Log.Debug("function efl_input_pointer_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((Pointer)wrapper).GetValue( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_input_pointer_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_input_pointer_value_get_delegate efl_input_pointer_value_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_pointer_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Value key,   double val);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_pointer_value_set_api_delegate(System.IntPtr obj,   Efl.Input.Value key,   double val);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_value_set_api_delegate> efl_input_pointer_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_value_set_api_delegate>(_Module, "efl_input_pointer_value_set");
+    private static bool value_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Value key,  double val)
+   {
+      Eina.Log.Debug("function efl_input_pointer_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).SetValue( key,  val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_pointer_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  val);
+      }
+   }
+   private static efl_input_pointer_value_set_delegate efl_input_pointer_value_set_static_delegate;
+
+
+    private delegate  int efl_input_pointer_button_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_input_pointer_button_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_button_get_api_delegate> efl_input_pointer_button_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_button_get_api_delegate>(_Module, "efl_input_pointer_button_get");
+    private static  int button_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_button_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Pointer)wrapper).GetButton();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_button_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_button_get_delegate efl_input_pointer_button_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_button_set_delegate(System.IntPtr obj, System.IntPtr pd,    int but);
+
+
+    public delegate  void efl_input_pointer_button_set_api_delegate(System.IntPtr obj,    int but);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_button_set_api_delegate> efl_input_pointer_button_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_button_set_api_delegate>(_Module, "efl_input_pointer_button_set");
+    private static  void button_set(System.IntPtr obj, System.IntPtr pd,   int but)
+   {
+      Eina.Log.Debug("function efl_input_pointer_button_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetButton( but);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_button_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  but);
+      }
+   }
+   private static efl_input_pointer_button_set_delegate efl_input_pointer_button_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_pointer_button_pressed_get_delegate(System.IntPtr obj, System.IntPtr pd,    int button);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_pointer_button_pressed_get_api_delegate(System.IntPtr obj,    int button);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_button_pressed_get_api_delegate> efl_input_pointer_button_pressed_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_button_pressed_get_api_delegate>(_Module, "efl_input_pointer_button_pressed_get");
+    private static bool button_pressed_get(System.IntPtr obj, System.IntPtr pd,   int button)
+   {
+      Eina.Log.Debug("function efl_input_pointer_button_pressed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetButtonPressed( button);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_input_pointer_button_pressed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  button);
+      }
+   }
+   private static efl_input_pointer_button_pressed_get_delegate efl_input_pointer_button_pressed_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_button_pressed_set_delegate(System.IntPtr obj, System.IntPtr pd,    int button,  [MarshalAs(UnmanagedType.U1)]  bool pressed);
+
+
+    public delegate  void efl_input_pointer_button_pressed_set_api_delegate(System.IntPtr obj,    int button,  [MarshalAs(UnmanagedType.U1)]  bool pressed);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_button_pressed_set_api_delegate> efl_input_pointer_button_pressed_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_button_pressed_set_api_delegate>(_Module, "efl_input_pointer_button_pressed_set");
+    private static  void button_pressed_set(System.IntPtr obj, System.IntPtr pd,   int button,  bool pressed)
+   {
+      Eina.Log.Debug("function efl_input_pointer_button_pressed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Pointer)wrapper).SetButtonPressed( button,  pressed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_input_pointer_button_pressed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  button,  pressed);
+      }
+   }
+   private static efl_input_pointer_button_pressed_set_delegate efl_input_pointer_button_pressed_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_input_pointer_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_input_pointer_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_position_get_api_delegate> efl_input_pointer_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_position_get_api_delegate>(_Module, "efl_input_pointer_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Pointer)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_input_pointer_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_position_get_delegate efl_input_pointer_position_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_input_pointer_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_position_set_api_delegate> efl_input_pointer_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_position_set_api_delegate>(_Module, "efl_input_pointer_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_input_pointer_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Pointer)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_input_pointer_position_set_delegate efl_input_pointer_position_set_static_delegate;
+
+
+    private delegate Eina.Vector2_StructInternal efl_input_pointer_precise_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Vector2_StructInternal efl_input_pointer_precise_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_precise_position_get_api_delegate> efl_input_pointer_precise_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_precise_position_get_api_delegate>(_Module, "efl_input_pointer_precise_position_get");
+    private static Eina.Vector2_StructInternal precise_position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_precise_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Vector2 _ret_var = default(Eina.Vector2);
+         try {
+            _ret_var = ((Pointer)wrapper).GetPrecisePosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Vector2_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_input_pointer_precise_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_precise_position_get_delegate efl_input_pointer_precise_position_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_precise_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Vector2_StructInternal pos);
+
+
+    public delegate  void efl_input_pointer_precise_position_set_api_delegate(System.IntPtr obj,   Eina.Vector2_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_precise_position_set_api_delegate> efl_input_pointer_precise_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_precise_position_set_api_delegate>(_Module, "efl_input_pointer_precise_position_set");
+    private static  void precise_position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Vector2_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_input_pointer_precise_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Vector2_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Pointer)wrapper).SetPrecisePosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_precise_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_input_pointer_precise_position_set_delegate efl_input_pointer_precise_position_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_input_pointer_previous_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_input_pointer_previous_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_previous_position_get_api_delegate> efl_input_pointer_previous_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_previous_position_get_api_delegate>(_Module, "efl_input_pointer_previous_position_get");
+    private static Eina.Position2D_StructInternal previous_position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_previous_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Pointer)wrapper).GetPreviousPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_input_pointer_previous_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_previous_position_get_delegate efl_input_pointer_previous_position_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_previous_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_input_pointer_previous_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_previous_position_set_api_delegate> efl_input_pointer_previous_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_previous_position_set_api_delegate>(_Module, "efl_input_pointer_previous_position_set");
+    private static  void previous_position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_input_pointer_previous_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Pointer)wrapper).SetPreviousPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_previous_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_input_pointer_previous_position_set_delegate efl_input_pointer_previous_position_set_static_delegate;
+
+
+    private delegate  int efl_input_pointer_tool_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_input_pointer_tool_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_tool_get_api_delegate> efl_input_pointer_tool_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_tool_get_api_delegate>(_Module, "efl_input_pointer_tool_get");
+    private static  int tool_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_tool_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Pointer)wrapper).GetTool();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_tool_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_tool_get_delegate efl_input_pointer_tool_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_tool_set_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    public delegate  void efl_input_pointer_tool_set_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_tool_set_api_delegate> efl_input_pointer_tool_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_tool_set_api_delegate>(_Module, "efl_input_pointer_tool_set");
+    private static  void tool_set(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_input_pointer_tool_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetTool( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_tool_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_input_pointer_tool_set_delegate efl_input_pointer_tool_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_input_pointer_source_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_input_pointer_source_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_source_get_api_delegate> efl_input_pointer_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_source_get_api_delegate>(_Module, "efl_input_pointer_source_get");
+    private static Efl.Object source_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Pointer)wrapper).GetSource();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_source_get_delegate efl_input_pointer_source_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_source_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object src);
+
+
+    public delegate  void efl_input_pointer_source_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object src);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_source_set_api_delegate> efl_input_pointer_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_source_set_api_delegate>(_Module, "efl_input_pointer_source_set");
+    private static  void source_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object src)
+   {
+      Eina.Log.Debug("function efl_input_pointer_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetSource( src);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  src);
+      }
+   }
+   private static efl_input_pointer_source_set_delegate efl_input_pointer_source_set_static_delegate;
+
+
+    private delegate Efl.Pointer.Flags efl_input_pointer_button_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Pointer.Flags efl_input_pointer_button_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_button_flags_get_api_delegate> efl_input_pointer_button_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_button_flags_get_api_delegate>(_Module, "efl_input_pointer_button_flags_get");
+    private static Efl.Pointer.Flags button_flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_button_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Pointer.Flags _ret_var = default(Efl.Pointer.Flags);
+         try {
+            _ret_var = ((Pointer)wrapper).GetButtonFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_button_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_button_flags_get_delegate efl_input_pointer_button_flags_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_button_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Pointer.Flags flags);
+
+
+    public delegate  void efl_input_pointer_button_flags_set_api_delegate(System.IntPtr obj,   Efl.Pointer.Flags flags);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_button_flags_set_api_delegate> efl_input_pointer_button_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_button_flags_set_api_delegate>(_Module, "efl_input_pointer_button_flags_set");
+    private static  void button_flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.Pointer.Flags flags)
+   {
+      Eina.Log.Debug("function efl_input_pointer_button_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetButtonFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_button_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_input_pointer_button_flags_set_delegate efl_input_pointer_button_flags_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_pointer_double_click_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_pointer_double_click_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_double_click_get_api_delegate> efl_input_pointer_double_click_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_double_click_get_api_delegate>(_Module, "efl_input_pointer_double_click_get");
+    private static bool double_click_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_double_click_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetDoubleClick();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_double_click_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_double_click_get_delegate efl_input_pointer_double_click_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_double_click_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_pointer_double_click_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_double_click_set_api_delegate> efl_input_pointer_double_click_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_double_click_set_api_delegate>(_Module, "efl_input_pointer_double_click_set");
+    private static  void double_click_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_pointer_double_click_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetDoubleClick( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_double_click_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_pointer_double_click_set_delegate efl_input_pointer_double_click_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_pointer_triple_click_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_pointer_triple_click_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_triple_click_get_api_delegate> efl_input_pointer_triple_click_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_triple_click_get_api_delegate>(_Module, "efl_input_pointer_triple_click_get");
+    private static bool triple_click_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_triple_click_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetTripleClick();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_triple_click_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_triple_click_get_delegate efl_input_pointer_triple_click_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_triple_click_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_pointer_triple_click_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_triple_click_set_api_delegate> efl_input_pointer_triple_click_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_triple_click_set_api_delegate>(_Module, "efl_input_pointer_triple_click_set");
+    private static  void triple_click_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_pointer_triple_click_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetTripleClick( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_triple_click_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_pointer_triple_click_set_delegate efl_input_pointer_triple_click_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_pointer_wheel_horizontal_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_pointer_wheel_horizontal_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_horizontal_get_api_delegate> efl_input_pointer_wheel_horizontal_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_horizontal_get_api_delegate>(_Module, "efl_input_pointer_wheel_horizontal_get");
+    private static bool wheel_horizontal_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_wheel_horizontal_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetWheelHorizontal();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_wheel_horizontal_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_wheel_horizontal_get_delegate efl_input_pointer_wheel_horizontal_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_wheel_horizontal_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horizontal);
+
+
+    public delegate  void efl_input_pointer_wheel_horizontal_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horizontal);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_horizontal_set_api_delegate> efl_input_pointer_wheel_horizontal_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_horizontal_set_api_delegate>(_Module, "efl_input_pointer_wheel_horizontal_set");
+    private static  void wheel_horizontal_set(System.IntPtr obj, System.IntPtr pd,  bool horizontal)
+   {
+      Eina.Log.Debug("function efl_input_pointer_wheel_horizontal_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetWheelHorizontal( horizontal);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_wheel_horizontal_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horizontal);
+      }
+   }
+   private static efl_input_pointer_wheel_horizontal_set_delegate efl_input_pointer_wheel_horizontal_set_static_delegate;
+
+
+    private delegate  int efl_input_pointer_wheel_delta_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_input_pointer_wheel_delta_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_delta_get_api_delegate> efl_input_pointer_wheel_delta_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_delta_get_api_delegate>(_Module, "efl_input_pointer_wheel_delta_get");
+    private static  int wheel_delta_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_pointer_wheel_delta_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Pointer)wrapper).GetWheelDelta();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_pointer_wheel_delta_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_pointer_wheel_delta_get_delegate efl_input_pointer_wheel_delta_get_static_delegate;
+
+
+    private delegate  void efl_input_pointer_wheel_delta_set_delegate(System.IntPtr obj, System.IntPtr pd,    int dist);
+
+
+    public delegate  void efl_input_pointer_wheel_delta_set_api_delegate(System.IntPtr obj,    int dist);
+    public static Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_delta_set_api_delegate> efl_input_pointer_wheel_delta_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_pointer_wheel_delta_set_api_delegate>(_Module, "efl_input_pointer_wheel_delta_set");
+    private static  void wheel_delta_set(System.IntPtr obj, System.IntPtr pd,   int dist)
+   {
+      Eina.Log.Debug("function efl_input_pointer_wheel_delta_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetWheelDelta( dist);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_pointer_wheel_delta_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dist);
+      }
+   }
+   private static efl_input_pointer_wheel_delta_set_delegate efl_input_pointer_wheel_delta_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] private delegate Efl.Duplicate efl_duplicate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.DuplicateConcrete, Efl.Eo.OwnTag>))] public delegate Efl.Duplicate efl_duplicate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate> efl_duplicate_ptr = new Efl.Eo.FunctionWrapper<efl_duplicate_api_delegate>(_Module, "efl_duplicate");
+    private static Efl.Duplicate duplicate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_duplicate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Duplicate _ret_var = default(Efl.Duplicate);
+         try {
+            _ret_var = ((Pointer)wrapper).DoDuplicate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_duplicate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_duplicate_delegate efl_duplicate_static_delegate;
+
+
+    private delegate double efl_input_timestamp_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_input_timestamp_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate> efl_input_timestamp_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_get_api_delegate>(_Module, "efl_input_timestamp_get");
+    private static double timestamp_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Pointer)wrapper).GetTimestamp();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_timestamp_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_timestamp_get_delegate efl_input_timestamp_get_static_delegate;
+
+
+    private delegate  void efl_input_timestamp_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ms);
+
+
+    public delegate  void efl_input_timestamp_set_api_delegate(System.IntPtr obj,   double ms);
+    public static Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate> efl_input_timestamp_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_timestamp_set_api_delegate>(_Module, "efl_input_timestamp_set");
+    private static  void timestamp_set(System.IntPtr obj, System.IntPtr pd,  double ms)
+   {
+      Eina.Log.Debug("function efl_input_timestamp_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetTimestamp( ms);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_timestamp_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ms);
+      }
+   }
+   private static efl_input_timestamp_set_delegate efl_input_timestamp_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_input_device_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_input_device_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate> efl_input_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_get_api_delegate>(_Module, "efl_input_device_get");
+    private static Efl.Input.Device device_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Pointer)wrapper).GetDevice();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_device_get_delegate efl_input_device_get_static_delegate;
+
+
+    private delegate  void efl_input_device_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+
+
+    public delegate  void efl_input_device_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device dev);
+    public static Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate> efl_input_device_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_device_set_api_delegate>(_Module, "efl_input_device_set");
+    private static  void device_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device dev)
+   {
+      Eina.Log.Debug("function efl_input_device_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetDevice( dev);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_device_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dev);
+      }
+   }
+   private static efl_input_device_set_delegate efl_input_device_set_static_delegate;
+
+
+    private delegate Efl.Input.Flags efl_input_event_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Input.Flags efl_input_event_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate> efl_input_event_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_get_api_delegate>(_Module, "efl_input_event_flags_get");
+    private static Efl.Input.Flags event_flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Flags _ret_var = default(Efl.Input.Flags);
+         try {
+            _ret_var = ((Pointer)wrapper).GetEventFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_event_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_event_flags_get_delegate efl_input_event_flags_get_static_delegate;
+
+
+    private delegate  void efl_input_event_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Flags flags);
+
+
+    public delegate  void efl_input_event_flags_set_api_delegate(System.IntPtr obj,   Efl.Input.Flags flags);
+    public static Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate> efl_input_event_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_event_flags_set_api_delegate>(_Module, "efl_input_event_flags_set");
+    private static  void event_flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Flags flags)
+   {
+      Eina.Log.Debug("function efl_input_event_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetEventFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_event_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_input_event_flags_set_delegate efl_input_event_flags_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_processed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_processed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate> efl_input_processed_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_get_api_delegate>(_Module, "efl_input_processed_get");
+    private static bool processed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_processed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetProcessed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_processed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_processed_get_delegate efl_input_processed_get_static_delegate;
+
+
+    private delegate  void efl_input_processed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_processed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate> efl_input_processed_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_processed_set_api_delegate>(_Module, "efl_input_processed_set");
+    private static  void processed_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_processed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetProcessed( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_processed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_processed_set_delegate efl_input_processed_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_scrolling_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_scrolling_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate> efl_input_scrolling_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_get_api_delegate>(_Module, "efl_input_scrolling_get");
+    private static bool scrolling_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetScrolling();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_scrolling_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_scrolling_get_delegate efl_input_scrolling_get_static_delegate;
+
+
+    private delegate  void efl_input_scrolling_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_input_scrolling_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate> efl_input_scrolling_set_ptr = new Efl.Eo.FunctionWrapper<efl_input_scrolling_set_api_delegate>(_Module, "efl_input_scrolling_set");
+    private static  void scrolling_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_input_scrolling_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pointer)wrapper).SetScrolling( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_input_scrolling_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_input_scrolling_set_delegate efl_input_scrolling_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_fake_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_fake_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate> efl_input_fake_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_fake_get_api_delegate>(_Module, "efl_input_fake_get");
+    private static bool fake_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_fake_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetFake();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_input_fake_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_fake_get_delegate efl_input_fake_get_static_delegate;
+
+
+    private delegate  void efl_input_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_input_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate> efl_input_reset_ptr = new Efl.Eo.FunctionWrapper<efl_input_reset_api_delegate>(_Module, "efl_input_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_input_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Pointer)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_input_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_input_reset_delegate efl_input_reset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_modifier_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_modifier_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate> efl_input_modifier_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate>(_Module, "efl_input_modifier_enabled_get");
+    private static bool modifier_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Modifier mod,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_modifier_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetModifierEnabled( mod,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_modifier_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mod,  seat);
+      }
+   }
+   private static efl_input_modifier_enabled_get_delegate efl_input_modifier_enabled_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_lock_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_lock_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate> efl_input_lock_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate>(_Module, "efl_input_lock_enabled_get");
+    private static bool lock_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Lock kw_lock,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_lock_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pointer)wrapper).GetLockEnabled( kw_lock,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_lock_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_lock,  seat);
+      }
+   }
+   private static efl_input_lock_enabled_get_delegate efl_input_lock_enabled_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_state.eo.cs b/internals/src/EflSharp/EflSharp/efl_input_state.eo.cs
new file mode 100755 (executable)
index 0000000..3a70f29
--- /dev/null
@@ -0,0 +1,190 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Input { 
+/// <summary>Efl input state interface</summary>
+[StateNativeInherit]
+public interface State : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Indicates whether a key modifier is on, such as Ctrl, Shift, ...</summary>
+/// <param name="mod">The modifier key to test.</param>
+/// <param name="seat">The seat device, may be <c>null</c></param>
+/// <returns><c>true</c> if the key modifier is pressed.</returns>
+bool GetModifierEnabled( Efl.Input.Modifier mod,  Efl.Input.Device seat);
+   /// <summary>Indicates whether a key lock is on, such as NumLock, CapsLock, ...</summary>
+/// <param name="kw_lock">The lock key to test.</param>
+/// <param name="seat">The seat device, may be <c>null</c></param>
+/// <returns><c>true</c> if the key lock is on.</returns>
+bool GetLockEnabled( Efl.Input.Lock kw_lock,  Efl.Input.Device seat);
+      }
+/// <summary>Efl input state interface</summary>
+sealed public class StateConcrete : 
+
+State
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (StateConcrete))
+            return Efl.Input.StateNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Evas)] internal static extern System.IntPtr
+      efl_input_state_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public StateConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~StateConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static StateConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new StateConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Indicates whether a key modifier is on, such as Ctrl, Shift, ...</summary>
+   /// <param name="mod">The modifier key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key modifier is pressed.</returns>
+   public bool GetModifierEnabled( Efl.Input.Modifier mod,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_modifier_enabled_get_ptr.Value.Delegate(this.NativeHandle, mod,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Indicates whether a key lock is on, such as NumLock, CapsLock, ...</summary>
+   /// <param name="kw_lock">The lock key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key lock is on.</returns>
+   public bool GetLockEnabled( Efl.Input.Lock kw_lock,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_lock_enabled_get_ptr.Value.Delegate(this.NativeHandle, kw_lock,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+}
+public class StateNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Evas);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_input_modifier_enabled_get_static_delegate == null)
+      efl_input_modifier_enabled_get_static_delegate = new efl_input_modifier_enabled_get_delegate(modifier_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_modifier_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_modifier_enabled_get_static_delegate)});
+      if (efl_input_lock_enabled_get_static_delegate == null)
+      efl_input_lock_enabled_get_static_delegate = new efl_input_lock_enabled_get_delegate(lock_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_lock_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_lock_enabled_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Input.StateConcrete.efl_input_state_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Input.StateConcrete.efl_input_state_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_modifier_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_modifier_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate> efl_input_modifier_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate>(_Module, "efl_input_modifier_enabled_get");
+    private static bool modifier_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Modifier mod,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_modifier_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((State)wrapper).GetModifierEnabled( mod,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_modifier_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mod,  seat);
+      }
+   }
+   private static efl_input_modifier_enabled_get_delegate efl_input_modifier_enabled_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_lock_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_lock_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate> efl_input_lock_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate>(_Module, "efl_input_lock_enabled_get");
+    private static bool lock_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Lock kw_lock,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_lock_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((State)wrapper).GetLockEnabled( kw_lock,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_lock_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_lock,  seat);
+      }
+   }
+   private static efl_input_lock_enabled_get_delegate efl_input_lock_enabled_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_input_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_input_types.eot.cs
new file mode 100755 (executable)
index 0000000..68e24dd
--- /dev/null
@@ -0,0 +1,181 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Pointer { 
+/// <summary>Pointer event type. Represents which kind of event this is.
+/// 1.19</summary>
+public enum Action
+{
+/// <summary>Not a valid event, or nothing new happened (eg. when querying current state of touch points).</summary>
+None = 0,
+/// <summary>Mouse or equivalent pointer moved.</summary>
+Move = 1,
+/// <summary>Mouse button or equivalent pointer pressed down. Always followed by up or cancel.</summary>
+Down = 2,
+/// <summary>Mouse button or equivalent pointer released. See also cancel.</summary>
+Up = 3,
+/// <summary>Special event happening after a down if the up counterpart can not happen (eg. another window forcibly stole the focus).</summary>
+Cancel = 4,
+/// <summary>Mouse or pointer entered the object.</summary>
+In = 5,
+/// <summary>Mouse or pointer exited the object.</summary>
+Out = 6,
+/// <summary>Mouse wheel scroll, horizontally or vertically.</summary>
+Wheel = 7,
+/// <summary>Axis event (pen, stick, ...).</summary>
+Axis = 8,
+}
+} } 
+namespace Efl { namespace Pointer { 
+/// <summary>Pointer flags indicating whether a double or triple click is under way.
+/// 1.19</summary>
+public enum Flags
+{
+/// <summary>No extra mouse button data</summary>
+None = 0,
+/// <summary>This mouse button press was the 2nd press of a double click</summary>
+DoubleClick = 1,
+/// <summary>This mouse button press was the 3rd press of a triple click</summary>
+TripleClick = 2,
+}
+} } 
+namespace Efl { namespace Input { 
+/// <summary>Special flags set during an input event propagation.
+/// 1.19</summary>
+public enum Flags
+{
+/// <summary>No fancy flags set</summary>
+None = 0,
+/// <summary>This event is being delivered and has been processed, so it should be put &quot;on hold&quot; until the flag is unset. The event should be used for informational purposes and maybe some indications visually, but not actually perform anything.</summary>
+Processed = 1,
+/// <summary>This event flag indicates the event occurs while scrolling; for example, DOWN event occurs during scrolling. The event should be used for informational purposes and maybe some indications visually, but not actually perform anything.</summary>
+Scrolling = 2,
+}
+} } 
+namespace Efl { namespace Input { 
+/// <summary>How the mouse pointer should be handled by EFL.
+/// In the mode <c>autograb</c>, when a mouse button is pressed down over an object and held down, with the mouse pointer being moved outside of it, the pointer still behaves as being bound to that object, albeit out of its drawing region. When the button is released, the event will be fed to the object, that may check if the final position is over it or not and do something about it.
+/// 
+/// In the mode <c>nograb</c>, the pointer will always be bound to the object right below it.
+/// 1.19</summary>
+public enum ObjectPointerMode
+{
+/// <summary>Default, X11-like.</summary>
+AutoGrab = 0,
+/// <summary>Pointer always bound to the object right below it.</summary>
+NoGrab = 1,
+/// <summary>Useful on object with &quot;repeat events&quot; enabled, where mouse/touch up and down events WON&apos;T be repeated to objects and these objects wont be auto-grabbed.
+/// 1.2</summary>
+NoGrabNoRepeatUpdown = 2,
+}
+} } 
+namespace Efl { namespace Input { 
+/// <summary>Keys for the generic values of all events.
+/// 1.19</summary>
+public enum Value
+{
+/// <summary>Not a valid value type.</summary>
+None = 0,
+/// <summary>Timestamp of this event in seconds.</summary>
+Timestamp = 1,
+/// <summary>ID of the button that triggered this event (unsigned int). Prefer the method <c>button</c> to read this value. Default: 0.</summary>
+Button = 2,
+/// <summary>32-bit bit mask (unsigned int). Prefer the method <c>buttons_pressed</c> to read this value. Default: 0.</summary>
+ButtonsPressed = 3,
+/// <summary>ID of the finger or tool (eg. pen) that triggered this event. Prefer the property <c>tool</c> to read this value. Default: 0.</summary>
+Tool = 4,
+/// <summary>Absolute X position where this event occurred, in pixels. Relative to the window. Default: last known position. This value may be smoothed out or even extrapolated by EFL.</summary>
+X = 5,
+/// <summary>Absolute Y position where this event occurred, in pixels. Relative to the window. Default: last known position. This value may be smoothed out or even extrapolated by EFL.</summary>
+Y = 6,
+/// <summary>Relative X movement, in pixels. Range: unbounded. Default: 0.</summary>
+Dx = 7,
+/// <summary>Relative Y movement, in pixels. Range: unbounded. Default: 0.</summary>
+Dy = 8,
+/// <summary>Previous X position of the pointer, in pixels. Default: last known position, may be equal to x.</summary>
+PreviousX = 9,
+/// <summary>Previous Y position of the pointer, in pixels. Default: last known position, may be equal to y.</summary>
+PreviousY = 10,
+/// <summary>Absolute X position where this event occurred. Default: 0. This value will be set from the hardware input without any smoothing or extrapolation. For an axis input event, this is the raw value set by the driver (undefined range and unit).</summary>
+RawX = 11,
+/// <summary>Absolute X position where this event occurred. Default: 0. This value will be set from the hardware input without any smoothing or extrapolation. For an axis input event, this is the raw value set by the driver (undefined range and unit).</summary>
+RawY = 12,
+/// <summary>Average radius of the pressed area under a finger or tool, in pixels. Default is 1.</summary>
+Radius = 13,
+/// <summary>Spread over X of the pressed area under a finger or tool, in pixels. Default is 1.</summary>
+RadiusX = 14,
+/// <summary>Spread over Y of the pressed area under a finger or tool, in pixels. Default is 1.</summary>
+RadiusY = 15,
+/// <summary>Pressure applied to the button, touch or pen tip. Range: [0, 1]. Default is 1.</summary>
+Pressure = 16,
+/// <summary>Relative distance along physical Z axis. Range: [0, 1]. Default is 0.</summary>
+Distance = 17,
+/// <summary>Angle of tool about the Z axis from positive X axis. Range: [-PI, PI]. Unit: Radians.</summary>
+Azimuth = 18,
+/// <summary>Angle of tool about plane of sensor from positive Z axis. Range: [0.0, PI]. Unit: Radians.</summary>
+Tilt = 19,
+/// <summary>Current tilt along the X axis of the tablet&apos;s current logical orientation, in radians off the tablet&apos;s Z axis. Range: [-PI, PI]. Unit: Radians.</summary>
+TiltX = 20,
+/// <summary>Current tilt along the Y axis of the tablet&apos;s current logical orientation, in radians off the tablet&apos;s Z axis. Range: [-PI, PI]. Unit: Radians.</summary>
+TiltY = 21,
+/// <summary>Rotation of tool about its major axis from its &quot;natural&quot; position. Range: [-PI, PI] Unit: Radians.</summary>
+Twist = 22,
+/// <summary>Delta movement of the wheel in discrete steps (int). Default: 0.</summary>
+WheelDelta = 23,
+/// <summary>Delta movement of the wheel in radians. Default: 0.</summary>
+WheelAngle = 24,
+/// <summary>Direction of the wheel (horizontal = 1 or vertical = 0). Default: 0. Prefer the property <c>wheel_horizontal</c> to read.</summary>
+WheelHorizontal = 25,
+/// <summary>Current position of the slider on the tool. Range: [-1, 1]. Default: 0.</summary>
+Slider = 26,
+}
+} } 
+namespace Efl { namespace Input { 
+/// <summary>Key modifiers such as Control, Alt, etc...
+/// This enum may be used as a bitmask with OR operations, depending on the API.
+/// 
+/// The available keys may vary depending on the physical keyboard layout, or language and keyboard settings, or depending on the platform.
+/// 1.20</summary>
+public enum Modifier
+{
+/// <summary>No key modifier</summary>
+None = 0,
+/// <summary>Alt key modifier</summary>
+Alt = 1,
+/// <summary>Control key modifier (&quot;Ctrl&quot; key)</summary>
+Control = 2,
+/// <summary>Shift key modifier</summary>
+Shift = 4,
+/// <summary>Meta key modifier (often the &quot;Windows&quot; key)</summary>
+Meta = 8,
+/// <summary>AltGr key modifier (not present on all keyboards)</summary>
+Altgr = 16,
+/// <summary>Hyper key modifier (may be &quot;Windows&quot; key)</summary>
+Hyper = 32,
+/// <summary>Super key modifier (may be &quot;Windows&quot; key)</summary>
+Super = 64,
+}
+} } 
+namespace Efl { namespace Input { 
+/// <summary>Key locks such as Num Lock, Scroll Lock and Caps Lock.
+/// This enum may be used as a bitmask with OR operations, depending on the API.
+/// 
+/// The available keys may vary depending on the physical keyboard layout, or language and keyboard settings, or depending on the platform.
+/// 1.20</summary>
+public enum Lock
+{
+/// <summary>No key modifier</summary>
+None = 0,
+/// <summary>Num Lock for numeric key pad use</summary>
+Num = 1,
+/// <summary>Caps Lock for writing in all caps</summary>
+Caps = 2,
+/// <summary>Scroll Lock</summary>
+Scroll = 4,
+/// <summary>Shift Lock</summary>
+Shift = 8,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..dba979e
--- /dev/null
@@ -0,0 +1,146 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl interpolator interface</summary>
+[InterpolatorNativeInherit]
+public interface Interpolator : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Interpolate the given value.</summary>
+/// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+/// <returns>Output value calculated by interpolating the input value.</returns>
+double Interpolate( double progress);
+   }
+/// <summary>Efl interpolator interface</summary>
+sealed public class InterpolatorConcrete : 
+
+Interpolator
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (InterpolatorConcrete))
+            return Efl.InterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_interpolator_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public InterpolatorConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~InterpolatorConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static InterpolatorConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new InterpolatorConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate(this.NativeHandle, progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+}
+public class InterpolatorNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.InterpolatorConcrete.efl_interpolator_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.InterpolatorConcrete.efl_interpolator_interface_get();
+   }
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((Interpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_io_buffer.eo.cs b/internals/src/EflSharp/EflSharp/efl_io_buffer.eo.cs
new file mode 100755 (executable)
index 0000000..a3769d5
--- /dev/null
@@ -0,0 +1,1827 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Io { 
+/// <summary>Generic In-memory buffer of data to be used as I/O.
+/// This class offers both input and output, which can be used at the same time since <see cref="Efl.Io.Reader.Read"/> and <see cref="Efl.Io.Writer.Write"/> use different offsets/position internally.
+/// 
+/// One can get temporary direct access to internal buffer with <see cref="Efl.Io.Buffer.GetSlice"/> or steal the buffer with <see cref="Efl.Io.Buffer.BinbufSteal"/>.
+/// 
+/// A fixed sized buffer can be implemented by setting <see cref="Efl.Io.Buffer.Limit"/> followed by <see cref="Efl.Io.Buffer.Preallocate"/>
+/// 1.19</summary>
+[BufferNativeInherit]
+public class Buffer : Efl.Object, Efl.Eo.IWrapper,Efl.Io.Closer,Efl.Io.Positioner,Efl.Io.Reader,Efl.Io.Sizer,Efl.Io.Writer
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Io.BufferNativeInherit nativeInherit = new Efl.Io.BufferNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Buffer))
+            return Efl.Io.BufferNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_io_buffer_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Buffer(Efl.Object parent= null
+         ) :
+      base(efl_io_buffer_class_get(), typeof(Buffer), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Buffer(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Buffer(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Buffer static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Buffer(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object Position_readChangedEvtKey = new object();
+   /// <summary>Notifies <see cref="Efl.Io.Buffer.PositionRead"/> changed
+   /// 1.19</summary>
+   public event EventHandler Position_readChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_BUFFER_EVENT_POSITION_READ_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Position_readChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Position_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_BUFFER_EVENT_POSITION_READ_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Position_readChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Position_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Position_readChangedEvt.</summary>
+   public void On_Position_readChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Position_readChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Position_readChangedEvt_delegate;
+   private void on_Position_readChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Position_readChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Position_writeChangedEvtKey = new object();
+   /// <summary>Notifies <see cref="Efl.Io.Buffer.PositionWrite"/> changed
+   /// 1.19</summary>
+   public event EventHandler Position_writeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_BUFFER_EVENT_POSITION_WRITE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Position_writeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Position_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_BUFFER_EVENT_POSITION_WRITE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Position_writeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Position_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Position_writeChangedEvt.</summary>
+   public void On_Position_writeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Position_writeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Position_writeChangedEvt_delegate;
+   private void on_Position_writeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Position_writeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ReallocatedEvtKey = new object();
+   /// <summary>Notifies the internal buffer was reallocated, thus whatever was returned by <see cref="Efl.Io.Buffer.GetSlice"/> becomes invalid
+   /// 1.19</summary>
+   public event EventHandler ReallocatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_BUFFER_EVENT_REALLOCATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ReallocatedEvt_delegate)) {
+               eventHandlers.AddHandler(ReallocatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_BUFFER_EVENT_REALLOCATED";
+            if (remove_cpp_event_handler(key, this.evt_ReallocatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ReallocatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ReallocatedEvt.</summary>
+   public void On_ReallocatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ReallocatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ReallocatedEvt_delegate;
+   private void on_ReallocatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ReallocatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClosedEvtKey = new object();
+   /// <summary>Notifies closed, when property is marked as true
+   /// 1.19</summary>
+   public event EventHandler ClosedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClosedEvt_delegate)) {
+               eventHandlers.AddHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (remove_cpp_event_handler(key, this.evt_ClosedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClosedEvt.</summary>
+   public void On_ClosedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClosedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClosedEvt_delegate;
+   private void on_ClosedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClosedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Notifies position changed
+   /// 1.19</summary>
+   public event EventHandler PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_POSITIONER_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_POSITIONER_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_readChangedEvtKey = new object();
+   /// <summary>Notifies can_read property changed.
+   /// If <see cref="Efl.Io.Reader.CanRead"/> is <c>true</c> there is data to <see cref="Efl.Io.Reader.Read"/> without blocking/error. If <see cref="Efl.Io.Reader.CanRead"/> is <c>false</c>, <see cref="Efl.Io.Reader.Read"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Reader.Read"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> Can_readChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_readChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_readChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_readChangedEvt.</summary>
+   public void On_Can_readChangedEvt(Efl.Io.ReaderCan_readChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args>)eventHandlers[Can_readChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_readChangedEvt_delegate;
+   private void on_Can_readChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.ReaderCan_readChangedEvt_Args args = new Efl.Io.ReaderCan_readChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_readChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EosEvtKey = new object();
+   /// <summary>Notifies end of stream, when property is marked as true.
+   /// If this is used alongside with an <see cref="Efl.Io.Closer"/>, then it should be emitted before that call.
+   /// 
+   /// It should be emitted only once for an object unless it implements <see cref="Efl.Io.Positioner.Seek"/>.
+   /// 
+   /// The property <see cref="Efl.Io.Reader.CanRead"/> should change to <c>false</c> before this event is dispatched.
+   /// 1.19</summary>
+   public event EventHandler EosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EosEvt_delegate)) {
+               eventHandlers.AddHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (remove_cpp_event_handler(key, this.evt_EosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EosEvt.</summary>
+   public void On_EosEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EosEvt_delegate;
+   private void on_EosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Notifies size changed
+   /// 1.19</summary>
+   public event EventHandler SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_SIZER_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_SIZER_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_writeChangedEvtKey = new object();
+   /// <summary>Notifies can_write property changed.
+   /// If <see cref="Efl.Io.Writer.CanWrite"/> is <c>true</c> there is data to <see cref="Efl.Io.Writer.Write"/> without blocking/error. If <see cref="Efl.Io.Writer.CanWrite"/> is <c>false</c>, <see cref="Efl.Io.Writer.Write"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Writer.Write"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> Can_writeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_writeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_writeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_writeChangedEvt.</summary>
+   public void On_Can_writeChangedEvt(Efl.Io.WriterCan_writeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args>)eventHandlers[Can_writeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_writeChangedEvt_delegate;
+   private void on_Can_writeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.WriterCan_writeChangedEvt_Args args = new Efl.Io.WriterCan_writeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_writeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_Position_readChangedEvt_delegate = new Efl.EventCb(on_Position_readChangedEvt_NativeCallback);
+      evt_Position_writeChangedEvt_delegate = new Efl.EventCb(on_Position_writeChangedEvt_NativeCallback);
+      evt_ReallocatedEvt_delegate = new Efl.EventCb(on_ReallocatedEvt_NativeCallback);
+      evt_ClosedEvt_delegate = new Efl.EventCb(on_ClosedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_Can_readChangedEvt_delegate = new Efl.EventCb(on_Can_readChangedEvt_NativeCallback);
+      evt_EosEvt_delegate = new Efl.EventCb(on_EosEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+      evt_Can_writeChangedEvt_delegate = new Efl.EventCb(on_Can_writeChangedEvt_NativeCallback);
+   }
+   /// <summary>Limit how big the buffer can grow.
+   /// This affects both <see cref="Efl.Io.Buffer.Preallocate"/> and how buffer grows when <see cref="Efl.Io.Writer.Write"/> is called.
+   /// 
+   /// If you want a buffer of an exact size always set the limit before any further calls that can expand it.
+   /// 1.19</summary>
+   /// <returns>Defines a maximum buffer size, or 0 to allow unlimited amount of bytes
+   /// 1.19</returns>
+   virtual public  uint GetLimit() {
+       var _ret_var = Efl.Io.BufferNativeInherit.efl_io_buffer_limit_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Constructor-only property to set buffer limit. 0 is unlimited
+   /// 1.19</summary>
+   /// <param name="size">Defines a maximum buffer size, or 0 to allow unlimited amount of bytes
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetLimit(  uint size) {
+                         Efl.Io.BufferNativeInherit.efl_io_buffer_limit_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The position used by <see cref="Efl.Io.Reader.Read"/>.
+   /// Note that <see cref="Efl.Io.Positioner.Seek"/> or <see cref="Efl.Io.Positioner.SetPosition"/> will affect this property and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+   /// 
+   /// <see cref="Efl.Io.Positioner.GetPosition"/> will return the greatest of <see cref="Efl.Io.Buffer.PositionRead"/> and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+   /// 1.19</summary>
+   /// <returns>Position in buffer
+   /// 1.19</returns>
+   virtual public  ulong GetPositionRead() {
+       var _ret_var = Efl.Io.BufferNativeInherit.efl_io_buffer_position_read_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The position used by <see cref="Efl.Io.Reader.Read"/>.
+   /// Note that <see cref="Efl.Io.Positioner.Seek"/> or <see cref="Efl.Io.Positioner.SetPosition"/> will affect this property and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+   /// 
+   /// <see cref="Efl.Io.Positioner.GetPosition"/> will return the greatest of <see cref="Efl.Io.Buffer.PositionRead"/> and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+   /// 1.19</summary>
+   /// <param name="position">Position in buffer
+   /// 1.19</param>
+   /// <returns><c>true</c> if setting the position succeeded, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool SetPositionRead(  ulong position) {
+                         var _ret_var = Efl.Io.BufferNativeInherit.efl_io_buffer_position_read_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), position);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The position used by <see cref="Efl.Io.Writer.Write"/>.
+   /// Note that <see cref="Efl.Io.Positioner.Seek"/> or <see cref="Efl.Io.Positioner.SetPosition"/> will affect this property and <see cref="Efl.Io.Buffer.PositionRead"/>.
+   /// 
+   /// <see cref="Efl.Io.Positioner.GetPosition"/> will return the greatest of <see cref="Efl.Io.Buffer.PositionRead"/> and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+   /// 1.19</summary>
+   /// <returns>Position in buffer
+   /// 1.19</returns>
+   virtual public  ulong GetPositionWrite() {
+       var _ret_var = Efl.Io.BufferNativeInherit.efl_io_buffer_position_write_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The position used by <see cref="Efl.Io.Writer.Write"/>.
+   /// Note that <see cref="Efl.Io.Positioner.Seek"/> or <see cref="Efl.Io.Positioner.SetPosition"/> will affect this property and <see cref="Efl.Io.Buffer.PositionRead"/>.
+   /// 
+   /// <see cref="Efl.Io.Positioner.GetPosition"/> will return the greatest of <see cref="Efl.Io.Buffer.PositionRead"/> and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+   /// 1.19</summary>
+   /// <param name="position">Position in buffer
+   /// 1.19</param>
+   /// <returns><c>true</c> if setting the position succeeded, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool SetPositionWrite(  ulong position) {
+                         var _ret_var = Efl.Io.BufferNativeInherit.efl_io_buffer_position_write_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), position);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get a temporary access to buffer&apos;s internal memory.
+   /// The memory pointed by slice may be changed by other methods of this class. The event &quot;reallocated&quot; will be called in those situations.
+   /// 1.19</summary>
+   /// <returns>Slice of the current buffer, may be invalidated if <see cref="Efl.Io.Writer.Write"/>, <see cref="Efl.Io.Closer.Close"/> or <see cref="Efl.Io.Sizer.Resize"/> are called. It is the full slice, not a partial one starting at current position.
+   /// 1.19</returns>
+   virtual public Eina.Slice GetSlice() {
+       var _ret_var = Efl.Io.BufferNativeInherit.efl_io_buffer_slice_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Immediately pre-allocate a buffer of at least a given size.
+   /// 1.19</summary>
+   /// <param name="size">Amount of bytes to pre-allocate.
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void Preallocate(  uint size) {
+                         Efl.Io.BufferNativeInherit.efl_io_buffer_preallocate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Adopt a read-only slice as buffer&apos;s backing store.
+   /// The slice memory will not be copied and must remain alive during the buffer&apos;s lifetime. Usually this is guaranteed by some global static-const memory or some parent object and this buffer being a view of that -- be aware of parent memory remaining alive, such as &quot;slice,changed&quot; events.
+   /// 1.19</summary>
+   /// <param name="slice">Slice to adopt as read-only
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void AdoptReadonly( Eina.Slice slice) {
+                         Efl.Io.BufferNativeInherit.efl_io_buffer_adopt_readonly_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), slice);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Adopt a read-write slice as buffer&apos;s backing store.
+   /// The slice memory will not be copied and must remain alive during the buffer&apos;s lifetime. Usually this is guaranteed by some global static memory or some parent object and this buffer being a view of that -- be aware of parent memory remaining alive, such as &quot;slice,changed&quot; events.
+   /// 
+   /// The memory will be disposed using free() and reallocated using realloc().
+   /// 1.19</summary>
+   /// <param name="slice">Slice to adopt as read-write
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void AdoptReadwrite( Eina.RwSlice slice) {
+                         Efl.Io.BufferNativeInherit.efl_io_buffer_adopt_readwrite_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), slice);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Steals the internal buffer memory and returns it as a binbuf.
+   /// The returned memory must be freed with eina_binbuf_free().
+   /// 
+   /// On failure, for example a read-only backing store was adopted with <see cref="Efl.Io.Buffer.AdoptReadonly"/>, NULL is returned.
+   /// 1.19</summary>
+   /// <returns>Binbuf
+   /// 1.19</returns>
+   virtual public Eina.Binbuf BinbufSteal() {
+       var _ret_var = Efl.Io.BufferNativeInherit.efl_io_buffer_binbuf_steal_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      var _binbuf_ret = new Eina.Binbuf(_ret_var, true);
+      return _binbuf_ret;
+ }
+   /// <summary>If true will notify object was closed.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if closed, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetClosed() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_closed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close resources on exec() calls.
+   /// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnExec() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c>, will close on exec() call.
+   /// 1.19</summary>
+   /// <param name="close_on_exec"><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns><c>true</c> if could set, <c>false</c> if not supported or failed.
+   /// 1.19</returns>
+   virtual public bool SetCloseOnExec( bool close_on_exec) {
+                         var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_exec);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnInvalidate() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <param name="close_on_invalidate"><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCloseOnInvalidate( bool close_on_invalidate) {
+                         Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_invalidate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Closes the Input/Output object.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as close(2) libc function.
+   /// 1.19</summary>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Close() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Position property
+   /// 1.19</summary>
+   /// <returns>Position in file or buffer
+   /// 1.19</returns>
+   virtual public  ulong GetPosition() {
+       var _ret_var = Efl.Io.PositionerNativeInherit.efl_io_positioner_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Try to set position object, relative to start of file. See <see cref="Efl.Io.Positioner.Seek"/>
+   /// 1.19</summary>
+   /// <param name="position">Position in file or buffer
+   /// 1.19</param>
+   /// <returns><c>true</c> if could reposition, <c>false</c> if errors.
+   /// 1.19</returns>
+   virtual public bool SetPosition(  ulong position) {
+                         var _ret_var = Efl.Io.PositionerNativeInherit.efl_io_positioner_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), position);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Seek in data
+   /// 1.19</summary>
+   /// <param name="offset">Offset in byte relative to whence
+   /// 1.19</param>
+   /// <param name="whence">Whence
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Seek(  long offset,  Efl.Io.PositionerWhence whence) {
+                                           var _ret_var = Efl.Io.PositionerNativeInherit.efl_io_positioner_seek_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), offset,  whence);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanRead() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_read"><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanRead( bool can_read) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_read);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetEos() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_eos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <param name="is_eos"><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEos( bool is_eos) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_eos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_eos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Reads data into a pre-allocated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as read(2) libc function.
+   /// 1.19</summary>
+   /// <param name="rw_slice">Provides a pre-allocated memory to be filled up to rw_slice.len. It will be populated and the length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Read( ref Eina.RwSlice rw_slice) {
+                         var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_read_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref rw_slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Size property
+   /// 1.19</summary>
+   /// <returns>Object size
+   /// 1.19</returns>
+   virtual public  ulong GetSize() {
+       var _ret_var = Efl.Io.SizerNativeInherit.efl_io_sizer_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Try to resize the object, check with get if the value was accepted or not.
+   /// 1.19</summary>
+   /// <param name="size">Object size
+   /// 1.19</param>
+   /// <returns><c>true</c> if could resize, <c>false</c> if errors.
+   /// 1.19</returns>
+   virtual public bool SetSize(  ulong size) {
+                         var _ret_var = Efl.Io.SizerNativeInherit.efl_io_sizer_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Resize object
+   /// 1.19</summary>
+   /// <param name="size">Object size
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Resize(  ulong size) {
+                         var _ret_var = Efl.Io.SizerNativeInherit.efl_io_sizer_resize_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanWrite() {
+       var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_can_write_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_write"><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanWrite( bool can_write) {
+                         Efl.Io.WriterNativeInherit.efl_io_writer_can_write_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_write);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Writes data from a pre-populated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as write(2) libc function.
+   /// 1.19</summary>
+   /// <param name="slice">Provides a pre-populated memory to be used up to slice.len. The returned slice will be adapted as length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <param name="remaining">Convenience to output the remaining parts of slice that was not written. If the full slice was written, this will be a slice of zero-length.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Write( ref Eina.Slice slice,  ref Eina.Slice remaining) {
+                                           var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_write_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref slice,  ref remaining);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Limit how big the buffer can grow.
+/// This affects both <see cref="Efl.Io.Buffer.Preallocate"/> and how buffer grows when <see cref="Efl.Io.Writer.Write"/> is called.
+/// 
+/// If you want a buffer of an exact size always set the limit before any further calls that can expand it.
+/// 1.19</summary>
+/// <value>Defines a maximum buffer size, or 0 to allow unlimited amount of bytes
+/// 1.19</value>
+   public  uint Limit {
+      get { return GetLimit(); }
+      set { SetLimit( value); }
+   }
+   /// <summary>The position used by <see cref="Efl.Io.Reader.Read"/>.
+/// Note that <see cref="Efl.Io.Positioner.Seek"/> or <see cref="Efl.Io.Positioner.SetPosition"/> will affect this property and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+/// 
+/// <see cref="Efl.Io.Positioner.GetPosition"/> will return the greatest of <see cref="Efl.Io.Buffer.PositionRead"/> and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+/// 1.19</summary>
+/// <value>Position in buffer
+/// 1.19</value>
+   public  ulong PositionRead {
+      get { return GetPositionRead(); }
+      set { SetPositionRead( value); }
+   }
+   /// <summary>The position used by <see cref="Efl.Io.Writer.Write"/>.
+/// Note that <see cref="Efl.Io.Positioner.Seek"/> or <see cref="Efl.Io.Positioner.SetPosition"/> will affect this property and <see cref="Efl.Io.Buffer.PositionRead"/>.
+/// 
+/// <see cref="Efl.Io.Positioner.GetPosition"/> will return the greatest of <see cref="Efl.Io.Buffer.PositionRead"/> and <see cref="Efl.Io.Buffer.PositionWrite"/>.
+/// 1.19</summary>
+/// <value>Position in buffer
+/// 1.19</value>
+   public  ulong PositionWrite {
+      get { return GetPositionWrite(); }
+      set { SetPositionWrite( value); }
+   }
+   /// <summary>Get a temporary access to buffer&apos;s internal memory.
+/// The memory pointed by slice may be changed by other methods of this class. The event &quot;reallocated&quot; will be called in those situations.
+/// 1.19</summary>
+/// <value>Slice of the current buffer, may be invalidated if <see cref="Efl.Io.Writer.Write"/>, <see cref="Efl.Io.Closer.Close"/> or <see cref="Efl.Io.Sizer.Resize"/> are called. It is the full slice, not a partial one starting at current position.
+/// 1.19</value>
+   public Eina.Slice Slice {
+      get { return GetSlice(); }
+   }
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <value><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Closed {
+      get { return GetClosed(); }
+   }
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <value><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnExec {
+      get { return GetCloseOnExec(); }
+      set { SetCloseOnExec( value); }
+   }
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <value><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnInvalidate {
+      get { return GetCloseOnInvalidate(); }
+      set { SetCloseOnInvalidate( value); }
+   }
+   /// <summary>Position property
+/// 1.19</summary>
+/// <value>Position in file or buffer
+/// 1.19</value>
+   public  ulong Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanRead {
+      get { return GetCanRead(); }
+      set { SetCanRead( value); }
+   }
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <value><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Eos {
+      get { return GetEos(); }
+      set { SetEos( value); }
+   }
+   /// <summary>Size property
+/// 1.19</summary>
+/// <value>Object size
+/// 1.19</value>
+   public  ulong Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanWrite {
+      get { return GetCanWrite(); }
+      set { SetCanWrite( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.Buffer.efl_io_buffer_class_get();
+   }
+}
+public class BufferNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_io_buffer_limit_get_static_delegate == null)
+      efl_io_buffer_limit_get_static_delegate = new efl_io_buffer_limit_get_delegate(limit_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_limit_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_limit_get_static_delegate)});
+      if (efl_io_buffer_limit_set_static_delegate == null)
+      efl_io_buffer_limit_set_static_delegate = new efl_io_buffer_limit_set_delegate(limit_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_limit_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_limit_set_static_delegate)});
+      if (efl_io_buffer_position_read_get_static_delegate == null)
+      efl_io_buffer_position_read_get_static_delegate = new efl_io_buffer_position_read_get_delegate(position_read_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_position_read_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_position_read_get_static_delegate)});
+      if (efl_io_buffer_position_read_set_static_delegate == null)
+      efl_io_buffer_position_read_set_static_delegate = new efl_io_buffer_position_read_set_delegate(position_read_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_position_read_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_position_read_set_static_delegate)});
+      if (efl_io_buffer_position_write_get_static_delegate == null)
+      efl_io_buffer_position_write_get_static_delegate = new efl_io_buffer_position_write_get_delegate(position_write_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_position_write_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_position_write_get_static_delegate)});
+      if (efl_io_buffer_position_write_set_static_delegate == null)
+      efl_io_buffer_position_write_set_static_delegate = new efl_io_buffer_position_write_set_delegate(position_write_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_position_write_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_position_write_set_static_delegate)});
+      if (efl_io_buffer_slice_get_static_delegate == null)
+      efl_io_buffer_slice_get_static_delegate = new efl_io_buffer_slice_get_delegate(slice_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_slice_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_slice_get_static_delegate)});
+      if (efl_io_buffer_preallocate_static_delegate == null)
+      efl_io_buffer_preallocate_static_delegate = new efl_io_buffer_preallocate_delegate(preallocate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_preallocate"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_preallocate_static_delegate)});
+      if (efl_io_buffer_adopt_readonly_static_delegate == null)
+      efl_io_buffer_adopt_readonly_static_delegate = new efl_io_buffer_adopt_readonly_delegate(adopt_readonly);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_adopt_readonly"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_adopt_readonly_static_delegate)});
+      if (efl_io_buffer_adopt_readwrite_static_delegate == null)
+      efl_io_buffer_adopt_readwrite_static_delegate = new efl_io_buffer_adopt_readwrite_delegate(adopt_readwrite);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_adopt_readwrite"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_adopt_readwrite_static_delegate)});
+      if (efl_io_buffer_binbuf_steal_static_delegate == null)
+      efl_io_buffer_binbuf_steal_static_delegate = new efl_io_buffer_binbuf_steal_delegate(binbuf_steal);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_buffer_binbuf_steal"), func = Marshal.GetFunctionPointerForDelegate(efl_io_buffer_binbuf_steal_static_delegate)});
+      if (efl_io_closer_closed_get_static_delegate == null)
+      efl_io_closer_closed_get_static_delegate = new efl_io_closer_closed_get_delegate(closed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_closed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_closed_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_get_static_delegate == null)
+      efl_io_closer_close_on_exec_get_static_delegate = new efl_io_closer_close_on_exec_get_delegate(close_on_exec_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_set_static_delegate == null)
+      efl_io_closer_close_on_exec_set_static_delegate = new efl_io_closer_close_on_exec_set_delegate(close_on_exec_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_set_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_get_static_delegate == null)
+      efl_io_closer_close_on_invalidate_get_static_delegate = new efl_io_closer_close_on_invalidate_get_delegate(close_on_invalidate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_get_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_set_static_delegate == null)
+      efl_io_closer_close_on_invalidate_set_static_delegate = new efl_io_closer_close_on_invalidate_set_delegate(close_on_invalidate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_set_static_delegate)});
+      if (efl_io_closer_close_static_delegate == null)
+      efl_io_closer_close_static_delegate = new efl_io_closer_close_delegate(close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_static_delegate)});
+      if (efl_io_positioner_position_get_static_delegate == null)
+      efl_io_positioner_position_get_static_delegate = new efl_io_positioner_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_positioner_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_positioner_position_get_static_delegate)});
+      if (efl_io_positioner_position_set_static_delegate == null)
+      efl_io_positioner_position_set_static_delegate = new efl_io_positioner_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_positioner_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_positioner_position_set_static_delegate)});
+      if (efl_io_positioner_seek_static_delegate == null)
+      efl_io_positioner_seek_static_delegate = new efl_io_positioner_seek_delegate(seek);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_positioner_seek"), func = Marshal.GetFunctionPointerForDelegate(efl_io_positioner_seek_static_delegate)});
+      if (efl_io_reader_can_read_get_static_delegate == null)
+      efl_io_reader_can_read_get_static_delegate = new efl_io_reader_can_read_get_delegate(can_read_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_get_static_delegate)});
+      if (efl_io_reader_can_read_set_static_delegate == null)
+      efl_io_reader_can_read_set_static_delegate = new efl_io_reader_can_read_set_delegate(can_read_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_set_static_delegate)});
+      if (efl_io_reader_eos_get_static_delegate == null)
+      efl_io_reader_eos_get_static_delegate = new efl_io_reader_eos_get_delegate(eos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_get_static_delegate)});
+      if (efl_io_reader_eos_set_static_delegate == null)
+      efl_io_reader_eos_set_static_delegate = new efl_io_reader_eos_set_delegate(eos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_set_static_delegate)});
+      if (efl_io_reader_read_static_delegate == null)
+      efl_io_reader_read_static_delegate = new efl_io_reader_read_delegate(read);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_read"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_read_static_delegate)});
+      if (efl_io_sizer_size_get_static_delegate == null)
+      efl_io_sizer_size_get_static_delegate = new efl_io_sizer_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_sizer_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_sizer_size_get_static_delegate)});
+      if (efl_io_sizer_size_set_static_delegate == null)
+      efl_io_sizer_size_set_static_delegate = new efl_io_sizer_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_sizer_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_sizer_size_set_static_delegate)});
+      if (efl_io_sizer_resize_static_delegate == null)
+      efl_io_sizer_resize_static_delegate = new efl_io_sizer_resize_delegate(resize);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_sizer_resize"), func = Marshal.GetFunctionPointerForDelegate(efl_io_sizer_resize_static_delegate)});
+      if (efl_io_writer_can_write_get_static_delegate == null)
+      efl_io_writer_can_write_get_static_delegate = new efl_io_writer_can_write_get_delegate(can_write_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_get_static_delegate)});
+      if (efl_io_writer_can_write_set_static_delegate == null)
+      efl_io_writer_can_write_set_static_delegate = new efl_io_writer_can_write_set_delegate(can_write_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_set_static_delegate)});
+      if (efl_io_writer_write_static_delegate == null)
+      efl_io_writer_write_static_delegate = new efl_io_writer_write_delegate(write);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_write"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_write_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Io.Buffer.efl_io_buffer_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.Buffer.efl_io_buffer_class_get();
+   }
+
+
+    private delegate  uint efl_io_buffer_limit_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_io_buffer_limit_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_limit_get_api_delegate> efl_io_buffer_limit_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_limit_get_api_delegate>(_Module, "efl_io_buffer_limit_get");
+    private static  uint limit_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_buffer_limit_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Buffer)wrapper).GetLimit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_buffer_limit_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_buffer_limit_get_delegate efl_io_buffer_limit_get_static_delegate;
+
+
+    private delegate  void efl_io_buffer_limit_set_delegate(System.IntPtr obj, System.IntPtr pd,    uint size);
+
+
+    public delegate  void efl_io_buffer_limit_set_api_delegate(System.IntPtr obj,    uint size);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_limit_set_api_delegate> efl_io_buffer_limit_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_limit_set_api_delegate>(_Module, "efl_io_buffer_limit_set");
+    private static  void limit_set(System.IntPtr obj, System.IntPtr pd,   uint size)
+   {
+      Eina.Log.Debug("function efl_io_buffer_limit_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).SetLimit( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_buffer_limit_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_buffer_limit_set_delegate efl_io_buffer_limit_set_static_delegate;
+
+
+    private delegate  ulong efl_io_buffer_position_read_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  ulong efl_io_buffer_position_read_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_position_read_get_api_delegate> efl_io_buffer_position_read_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_position_read_get_api_delegate>(_Module, "efl_io_buffer_position_read_get");
+    private static  ulong position_read_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_buffer_position_read_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   ulong _ret_var = default( ulong);
+         try {
+            _ret_var = ((Buffer)wrapper).GetPositionRead();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_buffer_position_read_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_buffer_position_read_get_delegate efl_io_buffer_position_read_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_buffer_position_read_set_delegate(System.IntPtr obj, System.IntPtr pd,    ulong position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_buffer_position_read_set_api_delegate(System.IntPtr obj,    ulong position);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_position_read_set_api_delegate> efl_io_buffer_position_read_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_position_read_set_api_delegate>(_Module, "efl_io_buffer_position_read_set");
+    private static bool position_read_set(System.IntPtr obj, System.IntPtr pd,   ulong position)
+   {
+      Eina.Log.Debug("function efl_io_buffer_position_read_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).SetPositionRead( position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_buffer_position_read_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  position);
+      }
+   }
+   private static efl_io_buffer_position_read_set_delegate efl_io_buffer_position_read_set_static_delegate;
+
+
+    private delegate  ulong efl_io_buffer_position_write_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  ulong efl_io_buffer_position_write_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_position_write_get_api_delegate> efl_io_buffer_position_write_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_position_write_get_api_delegate>(_Module, "efl_io_buffer_position_write_get");
+    private static  ulong position_write_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_buffer_position_write_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   ulong _ret_var = default( ulong);
+         try {
+            _ret_var = ((Buffer)wrapper).GetPositionWrite();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_buffer_position_write_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_buffer_position_write_get_delegate efl_io_buffer_position_write_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_buffer_position_write_set_delegate(System.IntPtr obj, System.IntPtr pd,    ulong position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_buffer_position_write_set_api_delegate(System.IntPtr obj,    ulong position);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_position_write_set_api_delegate> efl_io_buffer_position_write_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_position_write_set_api_delegate>(_Module, "efl_io_buffer_position_write_set");
+    private static bool position_write_set(System.IntPtr obj, System.IntPtr pd,   ulong position)
+   {
+      Eina.Log.Debug("function efl_io_buffer_position_write_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).SetPositionWrite( position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_buffer_position_write_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  position);
+      }
+   }
+   private static efl_io_buffer_position_write_set_delegate efl_io_buffer_position_write_set_static_delegate;
+
+
+    private delegate Eina.Slice efl_io_buffer_slice_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Slice efl_io_buffer_slice_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_slice_get_api_delegate> efl_io_buffer_slice_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_slice_get_api_delegate>(_Module, "efl_io_buffer_slice_get");
+    private static Eina.Slice slice_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_buffer_slice_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Slice _ret_var = default(Eina.Slice);
+         try {
+            _ret_var = ((Buffer)wrapper).GetSlice();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_buffer_slice_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_buffer_slice_get_delegate efl_io_buffer_slice_get_static_delegate;
+
+
+    private delegate  void efl_io_buffer_preallocate_delegate(System.IntPtr obj, System.IntPtr pd,    uint size);
+
+
+    public delegate  void efl_io_buffer_preallocate_api_delegate(System.IntPtr obj,    uint size);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_preallocate_api_delegate> efl_io_buffer_preallocate_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_preallocate_api_delegate>(_Module, "efl_io_buffer_preallocate");
+    private static  void preallocate(System.IntPtr obj, System.IntPtr pd,   uint size)
+   {
+      Eina.Log.Debug("function efl_io_buffer_preallocate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).Preallocate( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_buffer_preallocate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_buffer_preallocate_delegate efl_io_buffer_preallocate_static_delegate;
+
+
+    private delegate  void efl_io_buffer_adopt_readonly_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Slice slice);
+
+
+    public delegate  void efl_io_buffer_adopt_readonly_api_delegate(System.IntPtr obj,   Eina.Slice slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_adopt_readonly_api_delegate> efl_io_buffer_adopt_readonly_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_adopt_readonly_api_delegate>(_Module, "efl_io_buffer_adopt_readonly");
+    private static  void adopt_readonly(System.IntPtr obj, System.IntPtr pd,  Eina.Slice slice)
+   {
+      Eina.Log.Debug("function efl_io_buffer_adopt_readonly was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).AdoptReadonly( slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_buffer_adopt_readonly_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice);
+      }
+   }
+   private static efl_io_buffer_adopt_readonly_delegate efl_io_buffer_adopt_readonly_static_delegate;
+
+
+    private delegate  void efl_io_buffer_adopt_readwrite_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.RwSlice slice);
+
+
+    public delegate  void efl_io_buffer_adopt_readwrite_api_delegate(System.IntPtr obj,   Eina.RwSlice slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_adopt_readwrite_api_delegate> efl_io_buffer_adopt_readwrite_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_adopt_readwrite_api_delegate>(_Module, "efl_io_buffer_adopt_readwrite");
+    private static  void adopt_readwrite(System.IntPtr obj, System.IntPtr pd,  Eina.RwSlice slice)
+   {
+      Eina.Log.Debug("function efl_io_buffer_adopt_readwrite was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).AdoptReadwrite( slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_buffer_adopt_readwrite_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice);
+      }
+   }
+   private static efl_io_buffer_adopt_readwrite_delegate efl_io_buffer_adopt_readwrite_static_delegate;
+
+
+    private delegate  System.IntPtr efl_io_buffer_binbuf_steal_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_io_buffer_binbuf_steal_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_buffer_binbuf_steal_api_delegate> efl_io_buffer_binbuf_steal_ptr = new Efl.Eo.FunctionWrapper<efl_io_buffer_binbuf_steal_api_delegate>(_Module, "efl_io_buffer_binbuf_steal");
+    private static  System.IntPtr binbuf_steal(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_buffer_binbuf_steal was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Binbuf _ret_var = default(Eina.Binbuf);
+         try {
+            _ret_var = ((Buffer)wrapper).BinbufSteal();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_io_buffer_binbuf_steal_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_buffer_binbuf_steal_delegate efl_io_buffer_binbuf_steal_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_closed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_closed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate> efl_io_closer_closed_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate>(_Module, "efl_io_closer_closed_get");
+    private static bool closed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_closed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).GetClosed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_closed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_closed_get_delegate efl_io_closer_closed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate> efl_io_closer_close_on_exec_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate>(_Module, "efl_io_closer_close_on_exec_get");
+    private static bool close_on_exec_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).GetCloseOnExec();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_exec_get_delegate efl_io_closer_close_on_exec_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate> efl_io_closer_close_on_exec_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate>(_Module, "efl_io_closer_close_on_exec_set");
+    private static bool close_on_exec_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_exec)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).SetCloseOnExec( close_on_exec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_exec);
+      }
+   }
+   private static efl_io_closer_close_on_exec_set_delegate efl_io_closer_close_on_exec_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_invalidate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_invalidate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate> efl_io_closer_close_on_invalidate_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_get");
+    private static bool close_on_invalidate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).GetCloseOnInvalidate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_get_delegate efl_io_closer_close_on_invalidate_get_static_delegate;
+
+
+    private delegate  void efl_io_closer_close_on_invalidate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+
+
+    public delegate  void efl_io_closer_close_on_invalidate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate> efl_io_closer_close_on_invalidate_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_set");
+    private static  void close_on_invalidate_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_invalidate)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).SetCloseOnInvalidate( close_on_invalidate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_invalidate);
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_set_delegate efl_io_closer_close_on_invalidate_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_closer_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_io_closer_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate> efl_io_closer_close_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate>(_Module, "efl_io_closer_close");
+    private static  Eina.Error close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Buffer)wrapper).Close();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_delegate efl_io_closer_close_static_delegate;
+
+
+    private delegate  ulong efl_io_positioner_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  ulong efl_io_positioner_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_positioner_position_get_api_delegate> efl_io_positioner_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_positioner_position_get_api_delegate>(_Module, "efl_io_positioner_position_get");
+    private static  ulong position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_positioner_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   ulong _ret_var = default( ulong);
+         try {
+            _ret_var = ((Buffer)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_positioner_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_positioner_position_get_delegate efl_io_positioner_position_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_positioner_position_set_delegate(System.IntPtr obj, System.IntPtr pd,    ulong position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_positioner_position_set_api_delegate(System.IntPtr obj,    ulong position);
+    public static Efl.Eo.FunctionWrapper<efl_io_positioner_position_set_api_delegate> efl_io_positioner_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_positioner_position_set_api_delegate>(_Module, "efl_io_positioner_position_set");
+    private static bool position_set(System.IntPtr obj, System.IntPtr pd,   ulong position)
+   {
+      Eina.Log.Debug("function efl_io_positioner_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).SetPosition( position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_positioner_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  position);
+      }
+   }
+   private static efl_io_positioner_position_set_delegate efl_io_positioner_position_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_positioner_seek_delegate(System.IntPtr obj, System.IntPtr pd,    long offset,   Efl.Io.PositionerWhence whence);
+
+
+    public delegate  Eina.Error efl_io_positioner_seek_api_delegate(System.IntPtr obj,    long offset,   Efl.Io.PositionerWhence whence);
+    public static Efl.Eo.FunctionWrapper<efl_io_positioner_seek_api_delegate> efl_io_positioner_seek_ptr = new Efl.Eo.FunctionWrapper<efl_io_positioner_seek_api_delegate>(_Module, "efl_io_positioner_seek");
+    private static  Eina.Error seek(System.IntPtr obj, System.IntPtr pd,   long offset,  Efl.Io.PositionerWhence whence)
+   {
+      Eina.Log.Debug("function efl_io_positioner_seek was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Buffer)wrapper).Seek( offset,  whence);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_positioner_seek_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset,  whence);
+      }
+   }
+   private static efl_io_positioner_seek_delegate efl_io_positioner_seek_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_can_read_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_can_read_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate> efl_io_reader_can_read_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate>(_Module, "efl_io_reader_can_read_get");
+    private static bool can_read_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).GetCanRead();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_can_read_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_can_read_get_delegate efl_io_reader_can_read_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_can_read_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+
+
+    public delegate  void efl_io_reader_can_read_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate> efl_io_reader_can_read_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate>(_Module, "efl_io_reader_can_read_set");
+    private static  void can_read_set(System.IntPtr obj, System.IntPtr pd,  bool can_read)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).SetCanRead( can_read);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_can_read_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_read);
+      }
+   }
+   private static efl_io_reader_can_read_set_delegate efl_io_reader_can_read_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_eos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_eos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate> efl_io_reader_eos_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate>(_Module, "efl_io_reader_eos_get");
+    private static bool eos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).GetEos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_eos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_eos_get_delegate efl_io_reader_eos_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_eos_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+
+
+    public delegate  void efl_io_reader_eos_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate> efl_io_reader_eos_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate>(_Module, "efl_io_reader_eos_set");
+    private static  void eos_set(System.IntPtr obj, System.IntPtr pd,  bool is_eos)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).SetEos( is_eos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_eos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_eos);
+      }
+   }
+   private static efl_io_reader_eos_set_delegate efl_io_reader_eos_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_reader_read_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.RwSlice rw_slice);
+
+
+    public delegate  Eina.Error efl_io_reader_read_api_delegate(System.IntPtr obj,   ref Eina.RwSlice rw_slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate> efl_io_reader_read_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate>(_Module, "efl_io_reader_read");
+    private static  Eina.Error read(System.IntPtr obj, System.IntPtr pd,  ref Eina.RwSlice rw_slice)
+   {
+      Eina.Log.Debug("function efl_io_reader_read was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Buffer)wrapper).Read( ref rw_slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_reader_read_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref rw_slice);
+      }
+   }
+   private static efl_io_reader_read_delegate efl_io_reader_read_static_delegate;
+
+
+    private delegate  ulong efl_io_sizer_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  ulong efl_io_sizer_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_sizer_size_get_api_delegate> efl_io_sizer_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_sizer_size_get_api_delegate>(_Module, "efl_io_sizer_size_get");
+    private static  ulong size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_sizer_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   ulong _ret_var = default( ulong);
+         try {
+            _ret_var = ((Buffer)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_sizer_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_sizer_size_get_delegate efl_io_sizer_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_sizer_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    ulong size);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_sizer_size_set_api_delegate(System.IntPtr obj,    ulong size);
+    public static Efl.Eo.FunctionWrapper<efl_io_sizer_size_set_api_delegate> efl_io_sizer_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_sizer_size_set_api_delegate>(_Module, "efl_io_sizer_size_set");
+    private static bool size_set(System.IntPtr obj, System.IntPtr pd,   ulong size)
+   {
+      Eina.Log.Debug("function efl_io_sizer_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).SetSize( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_sizer_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_sizer_size_set_delegate efl_io_sizer_size_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_sizer_resize_delegate(System.IntPtr obj, System.IntPtr pd,    ulong size);
+
+
+    public delegate  Eina.Error efl_io_sizer_resize_api_delegate(System.IntPtr obj,    ulong size);
+    public static Efl.Eo.FunctionWrapper<efl_io_sizer_resize_api_delegate> efl_io_sizer_resize_ptr = new Efl.Eo.FunctionWrapper<efl_io_sizer_resize_api_delegate>(_Module, "efl_io_sizer_resize");
+    private static  Eina.Error resize(System.IntPtr obj, System.IntPtr pd,   ulong size)
+   {
+      Eina.Log.Debug("function efl_io_sizer_resize was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Buffer)wrapper).Resize( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_sizer_resize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_sizer_resize_delegate efl_io_sizer_resize_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_writer_can_write_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_writer_can_write_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate> efl_io_writer_can_write_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate>(_Module, "efl_io_writer_can_write_get");
+    private static bool can_write_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Buffer)wrapper).GetCanWrite();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_writer_can_write_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_writer_can_write_get_delegate efl_io_writer_can_write_get_static_delegate;
+
+
+    private delegate  void efl_io_writer_can_write_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+
+
+    public delegate  void efl_io_writer_can_write_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate> efl_io_writer_can_write_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate>(_Module, "efl_io_writer_can_write_set");
+    private static  void can_write_set(System.IntPtr obj, System.IntPtr pd,  bool can_write)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Buffer)wrapper).SetCanWrite( can_write);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_writer_can_write_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_write);
+      }
+   }
+   private static efl_io_writer_can_write_set_delegate efl_io_writer_can_write_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_writer_write_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+
+
+    public delegate  Eina.Error efl_io_writer_write_api_delegate(System.IntPtr obj,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate> efl_io_writer_write_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate>(_Module, "efl_io_writer_write");
+    private static  Eina.Error write(System.IntPtr obj, System.IntPtr pd,  ref Eina.Slice slice,  ref Eina.Slice remaining)
+   {
+      Eina.Log.Debug("function efl_io_writer_write was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 remaining = default(Eina.Slice);                      Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Buffer)wrapper).Write( ref slice,  ref remaining);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_writer_write_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref slice,  ref remaining);
+      }
+   }
+   private static efl_io_writer_write_delegate efl_io_writer_write_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_io_closer.eo.cs b/internals/src/EflSharp/EflSharp/efl_io_closer.eo.cs
new file mode 100755 (executable)
index 0000000..535c73a
--- /dev/null
@@ -0,0 +1,527 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Io { 
+/// <summary>Generic interface for objects that can close themselves.
+/// This interface allows external objects to transparently close an input or output stream, cleaning up its resources.
+/// 
+/// Calls to <see cref="Efl.Io.Closer.Close"/> may or may not block, that&apos;s not up to this interface to specify.
+/// 1.19</summary>
+[CloserNativeInherit]
+public interface Closer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <returns><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetClosed();
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <returns><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</returns>
+bool GetCloseOnExec();
+   /// <summary>If <c>true</c>, will close on exec() call.
+/// 1.19</summary>
+/// <param name="close_on_exec"><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</param>
+/// <returns><c>true</c> if could set, <c>false</c> if not supported or failed.
+/// 1.19</returns>
+bool SetCloseOnExec( bool close_on_exec);
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <returns><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetCloseOnInvalidate();
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <param name="close_on_invalidate"><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</param>
+/// <returns></returns>
+ void SetCloseOnInvalidate( bool close_on_invalidate);
+   /// <summary>Closes the Input/Output object.
+/// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+/// 
+/// You can understand this method as close(2) libc function.
+/// 1.19</summary>
+/// <returns>0 on succeed, a mapping of errno otherwise
+/// 1.19</returns>
+ Eina.Error Close();
+                     /// <summary>Notifies closed, when property is marked as true
+   /// 1.19</summary>
+   event EventHandler ClosedEvt;
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <value><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</value>
+   bool Closed {
+      get ;
+   }
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <value><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</value>
+   bool CloseOnExec {
+      get ;
+      set ;
+   }
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <value><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</value>
+   bool CloseOnInvalidate {
+      get ;
+      set ;
+   }
+}
+/// <summary>Generic interface for objects that can close themselves.
+/// This interface allows external objects to transparently close an input or output stream, cleaning up its resources.
+/// 
+/// Calls to <see cref="Efl.Io.Closer.Close"/> may or may not block, that&apos;s not up to this interface to specify.
+/// 1.19</summary>
+sealed public class CloserConcrete : 
+
+Closer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CloserConcrete))
+            return Efl.Io.CloserNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_io_closer_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CloserConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~CloserConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static CloserConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CloserConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ClosedEvtKey = new object();
+   /// <summary>Notifies closed, when property is marked as true
+   /// 1.19</summary>
+   public event EventHandler ClosedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClosedEvt_delegate)) {
+               eventHandlers.AddHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (remove_cpp_event_handler(key, this.evt_ClosedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClosedEvt.</summary>
+   public void On_ClosedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClosedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClosedEvt_delegate;
+   private void on_ClosedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClosedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ClosedEvt_delegate = new Efl.EventCb(on_ClosedEvt_NativeCallback);
+   }
+   /// <summary>If true will notify object was closed.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if closed, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetClosed() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_closed_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close resources on exec() calls.
+   /// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetCloseOnExec() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c>, will close on exec() call.
+   /// 1.19</summary>
+   /// <param name="close_on_exec"><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns><c>true</c> if could set, <c>false</c> if not supported or failed.
+   /// 1.19</returns>
+   public bool SetCloseOnExec( bool close_on_exec) {
+                         var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_set_ptr.Value.Delegate(this.NativeHandle, close_on_exec);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetCloseOnInvalidate() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <param name="close_on_invalidate"><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetCloseOnInvalidate( bool close_on_invalidate) {
+                         Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate(this.NativeHandle, close_on_invalidate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Closes the Input/Output object.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as close(2) libc function.
+   /// 1.19</summary>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   public  Eina.Error Close() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <value><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Closed {
+      get { return GetClosed(); }
+   }
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <value><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnExec {
+      get { return GetCloseOnExec(); }
+      set { SetCloseOnExec( value); }
+   }
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <value><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnInvalidate {
+      get { return GetCloseOnInvalidate(); }
+      set { SetCloseOnInvalidate( value); }
+   }
+}
+public class CloserNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_io_closer_closed_get_static_delegate == null)
+      efl_io_closer_closed_get_static_delegate = new efl_io_closer_closed_get_delegate(closed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_closed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_closed_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_get_static_delegate == null)
+      efl_io_closer_close_on_exec_get_static_delegate = new efl_io_closer_close_on_exec_get_delegate(close_on_exec_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_set_static_delegate == null)
+      efl_io_closer_close_on_exec_set_static_delegate = new efl_io_closer_close_on_exec_set_delegate(close_on_exec_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_set_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_get_static_delegate == null)
+      efl_io_closer_close_on_invalidate_get_static_delegate = new efl_io_closer_close_on_invalidate_get_delegate(close_on_invalidate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_get_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_set_static_delegate == null)
+      efl_io_closer_close_on_invalidate_set_static_delegate = new efl_io_closer_close_on_invalidate_set_delegate(close_on_invalidate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_set_static_delegate)});
+      if (efl_io_closer_close_static_delegate == null)
+      efl_io_closer_close_static_delegate = new efl_io_closer_close_delegate(close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Io.CloserConcrete.efl_io_closer_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.CloserConcrete.efl_io_closer_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_closed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_closed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate> efl_io_closer_closed_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate>(_Module, "efl_io_closer_closed_get");
+    private static bool closed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_closed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Closer)wrapper).GetClosed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_closed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_closed_get_delegate efl_io_closer_closed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate> efl_io_closer_close_on_exec_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate>(_Module, "efl_io_closer_close_on_exec_get");
+    private static bool close_on_exec_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Closer)wrapper).GetCloseOnExec();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_exec_get_delegate efl_io_closer_close_on_exec_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate> efl_io_closer_close_on_exec_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate>(_Module, "efl_io_closer_close_on_exec_set");
+    private static bool close_on_exec_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_exec)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Closer)wrapper).SetCloseOnExec( close_on_exec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_exec);
+      }
+   }
+   private static efl_io_closer_close_on_exec_set_delegate efl_io_closer_close_on_exec_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_invalidate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_invalidate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate> efl_io_closer_close_on_invalidate_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_get");
+    private static bool close_on_invalidate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Closer)wrapper).GetCloseOnInvalidate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_get_delegate efl_io_closer_close_on_invalidate_get_static_delegate;
+
+
+    private delegate  void efl_io_closer_close_on_invalidate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+
+
+    public delegate  void efl_io_closer_close_on_invalidate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate> efl_io_closer_close_on_invalidate_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_set");
+    private static  void close_on_invalidate_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_invalidate)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Closer)wrapper).SetCloseOnInvalidate( close_on_invalidate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_invalidate);
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_set_delegate efl_io_closer_close_on_invalidate_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_closer_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_io_closer_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate> efl_io_closer_close_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate>(_Module, "efl_io_closer_close");
+    private static  Eina.Error close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Closer)wrapper).Close();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_delegate efl_io_closer_close_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_io_positioner.eo.cs b/internals/src/EflSharp/EflSharp/efl_io_positioner.eo.cs
new file mode 100755 (executable)
index 0000000..7dcddfa
--- /dev/null
@@ -0,0 +1,369 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Io { 
+/// <summary>Generic interface for objects that can change or report position.
+/// 1.19</summary>
+[PositionerNativeInherit]
+public interface Positioner : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Position property
+/// 1.19</summary>
+/// <returns>Position in file or buffer
+/// 1.19</returns>
+ ulong GetPosition();
+   /// <summary>Try to set position object, relative to start of file. See <see cref="Efl.Io.Positioner.Seek"/>
+/// 1.19</summary>
+/// <param name="position">Position in file or buffer
+/// 1.19</param>
+/// <returns><c>true</c> if could reposition, <c>false</c> if errors.
+/// 1.19</returns>
+bool SetPosition(  ulong position);
+   /// <summary>Seek in data
+/// 1.19</summary>
+/// <param name="offset">Offset in byte relative to whence
+/// 1.19</param>
+/// <param name="whence">Whence
+/// 1.19</param>
+/// <returns>0 on succeed, a mapping of errno otherwise
+/// 1.19</returns>
+ Eina.Error Seek(  long offset,  Efl.Io.PositionerWhence whence);
+            /// <summary>Notifies position changed
+   /// 1.19</summary>
+   event EventHandler PositionChangedEvt;
+   /// <summary>Position property
+/// 1.19</summary>
+/// <value>Position in file or buffer
+/// 1.19</value>
+    ulong Position {
+      get ;
+      set ;
+   }
+}
+/// <summary>Generic interface for objects that can change or report position.
+/// 1.19</summary>
+sealed public class PositionerConcrete : 
+
+Positioner
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PositionerConcrete))
+            return Efl.Io.PositionerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_io_positioner_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PositionerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PositionerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PositionerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PositionerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Notifies position changed
+   /// 1.19</summary>
+   public event EventHandler PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_POSITIONER_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_POSITIONER_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+   }
+   /// <summary>Position property
+   /// 1.19</summary>
+   /// <returns>Position in file or buffer
+   /// 1.19</returns>
+   public  ulong GetPosition() {
+       var _ret_var = Efl.Io.PositionerNativeInherit.efl_io_positioner_position_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Try to set position object, relative to start of file. See <see cref="Efl.Io.Positioner.Seek"/>
+   /// 1.19</summary>
+   /// <param name="position">Position in file or buffer
+   /// 1.19</param>
+   /// <returns><c>true</c> if could reposition, <c>false</c> if errors.
+   /// 1.19</returns>
+   public bool SetPosition(  ulong position) {
+                         var _ret_var = Efl.Io.PositionerNativeInherit.efl_io_positioner_position_set_ptr.Value.Delegate(this.NativeHandle, position);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Seek in data
+   /// 1.19</summary>
+   /// <param name="offset">Offset in byte relative to whence
+   /// 1.19</param>
+   /// <param name="whence">Whence
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   public  Eina.Error Seek(  long offset,  Efl.Io.PositionerWhence whence) {
+                                           var _ret_var = Efl.Io.PositionerNativeInherit.efl_io_positioner_seek_ptr.Value.Delegate(this.NativeHandle, offset,  whence);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Position property
+/// 1.19</summary>
+/// <value>Position in file or buffer
+/// 1.19</value>
+   public  ulong Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+}
+public class PositionerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_io_positioner_position_get_static_delegate == null)
+      efl_io_positioner_position_get_static_delegate = new efl_io_positioner_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_positioner_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_positioner_position_get_static_delegate)});
+      if (efl_io_positioner_position_set_static_delegate == null)
+      efl_io_positioner_position_set_static_delegate = new efl_io_positioner_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_positioner_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_positioner_position_set_static_delegate)});
+      if (efl_io_positioner_seek_static_delegate == null)
+      efl_io_positioner_seek_static_delegate = new efl_io_positioner_seek_delegate(seek);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_positioner_seek"), func = Marshal.GetFunctionPointerForDelegate(efl_io_positioner_seek_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Io.PositionerConcrete.efl_io_positioner_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.PositionerConcrete.efl_io_positioner_mixin_get();
+   }
+
+
+    private delegate  ulong efl_io_positioner_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  ulong efl_io_positioner_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_positioner_position_get_api_delegate> efl_io_positioner_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_positioner_position_get_api_delegate>(_Module, "efl_io_positioner_position_get");
+    private static  ulong position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_positioner_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   ulong _ret_var = default( ulong);
+         try {
+            _ret_var = ((PositionerConcrete)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_positioner_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_positioner_position_get_delegate efl_io_positioner_position_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_positioner_position_set_delegate(System.IntPtr obj, System.IntPtr pd,    ulong position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_positioner_position_set_api_delegate(System.IntPtr obj,    ulong position);
+    public static Efl.Eo.FunctionWrapper<efl_io_positioner_position_set_api_delegate> efl_io_positioner_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_positioner_position_set_api_delegate>(_Module, "efl_io_positioner_position_set");
+    private static bool position_set(System.IntPtr obj, System.IntPtr pd,   ulong position)
+   {
+      Eina.Log.Debug("function efl_io_positioner_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PositionerConcrete)wrapper).SetPosition( position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_positioner_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  position);
+      }
+   }
+   private static efl_io_positioner_position_set_delegate efl_io_positioner_position_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_positioner_seek_delegate(System.IntPtr obj, System.IntPtr pd,    long offset,   Efl.Io.PositionerWhence whence);
+
+
+    public delegate  Eina.Error efl_io_positioner_seek_api_delegate(System.IntPtr obj,    long offset,   Efl.Io.PositionerWhence whence);
+    public static Efl.Eo.FunctionWrapper<efl_io_positioner_seek_api_delegate> efl_io_positioner_seek_ptr = new Efl.Eo.FunctionWrapper<efl_io_positioner_seek_api_delegate>(_Module, "efl_io_positioner_seek");
+    private static  Eina.Error seek(System.IntPtr obj, System.IntPtr pd,   long offset,  Efl.Io.PositionerWhence whence)
+   {
+      Eina.Log.Debug("function efl_io_positioner_seek was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((PositionerConcrete)wrapper).Seek( offset,  whence);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_positioner_seek_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset,  whence);
+      }
+   }
+   private static efl_io_positioner_seek_delegate efl_io_positioner_seek_static_delegate;
+}
+} } 
+namespace Efl { namespace Io { 
+/// <summary>Seek position modes</summary>
+public enum PositionerWhence
+{
+/// <summary>Seek from start of the stream/file</summary>
+Start = 0,
+/// <summary>Seek from current position</summary>
+Current = 1,
+/// <summary>Seek from the end of stream/file</summary>
+End = 2,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_io_queue.eo.cs b/internals/src/EflSharp/EflSharp/efl_io_queue.eo.cs
new file mode 100755 (executable)
index 0000000..9a70374
--- /dev/null
@@ -0,0 +1,1247 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Io { 
+/// <summary>Generic In-memory queue of data to be used as I/O.
+/// This class is to be used to receive temporary data using <see cref="Efl.Io.Writer.Write"/> and hold it until someone calls <see cref="Efl.Io.Reader.Read"/> to consume it.
+/// 
+/// A fixed sized queue can be implemented by setting <see cref="Efl.Io.Queue.Limit"/> followed by <see cref="Efl.Io.Queue.Preallocate"/>
+/// 1.19</summary>
+[QueueNativeInherit]
+public class Queue : Efl.Object, Efl.Eo.IWrapper,Efl.Io.Closer,Efl.Io.Reader,Efl.Io.Writer
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Io.QueueNativeInherit nativeInherit = new Efl.Io.QueueNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Queue))
+            return Efl.Io.QueueNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_io_queue_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Queue(Efl.Object parent= null
+         ) :
+      base(efl_io_queue_class_get(), typeof(Queue), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Queue(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Queue(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Queue static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Queue(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object SliceChangedEvtKey = new object();
+   /// <summary>The read-slice returned by <see cref="Efl.Io.Queue.GetSlice"/> may have changed.
+   /// 1.19</summary>
+   public event EventHandler SliceChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_QUEUE_EVENT_SLICE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SliceChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SliceChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_QUEUE_EVENT_SLICE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SliceChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SliceChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SliceChangedEvt.</summary>
+   public void On_SliceChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SliceChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SliceChangedEvt_delegate;
+   private void on_SliceChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SliceChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClosedEvtKey = new object();
+   /// <summary>Notifies closed, when property is marked as true
+   /// 1.19</summary>
+   public event EventHandler ClosedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClosedEvt_delegate)) {
+               eventHandlers.AddHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (remove_cpp_event_handler(key, this.evt_ClosedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClosedEvt.</summary>
+   public void On_ClosedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClosedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClosedEvt_delegate;
+   private void on_ClosedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClosedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_readChangedEvtKey = new object();
+   /// <summary>Notifies can_read property changed.
+   /// If <see cref="Efl.Io.Reader.CanRead"/> is <c>true</c> there is data to <see cref="Efl.Io.Reader.Read"/> without blocking/error. If <see cref="Efl.Io.Reader.CanRead"/> is <c>false</c>, <see cref="Efl.Io.Reader.Read"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Reader.Read"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> Can_readChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_readChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_readChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_readChangedEvt.</summary>
+   public void On_Can_readChangedEvt(Efl.Io.ReaderCan_readChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args>)eventHandlers[Can_readChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_readChangedEvt_delegate;
+   private void on_Can_readChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.ReaderCan_readChangedEvt_Args args = new Efl.Io.ReaderCan_readChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_readChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EosEvtKey = new object();
+   /// <summary>Notifies end of stream, when property is marked as true.
+   /// If this is used alongside with an <see cref="Efl.Io.Closer"/>, then it should be emitted before that call.
+   /// 
+   /// It should be emitted only once for an object unless it implements <see cref="Efl.Io.Positioner.Seek"/>.
+   /// 
+   /// The property <see cref="Efl.Io.Reader.CanRead"/> should change to <c>false</c> before this event is dispatched.
+   /// 1.19</summary>
+   public event EventHandler EosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EosEvt_delegate)) {
+               eventHandlers.AddHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (remove_cpp_event_handler(key, this.evt_EosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EosEvt.</summary>
+   public void On_EosEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EosEvt_delegate;
+   private void on_EosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_writeChangedEvtKey = new object();
+   /// <summary>Notifies can_write property changed.
+   /// If <see cref="Efl.Io.Writer.CanWrite"/> is <c>true</c> there is data to <see cref="Efl.Io.Writer.Write"/> without blocking/error. If <see cref="Efl.Io.Writer.CanWrite"/> is <c>false</c>, <see cref="Efl.Io.Writer.Write"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Writer.Write"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> Can_writeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_writeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_writeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_writeChangedEvt.</summary>
+   public void On_Can_writeChangedEvt(Efl.Io.WriterCan_writeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args>)eventHandlers[Can_writeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_writeChangedEvt_delegate;
+   private void on_Can_writeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.WriterCan_writeChangedEvt_Args args = new Efl.Io.WriterCan_writeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_writeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_SliceChangedEvt_delegate = new Efl.EventCb(on_SliceChangedEvt_NativeCallback);
+      evt_ClosedEvt_delegate = new Efl.EventCb(on_ClosedEvt_NativeCallback);
+      evt_Can_readChangedEvt_delegate = new Efl.EventCb(on_Can_readChangedEvt_NativeCallback);
+      evt_EosEvt_delegate = new Efl.EventCb(on_EosEvt_NativeCallback);
+      evt_Can_writeChangedEvt_delegate = new Efl.EventCb(on_Can_writeChangedEvt_NativeCallback);
+   }
+   /// <summary>Limit how big the buffer can grow.
+   /// This affects both <see cref="Efl.Io.Queue.Preallocate"/> and how buffer grows when <see cref="Efl.Io.Writer.Write"/> is called.
+   /// 
+   /// If you want a buffer of an exact size, always set the limit before any further calls that can expand it.
+   /// 1.19</summary>
+   /// <returns>Defines a maximum buffer size, or 0 to allow unlimited amount of bytes
+   /// 1.19</returns>
+   virtual public  uint GetLimit() {
+       var _ret_var = Efl.Io.QueueNativeInherit.efl_io_queue_limit_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Constructor-only property to set buffer limit. 0 is unlimited
+   /// 1.19</summary>
+   /// <param name="size">Defines a maximum buffer size, or 0 to allow unlimited amount of bytes
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetLimit(  uint size) {
+                         Efl.Io.QueueNativeInherit.efl_io_queue_limit_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>How many bytes are available for read
+   /// 1.19</summary>
+   /// <returns>Bytes available to read
+   /// 1.19</returns>
+   virtual public  uint GetUsage() {
+       var _ret_var = Efl.Io.QueueNativeInherit.efl_io_queue_usage_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gain temporary access to queue&apos;s internal read memory.
+   /// The memory pointed to by slice may be changed by other methods of this class. The event &quot;slice,changed&quot; will be called in those situations.
+   /// 1.19</summary>
+   /// <returns>Slice of the current buffer, may be invalidated if <see cref="Efl.Io.Writer.Write"/>, <see cref="Efl.Io.Closer.Close"/> or <see cref="Efl.Io.Reader.Read"/> are called. It is the full slice available for reading.
+   /// 1.19</returns>
+   virtual public Eina.Slice GetSlice() {
+       var _ret_var = Efl.Io.QueueNativeInherit.efl_io_queue_slice_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Immediately pre-allocate a buffer of at least a given size.
+   /// 1.19</summary>
+   /// <param name="size">Amount of bytes to pre-allocate.
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void Preallocate(  uint size) {
+                         Efl.Io.QueueNativeInherit.efl_io_queue_preallocate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Discard the given number of bytes.
+   /// This has the same effect as reading and discarding the given amount of bytes, without executing the actual copy.
+   /// 
+   /// It&apos;s often paired with <see cref="Efl.Io.Queue.GetSlice"/>, if users read the information from the slice and once they&apos;re done, that data must be discarded.
+   /// 
+   /// As an example, some protocols provide messages with a &quot;size&quot; header, in which case <see cref="Efl.Io.Queue.GetSlice"/> is used to peek into the available memory to see if there is a &quot;size&quot; and if the rest of the slice is the full payload. In that situation the slice may be handled by a processing function. When the function is complete the defined amount of data must be discarded -- with this function.
+   /// 1.19</summary>
+   /// <param name="amount">Bytes to discard
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void Discard(  uint amount) {
+                         Efl.Io.QueueNativeInherit.efl_io_queue_discard_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), amount);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Clears the queue. Same as reading all data.
+   /// This is equivalent to calling <see cref="Efl.Io.Queue.Discard"/> with <see cref="Efl.Io.Queue.GetUsage"/> amount of bytes.
+   /// 1.19</summary>
+   /// <returns></returns>
+   virtual public  void Clear() {
+       Efl.Io.QueueNativeInherit.efl_io_queue_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Mark this end-of-stream.
+   /// That will set <see cref="Efl.Io.Reader.Eos"/> to <c>true</c> and forbid any further writes.
+   /// 
+   /// Unlike <see cref="Efl.Io.Closer.Close"/>, this won&apos;t clear anything.
+   /// 1.19</summary>
+   /// <returns></returns>
+   virtual public  void EosMark() {
+       Efl.Io.QueueNativeInherit.efl_io_queue_eos_mark_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>If true will notify object was closed.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if closed, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetClosed() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_closed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close resources on exec() calls.
+   /// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnExec() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c>, will close on exec() call.
+   /// 1.19</summary>
+   /// <param name="close_on_exec"><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns><c>true</c> if could set, <c>false</c> if not supported or failed.
+   /// 1.19</returns>
+   virtual public bool SetCloseOnExec( bool close_on_exec) {
+                         var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_exec);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnInvalidate() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <param name="close_on_invalidate"><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCloseOnInvalidate( bool close_on_invalidate) {
+                         Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_invalidate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Closes the Input/Output object.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as close(2) libc function.
+   /// 1.19</summary>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Close() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanRead() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_read"><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanRead( bool can_read) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_read);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetEos() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_eos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <param name="is_eos"><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEos( bool is_eos) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_eos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_eos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Reads data into a pre-allocated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as read(2) libc function.
+   /// 1.19</summary>
+   /// <param name="rw_slice">Provides a pre-allocated memory to be filled up to rw_slice.len. It will be populated and the length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Read( ref Eina.RwSlice rw_slice) {
+                         var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_read_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref rw_slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanWrite() {
+       var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_can_write_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_write"><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanWrite( bool can_write) {
+                         Efl.Io.WriterNativeInherit.efl_io_writer_can_write_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_write);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Writes data from a pre-populated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as write(2) libc function.
+   /// 1.19</summary>
+   /// <param name="slice">Provides a pre-populated memory to be used up to slice.len. The returned slice will be adapted as length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <param name="remaining">Convenience to output the remaining parts of slice that was not written. If the full slice was written, this will be a slice of zero-length.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Write( ref Eina.Slice slice,  ref Eina.Slice remaining) {
+                                           var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_write_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref slice,  ref remaining);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Limit how big the buffer can grow.
+/// This affects both <see cref="Efl.Io.Queue.Preallocate"/> and how buffer grows when <see cref="Efl.Io.Writer.Write"/> is called.
+/// 
+/// If you want a buffer of an exact size, always set the limit before any further calls that can expand it.
+/// 1.19</summary>
+/// <value>Defines a maximum buffer size, or 0 to allow unlimited amount of bytes
+/// 1.19</value>
+   public  uint Limit {
+      get { return GetLimit(); }
+      set { SetLimit( value); }
+   }
+   /// <summary>How many bytes are available for read
+/// 1.19</summary>
+/// <value>Bytes available to read
+/// 1.19</value>
+   public  uint Usage {
+      get { return GetUsage(); }
+   }
+   /// <summary>Gain temporary access to queue&apos;s internal read memory.
+/// The memory pointed to by slice may be changed by other methods of this class. The event &quot;slice,changed&quot; will be called in those situations.
+/// 1.19</summary>
+/// <value>Slice of the current buffer, may be invalidated if <see cref="Efl.Io.Writer.Write"/>, <see cref="Efl.Io.Closer.Close"/> or <see cref="Efl.Io.Reader.Read"/> are called. It is the full slice available for reading.
+/// 1.19</value>
+   public Eina.Slice Slice {
+      get { return GetSlice(); }
+   }
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <value><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Closed {
+      get { return GetClosed(); }
+   }
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <value><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnExec {
+      get { return GetCloseOnExec(); }
+      set { SetCloseOnExec( value); }
+   }
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <value><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnInvalidate {
+      get { return GetCloseOnInvalidate(); }
+      set { SetCloseOnInvalidate( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanRead {
+      get { return GetCanRead(); }
+      set { SetCanRead( value); }
+   }
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <value><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Eos {
+      get { return GetEos(); }
+      set { SetEos( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanWrite {
+      get { return GetCanWrite(); }
+      set { SetCanWrite( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.Queue.efl_io_queue_class_get();
+   }
+}
+public class QueueNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_io_queue_limit_get_static_delegate == null)
+      efl_io_queue_limit_get_static_delegate = new efl_io_queue_limit_get_delegate(limit_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_limit_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_limit_get_static_delegate)});
+      if (efl_io_queue_limit_set_static_delegate == null)
+      efl_io_queue_limit_set_static_delegate = new efl_io_queue_limit_set_delegate(limit_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_limit_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_limit_set_static_delegate)});
+      if (efl_io_queue_usage_get_static_delegate == null)
+      efl_io_queue_usage_get_static_delegate = new efl_io_queue_usage_get_delegate(usage_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_usage_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_usage_get_static_delegate)});
+      if (efl_io_queue_slice_get_static_delegate == null)
+      efl_io_queue_slice_get_static_delegate = new efl_io_queue_slice_get_delegate(slice_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_slice_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_slice_get_static_delegate)});
+      if (efl_io_queue_preallocate_static_delegate == null)
+      efl_io_queue_preallocate_static_delegate = new efl_io_queue_preallocate_delegate(preallocate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_preallocate"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_preallocate_static_delegate)});
+      if (efl_io_queue_discard_static_delegate == null)
+      efl_io_queue_discard_static_delegate = new efl_io_queue_discard_delegate(discard);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_discard"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_discard_static_delegate)});
+      if (efl_io_queue_clear_static_delegate == null)
+      efl_io_queue_clear_static_delegate = new efl_io_queue_clear_delegate(clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_clear_static_delegate)});
+      if (efl_io_queue_eos_mark_static_delegate == null)
+      efl_io_queue_eos_mark_static_delegate = new efl_io_queue_eos_mark_delegate(eos_mark);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_queue_eos_mark"), func = Marshal.GetFunctionPointerForDelegate(efl_io_queue_eos_mark_static_delegate)});
+      if (efl_io_closer_closed_get_static_delegate == null)
+      efl_io_closer_closed_get_static_delegate = new efl_io_closer_closed_get_delegate(closed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_closed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_closed_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_get_static_delegate == null)
+      efl_io_closer_close_on_exec_get_static_delegate = new efl_io_closer_close_on_exec_get_delegate(close_on_exec_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_set_static_delegate == null)
+      efl_io_closer_close_on_exec_set_static_delegate = new efl_io_closer_close_on_exec_set_delegate(close_on_exec_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_set_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_get_static_delegate == null)
+      efl_io_closer_close_on_invalidate_get_static_delegate = new efl_io_closer_close_on_invalidate_get_delegate(close_on_invalidate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_get_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_set_static_delegate == null)
+      efl_io_closer_close_on_invalidate_set_static_delegate = new efl_io_closer_close_on_invalidate_set_delegate(close_on_invalidate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_set_static_delegate)});
+      if (efl_io_closer_close_static_delegate == null)
+      efl_io_closer_close_static_delegate = new efl_io_closer_close_delegate(close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_static_delegate)});
+      if (efl_io_reader_can_read_get_static_delegate == null)
+      efl_io_reader_can_read_get_static_delegate = new efl_io_reader_can_read_get_delegate(can_read_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_get_static_delegate)});
+      if (efl_io_reader_can_read_set_static_delegate == null)
+      efl_io_reader_can_read_set_static_delegate = new efl_io_reader_can_read_set_delegate(can_read_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_set_static_delegate)});
+      if (efl_io_reader_eos_get_static_delegate == null)
+      efl_io_reader_eos_get_static_delegate = new efl_io_reader_eos_get_delegate(eos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_get_static_delegate)});
+      if (efl_io_reader_eos_set_static_delegate == null)
+      efl_io_reader_eos_set_static_delegate = new efl_io_reader_eos_set_delegate(eos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_set_static_delegate)});
+      if (efl_io_reader_read_static_delegate == null)
+      efl_io_reader_read_static_delegate = new efl_io_reader_read_delegate(read);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_read"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_read_static_delegate)});
+      if (efl_io_writer_can_write_get_static_delegate == null)
+      efl_io_writer_can_write_get_static_delegate = new efl_io_writer_can_write_get_delegate(can_write_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_get_static_delegate)});
+      if (efl_io_writer_can_write_set_static_delegate == null)
+      efl_io_writer_can_write_set_static_delegate = new efl_io_writer_can_write_set_delegate(can_write_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_set_static_delegate)});
+      if (efl_io_writer_write_static_delegate == null)
+      efl_io_writer_write_static_delegate = new efl_io_writer_write_delegate(write);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_write"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_write_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Io.Queue.efl_io_queue_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.Queue.efl_io_queue_class_get();
+   }
+
+
+    private delegate  uint efl_io_queue_limit_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_io_queue_limit_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_limit_get_api_delegate> efl_io_queue_limit_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_limit_get_api_delegate>(_Module, "efl_io_queue_limit_get");
+    private static  uint limit_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_queue_limit_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Queue)wrapper).GetLimit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_queue_limit_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_queue_limit_get_delegate efl_io_queue_limit_get_static_delegate;
+
+
+    private delegate  void efl_io_queue_limit_set_delegate(System.IntPtr obj, System.IntPtr pd,    uint size);
+
+
+    public delegate  void efl_io_queue_limit_set_api_delegate(System.IntPtr obj,    uint size);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_limit_set_api_delegate> efl_io_queue_limit_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_limit_set_api_delegate>(_Module, "efl_io_queue_limit_set");
+    private static  void limit_set(System.IntPtr obj, System.IntPtr pd,   uint size)
+   {
+      Eina.Log.Debug("function efl_io_queue_limit_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Queue)wrapper).SetLimit( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_queue_limit_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_queue_limit_set_delegate efl_io_queue_limit_set_static_delegate;
+
+
+    private delegate  uint efl_io_queue_usage_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_io_queue_usage_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_usage_get_api_delegate> efl_io_queue_usage_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_usage_get_api_delegate>(_Module, "efl_io_queue_usage_get");
+    private static  uint usage_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_queue_usage_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Queue)wrapper).GetUsage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_queue_usage_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_queue_usage_get_delegate efl_io_queue_usage_get_static_delegate;
+
+
+    private delegate Eina.Slice efl_io_queue_slice_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Slice efl_io_queue_slice_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_slice_get_api_delegate> efl_io_queue_slice_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_slice_get_api_delegate>(_Module, "efl_io_queue_slice_get");
+    private static Eina.Slice slice_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_queue_slice_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Slice _ret_var = default(Eina.Slice);
+         try {
+            _ret_var = ((Queue)wrapper).GetSlice();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_queue_slice_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_queue_slice_get_delegate efl_io_queue_slice_get_static_delegate;
+
+
+    private delegate  void efl_io_queue_preallocate_delegate(System.IntPtr obj, System.IntPtr pd,    uint size);
+
+
+    public delegate  void efl_io_queue_preallocate_api_delegate(System.IntPtr obj,    uint size);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_preallocate_api_delegate> efl_io_queue_preallocate_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_preallocate_api_delegate>(_Module, "efl_io_queue_preallocate");
+    private static  void preallocate(System.IntPtr obj, System.IntPtr pd,   uint size)
+   {
+      Eina.Log.Debug("function efl_io_queue_preallocate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Queue)wrapper).Preallocate( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_queue_preallocate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_queue_preallocate_delegate efl_io_queue_preallocate_static_delegate;
+
+
+    private delegate  void efl_io_queue_discard_delegate(System.IntPtr obj, System.IntPtr pd,    uint amount);
+
+
+    public delegate  void efl_io_queue_discard_api_delegate(System.IntPtr obj,    uint amount);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_discard_api_delegate> efl_io_queue_discard_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_discard_api_delegate>(_Module, "efl_io_queue_discard");
+    private static  void discard(System.IntPtr obj, System.IntPtr pd,   uint amount)
+   {
+      Eina.Log.Debug("function efl_io_queue_discard was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Queue)wrapper).Discard( amount);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_queue_discard_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  amount);
+      }
+   }
+   private static efl_io_queue_discard_delegate efl_io_queue_discard_static_delegate;
+
+
+    private delegate  void efl_io_queue_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_io_queue_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_clear_api_delegate> efl_io_queue_clear_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_clear_api_delegate>(_Module, "efl_io_queue_clear");
+    private static  void clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_queue_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Queue)wrapper).Clear();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_io_queue_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_queue_clear_delegate efl_io_queue_clear_static_delegate;
+
+
+    private delegate  void efl_io_queue_eos_mark_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_io_queue_eos_mark_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_queue_eos_mark_api_delegate> efl_io_queue_eos_mark_ptr = new Efl.Eo.FunctionWrapper<efl_io_queue_eos_mark_api_delegate>(_Module, "efl_io_queue_eos_mark");
+    private static  void eos_mark(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_queue_eos_mark was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Queue)wrapper).EosMark();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_io_queue_eos_mark_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_queue_eos_mark_delegate efl_io_queue_eos_mark_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_closed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_closed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate> efl_io_closer_closed_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate>(_Module, "efl_io_closer_closed_get");
+    private static bool closed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_closed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Queue)wrapper).GetClosed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_closed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_closed_get_delegate efl_io_closer_closed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate> efl_io_closer_close_on_exec_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate>(_Module, "efl_io_closer_close_on_exec_get");
+    private static bool close_on_exec_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Queue)wrapper).GetCloseOnExec();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_exec_get_delegate efl_io_closer_close_on_exec_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate> efl_io_closer_close_on_exec_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate>(_Module, "efl_io_closer_close_on_exec_set");
+    private static bool close_on_exec_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_exec)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Queue)wrapper).SetCloseOnExec( close_on_exec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_exec);
+      }
+   }
+   private static efl_io_closer_close_on_exec_set_delegate efl_io_closer_close_on_exec_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_invalidate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_invalidate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate> efl_io_closer_close_on_invalidate_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_get");
+    private static bool close_on_invalidate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Queue)wrapper).GetCloseOnInvalidate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_get_delegate efl_io_closer_close_on_invalidate_get_static_delegate;
+
+
+    private delegate  void efl_io_closer_close_on_invalidate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+
+
+    public delegate  void efl_io_closer_close_on_invalidate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate> efl_io_closer_close_on_invalidate_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_set");
+    private static  void close_on_invalidate_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_invalidate)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Queue)wrapper).SetCloseOnInvalidate( close_on_invalidate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_invalidate);
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_set_delegate efl_io_closer_close_on_invalidate_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_closer_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_io_closer_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate> efl_io_closer_close_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate>(_Module, "efl_io_closer_close");
+    private static  Eina.Error close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Queue)wrapper).Close();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_delegate efl_io_closer_close_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_can_read_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_can_read_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate> efl_io_reader_can_read_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate>(_Module, "efl_io_reader_can_read_get");
+    private static bool can_read_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Queue)wrapper).GetCanRead();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_can_read_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_can_read_get_delegate efl_io_reader_can_read_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_can_read_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+
+
+    public delegate  void efl_io_reader_can_read_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate> efl_io_reader_can_read_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate>(_Module, "efl_io_reader_can_read_set");
+    private static  void can_read_set(System.IntPtr obj, System.IntPtr pd,  bool can_read)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Queue)wrapper).SetCanRead( can_read);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_can_read_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_read);
+      }
+   }
+   private static efl_io_reader_can_read_set_delegate efl_io_reader_can_read_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_eos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_eos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate> efl_io_reader_eos_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate>(_Module, "efl_io_reader_eos_get");
+    private static bool eos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Queue)wrapper).GetEos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_eos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_eos_get_delegate efl_io_reader_eos_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_eos_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+
+
+    public delegate  void efl_io_reader_eos_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate> efl_io_reader_eos_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate>(_Module, "efl_io_reader_eos_set");
+    private static  void eos_set(System.IntPtr obj, System.IntPtr pd,  bool is_eos)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Queue)wrapper).SetEos( is_eos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_eos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_eos);
+      }
+   }
+   private static efl_io_reader_eos_set_delegate efl_io_reader_eos_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_reader_read_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.RwSlice rw_slice);
+
+
+    public delegate  Eina.Error efl_io_reader_read_api_delegate(System.IntPtr obj,   ref Eina.RwSlice rw_slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate> efl_io_reader_read_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate>(_Module, "efl_io_reader_read");
+    private static  Eina.Error read(System.IntPtr obj, System.IntPtr pd,  ref Eina.RwSlice rw_slice)
+   {
+      Eina.Log.Debug("function efl_io_reader_read was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Queue)wrapper).Read( ref rw_slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_reader_read_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref rw_slice);
+      }
+   }
+   private static efl_io_reader_read_delegate efl_io_reader_read_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_writer_can_write_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_writer_can_write_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate> efl_io_writer_can_write_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate>(_Module, "efl_io_writer_can_write_get");
+    private static bool can_write_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Queue)wrapper).GetCanWrite();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_writer_can_write_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_writer_can_write_get_delegate efl_io_writer_can_write_get_static_delegate;
+
+
+    private delegate  void efl_io_writer_can_write_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+
+
+    public delegate  void efl_io_writer_can_write_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate> efl_io_writer_can_write_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate>(_Module, "efl_io_writer_can_write_set");
+    private static  void can_write_set(System.IntPtr obj, System.IntPtr pd,  bool can_write)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Queue)wrapper).SetCanWrite( can_write);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_writer_can_write_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_write);
+      }
+   }
+   private static efl_io_writer_can_write_set_delegate efl_io_writer_can_write_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_writer_write_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+
+
+    public delegate  Eina.Error efl_io_writer_write_api_delegate(System.IntPtr obj,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate> efl_io_writer_write_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate>(_Module, "efl_io_writer_write");
+    private static  Eina.Error write(System.IntPtr obj, System.IntPtr pd,  ref Eina.Slice slice,  ref Eina.Slice remaining)
+   {
+      Eina.Log.Debug("function efl_io_writer_write was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 remaining = default(Eina.Slice);                      Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Queue)wrapper).Write( ref slice,  ref remaining);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_writer_write_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref slice,  ref remaining);
+      }
+   }
+   private static efl_io_writer_write_delegate efl_io_writer_write_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_io_reader.eo.cs b/internals/src/EflSharp/EflSharp/efl_io_reader.eo.cs
new file mode 100755 (executable)
index 0000000..9fc066d
--- /dev/null
@@ -0,0 +1,532 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Io { 
+/// <summary>Generic interface for objects that can read data into a provided memory.
+/// This interface allows external objects to transparently monitor for new data and as it to be read into a provided memory slice.
+/// 
+/// Calls to <see cref="Efl.Io.Reader.Read"/> may or may not block, that&apos;s not up to this interface to specify. The user can check based on <see cref="Efl.Io.Reader.Eos"/> property and signal if the stream reached an end, with event &quot;can_read,changed&quot; or property <see cref="Efl.Io.Reader.CanRead"/> to known whenever a read would have data to return.
+/// 1.19</summary>
+[ReaderNativeInherit]
+public interface Reader : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <returns><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetCanRead();
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <param name="can_read"><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</param>
+/// <returns></returns>
+ void SetCanRead( bool can_read);
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <returns><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetEos();
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <param name="is_eos"><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</param>
+/// <returns></returns>
+ void SetEos( bool is_eos);
+   /// <summary>Reads data into a pre-allocated buffer.
+/// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+/// 
+/// You can understand this method as read(2) libc function.
+/// 1.19</summary>
+/// <param name="rw_slice">Provides a pre-allocated memory to be filled up to rw_slice.len. It will be populated and the length will be set to the actually used amount of bytes, which can be smaller than the request.
+/// 1.19</param>
+/// <returns>0 on succeed, a mapping of errno otherwise
+/// 1.19</returns>
+ Eina.Error Read( ref Eina.RwSlice rw_slice);
+                  /// <summary>Notifies can_read property changed.
+   /// If <see cref="Efl.Io.Reader.CanRead"/> is <c>true</c> there is data to <see cref="Efl.Io.Reader.Read"/> without blocking/error. If <see cref="Efl.Io.Reader.CanRead"/> is <c>false</c>, <see cref="Efl.Io.Reader.Read"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Reader.Read"/>, thus before it returns.
+   /// 1.19</summary>
+   event EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> Can_readChangedEvt;
+   /// <summary>Notifies end of stream, when property is marked as true.
+   /// If this is used alongside with an <see cref="Efl.Io.Closer"/>, then it should be emitted before that call.
+   /// 
+   /// It should be emitted only once for an object unless it implements <see cref="Efl.Io.Positioner.Seek"/>.
+   /// 
+   /// The property <see cref="Efl.Io.Reader.CanRead"/> should change to <c>false</c> before this event is dispatched.
+   /// 1.19</summary>
+   event EventHandler EosEvt;
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</value>
+   bool CanRead {
+      get ;
+      set ;
+   }
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <value><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</value>
+   bool Eos {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Io.Reader.Can_readChangedEvt"/>.</summary>
+public class ReaderCan_readChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public bool arg { get; set; }
+}
+/// <summary>Generic interface for objects that can read data into a provided memory.
+/// This interface allows external objects to transparently monitor for new data and as it to be read into a provided memory slice.
+/// 
+/// Calls to <see cref="Efl.Io.Reader.Read"/> may or may not block, that&apos;s not up to this interface to specify. The user can check based on <see cref="Efl.Io.Reader.Eos"/> property and signal if the stream reached an end, with event &quot;can_read,changed&quot; or property <see cref="Efl.Io.Reader.CanRead"/> to known whenever a read would have data to return.
+/// 1.19</summary>
+sealed public class ReaderConcrete : 
+
+Reader
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ReaderConcrete))
+            return Efl.Io.ReaderNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_io_reader_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ReaderConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ReaderConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ReaderConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ReaderConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object Can_readChangedEvtKey = new object();
+   /// <summary>Notifies can_read property changed.
+   /// If <see cref="Efl.Io.Reader.CanRead"/> is <c>true</c> there is data to <see cref="Efl.Io.Reader.Read"/> without blocking/error. If <see cref="Efl.Io.Reader.CanRead"/> is <c>false</c>, <see cref="Efl.Io.Reader.Read"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Reader.Read"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> Can_readChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_readChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_readChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_readChangedEvt.</summary>
+   public void On_Can_readChangedEvt(Efl.Io.ReaderCan_readChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args>)eventHandlers[Can_readChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_readChangedEvt_delegate;
+   private void on_Can_readChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.ReaderCan_readChangedEvt_Args args = new Efl.Io.ReaderCan_readChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_readChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EosEvtKey = new object();
+   /// <summary>Notifies end of stream, when property is marked as true.
+   /// If this is used alongside with an <see cref="Efl.Io.Closer"/>, then it should be emitted before that call.
+   /// 
+   /// It should be emitted only once for an object unless it implements <see cref="Efl.Io.Positioner.Seek"/>.
+   /// 
+   /// The property <see cref="Efl.Io.Reader.CanRead"/> should change to <c>false</c> before this event is dispatched.
+   /// 1.19</summary>
+   public event EventHandler EosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EosEvt_delegate)) {
+               eventHandlers.AddHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (remove_cpp_event_handler(key, this.evt_EosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EosEvt.</summary>
+   public void On_EosEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EosEvt_delegate;
+   private void on_EosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_Can_readChangedEvt_delegate = new Efl.EventCb(on_Can_readChangedEvt_NativeCallback);
+      evt_EosEvt_delegate = new Efl.EventCb(on_EosEvt_NativeCallback);
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetCanRead() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_read"><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetCanRead( bool can_read) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_set_ptr.Value.Delegate(this.NativeHandle, can_read);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetEos() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_eos_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <param name="is_eos"><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetEos( bool is_eos) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_eos_set_ptr.Value.Delegate(this.NativeHandle, is_eos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Reads data into a pre-allocated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as read(2) libc function.
+   /// 1.19</summary>
+   /// <param name="rw_slice">Provides a pre-allocated memory to be filled up to rw_slice.len. It will be populated and the length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   public  Eina.Error Read( ref Eina.RwSlice rw_slice) {
+                         var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_read_ptr.Value.Delegate(this.NativeHandle, ref rw_slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanRead {
+      get { return GetCanRead(); }
+      set { SetCanRead( value); }
+   }
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <value><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Eos {
+      get { return GetEos(); }
+      set { SetEos( value); }
+   }
+}
+public class ReaderNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_io_reader_can_read_get_static_delegate == null)
+      efl_io_reader_can_read_get_static_delegate = new efl_io_reader_can_read_get_delegate(can_read_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_get_static_delegate)});
+      if (efl_io_reader_can_read_set_static_delegate == null)
+      efl_io_reader_can_read_set_static_delegate = new efl_io_reader_can_read_set_delegate(can_read_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_set_static_delegate)});
+      if (efl_io_reader_eos_get_static_delegate == null)
+      efl_io_reader_eos_get_static_delegate = new efl_io_reader_eos_get_delegate(eos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_get_static_delegate)});
+      if (efl_io_reader_eos_set_static_delegate == null)
+      efl_io_reader_eos_set_static_delegate = new efl_io_reader_eos_set_delegate(eos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_set_static_delegate)});
+      if (efl_io_reader_read_static_delegate == null)
+      efl_io_reader_read_static_delegate = new efl_io_reader_read_delegate(read);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_read"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_read_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Io.ReaderConcrete.efl_io_reader_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.ReaderConcrete.efl_io_reader_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_can_read_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_can_read_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate> efl_io_reader_can_read_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate>(_Module, "efl_io_reader_can_read_get");
+    private static bool can_read_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Reader)wrapper).GetCanRead();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_can_read_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_can_read_get_delegate efl_io_reader_can_read_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_can_read_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+
+
+    public delegate  void efl_io_reader_can_read_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate> efl_io_reader_can_read_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate>(_Module, "efl_io_reader_can_read_set");
+    private static  void can_read_set(System.IntPtr obj, System.IntPtr pd,  bool can_read)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Reader)wrapper).SetCanRead( can_read);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_can_read_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_read);
+      }
+   }
+   private static efl_io_reader_can_read_set_delegate efl_io_reader_can_read_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_eos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_eos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate> efl_io_reader_eos_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate>(_Module, "efl_io_reader_eos_get");
+    private static bool eos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Reader)wrapper).GetEos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_eos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_eos_get_delegate efl_io_reader_eos_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_eos_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+
+
+    public delegate  void efl_io_reader_eos_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate> efl_io_reader_eos_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate>(_Module, "efl_io_reader_eos_set");
+    private static  void eos_set(System.IntPtr obj, System.IntPtr pd,  bool is_eos)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Reader)wrapper).SetEos( is_eos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_eos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_eos);
+      }
+   }
+   private static efl_io_reader_eos_set_delegate efl_io_reader_eos_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_reader_read_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.RwSlice rw_slice);
+
+
+    public delegate  Eina.Error efl_io_reader_read_api_delegate(System.IntPtr obj,   ref Eina.RwSlice rw_slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate> efl_io_reader_read_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate>(_Module, "efl_io_reader_read");
+    private static  Eina.Error read(System.IntPtr obj, System.IntPtr pd,  ref Eina.RwSlice rw_slice)
+   {
+      Eina.Log.Debug("function efl_io_reader_read was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Reader)wrapper).Read( ref rw_slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_reader_read_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref rw_slice);
+      }
+   }
+   private static efl_io_reader_read_delegate efl_io_reader_read_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_io_sizer.eo.cs b/internals/src/EflSharp/EflSharp/efl_io_sizer.eo.cs
new file mode 100755 (executable)
index 0000000..9b22484
--- /dev/null
@@ -0,0 +1,355 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Io { 
+/// <summary>Generic interface for objects that can resize or report size of themselves.
+/// This interface allows external objects to transparently resize or report its size.
+/// 1.19</summary>
+[SizerNativeInherit]
+public interface Sizer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Size property
+/// 1.19</summary>
+/// <returns>Object size
+/// 1.19</returns>
+ ulong GetSize();
+   /// <summary>Try to resize the object, check with get if the value was accepted or not.
+/// 1.19</summary>
+/// <param name="size">Object size
+/// 1.19</param>
+/// <returns><c>true</c> if could resize, <c>false</c> if errors.
+/// 1.19</returns>
+bool SetSize(  ulong size);
+   /// <summary>Resize object
+/// 1.19</summary>
+/// <param name="size">Object size
+/// 1.19</param>
+/// <returns>0 on succeed, a mapping of errno otherwise
+/// 1.19</returns>
+ Eina.Error Resize(  ulong size);
+            /// <summary>Notifies size changed
+   /// 1.19</summary>
+   event EventHandler SizeChangedEvt;
+   /// <summary>Size property
+/// 1.19</summary>
+/// <value>Object size
+/// 1.19</value>
+    ulong Size {
+      get ;
+      set ;
+   }
+}
+/// <summary>Generic interface for objects that can resize or report size of themselves.
+/// This interface allows external objects to transparently resize or report its size.
+/// 1.19</summary>
+sealed public class SizerConcrete : 
+
+Sizer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SizerConcrete))
+            return Efl.Io.SizerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_io_sizer_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SizerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~SizerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static SizerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SizerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Notifies size changed
+   /// 1.19</summary>
+   public event EventHandler SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_SIZER_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_SIZER_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+   }
+   /// <summary>Size property
+   /// 1.19</summary>
+   /// <returns>Object size
+   /// 1.19</returns>
+   public  ulong GetSize() {
+       var _ret_var = Efl.Io.SizerNativeInherit.efl_io_sizer_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Try to resize the object, check with get if the value was accepted or not.
+   /// 1.19</summary>
+   /// <param name="size">Object size
+   /// 1.19</param>
+   /// <returns><c>true</c> if could resize, <c>false</c> if errors.
+   /// 1.19</returns>
+   public bool SetSize(  ulong size) {
+                         var _ret_var = Efl.Io.SizerNativeInherit.efl_io_sizer_size_set_ptr.Value.Delegate(this.NativeHandle, size);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Resize object
+   /// 1.19</summary>
+   /// <param name="size">Object size
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   public  Eina.Error Resize(  ulong size) {
+                         var _ret_var = Efl.Io.SizerNativeInherit.efl_io_sizer_resize_ptr.Value.Delegate(this.NativeHandle, size);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Size property
+/// 1.19</summary>
+/// <value>Object size
+/// 1.19</value>
+   public  ulong Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+}
+public class SizerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_io_sizer_size_get_static_delegate == null)
+      efl_io_sizer_size_get_static_delegate = new efl_io_sizer_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_sizer_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_sizer_size_get_static_delegate)});
+      if (efl_io_sizer_size_set_static_delegate == null)
+      efl_io_sizer_size_set_static_delegate = new efl_io_sizer_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_sizer_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_sizer_size_set_static_delegate)});
+      if (efl_io_sizer_resize_static_delegate == null)
+      efl_io_sizer_resize_static_delegate = new efl_io_sizer_resize_delegate(resize);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_sizer_resize"), func = Marshal.GetFunctionPointerForDelegate(efl_io_sizer_resize_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Io.SizerConcrete.efl_io_sizer_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.SizerConcrete.efl_io_sizer_mixin_get();
+   }
+
+
+    private delegate  ulong efl_io_sizer_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  ulong efl_io_sizer_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_sizer_size_get_api_delegate> efl_io_sizer_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_sizer_size_get_api_delegate>(_Module, "efl_io_sizer_size_get");
+    private static  ulong size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_sizer_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   ulong _ret_var = default( ulong);
+         try {
+            _ret_var = ((SizerConcrete)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_sizer_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_sizer_size_get_delegate efl_io_sizer_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_sizer_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    ulong size);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_sizer_size_set_api_delegate(System.IntPtr obj,    ulong size);
+    public static Efl.Eo.FunctionWrapper<efl_io_sizer_size_set_api_delegate> efl_io_sizer_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_sizer_size_set_api_delegate>(_Module, "efl_io_sizer_size_set");
+    private static bool size_set(System.IntPtr obj, System.IntPtr pd,   ulong size)
+   {
+      Eina.Log.Debug("function efl_io_sizer_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SizerConcrete)wrapper).SetSize( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_sizer_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_sizer_size_set_delegate efl_io_sizer_size_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_sizer_resize_delegate(System.IntPtr obj, System.IntPtr pd,    ulong size);
+
+
+    public delegate  Eina.Error efl_io_sizer_resize_api_delegate(System.IntPtr obj,    ulong size);
+    public static Efl.Eo.FunctionWrapper<efl_io_sizer_resize_api_delegate> efl_io_sizer_resize_ptr = new Efl.Eo.FunctionWrapper<efl_io_sizer_resize_api_delegate>(_Module, "efl_io_sizer_resize");
+    private static  Eina.Error resize(System.IntPtr obj, System.IntPtr pd,   ulong size)
+   {
+      Eina.Log.Debug("function efl_io_sizer_resize was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((SizerConcrete)wrapper).Resize( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_sizer_resize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_io_sizer_resize_delegate efl_io_sizer_resize_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_io_writer.eo.cs b/internals/src/EflSharp/EflSharp/efl_io_writer.eo.cs
new file mode 100755 (executable)
index 0000000..984fa66
--- /dev/null
@@ -0,0 +1,377 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Io { 
+/// <summary>Generic interface for objects that can write data from a provided memory.
+/// This interface allows external objects to transparently write data to this object and be notified whether more data can be written or if it&apos;s reached capacity.
+/// 
+/// Calls to <see cref="Efl.Io.Writer.Write"/> may or may not block: that&apos;s not up to this interface to specify. The user can check with event &quot;can_write,changed&quot; or property <see cref="Efl.Io.Writer.CanWrite"/> to known whenever a write could push more data.
+/// 1.19</summary>
+[WriterNativeInherit]
+public interface Writer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <returns><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</returns>
+bool GetCanWrite();
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <param name="can_write"><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</param>
+/// <returns></returns>
+ void SetCanWrite( bool can_write);
+   /// <summary>Writes data from a pre-populated buffer.
+/// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+/// 
+/// You can understand this method as write(2) libc function.
+/// 1.19</summary>
+/// <param name="slice">Provides a pre-populated memory to be used up to slice.len. The returned slice will be adapted as length will be set to the actually used amount of bytes, which can be smaller than the request.
+/// 1.19</param>
+/// <param name="remaining">Convenience to output the remaining parts of slice that was not written. If the full slice was written, this will be a slice of zero-length.
+/// 1.19</param>
+/// <returns>0 on succeed, a mapping of errno otherwise
+/// 1.19</returns>
+ Eina.Error Write( ref Eina.Slice slice,  ref Eina.Slice remaining);
+            /// <summary>Notifies can_write property changed.
+   /// If <see cref="Efl.Io.Writer.CanWrite"/> is <c>true</c> there is data to <see cref="Efl.Io.Writer.Write"/> without blocking/error. If <see cref="Efl.Io.Writer.CanWrite"/> is <c>false</c>, <see cref="Efl.Io.Writer.Write"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Writer.Write"/>, thus before it returns.
+   /// 1.19</summary>
+   event EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> Can_writeChangedEvt;
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</value>
+   bool CanWrite {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Io.Writer.Can_writeChangedEvt"/>.</summary>
+public class WriterCan_writeChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public bool arg { get; set; }
+}
+/// <summary>Generic interface for objects that can write data from a provided memory.
+/// This interface allows external objects to transparently write data to this object and be notified whether more data can be written or if it&apos;s reached capacity.
+/// 
+/// Calls to <see cref="Efl.Io.Writer.Write"/> may or may not block: that&apos;s not up to this interface to specify. The user can check with event &quot;can_write,changed&quot; or property <see cref="Efl.Io.Writer.CanWrite"/> to known whenever a write could push more data.
+/// 1.19</summary>
+sealed public class WriterConcrete : 
+
+Writer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WriterConcrete))
+            return Efl.Io.WriterNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_io_writer_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WriterConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~WriterConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static WriterConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WriterConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object Can_writeChangedEvtKey = new object();
+   /// <summary>Notifies can_write property changed.
+   /// If <see cref="Efl.Io.Writer.CanWrite"/> is <c>true</c> there is data to <see cref="Efl.Io.Writer.Write"/> without blocking/error. If <see cref="Efl.Io.Writer.CanWrite"/> is <c>false</c>, <see cref="Efl.Io.Writer.Write"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Writer.Write"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> Can_writeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_writeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_writeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_writeChangedEvt.</summary>
+   public void On_Can_writeChangedEvt(Efl.Io.WriterCan_writeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args>)eventHandlers[Can_writeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_writeChangedEvt_delegate;
+   private void on_Can_writeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.WriterCan_writeChangedEvt_Args args = new Efl.Io.WriterCan_writeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_writeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_Can_writeChangedEvt_delegate = new Efl.EventCb(on_Can_writeChangedEvt_NativeCallback);
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</returns>
+   public bool GetCanWrite() {
+       var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_can_write_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_write"><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   public  void SetCanWrite( bool can_write) {
+                         Efl.Io.WriterNativeInherit.efl_io_writer_can_write_set_ptr.Value.Delegate(this.NativeHandle, can_write);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Writes data from a pre-populated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as write(2) libc function.
+   /// 1.19</summary>
+   /// <param name="slice">Provides a pre-populated memory to be used up to slice.len. The returned slice will be adapted as length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <param name="remaining">Convenience to output the remaining parts of slice that was not written. If the full slice was written, this will be a slice of zero-length.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   public  Eina.Error Write( ref Eina.Slice slice,  ref Eina.Slice remaining) {
+                                           var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_write_ptr.Value.Delegate(this.NativeHandle, ref slice,  ref remaining);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanWrite {
+      get { return GetCanWrite(); }
+      set { SetCanWrite( value); }
+   }
+}
+public class WriterNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_io_writer_can_write_get_static_delegate == null)
+      efl_io_writer_can_write_get_static_delegate = new efl_io_writer_can_write_get_delegate(can_write_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_get_static_delegate)});
+      if (efl_io_writer_can_write_set_static_delegate == null)
+      efl_io_writer_can_write_set_static_delegate = new efl_io_writer_can_write_set_delegate(can_write_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_set_static_delegate)});
+      if (efl_io_writer_write_static_delegate == null)
+      efl_io_writer_write_static_delegate = new efl_io_writer_write_delegate(write);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_write"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_write_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Io.WriterConcrete.efl_io_writer_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Io.WriterConcrete.efl_io_writer_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_writer_can_write_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_writer_can_write_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate> efl_io_writer_can_write_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate>(_Module, "efl_io_writer_can_write_get");
+    private static bool can_write_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Writer)wrapper).GetCanWrite();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_writer_can_write_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_writer_can_write_get_delegate efl_io_writer_can_write_get_static_delegate;
+
+
+    private delegate  void efl_io_writer_can_write_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+
+
+    public delegate  void efl_io_writer_can_write_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate> efl_io_writer_can_write_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate>(_Module, "efl_io_writer_can_write_set");
+    private static  void can_write_set(System.IntPtr obj, System.IntPtr pd,  bool can_write)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Writer)wrapper).SetCanWrite( can_write);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_writer_can_write_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_write);
+      }
+   }
+   private static efl_io_writer_can_write_set_delegate efl_io_writer_can_write_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_writer_write_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+
+
+    public delegate  Eina.Error efl_io_writer_write_api_delegate(System.IntPtr obj,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate> efl_io_writer_write_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate>(_Module, "efl_io_writer_write");
+    private static  Eina.Error write(System.IntPtr obj, System.IntPtr pd,  ref Eina.Slice slice,  ref Eina.Slice remaining)
+   {
+      Eina.Log.Debug("function efl_io_writer_write was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 remaining = default(Eina.Slice);                      Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Writer)wrapper).Write( ref slice,  ref remaining);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_writer_write_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref slice,  ref remaining);
+      }
+   }
+   private static efl_io_writer_write_delegate efl_io_writer_write_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_layout_calc.eo.cs b/internals/src/EflSharp/EflSharp/efl_layout_calc.eo.cs
new file mode 100755 (executable)
index 0000000..a48e21b
--- /dev/null
@@ -0,0 +1,610 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Layout { 
+/// <summary>This interface defines a common set of APIs used to trigger calculations with layout objects.
+/// This defines all the APIs supported by legacy &quot;Edje&quot; object, known in EO API as Efl.Canvas.Layout.
+/// 1.21</summary>
+[CalcNativeInherit]
+public interface Calc : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Whether this object updates its size hints automatically.
+/// 1.21</summary>
+/// <returns>Whether or not update the size hints.
+/// 1.21</returns>
+bool GetCalcAutoUpdateHints();
+   /// <summary>Enable or disable auto-update of size hints.
+/// 1.21</summary>
+/// <param name="update">Whether or not update the size hints.
+/// 1.21</param>
+/// <returns></returns>
+ void SetCalcAutoUpdateHints( bool update);
+   /// <summary>Calculates the minimum required size for a given layout object.
+/// This call will trigger an internal recalculation of all parts of the object, in order to return its minimum required dimensions for width and height. The user might choose to impose those minimum sizes, making the resulting calculation to get to values greater or equal than <c>restricted</c> in both directions.
+/// 
+/// Note: At the end of this call, the object won&apos;t be automatically resized to the new dimensions, but just return the calculated sizes. The caller is the one up to change its geometry or not.
+/// 
+/// Warning: Be advised that invisible parts in the object will be taken into account in this calculation.
+/// 1.21</summary>
+/// <param name="restricted">The minimum size constraint as input, the returned size can not be lower than this (in both directions).
+/// 1.21</param>
+/// <returns>The minimum required size.
+/// 1.21</returns>
+Eina.Size2D CalcSizeMin( Eina.Size2D restricted);
+   /// <summary>Calculates the geometry of the region, relative to a given layout object&apos;s area, occupied by all parts in the object.
+/// This function gets the geometry of the rectangle equal to the area required to group all parts in obj&apos;s group/collection. The x and y coordinates are relative to the top left corner of the whole obj object&apos;s area. Parts placed out of the group&apos;s boundaries will also be taken in account, so that x and y may be negative.
+/// 
+/// Note: On failure, this function will make all non-<c>null</c> geometry pointers&apos; pointed variables be set to zero.
+/// 1.21</summary>
+/// <returns>The calculated region.
+/// 1.21</returns>
+Eina.Rect CalcPartsExtends();
+   /// <summary>Freezes the layout object.
+/// This function puts all changes on hold. Successive freezes will nest, requiring an equal number of thaws.
+/// 
+/// See also <see cref="Efl.Layout.Calc.ThawCalc"/>.
+/// 1.21</summary>
+/// <returns>The frozen state or 0 on error
+/// 1.21</returns>
+ int FreezeCalc();
+   /// <summary>Thaws the layout object.
+/// This function thaws (in other words &quot;unfreezes&quot;) the given layout object.
+/// 
+/// Note: If sucessive freezes were done, an equal number of thaws will be required.
+/// 
+/// See also <see cref="Efl.Layout.Calc.FreezeCalc"/>.
+/// 1.21</summary>
+/// <returns>The frozen state or 0 if the object is not frozen or on error.
+/// 1.21</returns>
+ int ThawCalc();
+   /// <summary>Forces a Size/Geometry calculation.
+/// Forces the object to recalculate its layout regardless of freeze/thaw. This API should be used carefully.
+/// 
+/// See also <see cref="Efl.Layout.Calc.FreezeCalc"/> and <see cref="Efl.Layout.Calc.ThawCalc"/>.
+/// 1.21</summary>
+/// <returns></returns>
+ void CalcForce();
+                        /// <summary>The layout was recalculated.
+   /// 1.21</summary>
+   event EventHandler RecalcEvt;
+   /// <summary>A circular dependency between parts of the object was found.
+   /// 1.21</summary>
+   event EventHandler CircularDependencyEvt;
+   /// <summary>Whether this object updates its size hints automatically.
+/// By default edje doesn&apos;t set size hints on itself. If this property is set to <c>true</c>, size hints will be updated after recalculation. Be careful, as recalculation may happen often, enabling this property may have a considerable performance impact as other widgets will be notified of the size hints changes.
+/// 
+/// A layout recalculation can be triggered by <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcPartsExtends"/> or even any other internal event.
+/// 1.21</summary>
+/// <value>Whether or not update the size hints.
+/// 1.21</value>
+   bool CalcAutoUpdateHints {
+      get ;
+      set ;
+   }
+}
+/// <summary>This interface defines a common set of APIs used to trigger calculations with layout objects.
+/// This defines all the APIs supported by legacy &quot;Edje&quot; object, known in EO API as Efl.Canvas.Layout.
+/// 1.21</summary>
+sealed public class CalcConcrete : 
+
+Calc
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CalcConcrete))
+            return Efl.Layout.CalcNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_layout_calc_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CalcConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~CalcConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static CalcConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CalcConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Edje, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object RecalcEvtKey = new object();
+   /// <summary>The layout was recalculated.
+   /// 1.21</summary>
+   public event EventHandler RecalcEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_RecalcEvt_delegate)) {
+               eventHandlers.AddHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (remove_cpp_event_handler(key, this.evt_RecalcEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RecalcEvt.</summary>
+   public void On_RecalcEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RecalcEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RecalcEvt_delegate;
+   private void on_RecalcEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RecalcEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CircularDependencyEvtKey = new object();
+   /// <summary>A circular dependency between parts of the object was found.
+   /// 1.21</summary>
+   public event EventHandler CircularDependencyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_CircularDependencyEvt_delegate)) {
+               eventHandlers.AddHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (remove_cpp_event_handler(key, this.evt_CircularDependencyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CircularDependencyEvt.</summary>
+   public void On_CircularDependencyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CircularDependencyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CircularDependencyEvt_delegate;
+   private void on_CircularDependencyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CircularDependencyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_RecalcEvt_delegate = new Efl.EventCb(on_RecalcEvt_NativeCallback);
+      evt_CircularDependencyEvt_delegate = new Efl.EventCb(on_CircularDependencyEvt_NativeCallback);
+   }
+   /// <summary>Whether this object updates its size hints automatically.
+   /// 1.21</summary>
+   /// <returns>Whether or not update the size hints.
+   /// 1.21</returns>
+   public bool GetCalcAutoUpdateHints() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable auto-update of size hints.
+   /// 1.21</summary>
+   /// <param name="update">Whether or not update the size hints.
+   /// 1.21</param>
+   /// <returns></returns>
+   public  void SetCalcAutoUpdateHints( bool update) {
+                         Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate(this.NativeHandle, update);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Calculates the minimum required size for a given layout object.
+   /// This call will trigger an internal recalculation of all parts of the object, in order to return its minimum required dimensions for width and height. The user might choose to impose those minimum sizes, making the resulting calculation to get to values greater or equal than <c>restricted</c> in both directions.
+   /// 
+   /// Note: At the end of this call, the object won&apos;t be automatically resized to the new dimensions, but just return the calculated sizes. The caller is the one up to change its geometry or not.
+   /// 
+   /// Warning: Be advised that invisible parts in the object will be taken into account in this calculation.
+   /// 1.21</summary>
+   /// <param name="restricted">The minimum size constraint as input, the returned size can not be lower than this (in both directions).
+   /// 1.21</param>
+   /// <returns>The minimum required size.
+   /// 1.21</returns>
+   public Eina.Size2D CalcSizeMin( Eina.Size2D restricted) {
+       var _in_restricted = Eina.Size2D_StructConversion.ToInternal(restricted);
+                  var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_size_min_ptr.Value.Delegate(this.NativeHandle, _in_restricted);
+      Eina.Error.RaiseIfUnhandledException();
+                  return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Calculates the geometry of the region, relative to a given layout object&apos;s area, occupied by all parts in the object.
+   /// This function gets the geometry of the rectangle equal to the area required to group all parts in obj&apos;s group/collection. The x and y coordinates are relative to the top left corner of the whole obj object&apos;s area. Parts placed out of the group&apos;s boundaries will also be taken in account, so that x and y may be negative.
+   /// 
+   /// Note: On failure, this function will make all non-<c>null</c> geometry pointers&apos; pointed variables be set to zero.
+   /// 1.21</summary>
+   /// <returns>The calculated region.
+   /// 1.21</returns>
+   public Eina.Rect CalcPartsExtends() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_parts_extends_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Freezes the layout object.
+   /// This function puts all changes on hold. Successive freezes will nest, requiring an equal number of thaws.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 on error
+   /// 1.21</returns>
+   public  int FreezeCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_freeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Thaws the layout object.
+   /// This function thaws (in other words &quot;unfreezes&quot;) the given layout object.
+   /// 
+   /// Note: If sucessive freezes were done, an equal number of thaws will be required.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 if the object is not frozen or on error.
+   /// 1.21</returns>
+   public  int ThawCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_thaw_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Forces a Size/Geometry calculation.
+   /// Forces the object to recalculate its layout regardless of freeze/thaw. This API should be used carefully.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/> and <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns></returns>
+   public  void CalcForce() {
+       Efl.Layout.CalcNativeInherit.efl_layout_calc_force_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Whether this object updates its size hints automatically.
+/// By default edje doesn&apos;t set size hints on itself. If this property is set to <c>true</c>, size hints will be updated after recalculation. Be careful, as recalculation may happen often, enabling this property may have a considerable performance impact as other widgets will be notified of the size hints changes.
+/// 
+/// A layout recalculation can be triggered by <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcPartsExtends"/> or even any other internal event.
+/// 1.21</summary>
+/// <value>Whether or not update the size hints.
+/// 1.21</value>
+   public bool CalcAutoUpdateHints {
+      get { return GetCalcAutoUpdateHints(); }
+      set { SetCalcAutoUpdateHints( value); }
+   }
+}
+public class CalcNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_layout_calc_auto_update_hints_get_static_delegate == null)
+      efl_layout_calc_auto_update_hints_get_static_delegate = new efl_layout_calc_auto_update_hints_get_delegate(calc_auto_update_hints_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_get_static_delegate)});
+      if (efl_layout_calc_auto_update_hints_set_static_delegate == null)
+      efl_layout_calc_auto_update_hints_set_static_delegate = new efl_layout_calc_auto_update_hints_set_delegate(calc_auto_update_hints_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_set"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_set_static_delegate)});
+      if (efl_layout_calc_size_min_static_delegate == null)
+      efl_layout_calc_size_min_static_delegate = new efl_layout_calc_size_min_delegate(calc_size_min);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_size_min"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_size_min_static_delegate)});
+      if (efl_layout_calc_parts_extends_static_delegate == null)
+      efl_layout_calc_parts_extends_static_delegate = new efl_layout_calc_parts_extends_delegate(calc_parts_extends);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_parts_extends"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_parts_extends_static_delegate)});
+      if (efl_layout_calc_freeze_static_delegate == null)
+      efl_layout_calc_freeze_static_delegate = new efl_layout_calc_freeze_delegate(calc_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_freeze_static_delegate)});
+      if (efl_layout_calc_thaw_static_delegate == null)
+      efl_layout_calc_thaw_static_delegate = new efl_layout_calc_thaw_delegate(calc_thaw);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_thaw"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_thaw_static_delegate)});
+      if (efl_layout_calc_force_static_delegate == null)
+      efl_layout_calc_force_static_delegate = new efl_layout_calc_force_delegate(calc_force);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_force"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_force_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Layout.CalcConcrete.efl_layout_calc_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Layout.CalcConcrete.efl_layout_calc_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_calc_auto_update_hints_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_calc_auto_update_hints_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate> efl_layout_calc_auto_update_hints_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_get");
+    private static bool calc_auto_update_hints_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Calc)wrapper).GetCalcAutoUpdateHints();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_get_delegate efl_layout_calc_auto_update_hints_get_static_delegate;
+
+
+    private delegate  void efl_layout_calc_auto_update_hints_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool update);
+
+
+    public delegate  void efl_layout_calc_auto_update_hints_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool update);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate> efl_layout_calc_auto_update_hints_set_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_set");
+    private static  void calc_auto_update_hints_set(System.IntPtr obj, System.IntPtr pd,  bool update)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Calc)wrapper).SetCalcAutoUpdateHints( update);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  update);
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_set_delegate efl_layout_calc_auto_update_hints_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal restricted);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal restricted);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate> efl_layout_calc_size_min_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate>(_Module, "efl_layout_calc_size_min");
+    private static Eina.Size2D_StructInternal calc_size_min(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal restricted)
+   {
+      Eina.Log.Debug("function efl_layout_calc_size_min was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_restricted = Eina.Size2D_StructConversion.ToManaged(restricted);
+                     Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Calc)wrapper).CalcSizeMin( _in_restricted);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_size_min_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  restricted);
+      }
+   }
+   private static efl_layout_calc_size_min_delegate efl_layout_calc_size_min_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate> efl_layout_calc_parts_extends_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate>(_Module, "efl_layout_calc_parts_extends");
+    private static Eina.Rect_StructInternal calc_parts_extends(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_parts_extends was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Calc)wrapper).CalcPartsExtends();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_parts_extends_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_parts_extends_delegate efl_layout_calc_parts_extends_static_delegate;
+
+
+    private delegate  int efl_layout_calc_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate> efl_layout_calc_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate>(_Module, "efl_layout_calc_freeze");
+    private static  int calc_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Calc)wrapper).FreezeCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_freeze_delegate efl_layout_calc_freeze_static_delegate;
+
+
+    private delegate  int efl_layout_calc_thaw_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_thaw_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate> efl_layout_calc_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate>(_Module, "efl_layout_calc_thaw");
+    private static  int calc_thaw(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_thaw was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Calc)wrapper).ThawCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_thaw_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_thaw_delegate efl_layout_calc_thaw_static_delegate;
+
+
+    private delegate  void efl_layout_calc_force_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_layout_calc_force_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate> efl_layout_calc_force_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate>(_Module, "efl_layout_calc_force");
+    private static  void calc_force(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_force was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Calc)wrapper).CalcForce();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_layout_calc_force_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_force_delegate efl_layout_calc_force_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_layout_group.eo.cs b/internals/src/EflSharp/EflSharp/efl_layout_group.eo.cs
new file mode 100755 (executable)
index 0000000..efaa524
--- /dev/null
@@ -0,0 +1,382 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Layout { 
+/// <summary>APIs representing static data from a group in an edje file.
+/// 1.21</summary>
+[GroupNativeInherit]
+public interface Group : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+/// 
+/// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+/// 
+/// Note: On failure, this function also return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+/// 1.21</summary>
+/// <returns>The minimum size as set in EDC.
+/// 1.21</returns>
+Eina.Size2D GetGroupSizeMin();
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+/// 
+/// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+/// 
+/// Note: On failure, this function will return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+/// 1.21</summary>
+/// <returns>The maximum size as set in EDC.
+/// 1.21</returns>
+Eina.Size2D GetGroupSizeMax();
+   /// <summary>Retrives an EDC data field&apos;s value from a given Edje object&apos;s group.
+/// This function fetches an EDC data field&apos;s value, which is declared on the objects building EDC file, under its group. EDC data blocks are most commonly used to pass arbitrary parameters from an application&apos;s theme to its code.
+/// 
+/// EDC data fields always hold  strings as values, hence the return type of this function. Check the complete &quot;syntax reference&quot; for EDC files.
+/// 
+/// This is how a data item is defined in EDC: collections { group { name: &quot;a_group&quot;; data { item: &quot;key1&quot; &quot;value1&quot;; item: &quot;key2&quot; &quot;value2&quot;; } } }
+/// 
+/// Warning: Do not confuse this call with edje_file_data_get(), which queries for a global EDC data field on an EDC declaration file.
+/// 1.21</summary>
+/// <param name="key">The data field&apos;s key string
+/// 1.21</param>
+/// <returns>The data&apos;s value string.
+/// 1.21</returns>
+ System.String GetGroupData(  System.String key);
+   /// <summary>Returns <c>true</c> if the part exists in the EDC group.
+/// 1.21</summary>
+/// <param name="part">The part name to check.
+/// 1.21</param>
+/// <returns><c>true</c> if the part exists, <c>false</c> otherwise.
+/// 1.21</returns>
+bool GetPartExist(  System.String part);
+               /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+/// 
+/// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+/// 
+/// Note: On failure, this function also return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+/// 1.21</summary>
+/// <value>The minimum size as set in EDC.
+/// 1.21</value>
+   Eina.Size2D GroupSizeMin {
+      get ;
+   }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+/// 
+/// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+/// 
+/// Note: On failure, this function will return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+/// 1.21</summary>
+/// <value>The maximum size as set in EDC.
+/// 1.21</value>
+   Eina.Size2D GroupSizeMax {
+      get ;
+   }
+}
+/// <summary>APIs representing static data from a group in an edje file.
+/// 1.21</summary>
+sealed public class GroupConcrete : 
+
+Group
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GroupConcrete))
+            return Efl.Layout.GroupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_layout_group_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GroupConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~GroupConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static GroupConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GroupConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+   /// 
+   /// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+   /// 
+   /// Note: On failure, this function also return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+   /// 1.21</summary>
+   /// <returns>The minimum size as set in EDC.
+   /// 1.21</returns>
+   public Eina.Size2D GetGroupSizeMin() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_min_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+   /// 
+   /// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+   /// 
+   /// Note: On failure, this function will return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+   /// 1.21</summary>
+   /// <returns>The maximum size as set in EDC.
+   /// 1.21</returns>
+   public Eina.Size2D GetGroupSizeMax() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_max_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Retrives an EDC data field&apos;s value from a given Edje object&apos;s group.
+   /// This function fetches an EDC data field&apos;s value, which is declared on the objects building EDC file, under its group. EDC data blocks are most commonly used to pass arbitrary parameters from an application&apos;s theme to its code.
+   /// 
+   /// EDC data fields always hold  strings as values, hence the return type of this function. Check the complete &quot;syntax reference&quot; for EDC files.
+   /// 
+   /// This is how a data item is defined in EDC: collections { group { name: &quot;a_group&quot;; data { item: &quot;key1&quot; &quot;value1&quot;; item: &quot;key2&quot; &quot;value2&quot;; } } }
+   /// 
+   /// Warning: Do not confuse this call with edje_file_data_get(), which queries for a global EDC data field on an EDC declaration file.
+   /// 1.21</summary>
+   /// <param name="key">The data field&apos;s key string
+   /// 1.21</param>
+   /// <returns>The data&apos;s value string.
+   /// 1.21</returns>
+   public  System.String GetGroupData(  System.String key) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_data_get_ptr.Value.Delegate(this.NativeHandle, key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns <c>true</c> if the part exists in the EDC group.
+   /// 1.21</summary>
+   /// <param name="part">The part name to check.
+   /// 1.21</param>
+   /// <returns><c>true</c> if the part exists, <c>false</c> otherwise.
+   /// 1.21</returns>
+   public bool GetPartExist(  System.String part) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_part_exist_get_ptr.Value.Delegate(this.NativeHandle, part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+/// 
+/// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+/// 
+/// Note: On failure, this function also return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+/// 1.21</summary>
+/// <value>The minimum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMin {
+      get { return GetGroupSizeMin(); }
+   }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+/// 
+/// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+/// 
+/// Note: On failure, this function will return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+/// 1.21</summary>
+/// <value>The maximum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMax {
+      get { return GetGroupSizeMax(); }
+   }
+}
+public class GroupNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_layout_group_size_min_get_static_delegate == null)
+      efl_layout_group_size_min_get_static_delegate = new efl_layout_group_size_min_get_delegate(group_size_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_min_get_static_delegate)});
+      if (efl_layout_group_size_max_get_static_delegate == null)
+      efl_layout_group_size_max_get_static_delegate = new efl_layout_group_size_max_get_delegate(group_size_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_max_get_static_delegate)});
+      if (efl_layout_group_data_get_static_delegate == null)
+      efl_layout_group_data_get_static_delegate = new efl_layout_group_data_get_delegate(group_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_data_get_static_delegate)});
+      if (efl_layout_group_part_exist_get_static_delegate == null)
+      efl_layout_group_part_exist_get_static_delegate = new efl_layout_group_part_exist_get_delegate(part_exist_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_part_exist_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_part_exist_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Layout.GroupConcrete.efl_layout_group_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Layout.GroupConcrete.efl_layout_group_interface_get();
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate> efl_layout_group_size_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate>(_Module, "efl_layout_group_size_min_get");
+    private static Eina.Size2D_StructInternal group_size_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Group)wrapper).GetGroupSizeMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_min_get_delegate efl_layout_group_size_min_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate> efl_layout_group_size_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate>(_Module, "efl_layout_group_size_max_get");
+    private static Eina.Size2D_StructInternal group_size_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Group)wrapper).GetGroupSizeMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_max_get_delegate efl_layout_group_size_max_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_layout_group_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_layout_group_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate> efl_layout_group_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate>(_Module, "efl_layout_group_data_get");
+    private static  System.String group_data_get(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_layout_group_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Group)wrapper).GetGroupData( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_layout_group_data_get_delegate efl_layout_group_data_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_group_part_exist_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_group_part_exist_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate> efl_layout_group_part_exist_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate>(_Module, "efl_layout_group_part_exist_get");
+    private static bool part_exist_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_layout_group_part_exist_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Group)wrapper).GetPartExist( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_part_exist_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_layout_group_part_exist_get_delegate efl_layout_group_part_exist_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_layout_signal.eo.cs b/internals/src/EflSharp/EflSharp/efl_layout_signal.eo.cs
new file mode 100755 (executable)
index 0000000..73d526b
--- /dev/null
@@ -0,0 +1,464 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+
+/// <summary></summary>
+/// <param name="kw_object">The object the callback is being triggered from.</param>
+/// <param name="emission">The name component of the signal.</param>
+/// <param name="source">The source of a signal used as context.</param>
+/// <returns></returns>
+public delegate  void EflLayoutSignalCb( Efl.Layout.Signal kw_object,   System.String emission,   System.String source);
+public delegate  void EflLayoutSignalCbInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Layout.SignalConcrete, Efl.Eo.NonOwnTag>))]  Efl.Layout.Signal kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+internal class EflLayoutSignalCbWrapper
+{
+
+   private EflLayoutSignalCbInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal EflLayoutSignalCbWrapper (EflLayoutSignalCbInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~EflLayoutSignalCbWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  void ManagedCb( Efl.Layout.Signal kw_object,  System.String emission,  System.String source)
+   {
+                                                            _cb(_cb_data,  kw_object,  emission,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                                             }
+
+      internal static  void Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Layout.SignalConcrete, Efl.Eo.NonOwnTag>))]  Efl.Layout.Signal kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      EflLayoutSignalCb cb = (EflLayoutSignalCb)handle.Target;
+                                                               
+      try {
+         cb( kw_object,  emission,  source);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                                             }
+}
+
+namespace Efl { namespace Layout { 
+/// <summary>Layouts asynchronous messaging and signaling interface.
+/// 1.21</summary>
+[SignalNativeInherit]
+public interface Signal : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Sends an (Edje) message to a given Edje object
+/// This function sends an Edje message to obj and to all of its child objects, if it has any (swallowed objects are one kind of child object). Only a few types are supported: - int, - float/double, - string/stringshare, - arrays of int, float, double or strings.
+/// 
+/// Messages can go both ways, from code to theme, or theme to code.
+/// 
+/// The id argument as a form of code and theme defining a common interface on message communication. One should define the same IDs on both code and EDC declaration, to individualize messages (binding them to a given context).
+/// 1.21</summary>
+/// <param name="id">A identification number for the message to be sent
+/// 1.21</param>
+/// <param name="msg">The message&apos;s payload
+/// 1.21</param>
+/// <returns></returns>
+ void MessageSend(  int id,   Eina.Value msg);
+   /// <summary>Adds a callback for an arriving Edje signal, emitted by a given Edje object.
+/// Edje signals are one of the communication interfaces between code and a given Edje object&apos;s theme. With signals, one can communicate two string values at a time, which are: - &quot;emission&quot; value: the name of the signal, in general - &quot;source&quot; value: a name for the signal&apos;s context, in general
+/// 
+/// Signals can go both ways, from code to theme, or theme to code.
+/// 
+/// Though there are those common uses for the two strings, one is free to use them however they like.
+/// 
+/// Signal callback registration is powerful, in the way that blobs may be used to match multiple signals at once. All the &quot;*?[&quot; set of <c>fnmatch</c>() operators can be used, both for emission and source.
+/// 
+/// Edje has internal signals it will emit, automatically, on various actions taking place on group parts. For example, the mouse cursor being moved, pressed, released, etc., over a given part&apos;s area, all generate individual signals.
+/// 
+/// With something like emission = &quot;mouse,down,*&quot;, source = &quot;button.*&quot; where &quot;button.*&quot; is the pattern for the names of parts implementing buttons on an interface, you&apos;d be registering for notifications on events of mouse buttons being pressed down on either of those parts (those events all have the &quot;mouse,down,&quot; common prefix on their names, with a suffix giving the button number). The actual emission and source strings of an event will be passed in as the emission and source parameters of the callback function (e.g. &quot;mouse,down,2&quot; and &quot;button.close&quot;), for each of those events.
+/// 
+/// See also the Edje Data Collection Reference for EDC files.
+/// 
+/// See <see cref="Efl.Layout.Signal.EmitSignal"/> on how to emit signals from code to a an object See <see cref="Efl.Layout.Signal.DelSignalCallback"/>.
+/// 1.21</summary>
+/// <param name="emission">The signal&apos;s &quot;emission&quot; string
+/// 1.21</param>
+/// <param name="source">The signal&apos;s &quot;source&quot; string
+/// 1.21</param>
+/// <param name="func">The callback function to be executed when the signal is emitted.
+/// 1.21</param>
+/// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+/// 1.21</returns>
+bool AddSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func);
+   /// <summary>Removes a signal-triggered callback from an object.
+/// This function removes a callback, previously attached to the emission of a signal, from the object  obj. The parameters emission, source and func must match exactly those passed to a previous call to <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+/// 
+/// See <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+/// 1.21</summary>
+/// <param name="emission">The signal&apos;s &quot;emission&quot; string
+/// 1.21</param>
+/// <param name="source">The signal&apos;s &quot;source&quot; string
+/// 1.21</param>
+/// <param name="func">The callback function to be executed when the signal is emitted.
+/// 1.21</param>
+/// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+/// 1.21</returns>
+bool DelSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func);
+   /// <summary>Sends/emits an Edje signal to this layout.
+/// This function sends a signal to the object. An Edje program, at the EDC specification level, can respond to a signal by having declared matching &quot;signal&quot; and &quot;source&quot; fields on its block.
+/// 
+/// See also the Edje Data Collection Reference for EDC files.
+/// 
+/// See <see cref="Efl.Layout.Signal.AddSignalCallback"/> for more on Edje signals.
+/// 1.21</summary>
+/// <param name="emission">The signal&apos;s &quot;emission&quot; string
+/// 1.21</param>
+/// <param name="source">The signal&apos;s &quot;source&quot; string
+/// 1.21</param>
+/// <returns></returns>
+ void EmitSignal(  System.String emission,   System.String source);
+   /// <summary>Processes an object&apos;s messages and signals queue.
+/// This function goes through the object message queue processing the pending messages for this specific Edje object. Normally they&apos;d be processed only at idle time.
+/// 
+/// If <c>recurse</c> is <c>true</c>, this function will be called recursively on all subobjects.
+/// 1.21</summary>
+/// <param name="recurse">Whether to process messages on children objects.
+/// 1.21</param>
+/// <returns></returns>
+ void SignalProcess( bool recurse);
+               }
+/// <summary>Layouts asynchronous messaging and signaling interface.
+/// 1.21</summary>
+sealed public class SignalConcrete : 
+
+Signal
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SignalConcrete))
+            return Efl.Layout.SignalNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Edje)] internal static extern System.IntPtr
+      efl_layout_signal_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SignalConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~SignalConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static SignalConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SignalConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Sends an (Edje) message to a given Edje object
+   /// This function sends an Edje message to obj and to all of its child objects, if it has any (swallowed objects are one kind of child object). Only a few types are supported: - int, - float/double, - string/stringshare, - arrays of int, float, double or strings.
+   /// 
+   /// Messages can go both ways, from code to theme, or theme to code.
+   /// 
+   /// The id argument as a form of code and theme defining a common interface on message communication. One should define the same IDs on both code and EDC declaration, to individualize messages (binding them to a given context).
+   /// 1.21</summary>
+   /// <param name="id">A identification number for the message to be sent
+   /// 1.21</param>
+   /// <param name="msg">The message&apos;s payload
+   /// 1.21</param>
+   /// <returns></returns>
+   public  void MessageSend(  int id,   Eina.Value msg) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_message_send_ptr.Value.Delegate(this.NativeHandle, id,  msg);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a callback for an arriving Edje signal, emitted by a given Edje object.
+   /// Edje signals are one of the communication interfaces between code and a given Edje object&apos;s theme. With signals, one can communicate two string values at a time, which are: - &quot;emission&quot; value: the name of the signal, in general - &quot;source&quot; value: a name for the signal&apos;s context, in general
+   /// 
+   /// Signals can go both ways, from code to theme, or theme to code.
+   /// 
+   /// Though there are those common uses for the two strings, one is free to use them however they like.
+   /// 
+   /// Signal callback registration is powerful, in the way that blobs may be used to match multiple signals at once. All the &quot;*?[&quot; set of <c>fnmatch</c>() operators can be used, both for emission and source.
+   /// 
+   /// Edje has internal signals it will emit, automatically, on various actions taking place on group parts. For example, the mouse cursor being moved, pressed, released, etc., over a given part&apos;s area, all generate individual signals.
+   /// 
+   /// With something like emission = &quot;mouse,down,*&quot;, source = &quot;button.*&quot; where &quot;button.*&quot; is the pattern for the names of parts implementing buttons on an interface, you&apos;d be registering for notifications on events of mouse buttons being pressed down on either of those parts (those events all have the &quot;mouse,down,&quot; common prefix on their names, with a suffix giving the button number). The actual emission and source strings of an event will be passed in as the emission and source parameters of the callback function (e.g. &quot;mouse,down,2&quot; and &quot;button.close&quot;), for each of those events.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.EmitSignal"/> on how to emit signals from code to a an object See <see cref="Efl.Layout.Signal.DelSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   public bool AddSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_add_ptr.Value.Delegate(this.NativeHandle, emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Removes a signal-triggered callback from an object.
+   /// This function removes a callback, previously attached to the emission of a signal, from the object  obj. The parameters emission, source and func must match exactly those passed to a previous call to <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   public bool DelSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_del_ptr.Value.Delegate(this.NativeHandle, emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Sends/emits an Edje signal to this layout.
+   /// This function sends a signal to the object. An Edje program, at the EDC specification level, can respond to a signal by having declared matching &quot;signal&quot; and &quot;source&quot; fields on its block.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/> for more on Edje signals.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <returns></returns>
+   public  void EmitSignal(  System.String emission,   System.String source) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_emit_ptr.Value.Delegate(this.NativeHandle, emission,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Processes an object&apos;s messages and signals queue.
+   /// This function goes through the object message queue processing the pending messages for this specific Edje object. Normally they&apos;d be processed only at idle time.
+   /// 
+   /// If <c>recurse</c> is <c>true</c>, this function will be called recursively on all subobjects.
+   /// 1.21</summary>
+   /// <param name="recurse">Whether to process messages on children objects.
+   /// 1.21</param>
+   /// <returns></returns>
+   public  void SignalProcess( bool recurse) {
+                         Efl.Layout.SignalNativeInherit.efl_layout_signal_process_ptr.Value.Delegate(this.NativeHandle, recurse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+}
+public class SignalNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Edje);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_layout_signal_message_send_static_delegate == null)
+      efl_layout_signal_message_send_static_delegate = new efl_layout_signal_message_send_delegate(message_send);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_message_send"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_message_send_static_delegate)});
+      if (efl_layout_signal_callback_add_static_delegate == null)
+      efl_layout_signal_callback_add_static_delegate = new efl_layout_signal_callback_add_delegate(signal_callback_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_add"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_add_static_delegate)});
+      if (efl_layout_signal_callback_del_static_delegate == null)
+      efl_layout_signal_callback_del_static_delegate = new efl_layout_signal_callback_del_delegate(signal_callback_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_del"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_del_static_delegate)});
+      if (efl_layout_signal_emit_static_delegate == null)
+      efl_layout_signal_emit_static_delegate = new efl_layout_signal_emit_delegate(signal_emit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_emit"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_emit_static_delegate)});
+      if (efl_layout_signal_process_static_delegate == null)
+      efl_layout_signal_process_static_delegate = new efl_layout_signal_process_delegate(signal_process);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_process"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_process_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Layout.SignalConcrete.efl_layout_signal_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Layout.SignalConcrete.efl_layout_signal_interface_get();
+   }
+
+
+    private delegate  void efl_layout_signal_message_send_delegate(System.IntPtr obj, System.IntPtr pd,    int id,    Eina.ValueNative msg);
+
+
+    public delegate  void efl_layout_signal_message_send_api_delegate(System.IntPtr obj,    int id,    Eina.ValueNative msg);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate> efl_layout_signal_message_send_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate>(_Module, "efl_layout_signal_message_send");
+    private static  void message_send(System.IntPtr obj, System.IntPtr pd,   int id,   Eina.ValueNative msg)
+   {
+      Eina.Log.Debug("function efl_layout_signal_message_send was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Signal)wrapper).MessageSend( id,  msg);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_message_send_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id,  msg);
+      }
+   }
+   private static efl_layout_signal_message_send_delegate efl_layout_signal_message_send_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate> efl_layout_signal_callback_add_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate>(_Module, "efl_layout_signal_callback_add");
+    private static bool signal_callback_add(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Signal)wrapper).AddSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_add_delegate efl_layout_signal_callback_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate> efl_layout_signal_callback_del_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate>(_Module, "efl_layout_signal_callback_del");
+    private static bool signal_callback_del(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Signal)wrapper).DelSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_del_delegate efl_layout_signal_callback_del_static_delegate;
+
+
+    private delegate  void efl_layout_signal_emit_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+
+
+    public delegate  void efl_layout_signal_emit_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate> efl_layout_signal_emit_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate>(_Module, "efl_layout_signal_emit");
+    private static  void signal_emit(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source)
+   {
+      Eina.Log.Debug("function efl_layout_signal_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Signal)wrapper).EmitSignal( emission,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_emit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source);
+      }
+   }
+   private static efl_layout_signal_emit_delegate efl_layout_signal_emit_static_delegate;
+
+
+    private delegate  void efl_layout_signal_process_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+
+
+    public delegate  void efl_layout_signal_process_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate> efl_layout_signal_process_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate>(_Module, "efl_layout_signal_process");
+    private static  void signal_process(System.IntPtr obj, System.IntPtr pd,  bool recurse)
+   {
+      Eina.Log.Debug("function efl_layout_signal_process was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Signal)wrapper).SignalProcess( recurse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_signal_process_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  recurse);
+      }
+   }
+   private static efl_layout_signal_process_delegate efl_layout_signal_process_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_libs.cs b/internals/src/EflSharp/EflSharp/efl_libs.cs
new file mode 100755 (executable)
index 0000000..2cffb7b
--- /dev/null
@@ -0,0 +1,40 @@
+#pragma warning disable 1591
+
+namespace efl {
+
+/// <summary>
+/// Define the name of the libraries to be passed to DllImport statements.
+/// </summary>
+public class Libs {
+    public const string Efl = "libefl.so.1";
+    public const string Ecore = "libecore.so.1";
+    public const string Eina = "libeina.so.1";
+    public const string Eo = "libeo.so.1";
+    public const string Evas = "libevas.so.1";
+    public const string Evil = "libdl.so.2";
+    public const string Edje = "libedje.so.1";
+    public const string Elementary = "libelementary.so.1";
+    public const string Eldbus = "libeldbus.so.1";
+
+    public const string CustomExports = "libeflcustomexportsmono.so.1";
+
+    public const string Libdl = "libdl.so.2";
+    public const string Kernel32 = "kernel32.dll";
+
+    public const string Eext = "libefl-extension.so.0";
+
+    public static Efl.Eo.NativeModule EflModule = new Efl.Eo.NativeModule(Efl);
+    public static Efl.Eo.NativeModule CoreModule = new Efl.Eo.NativeModule(Ecore);
+    public static Efl.Eo.NativeModule EinaModule = new Efl.Eo.NativeModule(Eina);
+    public static Efl.Eo.NativeModule EoModule = new Efl.Eo.NativeModule(Eo);
+    public static Efl.Eo.NativeModule EvasModule = new Efl.Eo.NativeModule(Evas);
+    public static Efl.Eo.NativeModule EvilModule = new Efl.Eo.NativeModule(Evil);
+    public static Efl.Eo.NativeModule EdjeModule = new Efl.Eo.NativeModule(Edje);
+    public static Efl.Eo.NativeModule ElementaryModule = new Efl.Eo.NativeModule(Elementary);
+    public static Efl.Eo.NativeModule EldbusModule = new Efl.Eo.NativeModule(Eldbus);
+    public static Efl.Eo.NativeModule CustomExportsModule = new Efl.Eo.NativeModule(CustomExports);
+    public static Efl.Eo.NativeModule LibdlModule = new Efl.Eo.NativeModule(Libdl);
+    public static Efl.Eo.NativeModule Kernel32Module = new Efl.Eo.NativeModule(Kernel32);
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/efl_linear_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_linear_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..333ac09
--- /dev/null
@@ -0,0 +1,127 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl linear interpolator class</summary>
+[LinearInterpolatorNativeInherit]
+public class LinearInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LinearInterpolatorNativeInherit nativeInherit = new Efl.LinearInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LinearInterpolator))
+            return Efl.LinearInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_linear_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LinearInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_linear_interpolator_class_get(), typeof(LinearInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LinearInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LinearInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LinearInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LinearInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LinearInterpolator.efl_linear_interpolator_class_get();
+   }
+}
+public class LinearInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LinearInterpolator.efl_linear_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LinearInterpolator.efl_linear_interpolator_class_get();
+   }
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((LinearInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop.eo.cs
new file mode 100755 (executable)
index 0000000..deab490
--- /dev/null
@@ -0,0 +1,1013 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+///<summary>Event argument wrapper for event <see cref="Efl.Loop.ArgumentsEvt"/>.</summary>
+public class LoopArgumentsEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.LoopArguments arg { get; set; }
+}
+/// <summary>The Efl Main Loop
+/// The Efl main loop provides a clean and tiny event loop library with many modules to do lots of convenient things for a programmer, saving time and effort. It&apos;s lean and designed to work on anything from embedded systems all the way up to large and powerful multi-cpu workstations. The main loop has a number of primitives you can use. It serializes these and allows for greater responsiveness without the need for threads (or any other concurrency). However you can provide these if you need to.</summary>
+[LoopNativeInherit]
+public class Loop : Efl.Task, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopNativeInherit nativeInherit = new Efl.LoopNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Loop))
+            return Efl.LoopNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Loop(Efl.Object parent= null
+         ) :
+      base(efl_loop_class_get(), typeof(Loop), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Loop(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Loop(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Loop static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Loop(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object IdleEnterEvtKey = new object();
+   /// <summary>Event occurs once the main loop enters the idle state.</summary>
+   public event EventHandler IdleEnterEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_IDLE_ENTER";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_IdleEnterEvt_delegate)) {
+               eventHandlers.AddHandler(IdleEnterEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_IDLE_ENTER";
+            if (remove_cpp_event_handler(key, this.evt_IdleEnterEvt_delegate)) { 
+               eventHandlers.RemoveHandler(IdleEnterEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event IdleEnterEvt.</summary>
+   public void On_IdleEnterEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[IdleEnterEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_IdleEnterEvt_delegate;
+   private void on_IdleEnterEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_IdleEnterEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object IdleExitEvtKey = new object();
+   /// <summary>Event occurs once the main loop exits the idle state.</summary>
+   public event EventHandler IdleExitEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_IDLE_EXIT";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_IdleExitEvt_delegate)) {
+               eventHandlers.AddHandler(IdleExitEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_IDLE_EXIT";
+            if (remove_cpp_event_handler(key, this.evt_IdleExitEvt_delegate)) { 
+               eventHandlers.RemoveHandler(IdleExitEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event IdleExitEvt.</summary>
+   public void On_IdleExitEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[IdleExitEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_IdleExitEvt_delegate;
+   private void on_IdleExitEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_IdleExitEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object IdleEvtKey = new object();
+   /// <summary>Event occurs once the main loop is idle. If you keep listening on this event it may increase the burden on your CPU.</summary>
+   public event EventHandler IdleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_IDLE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_IdleEvt_delegate)) {
+               eventHandlers.AddHandler(IdleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_IDLE";
+            if (remove_cpp_event_handler(key, this.evt_IdleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(IdleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event IdleEvt.</summary>
+   public void On_IdleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[IdleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_IdleEvt_delegate;
+   private void on_IdleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_IdleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ArgumentsEvtKey = new object();
+   /// <summary>Event happens when args are provided to the loop by args_add().</summary>
+   public event EventHandler<Efl.LoopArgumentsEvt_Args> ArgumentsEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_ARGUMENTS";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_ArgumentsEvt_delegate)) {
+               eventHandlers.AddHandler(ArgumentsEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_ARGUMENTS";
+            if (remove_cpp_event_handler(key, this.evt_ArgumentsEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ArgumentsEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ArgumentsEvt.</summary>
+   public void On_ArgumentsEvt(Efl.LoopArgumentsEvt_Args e)
+   {
+      EventHandler<Efl.LoopArgumentsEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.LoopArgumentsEvt_Args>)eventHandlers[ArgumentsEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ArgumentsEvt_delegate;
+   private void on_ArgumentsEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.LoopArgumentsEvt_Args args = new Efl.LoopArgumentsEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ArgumentsEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PollHighEvtKey = new object();
+   /// <summary>Event occurs multiple times per second. The exact tick is undefined and can be adjusted system wide.</summary>
+   public event EventHandler PollHighEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_POLL_HIGH";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_PollHighEvt_delegate)) {
+               eventHandlers.AddHandler(PollHighEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_POLL_HIGH";
+            if (remove_cpp_event_handler(key, this.evt_PollHighEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PollHighEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PollHighEvt.</summary>
+   public void On_PollHighEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PollHighEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PollHighEvt_delegate;
+   private void on_PollHighEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PollHighEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PollMediumEvtKey = new object();
+   /// <summary>Event occurs multiple times per minute. The exact tick is undefined and can be adjusted system wide.</summary>
+   public event EventHandler PollMediumEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_POLL_MEDIUM";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_PollMediumEvt_delegate)) {
+               eventHandlers.AddHandler(PollMediumEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_POLL_MEDIUM";
+            if (remove_cpp_event_handler(key, this.evt_PollMediumEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PollMediumEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PollMediumEvt.</summary>
+   public void On_PollMediumEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PollMediumEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PollMediumEvt_delegate;
+   private void on_PollMediumEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PollMediumEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PollLowEvtKey = new object();
+   /// <summary>Event occurs multiple times every 15 minutes. The exact tick is undefined and can be adjusted system wide.</summary>
+   public event EventHandler PollLowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_POLL_LOW";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_PollLowEvt_delegate)) {
+               eventHandlers.AddHandler(PollLowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_POLL_LOW";
+            if (remove_cpp_event_handler(key, this.evt_PollLowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PollLowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PollLowEvt.</summary>
+   public void On_PollLowEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PollLowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PollLowEvt_delegate;
+   private void on_PollLowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PollLowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object QuitEvtKey = new object();
+   /// <summary>Event occurs when the loop was requested to quit externally e.g. by a ctrl+c signal or a request from a parent loop/thread to have the child exit.</summary>
+   public event EventHandler QuitEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_QUIT";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_QuitEvt_delegate)) {
+               eventHandlers.AddHandler(QuitEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_EVENT_QUIT";
+            if (remove_cpp_event_handler(key, this.evt_QuitEvt_delegate)) { 
+               eventHandlers.RemoveHandler(QuitEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event QuitEvt.</summary>
+   public void On_QuitEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[QuitEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_QuitEvt_delegate;
+   private void on_QuitEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_QuitEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_IdleEnterEvt_delegate = new Efl.EventCb(on_IdleEnterEvt_NativeCallback);
+      evt_IdleExitEvt_delegate = new Efl.EventCb(on_IdleExitEvt_NativeCallback);
+      evt_IdleEvt_delegate = new Efl.EventCb(on_IdleEvt_NativeCallback);
+      evt_ArgumentsEvt_delegate = new Efl.EventCb(on_ArgumentsEvt_NativeCallback);
+      evt_PollHighEvt_delegate = new Efl.EventCb(on_PollHighEvt_NativeCallback);
+      evt_PollMediumEvt_delegate = new Efl.EventCb(on_PollMediumEvt_NativeCallback);
+      evt_PollLowEvt_delegate = new Efl.EventCb(on_PollLowEvt_NativeCallback);
+      evt_QuitEvt_delegate = new Efl.EventCb(on_QuitEvt_NativeCallback);
+   }
+   /// <summary>Slow down the loop execution by forcing sleep for a small period of time every time the loop iterates/loops.</summary>
+   /// <returns>Time to sleep for each &quot;loop iteration&quot;</returns>
+   virtual public double GetThrottle() {
+       var _ret_var = Efl.LoopNativeInherit.efl_loop_throttle_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Slow down the loop execution by forcing sleep for a small period of time every time the loop iterates/loops.</summary>
+   /// <param name="amount">Time to sleep for each &quot;loop iteration&quot;</param>
+   /// <returns></returns>
+   virtual public  void SetThrottle( double amount) {
+                         Efl.LoopNativeInherit.efl_loop_throttle_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), amount);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This gets the time that the main loop ceased waiting for timouts and/or events to come in or for signals or any other interrupt source. This should be considered a reference point for all time based activity that should calculate its timepoint from the return of ecore_loop_time_get(). Note that this time is meant to be used as relative to other times obtained on this run. If you need absolute time references, use a unix timestamp instead.</summary>
+   /// <returns>Time in seconds</returns>
+   virtual public double GetTime() {
+       var _ret_var = Efl.LoopNativeInherit.efl_loop_time_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>You should never need/call this, unless you are implementing a custom tick source for an animator.
+   /// Note: The time point must match whatever zero time you get from ecore_time_get() and <see cref="Efl.Loop.GetTime"/> (same 0 point). What this point is is undefined, so unless your source uses the same 0 time, then you may have to adjust and do some guessing.</summary>
+   /// <param name="timepoint">Time in seconds</param>
+   /// <returns></returns>
+   virtual public  void SetTime( double timepoint) {
+                         Efl.LoopNativeInherit.efl_loop_time_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), timepoint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Runs a single iteration of the main loop to process everything on the queue.</summary>
+   /// <returns></returns>
+   virtual public  void Iterate() {
+       Efl.LoopNativeInherit.efl_loop_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Runs a single iteration of the main loop to process everything on the queue with block/non-blocking status.</summary>
+   /// <param name="may_block">A flag if the main loop has a possibility of blocking.</param>
+   /// <returns>Return from single iteration run</returns>
+   virtual public  int IterateMayBlock(  int may_block) {
+                         var _ret_var = Efl.LoopNativeInherit.efl_loop_iterate_may_block_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), may_block);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Runs the application main loop.</summary>
+   /// <returns>Value set by quit()</returns>
+   virtual public  Eina.Value Begin() {
+       var _ret_var = Efl.LoopNativeInherit.efl_loop_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Quits the main loop once all the events currently on the queue have been processed.</summary>
+   /// <param name="exit_code">Returned value by begin()</param>
+   /// <returns></returns>
+   virtual public  void Quit(  Eina.Value exit_code) {
+       var _in_exit_code = exit_code.GetNative();
+                  Efl.LoopNativeInherit.efl_loop_quit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_exit_code);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A future promise that will be resolved from a clean main loop context as soon as possible.
+   /// This has higher priority, for low priority use <see cref="Efl.Loop.Idle"/></summary>
+   /// <returns>The future handle.</returns>
+   virtual public  Eina.Future Job() {
+       var _ret_var = Efl.LoopNativeInherit.efl_loop_job_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>A future promise that will be resolved from a clean main loop context as soon as the main loop is idle.
+   /// This is a low priority version of <see cref="Efl.Loop.Job"/></summary>
+   /// <returns>The future handle.</returns>
+   virtual public  Eina.Future Idle() {
+       var _ret_var = Efl.LoopNativeInherit.efl_loop_idle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>A future promise that will be resolved from a clean main loop context after <c>time</c> seconds.</summary>
+   /// <param name="time">The time from now in second that the main loop will wait before triggering it.</param>
+   /// <returns>The future handle.</returns>
+   virtual public  Eina.Future Timeout( double time) {
+                         var _ret_var = Efl.LoopNativeInherit.efl_loop_timeout_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), time);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Will register a manager of a specific class to be answered by eo.provider_find.</summary>
+   /// <param name="klass">The class provided by the registered provider.</param>
+   /// <param name="provider">The provider for the newly registered class that has to provide that said Efl.Class.</param>
+   /// <returns><c>true</c> if successfully register, <c>false</c> otherwise.</returns>
+   virtual public bool Register( Type klass,  Efl.Object provider) {
+                                           var _ret_var = Efl.LoopNativeInherit.efl_loop_register_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), klass,  provider);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Will unregister a manager of a specific class that was previously registered and answered by eo.provider_find.</summary>
+   /// <param name="klass">The class provided by the provider to unregister for.</param>
+   /// <param name="provider">The provider for the registered class to unregister.</param>
+   /// <returns><c>true</c> if successfully unregistered, <c>false</c> otherwise.</returns>
+   virtual public bool Unregister( Type klass,  Efl.Object provider) {
+                                           var _ret_var = Efl.LoopNativeInherit.efl_loop_unregister_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), klass,  provider);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   public System.Threading.Tasks.Task<Eina.Value> JobAsync( System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = Job();
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   public System.Threading.Tasks.Task<Eina.Value> IdleAsync( System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = Idle();
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   public System.Threading.Tasks.Task<Eina.Value> TimeoutAsync( double time, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = Timeout(  time);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   /// <summary>Slow down the loop execution by forcing sleep for a small period of time every time the loop iterates/loops.</summary>
+/// <value>Time to sleep for each &quot;loop iteration&quot;</value>
+   public double Throttle {
+      get { return GetThrottle(); }
+      set { SetThrottle( value); }
+   }
+   /// <summary>Retrieves the time at which the last loop stopped waiting for timeouts or events.</summary>
+/// <value>Time in seconds</value>
+   public double Time {
+      get { return GetTime(); }
+      set { SetTime( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Loop.efl_loop_class_get();
+   }
+}
+public class LoopNativeInherit : Efl.TaskNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_throttle_get_static_delegate == null)
+      efl_loop_throttle_get_static_delegate = new efl_loop_throttle_get_delegate(throttle_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_throttle_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_throttle_get_static_delegate)});
+      if (efl_loop_throttle_set_static_delegate == null)
+      efl_loop_throttle_set_static_delegate = new efl_loop_throttle_set_delegate(throttle_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_throttle_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_throttle_set_static_delegate)});
+      if (efl_loop_time_get_static_delegate == null)
+      efl_loop_time_get_static_delegate = new efl_loop_time_get_delegate(time_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_time_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_time_get_static_delegate)});
+      if (efl_loop_time_set_static_delegate == null)
+      efl_loop_time_set_static_delegate = new efl_loop_time_set_delegate(time_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_time_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_time_set_static_delegate)});
+      if (efl_loop_iterate_static_delegate == null)
+      efl_loop_iterate_static_delegate = new efl_loop_iterate_delegate(iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_iterate_static_delegate)});
+      if (efl_loop_iterate_may_block_static_delegate == null)
+      efl_loop_iterate_may_block_static_delegate = new efl_loop_iterate_may_block_delegate(iterate_may_block);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_iterate_may_block"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_iterate_may_block_static_delegate)});
+      if (efl_loop_begin_static_delegate == null)
+      efl_loop_begin_static_delegate = new efl_loop_begin_delegate(begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_begin_static_delegate)});
+      if (efl_loop_quit_static_delegate == null)
+      efl_loop_quit_static_delegate = new efl_loop_quit_delegate(quit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_quit"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_quit_static_delegate)});
+      if (efl_loop_job_static_delegate == null)
+      efl_loop_job_static_delegate = new efl_loop_job_delegate(job);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_job"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_job_static_delegate)});
+      if (efl_loop_idle_static_delegate == null)
+      efl_loop_idle_static_delegate = new efl_loop_idle_delegate(idle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_idle"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_idle_static_delegate)});
+      if (efl_loop_timeout_static_delegate == null)
+      efl_loop_timeout_static_delegate = new efl_loop_timeout_delegate(timeout);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_timeout"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_timeout_static_delegate)});
+      if (efl_loop_register_static_delegate == null)
+      efl_loop_register_static_delegate = new efl_loop_register_delegate(register);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_register"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_register_static_delegate)});
+      if (efl_loop_unregister_static_delegate == null)
+      efl_loop_unregister_static_delegate = new efl_loop_unregister_delegate(unregister);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_unregister"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_unregister_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Loop.efl_loop_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Loop.efl_loop_class_get();
+   }
+
+
+    private delegate double efl_loop_throttle_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_loop_throttle_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_throttle_get_api_delegate> efl_loop_throttle_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_throttle_get_api_delegate>(_Module, "efl_loop_throttle_get");
+    private static double throttle_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_throttle_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Loop)wrapper).GetThrottle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_throttle_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_throttle_get_delegate efl_loop_throttle_get_static_delegate;
+
+
+    private delegate  void efl_loop_throttle_set_delegate(System.IntPtr obj, System.IntPtr pd,   double amount);
+
+
+    public delegate  void efl_loop_throttle_set_api_delegate(System.IntPtr obj,   double amount);
+    public static Efl.Eo.FunctionWrapper<efl_loop_throttle_set_api_delegate> efl_loop_throttle_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_throttle_set_api_delegate>(_Module, "efl_loop_throttle_set");
+    private static  void throttle_set(System.IntPtr obj, System.IntPtr pd,  double amount)
+   {
+      Eina.Log.Debug("function efl_loop_throttle_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Loop)wrapper).SetThrottle( amount);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_throttle_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  amount);
+      }
+   }
+   private static efl_loop_throttle_set_delegate efl_loop_throttle_set_static_delegate;
+
+
+    private delegate double efl_loop_time_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_loop_time_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_time_get_api_delegate> efl_loop_time_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_time_get_api_delegate>(_Module, "efl_loop_time_get");
+    private static double time_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_time_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Loop)wrapper).GetTime();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_time_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_time_get_delegate efl_loop_time_get_static_delegate;
+
+
+    private delegate  void efl_loop_time_set_delegate(System.IntPtr obj, System.IntPtr pd,   double timepoint);
+
+
+    public delegate  void efl_loop_time_set_api_delegate(System.IntPtr obj,   double timepoint);
+    public static Efl.Eo.FunctionWrapper<efl_loop_time_set_api_delegate> efl_loop_time_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_time_set_api_delegate>(_Module, "efl_loop_time_set");
+    private static  void time_set(System.IntPtr obj, System.IntPtr pd,  double timepoint)
+   {
+      Eina.Log.Debug("function efl_loop_time_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Loop)wrapper).SetTime( timepoint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_time_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  timepoint);
+      }
+   }
+   private static efl_loop_time_set_delegate efl_loop_time_set_static_delegate;
+
+
+    private delegate  void efl_loop_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_loop_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_iterate_api_delegate> efl_loop_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_loop_iterate_api_delegate>(_Module, "efl_loop_iterate");
+    private static  void iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Loop)wrapper).Iterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_loop_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_iterate_delegate efl_loop_iterate_static_delegate;
+
+
+    private delegate  int efl_loop_iterate_may_block_delegate(System.IntPtr obj, System.IntPtr pd,    int may_block);
+
+
+    public delegate  int efl_loop_iterate_may_block_api_delegate(System.IntPtr obj,    int may_block);
+    public static Efl.Eo.FunctionWrapper<efl_loop_iterate_may_block_api_delegate> efl_loop_iterate_may_block_ptr = new Efl.Eo.FunctionWrapper<efl_loop_iterate_may_block_api_delegate>(_Module, "efl_loop_iterate_may_block");
+    private static  int iterate_may_block(System.IntPtr obj, System.IntPtr pd,   int may_block)
+   {
+      Eina.Log.Debug("function efl_loop_iterate_may_block was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((Loop)wrapper).IterateMayBlock( may_block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_loop_iterate_may_block_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  may_block);
+      }
+   }
+   private static efl_loop_iterate_may_block_delegate efl_loop_iterate_may_block_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] private delegate  Eina.Value efl_loop_begin_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] public delegate  Eina.Value efl_loop_begin_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_begin_api_delegate> efl_loop_begin_ptr = new Efl.Eo.FunctionWrapper<efl_loop_begin_api_delegate>(_Module, "efl_loop_begin");
+    private static  Eina.Value begin(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = ((Loop)wrapper).Begin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_begin_delegate efl_loop_begin_static_delegate;
+
+
+    private delegate  void efl_loop_quit_delegate(System.IntPtr obj, System.IntPtr pd,    Eina.ValueNative exit_code);
+
+
+    public delegate  void efl_loop_quit_api_delegate(System.IntPtr obj,    Eina.ValueNative exit_code);
+    public static Efl.Eo.FunctionWrapper<efl_loop_quit_api_delegate> efl_loop_quit_ptr = new Efl.Eo.FunctionWrapper<efl_loop_quit_api_delegate>(_Module, "efl_loop_quit");
+    private static  void quit(System.IntPtr obj, System.IntPtr pd,   Eina.ValueNative exit_code)
+   {
+      Eina.Log.Debug("function efl_loop_quit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_exit_code = new  Eina.Value(exit_code);
+                     
+         try {
+            ((Loop)wrapper).Quit( _in_exit_code);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_quit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  exit_code);
+      }
+   }
+   private static efl_loop_quit_delegate efl_loop_quit_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_loop_job_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_loop_job_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_job_api_delegate> efl_loop_job_ptr = new Efl.Eo.FunctionWrapper<efl_loop_job_api_delegate>(_Module, "efl_loop_job");
+    private static  Eina.Future job(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_job was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Loop)wrapper).Job();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_job_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_job_delegate efl_loop_job_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_loop_idle_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_loop_idle_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_idle_api_delegate> efl_loop_idle_ptr = new Efl.Eo.FunctionWrapper<efl_loop_idle_api_delegate>(_Module, "efl_loop_idle");
+    private static  Eina.Future idle(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_idle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Loop)wrapper).Idle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_idle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_idle_delegate efl_loop_idle_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_loop_timeout_delegate(System.IntPtr obj, System.IntPtr pd,   double time);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_loop_timeout_api_delegate(System.IntPtr obj,   double time);
+    public static Efl.Eo.FunctionWrapper<efl_loop_timeout_api_delegate> efl_loop_timeout_ptr = new Efl.Eo.FunctionWrapper<efl_loop_timeout_api_delegate>(_Module, "efl_loop_timeout");
+    private static  Eina.Future timeout(System.IntPtr obj, System.IntPtr pd,  double time)
+   {
+      Eina.Log.Debug("function efl_loop_timeout was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Loop)wrapper).Timeout( time);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_loop_timeout_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  time);
+      }
+   }
+   private static efl_loop_timeout_delegate efl_loop_timeout_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_loop_register_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object provider);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_loop_register_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object provider);
+    public static Efl.Eo.FunctionWrapper<efl_loop_register_api_delegate> efl_loop_register_ptr = new Efl.Eo.FunctionWrapper<efl_loop_register_api_delegate>(_Module, "efl_loop_register");
+    private static bool register(System.IntPtr obj, System.IntPtr pd,  Type klass,  Efl.Object provider)
+   {
+      Eina.Log.Debug("function efl_loop_register was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Loop)wrapper).Register( klass,  provider);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_loop_register_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  klass,  provider);
+      }
+   }
+   private static efl_loop_register_delegate efl_loop_register_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_loop_unregister_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object provider);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_loop_unregister_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object provider);
+    public static Efl.Eo.FunctionWrapper<efl_loop_unregister_api_delegate> efl_loop_unregister_ptr = new Efl.Eo.FunctionWrapper<efl_loop_unregister_api_delegate>(_Module, "efl_loop_unregister");
+    private static bool unregister(System.IntPtr obj, System.IntPtr pd,  Type klass,  Efl.Object provider)
+   {
+      Eina.Log.Debug("function efl_loop_unregister was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Loop)wrapper).Unregister( klass,  provider);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_loop_unregister_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  klass,  provider);
+      }
+   }
+   private static efl_loop_unregister_delegate efl_loop_unregister_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>EFL loop arguments data structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct LoopArguments
+{
+   /// <summary>Array with loop arguments</summary>
+   public Eina.Array< System.String> Argv;
+   /// <summary>Set to <c>true</c> when the program should initialize its internal state. This happen once per process instance.</summary>
+   public bool Initialization;
+   ///<summary>Constructor for LoopArguments.</summary>
+   public LoopArguments(
+      Eina.Array< System.String> Argv=default(Eina.Array< System.String>),
+      bool Initialization=default(bool)   )
+   {
+      this.Argv = Argv;
+      this.Initialization = Initialization;
+   }
+public static implicit operator LoopArguments(IntPtr ptr)
+   {
+      var tmp = (LoopArguments_StructInternal)Marshal.PtrToStructure(ptr, typeof(LoopArguments_StructInternal));
+      return LoopArguments_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct LoopArguments.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct LoopArguments_StructInternal
+{
+   
+   public  System.IntPtr Argv;
+///<summary>Internal wrapper for field Initialization</summary>
+public System.Byte Initialization;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator LoopArguments(LoopArguments_StructInternal struct_)
+   {
+      return LoopArguments_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator LoopArguments_StructInternal(LoopArguments struct_)
+   {
+      return LoopArguments_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct LoopArguments</summary>
+public static class LoopArguments_StructConversion
+{
+   internal static LoopArguments_StructInternal ToInternal(LoopArguments _external_struct)
+   {
+      var _internal_struct = new LoopArguments_StructInternal();
+
+      _internal_struct.Argv = _external_struct.Argv.Handle;
+      _internal_struct.Initialization = _external_struct.Initialization ? (byte)1 : (byte)0;
+
+      return _internal_struct;
+   }
+
+   internal static LoopArguments ToManaged(LoopArguments_StructInternal _internal_struct)
+   {
+      var _external_struct = new LoopArguments();
+
+      _external_struct.Argv = new Eina.Array< System.String>(_internal_struct.Argv, false, false);
+      _external_struct.Initialization = _internal_struct.Initialization != 0;
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_consumer.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_consumer.eo.cs
new file mode 100755 (executable)
index 0000000..ec9940a
--- /dev/null
@@ -0,0 +1,258 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>An <see cref="Efl.LoopConsumer"/> is a class which requires one of the parents to provide an <see cref="Efl.Loop"/> interface when performing <see cref="Efl.Object.FindProvider"/>. It will enforce this by only allowing parents which provide such an interface or <c>NULL</c>.</summary>
+[LoopConsumerNativeInherit]
+public class LoopConsumer : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopConsumerNativeInherit nativeInherit = new Efl.LoopConsumerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopConsumer))
+            return Efl.LoopConsumerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_consumer_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopConsumer(Efl.Object parent= null
+         ) :
+      base(efl_loop_consumer_class_get(), typeof(LoopConsumer), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopConsumer(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopConsumer(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopConsumer static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopConsumer(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Gets a handle to the loop.</summary>
+   /// <returns>Efl loop</returns>
+   virtual public Efl.Loop GetLoop() {
+       var _ret_var = Efl.LoopConsumerNativeInherit.efl_loop_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Creates a new future that is already resolved to a value.
+   /// This function creates a new future with an already known value, that will be resolved and dispatched by the loop scheduler as usual.
+   /// 
+   /// This is a helper that behaves the same as eina_future_resolved.</summary>
+   /// <param name="result">The value to be delivered.
+   /// Note that the value contents must survive this function scope, that is, do not use stack allocated blobs, arrays, structures or types that keep references to memory you give. Values will be automatically cleaned up using @ref eina_value_flush() once they are unused (no more future or futures returned a new value)</param>
+   /// <returns>The future or <c>NULL</c> on error.</returns>
+   virtual public  Eina.Future FutureResolved(  Eina.Value result) {
+       var _in_result = result.GetNative();
+                  var _ret_var = Efl.LoopConsumerNativeInherit.efl_loop_future_resolved_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_result);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Creates a new future that is already rejected to a specified error using the <see cref="Efl.LoopConsumer.GetLoop"/>.
+   /// This function creates a new future with an already known error, that will be resolved and dispatched by the loop scheduler as usual.
+   /// 
+   /// This is a helper that behaves the same as @ref eina_future_rejected.</summary>
+   /// <param name="error">An Eina_Error value</param>
+   /// <returns>The future or <c>NULL</c> on error.</returns>
+   virtual public  Eina.Future FutureRejected(  Eina.Error error) {
+                         var _ret_var = Efl.LoopConsumerNativeInherit.efl_loop_future_rejected_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), error);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Create a new promise with the scheduler coming from the loop provided by this object.
+   /// Note: You should not use eina_promise_data_set as this function rely on controlling the promise data.</summary>
+   /// <returns>The new promise.</returns>
+   virtual public Eina.Promise NewPromise() {
+       var _ret_var = Efl.LoopConsumerNativeInherit.efl_loop_promise_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   public System.Threading.Tasks.Task<Eina.Value> FutureResolvedAsync(  Eina.Value result, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = FutureResolved(  result);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   public System.Threading.Tasks.Task<Eina.Value> FutureRejectedAsync(  Eina.Error error, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = FutureRejected(  error);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   /// <summary>The loop to which this object belongs to.</summary>
+/// <value>Efl loop</value>
+   public Efl.Loop Loop {
+      get { return GetLoop(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopConsumer.efl_loop_consumer_class_get();
+   }
+}
+public class LoopConsumerNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_get_static_delegate == null)
+      efl_loop_get_static_delegate = new efl_loop_get_delegate(loop_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_get_static_delegate)});
+      if (efl_loop_future_resolved_static_delegate == null)
+      efl_loop_future_resolved_static_delegate = new efl_loop_future_resolved_delegate(future_resolved);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_future_resolved"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_future_resolved_static_delegate)});
+      if (efl_loop_future_rejected_static_delegate == null)
+      efl_loop_future_rejected_static_delegate = new efl_loop_future_rejected_delegate(future_rejected);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_future_rejected"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_future_rejected_static_delegate)});
+      if (efl_loop_promise_new_static_delegate == null)
+      efl_loop_promise_new_static_delegate = new efl_loop_promise_new_delegate(promise_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_promise_new"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_promise_new_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopConsumer.efl_loop_consumer_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopConsumer.efl_loop_consumer_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Loop, Efl.Eo.NonOwnTag>))] private delegate Efl.Loop efl_loop_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Loop, Efl.Eo.NonOwnTag>))] public delegate Efl.Loop efl_loop_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_get_api_delegate> efl_loop_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_get_api_delegate>(_Module, "efl_loop_get");
+    private static Efl.Loop loop_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Loop _ret_var = default(Efl.Loop);
+         try {
+            _ret_var = ((LoopConsumer)wrapper).GetLoop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_get_delegate efl_loop_get_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_loop_future_resolved_delegate(System.IntPtr obj, System.IntPtr pd,    Eina.ValueNative result);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_loop_future_resolved_api_delegate(System.IntPtr obj,    Eina.ValueNative result);
+    public static Efl.Eo.FunctionWrapper<efl_loop_future_resolved_api_delegate> efl_loop_future_resolved_ptr = new Efl.Eo.FunctionWrapper<efl_loop_future_resolved_api_delegate>(_Module, "efl_loop_future_resolved");
+    private static  Eina.Future future_resolved(System.IntPtr obj, System.IntPtr pd,   Eina.ValueNative result)
+   {
+      Eina.Log.Debug("function efl_loop_future_resolved was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_result = new  Eina.Value(result);
+                      Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((LoopConsumer)wrapper).FutureResolved( _in_result);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_loop_future_resolved_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  result);
+      }
+   }
+   private static efl_loop_future_resolved_delegate efl_loop_future_resolved_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_loop_future_rejected_delegate(System.IntPtr obj, System.IntPtr pd,    Eina.Error error);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_loop_future_rejected_api_delegate(System.IntPtr obj,    Eina.Error error);
+    public static Efl.Eo.FunctionWrapper<efl_loop_future_rejected_api_delegate> efl_loop_future_rejected_ptr = new Efl.Eo.FunctionWrapper<efl_loop_future_rejected_api_delegate>(_Module, "efl_loop_future_rejected");
+    private static  Eina.Future future_rejected(System.IntPtr obj, System.IntPtr pd,   Eina.Error error)
+   {
+      Eina.Log.Debug("function efl_loop_future_rejected was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((LoopConsumer)wrapper).FutureRejected( error);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_loop_future_rejected_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  error);
+      }
+   }
+   private static efl_loop_future_rejected_delegate efl_loop_future_rejected_static_delegate;
+
+
+    private delegate Eina.Promise efl_loop_promise_new_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Promise efl_loop_promise_new_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_promise_new_api_delegate> efl_loop_promise_new_ptr = new Efl.Eo.FunctionWrapper<efl_loop_promise_new_api_delegate>(_Module, "efl_loop_promise_new");
+    private static Eina.Promise promise_new(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_promise_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Promise _ret_var = default(Eina.Promise);
+         try {
+            _ret_var = ((LoopConsumer)wrapper).NewPromise();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_promise_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_promise_new_delegate efl_loop_promise_new_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_fd.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_fd.eo.cs
new file mode 100755 (executable)
index 0000000..0c194fb
--- /dev/null
@@ -0,0 +1,377 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Fds are objects that watch the activity on a given file descriptor. This file descriptor can be a network, a file, provided by a library.
+/// The object will trigger relevant events depending on what&apos;s happening.</summary>
+[LoopFdNativeInherit]
+public class LoopFd : Efl.LoopConsumer, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopFdNativeInherit nativeInherit = new Efl.LoopFdNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopFd))
+            return Efl.LoopFdNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_fd_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopFd(Efl.Object parent= null
+         ) :
+      base(efl_loop_fd_class_get(), typeof(LoopFd), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopFd(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopFd(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopFd static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopFd(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ReadEvtKey = new object();
+   /// <summary>Called when a read happened on the file descriptor</summary>
+   public event EventHandler ReadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_FD_EVENT_READ";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_ReadEvt_delegate)) {
+               eventHandlers.AddHandler(ReadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_FD_EVENT_READ";
+            if (remove_cpp_event_handler(key, this.evt_ReadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ReadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ReadEvt.</summary>
+   public void On_ReadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ReadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ReadEvt_delegate;
+   private void on_ReadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ReadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WriteEvtKey = new object();
+   /// <summary>Called when a write happened on the file descriptor</summary>
+   public event EventHandler WriteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_FD_EVENT_WRITE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_WriteEvt_delegate)) {
+               eventHandlers.AddHandler(WriteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_FD_EVENT_WRITE";
+            if (remove_cpp_event_handler(key, this.evt_WriteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WriteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WriteEvt.</summary>
+   public void On_WriteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WriteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WriteEvt_delegate;
+   private void on_WriteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WriteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ErrorEvtKey = new object();
+   /// <summary>Called when a error occurred on the file descriptor</summary>
+   public event EventHandler ErrorEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_FD_EVENT_ERROR";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_ErrorEvt_delegate)) {
+               eventHandlers.AddHandler(ErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_FD_EVENT_ERROR";
+            if (remove_cpp_event_handler(key, this.evt_ErrorEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ErrorEvt.</summary>
+   public void On_ErrorEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ErrorEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ErrorEvt_delegate;
+   private void on_ErrorEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ErrorEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ReadEvt_delegate = new Efl.EventCb(on_ReadEvt_NativeCallback);
+      evt_WriteEvt_delegate = new Efl.EventCb(on_WriteEvt_NativeCallback);
+      evt_ErrorEvt_delegate = new Efl.EventCb(on_ErrorEvt_NativeCallback);
+   }
+   /// <summary>Defines which file descriptor to watch. If it is a file, use file_fd variant.</summary>
+   /// <returns>The file descriptor.</returns>
+   virtual public  int GetFd() {
+       var _ret_var = Efl.LoopFdNativeInherit.efl_loop_fd_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Defines the fd to watch.</summary>
+   /// <param name="fd">The file descriptor.</param>
+   /// <returns></returns>
+   virtual public  void SetFd(  int fd) {
+                         Efl.LoopFdNativeInherit.efl_loop_fd_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fd);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines which file descriptor to watch when watching a file.</summary>
+   /// <returns>The file descriptor.</returns>
+   virtual public  int GetFdFile() {
+       var _ret_var = Efl.LoopFdNativeInherit.efl_loop_fd_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Defines the fd to watch on.</summary>
+   /// <param name="fd">The file descriptor.</param>
+   /// <returns></returns>
+   virtual public  void SetFdFile(  int fd) {
+                         Efl.LoopFdNativeInherit.efl_loop_fd_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fd);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines which file descriptor to watch. If it is a file, use file_fd variant.</summary>
+/// <value>The file descriptor.</value>
+   public  int Fd {
+      get { return GetFd(); }
+      set { SetFd( value); }
+   }
+   /// <summary>Defines which file descriptor to watch when watching a file.</summary>
+/// <value>The file descriptor.</value>
+   public  int FdFile {
+      get { return GetFdFile(); }
+      set { SetFdFile( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopFd.efl_loop_fd_class_get();
+   }
+}
+public class LoopFdNativeInherit : Efl.LoopConsumerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_fd_get_static_delegate == null)
+      efl_loop_fd_get_static_delegate = new efl_loop_fd_get_delegate(fd_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_fd_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_fd_get_static_delegate)});
+      if (efl_loop_fd_set_static_delegate == null)
+      efl_loop_fd_set_static_delegate = new efl_loop_fd_set_delegate(fd_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_fd_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_fd_set_static_delegate)});
+      if (efl_loop_fd_file_get_static_delegate == null)
+      efl_loop_fd_file_get_static_delegate = new efl_loop_fd_file_get_delegate(fd_file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_fd_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_fd_file_get_static_delegate)});
+      if (efl_loop_fd_file_set_static_delegate == null)
+      efl_loop_fd_file_set_static_delegate = new efl_loop_fd_file_set_delegate(fd_file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_fd_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_fd_file_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopFd.efl_loop_fd_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopFd.efl_loop_fd_class_get();
+   }
+
+
+    private delegate  int efl_loop_fd_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_loop_fd_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_fd_get_api_delegate> efl_loop_fd_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_fd_get_api_delegate>(_Module, "efl_loop_fd_get");
+    private static  int fd_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_fd_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LoopFd)wrapper).GetFd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_fd_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_fd_get_delegate efl_loop_fd_get_static_delegate;
+
+
+    private delegate  void efl_loop_fd_set_delegate(System.IntPtr obj, System.IntPtr pd,    int fd);
+
+
+    public delegate  void efl_loop_fd_set_api_delegate(System.IntPtr obj,    int fd);
+    public static Efl.Eo.FunctionWrapper<efl_loop_fd_set_api_delegate> efl_loop_fd_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_fd_set_api_delegate>(_Module, "efl_loop_fd_set");
+    private static  void fd_set(System.IntPtr obj, System.IntPtr pd,   int fd)
+   {
+      Eina.Log.Debug("function efl_loop_fd_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopFd)wrapper).SetFd( fd);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_fd_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fd);
+      }
+   }
+   private static efl_loop_fd_set_delegate efl_loop_fd_set_static_delegate;
+
+
+    private delegate  int efl_loop_fd_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_loop_fd_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_fd_file_get_api_delegate> efl_loop_fd_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_fd_file_get_api_delegate>(_Module, "efl_loop_fd_file_get");
+    private static  int fd_file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_fd_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LoopFd)wrapper).GetFdFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_fd_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_fd_file_get_delegate efl_loop_fd_file_get_static_delegate;
+
+
+    private delegate  void efl_loop_fd_file_set_delegate(System.IntPtr obj, System.IntPtr pd,    int fd);
+
+
+    public delegate  void efl_loop_fd_file_set_api_delegate(System.IntPtr obj,    int fd);
+    public static Efl.Eo.FunctionWrapper<efl_loop_fd_file_set_api_delegate> efl_loop_fd_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_fd_file_set_api_delegate>(_Module, "efl_loop_fd_file_set");
+    private static  void fd_file_set(System.IntPtr obj, System.IntPtr pd,   int fd)
+   {
+      Eina.Log.Debug("function efl_loop_fd_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopFd)wrapper).SetFdFile( fd);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_fd_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fd);
+      }
+   }
+   private static efl_loop_fd_file_set_delegate efl_loop_fd_file_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_handler.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_handler.eo.cs
new file mode 100755 (executable)
index 0000000..20795a2
--- /dev/null
@@ -0,0 +1,630 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>An object that describes an low-level source of I/O to listen to for available data to be read or written, depending on the OS and data source type. When I/O becomes available various events are produced and the callbacks attached to them will be called.</summary>
+[LoopHandlerNativeInherit]
+public class LoopHandler : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopHandlerNativeInherit nativeInherit = new Efl.LoopHandlerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopHandler))
+            return Efl.LoopHandlerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_handler_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopHandler(Efl.Object parent= null
+         ) :
+      base(efl_loop_handler_class_get(), typeof(LoopHandler), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopHandler(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopHandler(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopHandler static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopHandler(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ReadEvtKey = new object();
+   /// <summary>Called when a read occurs on the descriptor.</summary>
+   public event EventHandler ReadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_READ";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_ReadEvt_delegate)) {
+               eventHandlers.AddHandler(ReadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_READ";
+            if (remove_cpp_event_handler(key, this.evt_ReadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ReadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ReadEvt.</summary>
+   public void On_ReadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ReadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ReadEvt_delegate;
+   private void on_ReadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ReadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WriteEvtKey = new object();
+   /// <summary>Called when a write occurs on the descriptor.</summary>
+   public event EventHandler WriteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_WRITE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_WriteEvt_delegate)) {
+               eventHandlers.AddHandler(WriteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_WRITE";
+            if (remove_cpp_event_handler(key, this.evt_WriteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WriteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WriteEvt.</summary>
+   public void On_WriteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WriteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WriteEvt_delegate;
+   private void on_WriteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WriteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ErrorEvtKey = new object();
+   /// <summary>Called when a error occurrs on the descriptor.</summary>
+   public event EventHandler ErrorEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_ERROR";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_ErrorEvt_delegate)) {
+               eventHandlers.AddHandler(ErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_ERROR";
+            if (remove_cpp_event_handler(key, this.evt_ErrorEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ErrorEvt.</summary>
+   public void On_ErrorEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ErrorEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ErrorEvt_delegate;
+   private void on_ErrorEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ErrorEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BufferEvtKey = new object();
+   /// <summary>Called when buffered data already read from the descriptor should be processed.</summary>
+   public event EventHandler BufferEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_BUFFER";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_BufferEvt_delegate)) {
+               eventHandlers.AddHandler(BufferEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_BUFFER";
+            if (remove_cpp_event_handler(key, this.evt_BufferEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BufferEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BufferEvt.</summary>
+   public void On_BufferEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BufferEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BufferEvt_delegate;
+   private void on_BufferEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BufferEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PrepareEvtKey = new object();
+   /// <summary>Called when preparing a descriptor for listening.</summary>
+   public event EventHandler PrepareEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_PREPARE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_PrepareEvt_delegate)) {
+               eventHandlers.AddHandler(PrepareEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_HANDLER_EVENT_PREPARE";
+            if (remove_cpp_event_handler(key, this.evt_PrepareEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PrepareEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PrepareEvt.</summary>
+   public void On_PrepareEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PrepareEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PrepareEvt_delegate;
+   private void on_PrepareEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PrepareEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ReadEvt_delegate = new Efl.EventCb(on_ReadEvt_NativeCallback);
+      evt_WriteEvt_delegate = new Efl.EventCb(on_WriteEvt_NativeCallback);
+      evt_ErrorEvt_delegate = new Efl.EventCb(on_ErrorEvt_NativeCallback);
+      evt_BufferEvt_delegate = new Efl.EventCb(on_BufferEvt_NativeCallback);
+      evt_PrepareEvt_delegate = new Efl.EventCb(on_PrepareEvt_NativeCallback);
+   }
+   /// <summary>This sets what kind of I/O should be listened to only when using a fd or fd_file for the handler</summary>
+   /// <returns>The flags that indicate what kind of I/O should be listened for like read, write or error channels.</returns>
+   virtual public Efl.LoopHandlerFlags GetActive() {
+       var _ret_var = Efl.LoopHandlerNativeInherit.efl_loop_handler_active_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This sets what kind of I/O should be listened to only when using a fd or fd_file for the handler</summary>
+   /// <param name="flags">The flags that indicate what kind of I/O should be listened for like read, write or error channels.</param>
+   /// <returns></returns>
+   virtual public  void SetActive( Efl.LoopHandlerFlags flags) {
+                         Efl.LoopHandlerNativeInherit.efl_loop_handler_active_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls a file descriptor to listen to for I/O, which points to a data pipe such as a device, socket or pipe etc.</summary>
+   /// <returns>The file descriptor</returns>
+   virtual public  int GetFd() {
+       var _ret_var = Efl.LoopHandlerNativeInherit.efl_loop_handler_fd_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Controls a file descriptor to listen to for I/O, which points to a data pipe such as a device, socket or pipe etc.</summary>
+   /// <param name="fd">The file descriptor</param>
+   /// <returns></returns>
+   virtual public  void SetFd(  int fd) {
+                         Efl.LoopHandlerNativeInherit.efl_loop_handler_fd_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fd);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls a file descriptor to listen to for I/O that specifically points to a file in storage and not a device, socket or pipe etc.</summary>
+   /// <returns>The file descriptor</returns>
+   virtual public  int GetFdFile() {
+       var _ret_var = Efl.LoopHandlerNativeInherit.efl_loop_handler_fd_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Controls a file descriptor to listen to for I/O that specifically points to a file in storage and not a device, socket or pipe etc.</summary>
+   /// <param name="fd">The file descriptor</param>
+   /// <returns></returns>
+   virtual public  void SetFdFile(  int fd) {
+                         Efl.LoopHandlerNativeInherit.efl_loop_handler_fd_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fd);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls a windows win32 object handle to listen to for I/O. When it becomes available for any data the read event will be produced.</summary>
+   /// <returns>A win32 object handle</returns>
+   virtual public  System.IntPtr GetWin32() {
+       var _ret_var = Efl.LoopHandlerNativeInherit.efl_loop_handler_win32_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Controls a windows win32 object handle to listen to for I/O. When it becomes available for any data the read event will be produced.</summary>
+   /// <param name="handle">A win32 object handle</param>
+   /// <returns></returns>
+   virtual public  void SetWin32(  System.IntPtr handle) {
+                         Efl.LoopHandlerNativeInherit.efl_loop_handler_win32_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), handle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This sets what kind of I/O should be listened to only when using a fd or fd_file for the handler</summary>
+/// <value>The flags that indicate what kind of I/O should be listened for like read, write or error channels.</value>
+   public Efl.LoopHandlerFlags Active {
+      get { return GetActive(); }
+      set { SetActive( value); }
+   }
+   /// <summary>Controls a file descriptor to listen to for I/O, which points to a data pipe such as a device, socket or pipe etc.</summary>
+/// <value>The file descriptor</value>
+   public  int Fd {
+      get { return GetFd(); }
+      set { SetFd( value); }
+   }
+   /// <summary>Controls a file descriptor to listen to for I/O that specifically points to a file in storage and not a device, socket or pipe etc.</summary>
+/// <value>The file descriptor</value>
+   public  int FdFile {
+      get { return GetFdFile(); }
+      set { SetFdFile( value); }
+   }
+   /// <summary>Controls a windows win32 object handle to listen to for I/O. When it becomes available for any data the read event will be produced.</summary>
+/// <value>A win32 object handle</value>
+   public  System.IntPtr Win32 {
+      get { return GetWin32(); }
+      set { SetWin32( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopHandler.efl_loop_handler_class_get();
+   }
+}
+public class LoopHandlerNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_handler_active_get_static_delegate == null)
+      efl_loop_handler_active_get_static_delegate = new efl_loop_handler_active_get_delegate(active_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_active_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_active_get_static_delegate)});
+      if (efl_loop_handler_active_set_static_delegate == null)
+      efl_loop_handler_active_set_static_delegate = new efl_loop_handler_active_set_delegate(active_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_active_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_active_set_static_delegate)});
+      if (efl_loop_handler_fd_get_static_delegate == null)
+      efl_loop_handler_fd_get_static_delegate = new efl_loop_handler_fd_get_delegate(fd_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_fd_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_fd_get_static_delegate)});
+      if (efl_loop_handler_fd_set_static_delegate == null)
+      efl_loop_handler_fd_set_static_delegate = new efl_loop_handler_fd_set_delegate(fd_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_fd_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_fd_set_static_delegate)});
+      if (efl_loop_handler_fd_file_get_static_delegate == null)
+      efl_loop_handler_fd_file_get_static_delegate = new efl_loop_handler_fd_file_get_delegate(fd_file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_fd_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_fd_file_get_static_delegate)});
+      if (efl_loop_handler_fd_file_set_static_delegate == null)
+      efl_loop_handler_fd_file_set_static_delegate = new efl_loop_handler_fd_file_set_delegate(fd_file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_fd_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_fd_file_set_static_delegate)});
+      if (efl_loop_handler_win32_get_static_delegate == null)
+      efl_loop_handler_win32_get_static_delegate = new efl_loop_handler_win32_get_delegate(win32_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_win32_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_win32_get_static_delegate)});
+      if (efl_loop_handler_win32_set_static_delegate == null)
+      efl_loop_handler_win32_set_static_delegate = new efl_loop_handler_win32_set_delegate(win32_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_handler_win32_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_handler_win32_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopHandler.efl_loop_handler_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopHandler.efl_loop_handler_class_get();
+   }
+
+
+    private delegate Efl.LoopHandlerFlags efl_loop_handler_active_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.LoopHandlerFlags efl_loop_handler_active_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_active_get_api_delegate> efl_loop_handler_active_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_active_get_api_delegate>(_Module, "efl_loop_handler_active_get");
+    private static Efl.LoopHandlerFlags active_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_handler_active_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.LoopHandlerFlags _ret_var = default(Efl.LoopHandlerFlags);
+         try {
+            _ret_var = ((LoopHandler)wrapper).GetActive();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_handler_active_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_handler_active_get_delegate efl_loop_handler_active_get_static_delegate;
+
+
+    private delegate  void efl_loop_handler_active_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.LoopHandlerFlags flags);
+
+
+    public delegate  void efl_loop_handler_active_set_api_delegate(System.IntPtr obj,   Efl.LoopHandlerFlags flags);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_active_set_api_delegate> efl_loop_handler_active_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_active_set_api_delegate>(_Module, "efl_loop_handler_active_set");
+    private static  void active_set(System.IntPtr obj, System.IntPtr pd,  Efl.LoopHandlerFlags flags)
+   {
+      Eina.Log.Debug("function efl_loop_handler_active_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopHandler)wrapper).SetActive( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_handler_active_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_loop_handler_active_set_delegate efl_loop_handler_active_set_static_delegate;
+
+
+    private delegate  int efl_loop_handler_fd_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_loop_handler_fd_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_fd_get_api_delegate> efl_loop_handler_fd_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_fd_get_api_delegate>(_Module, "efl_loop_handler_fd_get");
+    private static  int fd_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_handler_fd_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LoopHandler)wrapper).GetFd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_handler_fd_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_handler_fd_get_delegate efl_loop_handler_fd_get_static_delegate;
+
+
+    private delegate  void efl_loop_handler_fd_set_delegate(System.IntPtr obj, System.IntPtr pd,    int fd);
+
+
+    public delegate  void efl_loop_handler_fd_set_api_delegate(System.IntPtr obj,    int fd);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_fd_set_api_delegate> efl_loop_handler_fd_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_fd_set_api_delegate>(_Module, "efl_loop_handler_fd_set");
+    private static  void fd_set(System.IntPtr obj, System.IntPtr pd,   int fd)
+   {
+      Eina.Log.Debug("function efl_loop_handler_fd_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopHandler)wrapper).SetFd( fd);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_handler_fd_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fd);
+      }
+   }
+   private static efl_loop_handler_fd_set_delegate efl_loop_handler_fd_set_static_delegate;
+
+
+    private delegate  int efl_loop_handler_fd_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_loop_handler_fd_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_fd_file_get_api_delegate> efl_loop_handler_fd_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_fd_file_get_api_delegate>(_Module, "efl_loop_handler_fd_file_get");
+    private static  int fd_file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_handler_fd_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LoopHandler)wrapper).GetFdFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_handler_fd_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_handler_fd_file_get_delegate efl_loop_handler_fd_file_get_static_delegate;
+
+
+    private delegate  void efl_loop_handler_fd_file_set_delegate(System.IntPtr obj, System.IntPtr pd,    int fd);
+
+
+    public delegate  void efl_loop_handler_fd_file_set_api_delegate(System.IntPtr obj,    int fd);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_fd_file_set_api_delegate> efl_loop_handler_fd_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_fd_file_set_api_delegate>(_Module, "efl_loop_handler_fd_file_set");
+    private static  void fd_file_set(System.IntPtr obj, System.IntPtr pd,   int fd)
+   {
+      Eina.Log.Debug("function efl_loop_handler_fd_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopHandler)wrapper).SetFdFile( fd);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_handler_fd_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fd);
+      }
+   }
+   private static efl_loop_handler_fd_file_set_delegate efl_loop_handler_fd_file_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_loop_handler_win32_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_loop_handler_win32_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_win32_get_api_delegate> efl_loop_handler_win32_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_win32_get_api_delegate>(_Module, "efl_loop_handler_win32_get");
+    private static  System.IntPtr win32_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_handler_win32_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((LoopHandler)wrapper).GetWin32();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_handler_win32_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_handler_win32_get_delegate efl_loop_handler_win32_get_static_delegate;
+
+
+    private delegate  void efl_loop_handler_win32_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr handle);
+
+
+    public delegate  void efl_loop_handler_win32_set_api_delegate(System.IntPtr obj,    System.IntPtr handle);
+    public static Efl.Eo.FunctionWrapper<efl_loop_handler_win32_set_api_delegate> efl_loop_handler_win32_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_handler_win32_set_api_delegate>(_Module, "efl_loop_handler_win32_set");
+    private static  void win32_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr handle)
+   {
+      Eina.Log.Debug("function efl_loop_handler_win32_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopHandler)wrapper).SetWin32( handle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_handler_win32_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  handle);
+      }
+   }
+   private static efl_loop_handler_win32_set_delegate efl_loop_handler_win32_set_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>A set of flags that can be OR&apos;d together to indicate which are desired</summary>
+public enum LoopHandlerFlags
+{
+/// <summary>No I/O is desired (generally useless)</summary>
+None = 0,
+/// <summary>Reading is desired</summary>
+Read = 1,
+/// <summary>Writing is desired</summary>
+Write = 2,
+/// <summary>Error channel input is desired</summary>
+Error = 4,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_message.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_message.eo.cs
new file mode 100755 (executable)
index 0000000..61a35b7
--- /dev/null
@@ -0,0 +1,142 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+///<summary>Event argument wrapper for event <see cref="Efl.LoopMessage.MessageEvt"/>.</summary>
+public class LoopMessageMessageEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.LoopMessage arg { get; set; }
+}
+/// <summary>Base message payload object class. Inherit this and extend for specific message types.</summary>
+[LoopMessageNativeInherit]
+public class LoopMessage : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopMessageNativeInherit nativeInherit = new Efl.LoopMessageNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopMessage))
+            return Efl.LoopMessageNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_message_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopMessage(Efl.Object parent= null
+         ) :
+      base(efl_loop_message_class_get(), typeof(LoopMessage), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopMessage(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopMessage(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopMessage static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopMessage(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object MessageEvtKey = new object();
+   /// <summary>The message payload data</summary>
+   public event EventHandler<Efl.LoopMessageMessageEvt_Args> MessageEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_MESSAGE_EVENT_MESSAGE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_MessageEvt_delegate)) {
+               eventHandlers.AddHandler(MessageEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_MESSAGE_EVENT_MESSAGE";
+            if (remove_cpp_event_handler(key, this.evt_MessageEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MessageEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MessageEvt.</summary>
+   public void On_MessageEvt(Efl.LoopMessageMessageEvt_Args e)
+   {
+      EventHandler<Efl.LoopMessageMessageEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.LoopMessageMessageEvt_Args>)eventHandlers[MessageEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MessageEvt_delegate;
+   private void on_MessageEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.LoopMessageMessageEvt_Args args = new Efl.LoopMessageMessageEvt_Args();
+      args.arg = new Efl.LoopMessage(evt.Info);
+      try {
+         On_MessageEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_MessageEvt_delegate = new Efl.EventCb(on_MessageEvt_NativeCallback);
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessage.efl_loop_message_class_get();
+   }
+}
+public class LoopMessageNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopMessage.efl_loop_message_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessage.efl_loop_message_class_get();
+   }
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_message_future.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_message_future.eo.cs
new file mode 100755 (executable)
index 0000000..8291f6f
--- /dev/null
@@ -0,0 +1,166 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Used internally for futures on the loop</summary>
+[LoopMessageFutureNativeInherit]
+public class LoopMessageFuture : Efl.LoopMessage, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopMessageFutureNativeInherit nativeInherit = new Efl.LoopMessageFutureNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopMessageFuture))
+            return Efl.LoopMessageFutureNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_message_future_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopMessageFuture(Efl.Object parent= null
+         ) :
+      base(efl_loop_message_future_class_get(), typeof(LoopMessageFuture), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopMessageFuture(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopMessageFuture(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopMessageFuture static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopMessageFuture(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>No description supplied.</summary>
+   /// <returns>No description supplied.</returns>
+   virtual public  System.IntPtr GetData() {
+       var _ret_var = Efl.LoopMessageFutureNativeInherit.efl_loop_message_future_data_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>No description supplied.</summary>
+   /// <param name="data">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetData(  System.IntPtr data) {
+                         Efl.LoopMessageFutureNativeInherit.efl_loop_message_future_data_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>No description supplied.</summary>
+/// <value>No description supplied.</value>
+   public  System.IntPtr Data {
+      get { return GetData(); }
+      set { SetData( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessageFuture.efl_loop_message_future_class_get();
+   }
+}
+public class LoopMessageFutureNativeInherit : Efl.LoopMessageNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_message_future_data_get_static_delegate == null)
+      efl_loop_message_future_data_get_static_delegate = new efl_loop_message_future_data_get_delegate(data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_message_future_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_future_data_get_static_delegate)});
+      if (efl_loop_message_future_data_set_static_delegate == null)
+      efl_loop_message_future_data_set_static_delegate = new efl_loop_message_future_data_set_delegate(data_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_message_future_data_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_future_data_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopMessageFuture.efl_loop_message_future_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessageFuture.efl_loop_message_future_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_loop_message_future_data_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_loop_message_future_data_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_message_future_data_get_api_delegate> efl_loop_message_future_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_future_data_get_api_delegate>(_Module, "efl_loop_message_future_data_get");
+    private static  System.IntPtr data_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_message_future_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((LoopMessageFuture)wrapper).GetData();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_message_future_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_message_future_data_get_delegate efl_loop_message_future_data_get_static_delegate;
+
+
+    private delegate  void efl_loop_message_future_data_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data);
+
+
+    public delegate  void efl_loop_message_future_data_set_api_delegate(System.IntPtr obj,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_loop_message_future_data_set_api_delegate> efl_loop_message_future_data_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_future_data_set_api_delegate>(_Module, "efl_loop_message_future_data_set");
+    private static  void data_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_loop_message_future_data_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopMessageFuture)wrapper).SetData( data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_message_future_data_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data);
+      }
+   }
+   private static efl_loop_message_future_data_set_delegate efl_loop_message_future_data_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_message_future_handler.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_message_future_handler.eo.cs
new file mode 100755 (executable)
index 0000000..490bf19
--- /dev/null
@@ -0,0 +1,177 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+///<summary>Event argument wrapper for event <see cref="Efl.LoopMessageFutureHandler.MessageFutureEvt"/>.</summary>
+public class LoopMessageFutureHandlerMessageFutureEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.LoopMessageFuture arg { get; set; }
+}
+/// <summary>Internal use for future on an efl loop - replacing legacy ecore events</summary>
+[LoopMessageFutureHandlerNativeInherit]
+public class LoopMessageFutureHandler : Efl.LoopMessageHandler, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopMessageFutureHandlerNativeInherit nativeInherit = new Efl.LoopMessageFutureHandlerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopMessageFutureHandler))
+            return Efl.LoopMessageFutureHandlerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_message_future_handler_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopMessageFutureHandler(Efl.Object parent= null
+         ) :
+      base(efl_loop_message_future_handler_class_get(), typeof(LoopMessageFutureHandler), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopMessageFutureHandler(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopMessageFutureHandler(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopMessageFutureHandler static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopMessageFutureHandler(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object MessageFutureEvtKey = new object();
+   /// <summary>No description supplied.</summary>
+   public event EventHandler<Efl.LoopMessageFutureHandlerMessageFutureEvt_Args> MessageFutureEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_MESSAGE_FUTURE_HANDLER_EVENT_MESSAGE_FUTURE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_MessageFutureEvt_delegate)) {
+               eventHandlers.AddHandler(MessageFutureEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_MESSAGE_FUTURE_HANDLER_EVENT_MESSAGE_FUTURE";
+            if (remove_cpp_event_handler(key, this.evt_MessageFutureEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MessageFutureEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MessageFutureEvt.</summary>
+   public void On_MessageFutureEvt(Efl.LoopMessageFutureHandlerMessageFutureEvt_Args e)
+   {
+      EventHandler<Efl.LoopMessageFutureHandlerMessageFutureEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.LoopMessageFutureHandlerMessageFutureEvt_Args>)eventHandlers[MessageFutureEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MessageFutureEvt_delegate;
+   private void on_MessageFutureEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.LoopMessageFutureHandlerMessageFutureEvt_Args args = new Efl.LoopMessageFutureHandlerMessageFutureEvt_Args();
+      args.arg = new Efl.LoopMessageFuture(evt.Info);
+      try {
+         On_MessageFutureEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_MessageFutureEvt_delegate = new Efl.EventCb(on_MessageFutureEvt_NativeCallback);
+   }
+   /// <summary>No description supplied.</summary>
+   /// <returns>No description supplied.</returns>
+   virtual public Efl.LoopMessageFuture AddMessageType() {
+       var _ret_var = Efl.LoopMessageFutureHandlerNativeInherit.efl_loop_message_future_handler_message_type_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessageFutureHandler.efl_loop_message_future_handler_class_get();
+   }
+}
+public class LoopMessageFutureHandlerNativeInherit : Efl.LoopMessageHandlerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_message_future_handler_message_type_add_static_delegate == null)
+      efl_loop_message_future_handler_message_type_add_static_delegate = new efl_loop_message_future_handler_message_type_add_delegate(message_type_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_message_future_handler_message_type_add"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_future_handler_message_type_add_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopMessageFutureHandler.efl_loop_message_future_handler_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessageFutureHandler.efl_loop_message_future_handler_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessageFuture, Efl.Eo.NonOwnTag>))] private delegate Efl.LoopMessageFuture efl_loop_message_future_handler_message_type_add_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessageFuture, Efl.Eo.NonOwnTag>))] public delegate Efl.LoopMessageFuture efl_loop_message_future_handler_message_type_add_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_message_future_handler_message_type_add_api_delegate> efl_loop_message_future_handler_message_type_add_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_future_handler_message_type_add_api_delegate>(_Module, "efl_loop_message_future_handler_message_type_add");
+    private static Efl.LoopMessageFuture message_type_add(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_message_future_handler_message_type_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.LoopMessageFuture _ret_var = default(Efl.LoopMessageFuture);
+         try {
+            _ret_var = ((LoopMessageFutureHandler)wrapper).AddMessageType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_message_future_handler_message_type_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_message_future_handler_message_type_add_delegate efl_loop_message_future_handler_message_type_add_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_message_handler.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_message_handler.eo.cs
new file mode 100755 (executable)
index 0000000..838f734
--- /dev/null
@@ -0,0 +1,280 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+///<summary>Event argument wrapper for event <see cref="Efl.LoopMessageHandler.MessageEvt"/>.</summary>
+public class LoopMessageHandlerMessageEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.LoopMessage arg { get; set; }
+}
+/// <summary>Message handlers represent a single message type on the Efl.Loop parent object. These message handlers can be used to listen for that message type by listening to the message event for the generic case or a class specific event type to get specific message object typing correct.</summary>
+[LoopMessageHandlerNativeInherit]
+public class LoopMessageHandler : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopMessageHandlerNativeInherit nativeInherit = new Efl.LoopMessageHandlerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopMessageHandler))
+            return Efl.LoopMessageHandlerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_message_handler_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopMessageHandler(Efl.Object parent= null
+         ) :
+      base(efl_loop_message_handler_class_get(), typeof(LoopMessageHandler), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopMessageHandler(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopMessageHandler(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopMessageHandler static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopMessageHandler(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object MessageEvtKey = new object();
+   /// <summary>The message payload data</summary>
+   public event EventHandler<Efl.LoopMessageHandlerMessageEvt_Args> MessageEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_MESSAGE_HANDLER_EVENT_MESSAGE";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_MessageEvt_delegate)) {
+               eventHandlers.AddHandler(MessageEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_MESSAGE_HANDLER_EVENT_MESSAGE";
+            if (remove_cpp_event_handler(key, this.evt_MessageEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MessageEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MessageEvt.</summary>
+   public void On_MessageEvt(Efl.LoopMessageHandlerMessageEvt_Args e)
+   {
+      EventHandler<Efl.LoopMessageHandlerMessageEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.LoopMessageHandlerMessageEvt_Args>)eventHandlers[MessageEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MessageEvt_delegate;
+   private void on_MessageEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.LoopMessageHandlerMessageEvt_Args args = new Efl.LoopMessageHandlerMessageEvt_Args();
+      args.arg = new Efl.LoopMessage(evt.Info);
+      try {
+         On_MessageEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_MessageEvt_delegate = new Efl.EventCb(on_MessageEvt_NativeCallback);
+   }
+   /// <summary>Creates a new message object of the correct type for this message type.</summary>
+   /// <returns>The new message payload object.</returns>
+   virtual public Efl.LoopMessage AddMessage() {
+       var _ret_var = Efl.LoopMessageHandlerNativeInherit.efl_loop_message_handler_message_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Place the message on the queue to be called later when message_process() is called on the loop object.</summary>
+   /// <param name="message">The message to place on the queue.</param>
+   /// <returns></returns>
+   virtual public  void MessageSend( Efl.LoopMessage message) {
+                         Efl.LoopMessageHandlerNativeInherit.efl_loop_message_handler_message_send_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), message);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Overide me (implement) then call super after calling the right callback type if you specialize the message type.</summary>
+   /// <param name="message">Generic message event type</param>
+   /// <returns></returns>
+   virtual public  void CallMessage( Efl.LoopMessage message) {
+                         Efl.LoopMessageHandlerNativeInherit.efl_loop_message_handler_message_call_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), message);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Delete all queued messages belonging to this message handler that are pending on the queue so they are not processed later.</summary>
+   /// <returns>True if any messages of this type were cleared.</returns>
+   virtual public bool ClearMessage() {
+       var _ret_var = Efl.LoopMessageHandlerNativeInherit.efl_loop_message_handler_message_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessageHandler.efl_loop_message_handler_class_get();
+   }
+}
+public class LoopMessageHandlerNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_message_handler_message_add_static_delegate == null)
+      efl_loop_message_handler_message_add_static_delegate = new efl_loop_message_handler_message_add_delegate(message_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_message_handler_message_add"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_handler_message_add_static_delegate)});
+      if (efl_loop_message_handler_message_send_static_delegate == null)
+      efl_loop_message_handler_message_send_static_delegate = new efl_loop_message_handler_message_send_delegate(message_send);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_message_handler_message_send"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_handler_message_send_static_delegate)});
+      if (efl_loop_message_handler_message_call_static_delegate == null)
+      efl_loop_message_handler_message_call_static_delegate = new efl_loop_message_handler_message_call_delegate(message_call);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_message_handler_message_call"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_handler_message_call_static_delegate)});
+      if (efl_loop_message_handler_message_clear_static_delegate == null)
+      efl_loop_message_handler_message_clear_static_delegate = new efl_loop_message_handler_message_clear_delegate(message_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_message_handler_message_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_message_handler_message_clear_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopMessageHandler.efl_loop_message_handler_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopMessageHandler.efl_loop_message_handler_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessage, Efl.Eo.NonOwnTag>))] private delegate Efl.LoopMessage efl_loop_message_handler_message_add_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessage, Efl.Eo.NonOwnTag>))] public delegate Efl.LoopMessage efl_loop_message_handler_message_add_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_add_api_delegate> efl_loop_message_handler_message_add_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_add_api_delegate>(_Module, "efl_loop_message_handler_message_add");
+    private static Efl.LoopMessage message_add(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_message_handler_message_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.LoopMessage _ret_var = default(Efl.LoopMessage);
+         try {
+            _ret_var = ((LoopMessageHandler)wrapper).AddMessage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_message_handler_message_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_message_handler_message_add_delegate efl_loop_message_handler_message_add_static_delegate;
+
+
+    private delegate  void efl_loop_message_handler_message_send_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessage, Efl.Eo.NonOwnTag>))]  Efl.LoopMessage message);
+
+
+    public delegate  void efl_loop_message_handler_message_send_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessage, Efl.Eo.NonOwnTag>))]  Efl.LoopMessage message);
+    public static Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_send_api_delegate> efl_loop_message_handler_message_send_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_send_api_delegate>(_Module, "efl_loop_message_handler_message_send");
+    private static  void message_send(System.IntPtr obj, System.IntPtr pd,  Efl.LoopMessage message)
+   {
+      Eina.Log.Debug("function efl_loop_message_handler_message_send was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopMessageHandler)wrapper).MessageSend( message);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_message_handler_message_send_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  message);
+      }
+   }
+   private static efl_loop_message_handler_message_send_delegate efl_loop_message_handler_message_send_static_delegate;
+
+
+    private delegate  void efl_loop_message_handler_message_call_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessage, Efl.Eo.NonOwnTag>))]  Efl.LoopMessage message);
+
+
+    public delegate  void efl_loop_message_handler_message_call_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.LoopMessage, Efl.Eo.NonOwnTag>))]  Efl.LoopMessage message);
+    public static Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_call_api_delegate> efl_loop_message_handler_message_call_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_call_api_delegate>(_Module, "efl_loop_message_handler_message_call");
+    private static  void message_call(System.IntPtr obj, System.IntPtr pd,  Efl.LoopMessage message)
+   {
+      Eina.Log.Debug("function efl_loop_message_handler_message_call was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopMessageHandler)wrapper).CallMessage( message);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_message_handler_message_call_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  message);
+      }
+   }
+   private static efl_loop_message_handler_message_call_delegate efl_loop_message_handler_message_call_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_loop_message_handler_message_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_loop_message_handler_message_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_clear_api_delegate> efl_loop_message_handler_message_clear_ptr = new Efl.Eo.FunctionWrapper<efl_loop_message_handler_message_clear_api_delegate>(_Module, "efl_loop_message_handler_message_clear");
+    private static bool message_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_message_handler_message_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LoopMessageHandler)wrapper).ClearMessage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_message_handler_message_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_message_handler_message_clear_delegate efl_loop_message_handler_message_clear_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_model.eo.cs
new file mode 100755 (executable)
index 0000000..5005466
--- /dev/null
@@ -0,0 +1,663 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary></summary>
+[LoopModelNativeInherit]
+public class LoopModel : Efl.LoopConsumer, Efl.Eo.IWrapper,Efl.Model
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopModelNativeInherit nativeInherit = new Efl.LoopModelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopModel))
+            return Efl.LoopModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_model_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LoopModel(Efl.Object parent= null
+         ) :
+      base(efl_loop_model_class_get(), typeof(LoopModel), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopModel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopModel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopModel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopModel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PropertiesChangedEvtKey = new object();
+   /// <summary>Event dispatched when properties list is available.</summary>
+   public event EventHandler<Efl.ModelPropertiesChangedEvt_Args> PropertiesChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_PROPERTIES_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PropertiesChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PropertiesChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_PROPERTIES_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PropertiesChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PropertiesChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PropertiesChangedEvt.</summary>
+   public void On_PropertiesChangedEvt(Efl.ModelPropertiesChangedEvt_Args e)
+   {
+      EventHandler<Efl.ModelPropertiesChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ModelPropertiesChangedEvt_Args>)eventHandlers[PropertiesChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PropertiesChangedEvt_delegate;
+   private void on_PropertiesChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ModelPropertiesChangedEvt_Args args = new Efl.ModelPropertiesChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PropertiesChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildAddedEvtKey = new object();
+   /// <summary>Event dispatched when new child is added.</summary>
+   public event EventHandler<Efl.ModelChildAddedEvt_Args> ChildAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ChildAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ChildAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildAddedEvt.</summary>
+   public void On_ChildAddedEvt(Efl.ModelChildAddedEvt_Args e)
+   {
+      EventHandler<Efl.ModelChildAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ModelChildAddedEvt_Args>)eventHandlers[ChildAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildAddedEvt_delegate;
+   private void on_ChildAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ModelChildAddedEvt_Args args = new Efl.ModelChildAddedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChildAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildRemovedEvtKey = new object();
+   /// <summary>Event dispatched when child is removed.</summary>
+   public event EventHandler<Efl.ModelChildRemovedEvt_Args> ChildRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ChildRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ChildRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildRemovedEvt.</summary>
+   public void On_ChildRemovedEvt(Efl.ModelChildRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ModelChildRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ModelChildRemovedEvt_Args>)eventHandlers[ChildRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildRemovedEvt_delegate;
+   private void on_ChildRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ModelChildRemovedEvt_Args args = new Efl.ModelChildRemovedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChildRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildrenCountChangedEvtKey = new object();
+   /// <summary>Event dispatched when children count is finished.</summary>
+   public event EventHandler ChildrenCountChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ChildrenCountChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildrenCountChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChildrenCountChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildrenCountChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildrenCountChangedEvt.</summary>
+   public void On_ChildrenCountChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChildrenCountChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildrenCountChangedEvt_delegate;
+   private void on_ChildrenCountChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChildrenCountChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PropertiesChangedEvt_delegate = new Efl.EventCb(on_PropertiesChangedEvt_NativeCallback);
+      evt_ChildAddedEvt_delegate = new Efl.EventCb(on_ChildAddedEvt_NativeCallback);
+      evt_ChildRemovedEvt_delegate = new Efl.EventCb(on_ChildRemovedEvt_NativeCallback);
+      evt_ChildrenCountChangedEvt_delegate = new Efl.EventCb(on_ChildrenCountChangedEvt_NativeCallback);
+   }
+   /// <summary>To be called when a Child model is created by <see cref="Efl.Model.GetChildrenSlice"/> by the one creating the child object.
+   /// This function is used to properly define the lifecycle of the new Child Model object and make sure that once it has 0 ref except its parent Model, it will be destroyed. This function should only be called once per child. It is useful for <see cref="Efl.Model"/> who have a lot of children and shouldn&apos;t keep more than what is used in memory.</summary>
+   /// <returns></returns>
+   virtual public  void VolatileMake() {
+       Efl.LoopModelNativeInherit.efl_loop_model_volatile_make_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get properties from model.
+   /// properties_get is due to provide callers a way the fetch the current properties implemented/used by the model. The event <see cref="Efl.Model.PropertiesChangedEvt"/> will be raised to notify listeners of any modifications in the properties.
+   /// 
+   /// See also <see cref="Efl.Model.PropertiesChangedEvt"/>.
+   /// 1.14</summary>
+   /// <returns>Array of current properties</returns>
+   virtual public Eina.Iterator< System.String> GetProperties() {
+       var _ret_var = Efl.ModelNativeInherit.efl_model_properties_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator< System.String>(_ret_var, true, false);
+ }
+   /// <summary>Retrieve the value of a given property name.
+   /// At this point the caller is free to get values from properties. The event <see cref="Efl.Model.PropertiesChangedEvt"/> may be raised to notify listeners of the property/value.
+   /// 
+   /// See <see cref="Efl.Model.GetProperties"/>, <see cref="Efl.Model.PropertiesChangedEvt"/>
+   /// 1.14</summary>
+   /// <param name="property">Property name</param>
+   /// <returns>Property value</returns>
+   virtual public  Eina.Value GetProperty(  System.String property) {
+                         var _ret_var = Efl.ModelNativeInherit.efl_model_property_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), property);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set a property value of a given property name.
+   /// The caller must ensure to call at least efl_model_prop_list before being able to see/set properties. This function sets a new property value into given property name. Once the operation is completed the concrete implementation should raise <see cref="Efl.Model.PropertiesChangedEvt"/> event in order to notify listeners of the new value of the property.
+   /// 
+   /// If the model doesn&apos;t have the property then there are two possibilities, either raise an error or create the new property in model
+   /// 
+   /// See <see cref="Efl.Model.GetProperty"/>, <see cref="Efl.Model.PropertiesChangedEvt"/>
+   /// 1.14</summary>
+   /// <param name="property">Property name</param>
+   /// <param name="value">Property value</param>
+   /// <returns>Return an error in case the property could not be set, the value that was set otherwise.</returns>
+   virtual public  Eina.Future SetProperty(  System.String property,   Eina.Value value) {
+                                           var _ret_var = Efl.ModelNativeInherit.efl_model_property_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), property,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Get children count.
+   /// When efl_model_load is completed <see cref="Efl.Model.GetChildrenCount"/> can be used to get the number of children. <see cref="Efl.Model.GetChildrenCount"/> can also be used before calling <see cref="Efl.Model.GetChildrenSlice"/> so a valid range is known. Event <see cref="Efl.Model.ChildrenCountChangedEvt"/> is emitted when count is finished.
+   /// 
+   /// See also <see cref="Efl.Model.GetChildrenSlice"/>.
+   /// 1.14</summary>
+   /// <returns>Current known children count</returns>
+   virtual public  uint GetChildrenCount() {
+       var _ret_var = Efl.ModelNativeInherit.efl_model_children_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get a future value when it changes to something that is not error:EAGAIN
+   /// <see cref="Efl.Model.GetProperty"/> can return an error with code EAGAIN when it doesn&apos;t have any meaningful value. To make life easier, this future will resolve when the error:EAGAIN disapears. Either into a failed future in case the error code changed to something else or a success with the value of the property whenever the property finally changes.
+   /// 
+   /// The future can also be canceled if the model itself gets destroyed.</summary>
+   /// <param name="property"></param>
+   /// <returns></returns>
+   virtual public  Eina.Future GetPropertyReady(  System.String property) {
+                         var _ret_var = Efl.ModelNativeInherit.efl_model_property_ready_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), property);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get children slice OR full range.
+   /// <see cref="Efl.Model.GetChildrenSlice"/> behaves in two different ways, it may provide the slice if <c>count</c> is non-zero OR full range otherwise.
+   /// 
+   /// Since &apos;slice&apos; is a range, for example if we have 20 children a slice could be the range from 3(start) with 4(count), see:
+   /// 
+   /// child 0  [no] child 1  [no] child 2  [no] child 3  [yes] child 4  [yes] child 5  [yes] child 6  [yes] child 7  [no]
+   /// 
+   /// Optionally the user can call <see cref="Efl.Model.GetChildrenCount"/> to know the number of children so a valid range can be known in advance.
+   /// 
+   /// See <see cref="Efl.Model.GetChildrenCount"/>
+   /// 
+   /// Note: The returned children will live only as long as the future itself. Once the future is done, if you want to keep the object alive, you need to take a reference for yourself.
+   /// 1.14</summary>
+   /// <param name="start">Range begin - start from here.</param>
+   /// <param name="count">Range size. If count is 0, start is ignored.</param>
+   /// <returns>Array of children</returns>
+   virtual public  Eina.Future GetChildrenSlice(  uint start,   uint count) {
+                                           var _ret_var = Efl.ModelNativeInherit.efl_model_children_slice_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start,  count);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Add a new child.
+   /// Add a new child, possibly dummy, depending on the implementation, of a internal keeping. When the child is effectively added the event <see cref="Efl.Model.ChildAddedEvt"/> is then raised and the new child is kept along with other children.
+   /// 1.14</summary>
+   /// <returns>Child object</returns>
+   virtual public Efl.Object AddChild() {
+       var _ret_var = Efl.ModelNativeInherit.efl_model_child_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Remove a child.
+   /// Remove a child of a internal keeping. When the child is effectively removed the event <see cref="Efl.Model.ChildRemovedEvt"/> is then raised to give a chance for listeners to perform any cleanup and/or update references.
+   /// 1.14</summary>
+   /// <param name="child">Child to be removed</param>
+   /// <returns></returns>
+   virtual public  void DelChild( Efl.Object child) {
+                         Efl.ModelNativeInherit.efl_model_child_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   public System.Threading.Tasks.Task<Eina.Value> SetPropertyAsync(  System.String property,  Eina.Value value, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = SetProperty(  property,  value);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   public System.Threading.Tasks.Task<Eina.Value> GetPropertyReadyAsync(  System.String property, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = GetPropertyReady(  property);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   public System.Threading.Tasks.Task<Eina.Value> GetChildrenSliceAsync(  uint start,  uint count, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = GetChildrenSlice(  start,  count);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   /// <summary>Get properties from model.
+/// properties_get is due to provide callers a way the fetch the current properties implemented/used by the model. The event <see cref="Efl.Model.PropertiesChangedEvt"/> will be raised to notify listeners of any modifications in the properties.
+/// 
+/// See also <see cref="Efl.Model.PropertiesChangedEvt"/>.
+/// 1.14</summary>
+/// <value>Array of current properties</value>
+   public Eina.Iterator< System.String> Properties {
+      get { return GetProperties(); }
+   }
+   /// <summary>Get children count.
+/// When efl_model_load is completed <see cref="Efl.Model.GetChildrenCount"/> can be used to get the number of children. <see cref="Efl.Model.GetChildrenCount"/> can also be used before calling <see cref="Efl.Model.GetChildrenSlice"/> so a valid range is known. Event <see cref="Efl.Model.ChildrenCountChangedEvt"/> is emitted when count is finished.
+/// 
+/// See also <see cref="Efl.Model.GetChildrenSlice"/>.
+/// 1.14</summary>
+/// <value>Current known children count</value>
+   public  uint ChildrenCount {
+      get { return GetChildrenCount(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopModel.efl_loop_model_class_get();
+   }
+}
+public class LoopModelNativeInherit : Efl.LoopConsumerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_model_volatile_make_static_delegate == null)
+      efl_loop_model_volatile_make_static_delegate = new efl_loop_model_volatile_make_delegate(volatile_make);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_model_volatile_make"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_model_volatile_make_static_delegate)});
+      if (efl_model_properties_get_static_delegate == null)
+      efl_model_properties_get_static_delegate = new efl_model_properties_get_delegate(properties_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_properties_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_properties_get_static_delegate)});
+      if (efl_model_property_get_static_delegate == null)
+      efl_model_property_get_static_delegate = new efl_model_property_get_delegate(property_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_property_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_property_get_static_delegate)});
+      if (efl_model_property_set_static_delegate == null)
+      efl_model_property_set_static_delegate = new efl_model_property_set_delegate(property_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_property_set"), func = Marshal.GetFunctionPointerForDelegate(efl_model_property_set_static_delegate)});
+      if (efl_model_children_count_get_static_delegate == null)
+      efl_model_children_count_get_static_delegate = new efl_model_children_count_get_delegate(children_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_children_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_children_count_get_static_delegate)});
+      if (efl_model_property_ready_get_static_delegate == null)
+      efl_model_property_ready_get_static_delegate = new efl_model_property_ready_get_delegate(property_ready_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_property_ready_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_property_ready_get_static_delegate)});
+      if (efl_model_children_slice_get_static_delegate == null)
+      efl_model_children_slice_get_static_delegate = new efl_model_children_slice_get_delegate(children_slice_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_children_slice_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_children_slice_get_static_delegate)});
+      if (efl_model_child_add_static_delegate == null)
+      efl_model_child_add_static_delegate = new efl_model_child_add_delegate(child_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_child_add"), func = Marshal.GetFunctionPointerForDelegate(efl_model_child_add_static_delegate)});
+      if (efl_model_child_del_static_delegate == null)
+      efl_model_child_del_static_delegate = new efl_model_child_del_delegate(child_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_child_del"), func = Marshal.GetFunctionPointerForDelegate(efl_model_child_del_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopModel.efl_loop_model_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopModel.efl_loop_model_class_get();
+   }
+
+
+    private delegate  void efl_loop_model_volatile_make_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_loop_model_volatile_make_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_model_volatile_make_api_delegate> efl_loop_model_volatile_make_ptr = new Efl.Eo.FunctionWrapper<efl_loop_model_volatile_make_api_delegate>(_Module, "efl_loop_model_volatile_make");
+    private static  void volatile_make(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_model_volatile_make was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LoopModel)wrapper).VolatileMake();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_loop_model_volatile_make_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_model_volatile_make_delegate efl_loop_model_volatile_make_static_delegate;
+
+
+    private delegate  System.IntPtr efl_model_properties_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_model_properties_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_model_properties_get_api_delegate> efl_model_properties_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_properties_get_api_delegate>(_Module, "efl_model_properties_get");
+    private static  System.IntPtr properties_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_model_properties_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator< System.String> _ret_var = default(Eina.Iterator< System.String>);
+         try {
+            _ret_var = ((LoopModel)wrapper).GetProperties();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_model_properties_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_model_properties_get_delegate efl_model_properties_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] private delegate  Eina.Value efl_model_property_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] public delegate  Eina.Value efl_model_property_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_model_property_get_api_delegate> efl_model_property_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_property_get_api_delegate>(_Module, "efl_model_property_get");
+    private static  Eina.Value property_get(System.IntPtr obj, System.IntPtr pd,   System.String property)
+   {
+      Eina.Log.Debug("function efl_model_property_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = ((LoopModel)wrapper).GetProperty( property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_model_property_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property);
+      }
+   }
+   private static efl_model_property_get_delegate efl_model_property_get_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_model_property_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_model_property_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+    public static Efl.Eo.FunctionWrapper<efl_model_property_set_api_delegate> efl_model_property_set_ptr = new Efl.Eo.FunctionWrapper<efl_model_property_set_api_delegate>(_Module, "efl_model_property_set");
+    private static  Eina.Future property_set(System.IntPtr obj, System.IntPtr pd,   System.String property,   Eina.Value value)
+   {
+      Eina.Log.Debug("function efl_model_property_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((LoopModel)wrapper).SetProperty( property,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_model_property_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property,  value);
+      }
+   }
+   private static efl_model_property_set_delegate efl_model_property_set_static_delegate;
+
+
+    private delegate  uint efl_model_children_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_model_children_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_model_children_count_get_api_delegate> efl_model_children_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_children_count_get_api_delegate>(_Module, "efl_model_children_count_get");
+    private static  uint children_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_model_children_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((LoopModel)wrapper).GetChildrenCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_model_children_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_model_children_count_get_delegate efl_model_children_count_get_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_model_property_ready_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_model_property_ready_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_model_property_ready_get_api_delegate> efl_model_property_ready_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_property_ready_get_api_delegate>(_Module, "efl_model_property_ready_get");
+    private static  Eina.Future property_ready_get(System.IntPtr obj, System.IntPtr pd,   System.String property)
+   {
+      Eina.Log.Debug("function efl_model_property_ready_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((LoopModel)wrapper).GetPropertyReady( property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_model_property_ready_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property);
+      }
+   }
+   private static efl_model_property_ready_get_delegate efl_model_property_ready_get_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_model_children_slice_get_delegate(System.IntPtr obj, System.IntPtr pd,    uint start,    uint count);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_model_children_slice_get_api_delegate(System.IntPtr obj,    uint start,    uint count);
+    public static Efl.Eo.FunctionWrapper<efl_model_children_slice_get_api_delegate> efl_model_children_slice_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_children_slice_get_api_delegate>(_Module, "efl_model_children_slice_get");
+    private static  Eina.Future children_slice_get(System.IntPtr obj, System.IntPtr pd,   uint start,   uint count)
+   {
+      Eina.Log.Debug("function efl_model_children_slice_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((LoopModel)wrapper).GetChildrenSlice( start,  count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_model_children_slice_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  count);
+      }
+   }
+   private static efl_model_children_slice_get_delegate efl_model_children_slice_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_model_child_add_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_model_child_add_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_model_child_add_api_delegate> efl_model_child_add_ptr = new Efl.Eo.FunctionWrapper<efl_model_child_add_api_delegate>(_Module, "efl_model_child_add");
+    private static Efl.Object child_add(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_model_child_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((LoopModel)wrapper).AddChild();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_model_child_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_model_child_add_delegate efl_model_child_add_static_delegate;
+
+
+    private delegate  void efl_model_child_del_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child);
+
+
+    public delegate  void efl_model_child_del_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_model_child_del_api_delegate> efl_model_child_del_ptr = new Efl.Eo.FunctionWrapper<efl_model_child_del_api_delegate>(_Module, "efl_model_child_del");
+    private static  void child_del(System.IntPtr obj, System.IntPtr pd,  Efl.Object child)
+   {
+      Eina.Log.Debug("function efl_model_child_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopModel)wrapper).DelChild( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_model_child_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_model_child_del_delegate efl_model_child_del_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_loop_timer.eo.cs b/internals/src/EflSharp/EflSharp/efl_loop_timer.eo.cs
new file mode 100755 (executable)
index 0000000..984db2f
--- /dev/null
@@ -0,0 +1,360 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Timers are objects that will call a given callback at some point in the future and repeat that tick at a given interval.
+/// Timers require the ecore main loop to be running and functioning properly. They do not guarantee exact timing but try to work on a &quot;best effort&quot; basis.
+/// 
+/// The <see cref="Efl.Object.FreezeEvent"/> and <see cref="Efl.Object.ThawEvent"/> calls are used to pause and unpause the timer.</summary>
+[LoopTimerNativeInherit]
+public class LoopTimer : Efl.LoopConsumer, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.LoopTimerNativeInherit nativeInherit = new Efl.LoopTimerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LoopTimer))
+            return Efl.LoopTimerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_loop_timer_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="interval">Interval the timer ticks on. See <see cref="Efl.LoopTimer.SetInterval"/></param>
+   public LoopTimer(Efl.Object parent
+         , double interval) :
+      base(efl_loop_timer_class_get(), typeof(LoopTimer), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(interval))
+         SetInterval(Efl.Eo.Globals.GetParamHelper(interval));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LoopTimer(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LoopTimer(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LoopTimer static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LoopTimer(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object TickEvtKey = new object();
+   /// <summary>Event triggered when the specified time as passed.</summary>
+   public event EventHandler TickEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_TIMER_EVENT_TICK";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_TickEvt_delegate)) {
+               eventHandlers.AddHandler(TickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LOOP_TIMER_EVENT_TICK";
+            if (remove_cpp_event_handler(key, this.evt_TickEvt_delegate)) { 
+               eventHandlers.RemoveHandler(TickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event TickEvt.</summary>
+   public void On_TickEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[TickEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_TickEvt_delegate;
+   private void on_TickEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_TickEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_TickEvt_delegate = new Efl.EventCb(on_TickEvt_NativeCallback);
+   }
+   /// <summary>Gets the interval the timer ticks on.</summary>
+   /// <returns>The new interval in seconds</returns>
+   virtual public double GetInterval() {
+       var _ret_var = Efl.LoopTimerNativeInherit.efl_loop_timer_interval_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Changes the interval the timer ticks off. If set during a timer call this will affect the next interval.</summary>
+   /// <param name="kw_in">The new interval in seconds</param>
+   /// <returns></returns>
+   virtual public  void SetInterval( double kw_in) {
+                         Efl.LoopTimerNativeInherit.efl_loop_timer_interval_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_in);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the pending time regarding a timer.</summary>
+   /// <returns>Pending time</returns>
+   virtual public double GetPending() {
+       var _ret_var = Efl.LoopTimerNativeInherit.efl_loop_timer_pending_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Resets a timer to its full interval. This effectively makes the timer start ticking off from zero now.
+   /// This is equal to delaying the timer by the already passed time, since the timer started ticking
+   /// 1.2</summary>
+   /// <returns></returns>
+   virtual public  void Reset() {
+       Efl.LoopTimerNativeInherit.efl_loop_timer_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This effectively resets a timer but based on the time when this iteration of the main loop started.
+   /// 1.18</summary>
+   /// <returns></returns>
+   virtual public  void ResetLoop() {
+       Efl.LoopTimerNativeInherit.efl_loop_timer_loop_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Adds a delay to the next occurrence of a timer. This doesn&apos;t affect the timer interval.</summary>
+   /// <param name="add">The amount of time by which to delay the timer in seconds</param>
+   /// <returns></returns>
+   virtual public  void Delay( double add) {
+                         Efl.LoopTimerNativeInherit.efl_loop_timer_delay_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), add);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Interval the timer ticks on.</summary>
+/// <value>The new interval in seconds</value>
+   public double Interval {
+      get { return GetInterval(); }
+      set { SetInterval( value); }
+   }
+   /// <summary>Pending time regarding a timer.</summary>
+/// <value>Pending time</value>
+   public double Pending {
+      get { return GetPending(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopTimer.efl_loop_timer_class_get();
+   }
+}
+public class LoopTimerNativeInherit : Efl.LoopConsumerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_loop_timer_interval_get_static_delegate == null)
+      efl_loop_timer_interval_get_static_delegate = new efl_loop_timer_interval_get_delegate(interval_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_timer_interval_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_timer_interval_get_static_delegate)});
+      if (efl_loop_timer_interval_set_static_delegate == null)
+      efl_loop_timer_interval_set_static_delegate = new efl_loop_timer_interval_set_delegate(interval_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_timer_interval_set"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_timer_interval_set_static_delegate)});
+      if (efl_loop_timer_pending_get_static_delegate == null)
+      efl_loop_timer_pending_get_static_delegate = new efl_loop_timer_pending_get_delegate(pending_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_timer_pending_get"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_timer_pending_get_static_delegate)});
+      if (efl_loop_timer_reset_static_delegate == null)
+      efl_loop_timer_reset_static_delegate = new efl_loop_timer_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_timer_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_timer_reset_static_delegate)});
+      if (efl_loop_timer_loop_reset_static_delegate == null)
+      efl_loop_timer_loop_reset_static_delegate = new efl_loop_timer_loop_reset_delegate(loop_reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_timer_loop_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_timer_loop_reset_static_delegate)});
+      if (efl_loop_timer_delay_static_delegate == null)
+      efl_loop_timer_delay_static_delegate = new efl_loop_timer_delay_delegate(delay);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_loop_timer_delay"), func = Marshal.GetFunctionPointerForDelegate(efl_loop_timer_delay_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.LoopTimer.efl_loop_timer_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.LoopTimer.efl_loop_timer_class_get();
+   }
+
+
+    private delegate double efl_loop_timer_interval_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_loop_timer_interval_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_timer_interval_get_api_delegate> efl_loop_timer_interval_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_timer_interval_get_api_delegate>(_Module, "efl_loop_timer_interval_get");
+    private static double interval_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_timer_interval_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LoopTimer)wrapper).GetInterval();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_timer_interval_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_timer_interval_get_delegate efl_loop_timer_interval_get_static_delegate;
+
+
+    private delegate  void efl_loop_timer_interval_set_delegate(System.IntPtr obj, System.IntPtr pd,   double kw_in);
+
+
+    public delegate  void efl_loop_timer_interval_set_api_delegate(System.IntPtr obj,   double kw_in);
+    public static Efl.Eo.FunctionWrapper<efl_loop_timer_interval_set_api_delegate> efl_loop_timer_interval_set_ptr = new Efl.Eo.FunctionWrapper<efl_loop_timer_interval_set_api_delegate>(_Module, "efl_loop_timer_interval_set");
+    private static  void interval_set(System.IntPtr obj, System.IntPtr pd,  double kw_in)
+   {
+      Eina.Log.Debug("function efl_loop_timer_interval_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopTimer)wrapper).SetInterval( kw_in);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_timer_interval_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_in);
+      }
+   }
+   private static efl_loop_timer_interval_set_delegate efl_loop_timer_interval_set_static_delegate;
+
+
+    private delegate double efl_loop_timer_pending_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_loop_timer_pending_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_timer_pending_get_api_delegate> efl_loop_timer_pending_get_ptr = new Efl.Eo.FunctionWrapper<efl_loop_timer_pending_get_api_delegate>(_Module, "efl_loop_timer_pending_get");
+    private static double pending_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_timer_pending_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((LoopTimer)wrapper).GetPending();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_loop_timer_pending_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_timer_pending_get_delegate efl_loop_timer_pending_get_static_delegate;
+
+
+    private delegate  void efl_loop_timer_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_loop_timer_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_timer_reset_api_delegate> efl_loop_timer_reset_ptr = new Efl.Eo.FunctionWrapper<efl_loop_timer_reset_api_delegate>(_Module, "efl_loop_timer_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_timer_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LoopTimer)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_loop_timer_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_timer_reset_delegate efl_loop_timer_reset_static_delegate;
+
+
+    private delegate  void efl_loop_timer_loop_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_loop_timer_loop_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_loop_timer_loop_reset_api_delegate> efl_loop_timer_loop_reset_ptr = new Efl.Eo.FunctionWrapper<efl_loop_timer_loop_reset_api_delegate>(_Module, "efl_loop_timer_loop_reset");
+    private static  void loop_reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_loop_timer_loop_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LoopTimer)wrapper).ResetLoop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_loop_timer_loop_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_loop_timer_loop_reset_delegate efl_loop_timer_loop_reset_static_delegate;
+
+
+    private delegate  void efl_loop_timer_delay_delegate(System.IntPtr obj, System.IntPtr pd,   double add);
+
+
+    public delegate  void efl_loop_timer_delay_api_delegate(System.IntPtr obj,   double add);
+    public static Efl.Eo.FunctionWrapper<efl_loop_timer_delay_api_delegate> efl_loop_timer_delay_ptr = new Efl.Eo.FunctionWrapper<efl_loop_timer_delay_api_delegate>(_Module, "efl_loop_timer_delay");
+    private static  void delay(System.IntPtr obj, System.IntPtr pd,  double add)
+   {
+      Eina.Log.Debug("function efl_loop_timer_delay was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LoopTimer)wrapper).Delay( add);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_loop_timer_delay_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  add);
+      }
+   }
+   private static efl_loop_timer_delay_delegate efl_loop_timer_delay_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_model.eo.cs
new file mode 100755 (executable)
index 0000000..1e49060
--- /dev/null
@@ -0,0 +1,939 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl model interface</summary>
+[ModelNativeInherit]
+public interface Model : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get properties from model.
+/// properties_get is due to provide callers a way the fetch the current properties implemented/used by the model. The event <see cref="Efl.Model.PropertiesChangedEvt"/> will be raised to notify listeners of any modifications in the properties.
+/// 
+/// See also <see cref="Efl.Model.PropertiesChangedEvt"/>.
+/// 1.14</summary>
+/// <returns>Array of current properties</returns>
+Eina.Iterator< System.String> GetProperties();
+   /// <summary>Retrieve the value of a given property name.
+/// At this point the caller is free to get values from properties. The event <see cref="Efl.Model.PropertiesChangedEvt"/> may be raised to notify listeners of the property/value.
+/// 
+/// See <see cref="Efl.Model.GetProperties"/>, <see cref="Efl.Model.PropertiesChangedEvt"/>
+/// 1.14</summary>
+/// <param name="property">Property name</param>
+/// <returns>Property value</returns>
+ Eina.Value GetProperty(  System.String property);
+   /// <summary>Set a property value of a given property name.
+/// The caller must ensure to call at least efl_model_prop_list before being able to see/set properties. This function sets a new property value into given property name. Once the operation is completed the concrete implementation should raise <see cref="Efl.Model.PropertiesChangedEvt"/> event in order to notify listeners of the new value of the property.
+/// 
+/// If the model doesn&apos;t have the property then there are two possibilities, either raise an error or create the new property in model
+/// 
+/// See <see cref="Efl.Model.GetProperty"/>, <see cref="Efl.Model.PropertiesChangedEvt"/>
+/// 1.14</summary>
+/// <param name="property">Property name</param>
+/// <param name="value">Property value</param>
+/// <returns>Return an error in case the property could not be set, the value that was set otherwise.</returns>
+ Eina.Future SetProperty(  System.String property,   Eina.Value value);
+   /// <summary>Get children count.
+/// When efl_model_load is completed <see cref="Efl.Model.GetChildrenCount"/> can be used to get the number of children. <see cref="Efl.Model.GetChildrenCount"/> can also be used before calling <see cref="Efl.Model.GetChildrenSlice"/> so a valid range is known. Event <see cref="Efl.Model.ChildrenCountChangedEvt"/> is emitted when count is finished.
+/// 
+/// See also <see cref="Efl.Model.GetChildrenSlice"/>.
+/// 1.14</summary>
+/// <returns>Current known children count</returns>
+ uint GetChildrenCount();
+   /// <summary>Get a future value when it changes to something that is not error:EAGAIN
+/// <see cref="Efl.Model.GetProperty"/> can return an error with code EAGAIN when it doesn&apos;t have any meaningful value. To make life easier, this future will resolve when the error:EAGAIN disapears. Either into a failed future in case the error code changed to something else or a success with the value of the property whenever the property finally changes.
+/// 
+/// The future can also be canceled if the model itself gets destroyed.</summary>
+/// <param name="property"></param>
+/// <returns></returns>
+ Eina.Future GetPropertyReady(  System.String property);
+   /// <summary>Get children slice OR full range.
+/// <see cref="Efl.Model.GetChildrenSlice"/> behaves in two different ways, it may provide the slice if <c>count</c> is non-zero OR full range otherwise.
+/// 
+/// Since &apos;slice&apos; is a range, for example if we have 20 children a slice could be the range from 3(start) with 4(count), see:
+/// 
+/// child 0  [no] child 1  [no] child 2  [no] child 3  [yes] child 4  [yes] child 5  [yes] child 6  [yes] child 7  [no]
+/// 
+/// Optionally the user can call <see cref="Efl.Model.GetChildrenCount"/> to know the number of children so a valid range can be known in advance.
+/// 
+/// See <see cref="Efl.Model.GetChildrenCount"/>
+/// 
+/// Note: The returned children will live only as long as the future itself. Once the future is done, if you want to keep the object alive, you need to take a reference for yourself.
+/// 1.14</summary>
+/// <param name="start">Range begin - start from here.</param>
+/// <param name="count">Range size. If count is 0, start is ignored.</param>
+/// <returns>Array of children</returns>
+ Eina.Future GetChildrenSlice(  uint start,   uint count);
+   /// <summary>Add a new child.
+/// Add a new child, possibly dummy, depending on the implementation, of a internal keeping. When the child is effectively added the event <see cref="Efl.Model.ChildAddedEvt"/> is then raised and the new child is kept along with other children.
+/// 1.14</summary>
+/// <returns>Child object</returns>
+Efl.Object AddChild();
+   /// <summary>Remove a child.
+/// Remove a child of a internal keeping. When the child is effectively removed the event <see cref="Efl.Model.ChildRemovedEvt"/> is then raised to give a chance for listeners to perform any cleanup and/or update references.
+/// 1.14</summary>
+/// <param name="child">Child to be removed</param>
+/// <returns></returns>
+ void DelChild( Efl.Object child);
+            System.Threading.Tasks.Task<Eina.Value> SetPropertyAsync(  System.String property,  Eina.Value value, System.Threading.CancellationToken token=default(System.Threading.CancellationToken));
+         System.Threading.Tasks.Task<Eina.Value> GetPropertyReadyAsync(  System.String property, System.Threading.CancellationToken token=default(System.Threading.CancellationToken));
+      System.Threading.Tasks.Task<Eina.Value> GetChildrenSliceAsync(  uint start,  uint count, System.Threading.CancellationToken token=default(System.Threading.CancellationToken));
+         /// <summary>Event dispatched when properties list is available.</summary>
+   event EventHandler<Efl.ModelPropertiesChangedEvt_Args> PropertiesChangedEvt;
+   /// <summary>Event dispatched when new child is added.</summary>
+   event EventHandler<Efl.ModelChildAddedEvt_Args> ChildAddedEvt;
+   /// <summary>Event dispatched when child is removed.</summary>
+   event EventHandler<Efl.ModelChildRemovedEvt_Args> ChildRemovedEvt;
+   /// <summary>Event dispatched when children count is finished.</summary>
+   event EventHandler ChildrenCountChangedEvt;
+   /// <summary>Get properties from model.
+/// properties_get is due to provide callers a way the fetch the current properties implemented/used by the model. The event <see cref="Efl.Model.PropertiesChangedEvt"/> will be raised to notify listeners of any modifications in the properties.
+/// 
+/// See also <see cref="Efl.Model.PropertiesChangedEvt"/>.
+/// 1.14</summary>
+/// <value>Array of current properties</value>
+   Eina.Iterator< System.String> Properties {
+      get ;
+   }
+   /// <summary>Get children count.
+/// When efl_model_load is completed <see cref="Efl.Model.GetChildrenCount"/> can be used to get the number of children. <see cref="Efl.Model.GetChildrenCount"/> can also be used before calling <see cref="Efl.Model.GetChildrenSlice"/> so a valid range is known. Event <see cref="Efl.Model.ChildrenCountChangedEvt"/> is emitted when count is finished.
+/// 
+/// See also <see cref="Efl.Model.GetChildrenSlice"/>.
+/// 1.14</summary>
+/// <value>Current known children count</value>
+    uint ChildrenCount {
+      get ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Model.PropertiesChangedEvt"/>.</summary>
+public class ModelPropertiesChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.ModelPropertyEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Model.ChildAddedEvt"/>.</summary>
+public class ModelChildAddedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.ModelChildrenEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Model.ChildRemovedEvt"/>.</summary>
+public class ModelChildRemovedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.ModelChildrenEvent arg { get; set; }
+}
+/// <summary>Efl model interface</summary>
+sealed public class ModelConcrete : 
+
+Model
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ModelConcrete))
+            return Efl.ModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_model_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ModelConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ModelConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ModelConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ModelConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object PropertiesChangedEvtKey = new object();
+   /// <summary>Event dispatched when properties list is available.</summary>
+   public event EventHandler<Efl.ModelPropertiesChangedEvt_Args> PropertiesChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_PROPERTIES_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PropertiesChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PropertiesChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_PROPERTIES_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PropertiesChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PropertiesChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PropertiesChangedEvt.</summary>
+   public void On_PropertiesChangedEvt(Efl.ModelPropertiesChangedEvt_Args e)
+   {
+      EventHandler<Efl.ModelPropertiesChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ModelPropertiesChangedEvt_Args>)eventHandlers[PropertiesChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PropertiesChangedEvt_delegate;
+   private void on_PropertiesChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ModelPropertiesChangedEvt_Args args = new Efl.ModelPropertiesChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PropertiesChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildAddedEvtKey = new object();
+   /// <summary>Event dispatched when new child is added.</summary>
+   public event EventHandler<Efl.ModelChildAddedEvt_Args> ChildAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ChildAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ChildAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildAddedEvt.</summary>
+   public void On_ChildAddedEvt(Efl.ModelChildAddedEvt_Args e)
+   {
+      EventHandler<Efl.ModelChildAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ModelChildAddedEvt_Args>)eventHandlers[ChildAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildAddedEvt_delegate;
+   private void on_ChildAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ModelChildAddedEvt_Args args = new Efl.ModelChildAddedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChildAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildRemovedEvtKey = new object();
+   /// <summary>Event dispatched when child is removed.</summary>
+   public event EventHandler<Efl.ModelChildRemovedEvt_Args> ChildRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ChildRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILD_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ChildRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildRemovedEvt.</summary>
+   public void On_ChildRemovedEvt(Efl.ModelChildRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ModelChildRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ModelChildRemovedEvt_Args>)eventHandlers[ChildRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildRemovedEvt_delegate;
+   private void on_ChildRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ModelChildRemovedEvt_Args args = new Efl.ModelChildRemovedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChildRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildrenCountChangedEvtKey = new object();
+   /// <summary>Event dispatched when children count is finished.</summary>
+   public event EventHandler ChildrenCountChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ChildrenCountChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildrenCountChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_MODEL_EVENT_CHILDREN_COUNT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChildrenCountChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildrenCountChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildrenCountChangedEvt.</summary>
+   public void On_ChildrenCountChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChildrenCountChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildrenCountChangedEvt_delegate;
+   private void on_ChildrenCountChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChildrenCountChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_PropertiesChangedEvt_delegate = new Efl.EventCb(on_PropertiesChangedEvt_NativeCallback);
+      evt_ChildAddedEvt_delegate = new Efl.EventCb(on_ChildAddedEvt_NativeCallback);
+      evt_ChildRemovedEvt_delegate = new Efl.EventCb(on_ChildRemovedEvt_NativeCallback);
+      evt_ChildrenCountChangedEvt_delegate = new Efl.EventCb(on_ChildrenCountChangedEvt_NativeCallback);
+   }
+   /// <summary>Get properties from model.
+   /// properties_get is due to provide callers a way the fetch the current properties implemented/used by the model. The event <see cref="Efl.Model.PropertiesChangedEvt"/> will be raised to notify listeners of any modifications in the properties.
+   /// 
+   /// See also <see cref="Efl.Model.PropertiesChangedEvt"/>.
+   /// 1.14</summary>
+   /// <returns>Array of current properties</returns>
+   public Eina.Iterator< System.String> GetProperties() {
+       var _ret_var = Efl.ModelNativeInherit.efl_model_properties_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator< System.String>(_ret_var, true, false);
+ }
+   /// <summary>Retrieve the value of a given property name.
+   /// At this point the caller is free to get values from properties. The event <see cref="Efl.Model.PropertiesChangedEvt"/> may be raised to notify listeners of the property/value.
+   /// 
+   /// See <see cref="Efl.Model.GetProperties"/>, <see cref="Efl.Model.PropertiesChangedEvt"/>
+   /// 1.14</summary>
+   /// <param name="property">Property name</param>
+   /// <returns>Property value</returns>
+   public  Eina.Value GetProperty(  System.String property) {
+                         var _ret_var = Efl.ModelNativeInherit.efl_model_property_get_ptr.Value.Delegate(this.NativeHandle, property);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set a property value of a given property name.
+   /// The caller must ensure to call at least efl_model_prop_list before being able to see/set properties. This function sets a new property value into given property name. Once the operation is completed the concrete implementation should raise <see cref="Efl.Model.PropertiesChangedEvt"/> event in order to notify listeners of the new value of the property.
+   /// 
+   /// If the model doesn&apos;t have the property then there are two possibilities, either raise an error or create the new property in model
+   /// 
+   /// See <see cref="Efl.Model.GetProperty"/>, <see cref="Efl.Model.PropertiesChangedEvt"/>
+   /// 1.14</summary>
+   /// <param name="property">Property name</param>
+   /// <param name="value">Property value</param>
+   /// <returns>Return an error in case the property could not be set, the value that was set otherwise.</returns>
+   public  Eina.Future SetProperty(  System.String property,   Eina.Value value) {
+                                           var _ret_var = Efl.ModelNativeInherit.efl_model_property_set_ptr.Value.Delegate(this.NativeHandle, property,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Get children count.
+   /// When efl_model_load is completed <see cref="Efl.Model.GetChildrenCount"/> can be used to get the number of children. <see cref="Efl.Model.GetChildrenCount"/> can also be used before calling <see cref="Efl.Model.GetChildrenSlice"/> so a valid range is known. Event <see cref="Efl.Model.ChildrenCountChangedEvt"/> is emitted when count is finished.
+   /// 
+   /// See also <see cref="Efl.Model.GetChildrenSlice"/>.
+   /// 1.14</summary>
+   /// <returns>Current known children count</returns>
+   public  uint GetChildrenCount() {
+       var _ret_var = Efl.ModelNativeInherit.efl_model_children_count_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get a future value when it changes to something that is not error:EAGAIN
+   /// <see cref="Efl.Model.GetProperty"/> can return an error with code EAGAIN when it doesn&apos;t have any meaningful value. To make life easier, this future will resolve when the error:EAGAIN disapears. Either into a failed future in case the error code changed to something else or a success with the value of the property whenever the property finally changes.
+   /// 
+   /// The future can also be canceled if the model itself gets destroyed.</summary>
+   /// <param name="property"></param>
+   /// <returns></returns>
+   public  Eina.Future GetPropertyReady(  System.String property) {
+                         var _ret_var = Efl.ModelNativeInherit.efl_model_property_ready_get_ptr.Value.Delegate(this.NativeHandle, property);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get children slice OR full range.
+   /// <see cref="Efl.Model.GetChildrenSlice"/> behaves in two different ways, it may provide the slice if <c>count</c> is non-zero OR full range otherwise.
+   /// 
+   /// Since &apos;slice&apos; is a range, for example if we have 20 children a slice could be the range from 3(start) with 4(count), see:
+   /// 
+   /// child 0  [no] child 1  [no] child 2  [no] child 3  [yes] child 4  [yes] child 5  [yes] child 6  [yes] child 7  [no]
+   /// 
+   /// Optionally the user can call <see cref="Efl.Model.GetChildrenCount"/> to know the number of children so a valid range can be known in advance.
+   /// 
+   /// See <see cref="Efl.Model.GetChildrenCount"/>
+   /// 
+   /// Note: The returned children will live only as long as the future itself. Once the future is done, if you want to keep the object alive, you need to take a reference for yourself.
+   /// 1.14</summary>
+   /// <param name="start">Range begin - start from here.</param>
+   /// <param name="count">Range size. If count is 0, start is ignored.</param>
+   /// <returns>Array of children</returns>
+   public  Eina.Future GetChildrenSlice(  uint start,   uint count) {
+                                           var _ret_var = Efl.ModelNativeInherit.efl_model_children_slice_get_ptr.Value.Delegate(this.NativeHandle, start,  count);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Add a new child.
+   /// Add a new child, possibly dummy, depending on the implementation, of a internal keeping. When the child is effectively added the event <see cref="Efl.Model.ChildAddedEvt"/> is then raised and the new child is kept along with other children.
+   /// 1.14</summary>
+   /// <returns>Child object</returns>
+   public Efl.Object AddChild() {
+       var _ret_var = Efl.ModelNativeInherit.efl_model_child_add_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Remove a child.
+   /// Remove a child of a internal keeping. When the child is effectively removed the event <see cref="Efl.Model.ChildRemovedEvt"/> is then raised to give a chance for listeners to perform any cleanup and/or update references.
+   /// 1.14</summary>
+   /// <param name="child">Child to be removed</param>
+   /// <returns></returns>
+   public  void DelChild( Efl.Object child) {
+                         Efl.ModelNativeInherit.efl_model_child_del_ptr.Value.Delegate(this.NativeHandle, child);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   public System.Threading.Tasks.Task<Eina.Value> SetPropertyAsync(  System.String property,  Eina.Value value, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = SetProperty(  property,  value);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   public System.Threading.Tasks.Task<Eina.Value> GetPropertyReadyAsync(  System.String property, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = GetPropertyReady(  property);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   public System.Threading.Tasks.Task<Eina.Value> GetChildrenSliceAsync(  uint start,  uint count, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = GetChildrenSlice(  start,  count);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   /// <summary>Get properties from model.
+/// properties_get is due to provide callers a way the fetch the current properties implemented/used by the model. The event <see cref="Efl.Model.PropertiesChangedEvt"/> will be raised to notify listeners of any modifications in the properties.
+/// 
+/// See also <see cref="Efl.Model.PropertiesChangedEvt"/>.
+/// 1.14</summary>
+/// <value>Array of current properties</value>
+   public Eina.Iterator< System.String> Properties {
+      get { return GetProperties(); }
+   }
+   /// <summary>Get children count.
+/// When efl_model_load is completed <see cref="Efl.Model.GetChildrenCount"/> can be used to get the number of children. <see cref="Efl.Model.GetChildrenCount"/> can also be used before calling <see cref="Efl.Model.GetChildrenSlice"/> so a valid range is known. Event <see cref="Efl.Model.ChildrenCountChangedEvt"/> is emitted when count is finished.
+/// 
+/// See also <see cref="Efl.Model.GetChildrenSlice"/>.
+/// 1.14</summary>
+/// <value>Current known children count</value>
+   public  uint ChildrenCount {
+      get { return GetChildrenCount(); }
+   }
+}
+public class ModelNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_model_properties_get_static_delegate == null)
+      efl_model_properties_get_static_delegate = new efl_model_properties_get_delegate(properties_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_properties_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_properties_get_static_delegate)});
+      if (efl_model_property_get_static_delegate == null)
+      efl_model_property_get_static_delegate = new efl_model_property_get_delegate(property_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_property_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_property_get_static_delegate)});
+      if (efl_model_property_set_static_delegate == null)
+      efl_model_property_set_static_delegate = new efl_model_property_set_delegate(property_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_property_set"), func = Marshal.GetFunctionPointerForDelegate(efl_model_property_set_static_delegate)});
+      if (efl_model_children_count_get_static_delegate == null)
+      efl_model_children_count_get_static_delegate = new efl_model_children_count_get_delegate(children_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_children_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_children_count_get_static_delegate)});
+      if (efl_model_property_ready_get_static_delegate == null)
+      efl_model_property_ready_get_static_delegate = new efl_model_property_ready_get_delegate(property_ready_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_property_ready_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_property_ready_get_static_delegate)});
+      if (efl_model_children_slice_get_static_delegate == null)
+      efl_model_children_slice_get_static_delegate = new efl_model_children_slice_get_delegate(children_slice_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_children_slice_get"), func = Marshal.GetFunctionPointerForDelegate(efl_model_children_slice_get_static_delegate)});
+      if (efl_model_child_add_static_delegate == null)
+      efl_model_child_add_static_delegate = new efl_model_child_add_delegate(child_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_child_add"), func = Marshal.GetFunctionPointerForDelegate(efl_model_child_add_static_delegate)});
+      if (efl_model_child_del_static_delegate == null)
+      efl_model_child_del_static_delegate = new efl_model_child_del_delegate(child_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_model_child_del"), func = Marshal.GetFunctionPointerForDelegate(efl_model_child_del_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ModelConcrete.efl_model_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ModelConcrete.efl_model_interface_get();
+   }
+
+
+    private delegate  System.IntPtr efl_model_properties_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_model_properties_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_model_properties_get_api_delegate> efl_model_properties_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_properties_get_api_delegate>(_Module, "efl_model_properties_get");
+    private static  System.IntPtr properties_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_model_properties_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator< System.String> _ret_var = default(Eina.Iterator< System.String>);
+         try {
+            _ret_var = ((Model)wrapper).GetProperties();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_model_properties_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_model_properties_get_delegate efl_model_properties_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] private delegate  Eina.Value efl_model_property_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] public delegate  Eina.Value efl_model_property_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_model_property_get_api_delegate> efl_model_property_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_property_get_api_delegate>(_Module, "efl_model_property_get");
+    private static  Eina.Value property_get(System.IntPtr obj, System.IntPtr pd,   System.String property)
+   {
+      Eina.Log.Debug("function efl_model_property_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = ((Model)wrapper).GetProperty( property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_model_property_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property);
+      }
+   }
+   private static efl_model_property_get_delegate efl_model_property_get_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_model_property_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_model_property_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+    public static Efl.Eo.FunctionWrapper<efl_model_property_set_api_delegate> efl_model_property_set_ptr = new Efl.Eo.FunctionWrapper<efl_model_property_set_api_delegate>(_Module, "efl_model_property_set");
+    private static  Eina.Future property_set(System.IntPtr obj, System.IntPtr pd,   System.String property,   Eina.Value value)
+   {
+      Eina.Log.Debug("function efl_model_property_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Model)wrapper).SetProperty( property,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_model_property_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property,  value);
+      }
+   }
+   private static efl_model_property_set_delegate efl_model_property_set_static_delegate;
+
+
+    private delegate  uint efl_model_children_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_model_children_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_model_children_count_get_api_delegate> efl_model_children_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_children_count_get_api_delegate>(_Module, "efl_model_children_count_get");
+    private static  uint children_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_model_children_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Model)wrapper).GetChildrenCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_model_children_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_model_children_count_get_delegate efl_model_children_count_get_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_model_property_ready_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_model_property_ready_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_model_property_ready_get_api_delegate> efl_model_property_ready_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_property_ready_get_api_delegate>(_Module, "efl_model_property_ready_get");
+    private static  Eina.Future property_ready_get(System.IntPtr obj, System.IntPtr pd,   System.String property)
+   {
+      Eina.Log.Debug("function efl_model_property_ready_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Model)wrapper).GetPropertyReady( property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_model_property_ready_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property);
+      }
+   }
+   private static efl_model_property_ready_get_delegate efl_model_property_ready_get_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_model_children_slice_get_delegate(System.IntPtr obj, System.IntPtr pd,    uint start,    uint count);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_model_children_slice_get_api_delegate(System.IntPtr obj,    uint start,    uint count);
+    public static Efl.Eo.FunctionWrapper<efl_model_children_slice_get_api_delegate> efl_model_children_slice_get_ptr = new Efl.Eo.FunctionWrapper<efl_model_children_slice_get_api_delegate>(_Module, "efl_model_children_slice_get");
+    private static  Eina.Future children_slice_get(System.IntPtr obj, System.IntPtr pd,   uint start,   uint count)
+   {
+      Eina.Log.Debug("function efl_model_children_slice_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Model)wrapper).GetChildrenSlice( start,  count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_model_children_slice_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  count);
+      }
+   }
+   private static efl_model_children_slice_get_delegate efl_model_children_slice_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_model_child_add_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_model_child_add_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_model_child_add_api_delegate> efl_model_child_add_ptr = new Efl.Eo.FunctionWrapper<efl_model_child_add_api_delegate>(_Module, "efl_model_child_add");
+    private static Efl.Object child_add(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_model_child_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Model)wrapper).AddChild();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_model_child_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_model_child_add_delegate efl_model_child_add_static_delegate;
+
+
+    private delegate  void efl_model_child_del_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child);
+
+
+    public delegate  void efl_model_child_del_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_model_child_del_api_delegate> efl_model_child_del_ptr = new Efl.Eo.FunctionWrapper<efl_model_child_del_api_delegate>(_Module, "efl_model_child_del");
+    private static  void child_del(System.IntPtr obj, System.IntPtr pd,  Efl.Object child)
+   {
+      Eina.Log.Debug("function efl_model_child_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Model)wrapper).DelChild( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_model_child_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_model_child_del_delegate efl_model_child_del_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>EFL model property event data structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ModelPropertyEvent
+{
+   /// <summary>List of changed properties</summary>
+   public Eina.Array< System.String> Changed_properties;
+   /// <summary>Removed properties identified by name</summary>
+   public Eina.Array< System.String> Invalidated_properties;
+   ///<summary>Constructor for ModelPropertyEvent.</summary>
+   public ModelPropertyEvent(
+      Eina.Array< System.String> Changed_properties=default(Eina.Array< System.String>),
+      Eina.Array< System.String> Invalidated_properties=default(Eina.Array< System.String>)   )
+   {
+      this.Changed_properties = Changed_properties;
+      this.Invalidated_properties = Invalidated_properties;
+   }
+public static implicit operator ModelPropertyEvent(IntPtr ptr)
+   {
+      var tmp = (ModelPropertyEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(ModelPropertyEvent_StructInternal));
+      return ModelPropertyEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ModelPropertyEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ModelPropertyEvent_StructInternal
+{
+   
+   public  System.IntPtr Changed_properties;
+   
+   public  System.IntPtr Invalidated_properties;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ModelPropertyEvent(ModelPropertyEvent_StructInternal struct_)
+   {
+      return ModelPropertyEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ModelPropertyEvent_StructInternal(ModelPropertyEvent struct_)
+   {
+      return ModelPropertyEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ModelPropertyEvent</summary>
+public static class ModelPropertyEvent_StructConversion
+{
+   internal static ModelPropertyEvent_StructInternal ToInternal(ModelPropertyEvent _external_struct)
+   {
+      var _internal_struct = new ModelPropertyEvent_StructInternal();
+
+      _internal_struct.Changed_properties = _external_struct.Changed_properties.Handle;
+      _internal_struct.Invalidated_properties = _external_struct.Invalidated_properties.Handle;
+
+      return _internal_struct;
+   }
+
+   internal static ModelPropertyEvent ToManaged(ModelPropertyEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new ModelPropertyEvent();
+
+      _external_struct.Changed_properties = new Eina.Array< System.String>(_internal_struct.Changed_properties, false, false);
+      _external_struct.Invalidated_properties = new Eina.Array< System.String>(_internal_struct.Invalidated_properties, false, false);
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Efl { 
+/// <summary>Every time a child is added the event <see cref="Efl.Model.ChildAddedEvt"/> is dispatched passing along this structure.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ModelChildrenEvent
+{
+   /// <summary>index is a hint and is intended to provide a way for applications to control/know children relative positions through listings.</summary>
+   public  uint Index;
+   /// <summary>If an object has been built for this index and it is currently tracked by the parent, it will be available here.</summary>
+   public Efl.Object Child;
+   ///<summary>Constructor for ModelChildrenEvent.</summary>
+   public ModelChildrenEvent(
+       uint Index=default( uint),
+      Efl.Object Child=default(Efl.Object)   )
+   {
+      this.Index = Index;
+      this.Child = Child;
+   }
+public static implicit operator ModelChildrenEvent(IntPtr ptr)
+   {
+      var tmp = (ModelChildrenEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(ModelChildrenEvent_StructInternal));
+      return ModelChildrenEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ModelChildrenEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ModelChildrenEvent_StructInternal
+{
+   
+   public  uint Index;
+///<summary>Internal wrapper for field Child</summary>
+public System.IntPtr Child;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ModelChildrenEvent(ModelChildrenEvent_StructInternal struct_)
+   {
+      return ModelChildrenEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ModelChildrenEvent_StructInternal(ModelChildrenEvent struct_)
+   {
+      return ModelChildrenEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ModelChildrenEvent</summary>
+public static class ModelChildrenEvent_StructConversion
+{
+   internal static ModelChildrenEvent_StructInternal ToInternal(ModelChildrenEvent _external_struct)
+   {
+      var _internal_struct = new ModelChildrenEvent_StructInternal();
+
+      _internal_struct.Index = _external_struct.Index;
+      _internal_struct.Child = _external_struct.Child.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static ModelChildrenEvent ToManaged(ModelChildrenEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new ModelChildrenEvent();
+
+      _external_struct.Index = _internal_struct.Index;
+
+      _external_struct.Child = (Efl.Object) System.Activator.CreateInstance(typeof(Efl.Object), new System.Object[] {_internal_struct.Child});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Child);
+
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_object.eo.cs b/internals/src/EflSharp/EflSharp/efl_object.eo.cs
new file mode 100755 (executable)
index 0000000..c4df0bd
--- /dev/null
@@ -0,0 +1,1608 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+public struct CallbackPriority {
+   private  short payload;
+   public static implicit operator CallbackPriority( short x)
+   {
+      return new CallbackPriority{payload=x};
+   }
+   public static implicit operator  short(CallbackPriority x)
+   {
+      return x.payload;
+   }
+}
+} 
+namespace Efl { 
+public partial class Constants {
+   public static readonly Efl.CallbackPriority CallbackPriorityBefore = -100;
+}
+} 
+namespace Efl { 
+public partial class Constants {
+   public static readonly Efl.CallbackPriority CallbackPriorityDefault = 0;
+}
+} 
+namespace Efl { 
+public partial class Constants {
+   public static readonly Efl.CallbackPriority CallbackPriorityAfter = 100;
+}
+} 
+namespace Efl { 
+/// <summary>Abstract EFL object class.
+/// All EFL objects inherit from this class, which provides basic functionality like naming, debugging, hierarchy traversal, event emission and life cycle management.
+/// 
+/// Life Cycle Objects are created with efl_add() and mostly disposed of with efl_del(). As an optimization, efl_add() accepts a list of initialization functions which the programmer can use to further customize the object before it is fully constructed. Also, objects can have a parent which will keep them alive as long as the parent is alive, so the programmer does not need to keep track of references. (See the <see cref="Efl.Object.Parent"/> property for details). Due to the above characteristics, EFL objects undergo the following phases during their Life Cycle: - Construction: The <see cref="Efl.Object.Constructor"/> method is called. Afterwards, any user-supplied initialization methods are called. - Finalization: The <see cref="Efl.Object.FinalizeAdd"/> method is called and <see cref="Efl.Object.GetFinalized"/> is set to <c>true</c> when it returns. Object is usable at this point. - Invalidation: The object has lost its parent. The <see cref="Efl.Object.Invalidate"/> method is called so all the object&apos;s relationships can be terminated. <see cref="Efl.Object.GetInvalidated"/> is set to <c>true</c>. - Destruction: The object has no parent and it can be destroyed. The <see cref="Efl.Object.Destructor"/> method is called, use it to return any resources the object might have gathered during its life.</summary>
+[ObjectNativeInherit]
+public class Object :  Efl.Eo.IWrapper, IDisposable
+{
+   public static System.IntPtr klass = System.IntPtr.Zero;
+   public static Efl.ObjectNativeInherit nativeInherit = new Efl.ObjectNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public virtual System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Object))
+            return Efl.ObjectNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   protected EventHandlerList eventHandlers = new EventHandlerList();
+   private static readonly object klassAllocLock = new object();
+   protected bool inherited;
+   protected  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Eo)] internal static extern System.IntPtr
+      efl_object_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Object(Efl.Object parent= null
+         ) :
+      this(efl_object_class_get(), typeof(Object), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Object(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   protected Object(IntPtr base_klass, System.Type managed_type, Efl.Object parent)
+   {
+      inherited = ((object)this).GetType() != managed_type;
+      IntPtr actual_klass = base_klass;
+      if (inherited) {
+         actual_klass = Efl.Eo.ClassRegister.GetInheritKlassOrRegister(base_klass, ((object)this).GetType());
+      }
+      handle = Efl.Eo.Globals.instantiate_start(actual_klass, parent);
+      register_event_proxies();
+   }
+   protected void FinishInstantiation()
+   {
+      if (inherited) {
+         Efl.Eo.Globals.data_set(this);
+      }
+      handle = Efl.Eo.Globals.instantiate_end(handle);
+      Eina.Error.RaiseIfUnhandledException();
+   }
+   ///<summary>Destructor.</summary>
+   ~Object()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   protected virtual void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static Object static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Object(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected readonly object eventLock = new object();
+   protected Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   protected bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   protected bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Eo, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object DelEvtKey = new object();
+   /// <summary>Object is being deleted. See <see cref="Efl.Object.Destructor"/>.</summary>
+   public event EventHandler DelEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_DEL";
+            if (add_cpp_event_handler(efl.Libs.Eo, key, this.evt_DelEvt_delegate)) {
+               eventHandlers.AddHandler(DelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_DEL";
+            if (remove_cpp_event_handler(key, this.evt_DelEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DelEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DelEvt.</summary>
+   public void On_DelEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DelEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DelEvt_delegate;
+   private void on_DelEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DelEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object InvalidateEvtKey = new object();
+   /// <summary>Object is being invalidated and losing its parent. See <see cref="Efl.Object.Invalidate"/>.</summary>
+   public event EventHandler InvalidateEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_INVALIDATE";
+            if (add_cpp_event_handler(efl.Libs.Eo, key, this.evt_InvalidateEvt_delegate)) {
+               eventHandlers.AddHandler(InvalidateEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_INVALIDATE";
+            if (remove_cpp_event_handler(key, this.evt_InvalidateEvt_delegate)) { 
+               eventHandlers.RemoveHandler(InvalidateEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event InvalidateEvt.</summary>
+   public void On_InvalidateEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[InvalidateEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_InvalidateEvt_delegate;
+   private void on_InvalidateEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_InvalidateEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object NorefEvtKey = new object();
+   /// <summary>Object has lost its last reference, only parent relationship is keeping it alive. Advanced usage.</summary>
+   public event EventHandler NorefEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_NOREF";
+            if (add_cpp_event_handler(efl.Libs.Eo, key, this.evt_NorefEvt_delegate)) {
+               eventHandlers.AddHandler(NorefEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_NOREF";
+            if (remove_cpp_event_handler(key, this.evt_NorefEvt_delegate)) { 
+               eventHandlers.RemoveHandler(NorefEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event NorefEvt.</summary>
+   public void On_NorefEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[NorefEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_NorefEvt_delegate;
+   private void on_NorefEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_NorefEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DestructEvtKey = new object();
+   /// <summary>Object has been fully destroyed. It can not be used beyond this point. This event should only serve to clean up any reference you keep to the object.</summary>
+   public event EventHandler DestructEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_DESTRUCT";
+            if (add_cpp_event_handler(efl.Libs.Eo, key, this.evt_DestructEvt_delegate)) {
+               eventHandlers.AddHandler(DestructEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_EVENT_DESTRUCT";
+            if (remove_cpp_event_handler(key, this.evt_DestructEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DestructEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DestructEvt.</summary>
+   public void On_DestructEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DestructEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DestructEvt_delegate;
+   private void on_DestructEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DestructEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected virtual void register_event_proxies()
+   {
+      evt_DelEvt_delegate = new Efl.EventCb(on_DelEvt_NativeCallback);
+      evt_InvalidateEvt_delegate = new Efl.EventCb(on_InvalidateEvt_NativeCallback);
+      evt_NorefEvt_delegate = new Efl.EventCb(on_NorefEvt_NativeCallback);
+      evt_DestructEvt_delegate = new Efl.EventCb(on_DestructEvt_NativeCallback);
+   }
+   /// <summary>The parent of an object.
+   /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
+   /// 
+   /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
+   /// 
+   /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.</summary>
+   /// <returns>The new parent.</returns>
+   virtual public Efl.Object GetParent() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The parent of an object.
+   /// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
+   /// 
+   /// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
+   /// 
+   /// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.</summary>
+   /// <param name="parent">The new parent.</param>
+   /// <returns></returns>
+   virtual public  void SetParent( Efl.Object parent) {
+                         Efl.ObjectNativeInherit.efl_parent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), parent);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The name of the object.
+   /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] !  : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.</summary>
+   /// <returns>The name.</returns>
+   virtual public  System.String GetName() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The name of the object.
+   /// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] !  : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.</summary>
+   /// <param name="name">The name.</param>
+   /// <returns></returns>
+   virtual public  void SetName(  System.String name) {
+                         Efl.ObjectNativeInherit.efl_name_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A human readable comment for the object.
+   /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.</summary>
+   /// <returns>The comment.</returns>
+   virtual public  System.String GetComment() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_comment_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>A human readable comment for the object.
+   /// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.</summary>
+   /// <param name="comment">The comment.</param>
+   /// <returns></returns>
+   virtual public  void SetComment(  System.String comment) {
+                         Efl.ObjectNativeInherit.efl_comment_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), comment);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Return the global count of freeze events.
+   /// This is the amount of calls to <see cref="Efl.Object.FreezeEventGlobal"/> minus the amount of calls to <see cref="Efl.Object.ThawEventGlobal"/>. EFL will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).</summary>
+   /// <returns>The global event freeze count.</returns>
+   public static  int GetEventGlobalFreezeCount() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_event_global_freeze_count_get_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Return the count of freeze events for this object.
+   /// This is the amount of calls to <see cref="Efl.Object.FreezeEvent"/> minus the amount of calls to <see cref="Efl.Object.ThawEvent"/>. This object will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).</summary>
+   /// <returns>The event freeze count of this object.</returns>
+   virtual public  int GetEventFreezeCount() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_event_freeze_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if the object has been finalized, i.e. construction has finished. See the Life Cycle section in this class&apos; description.</summary>
+   /// <returns><c>true</c> if the object is finalized, <c>false</c> otherwise.</returns>
+   virtual public bool GetFinalized() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_finalized_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if the object has been invalidated, i.e. it has no parent. See the Life Cycle section in this class&apos; description.</summary>
+   /// <returns><c>true</c> if the object is invalidated, <c>false</c> otherwise.</returns>
+   virtual public bool GetInvalidated() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_invalidated_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary><c>true</c> if the object has started the invalidation phase, but has not finished it yet. Note: This might become <c>true</c> before <see cref="Efl.Object.Invalidate"/> is called. See the Life Cycle section in this class&apos; description.</summary>
+   /// <returns><c>true</c> if the object is invalidating, <c>false</c> otherwise.</returns>
+   virtual public bool GetInvalidating() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_invalidating_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Allow an object to be deleted by unref even if it has a parent.
+   /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
+   /// 
+   /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
+   /// 
+   /// Warning: Use this function very carefully, unless you&apos;re absolutely sure of what you are doing.</summary>
+   /// <returns>Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</returns>
+   virtual public bool GetAllowParentUnref() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_allow_parent_unref_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Allow an object to be deleted by unref even if it has a parent.
+   /// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
+   /// 
+   /// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
+   /// 
+   /// Warning: Use this function very carefully, unless you&apos;re absolutely sure of what you are doing.</summary>
+   /// <param name="allow">Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</param>
+   /// <returns></returns>
+   virtual public  void SetAllowParentUnref( bool allow) {
+                         Efl.ObjectNativeInherit.efl_allow_parent_unref_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), allow);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Build a read-only name for this object used for debugging.
+   /// Multiple calls using efl_super() can be chained in order to build the entire debug name, from parent to child classes. In C the usual way to build the string is as follows:
+   /// 
+   /// efl_debug_name_override(efl_super(obj, MY_CLASS), sb); eina_strbuf_append_printf(sb, &quot;new_information&quot;);
+   /// 
+   /// Usually more debug information should be added to <c>sb</c> after calling the super function.
+   /// 1.21</summary>
+   /// <param name="sb">A string buffer, must not be <c>null</c>.</param>
+   /// <returns></returns>
+   virtual public  void DebugNameOverride(  Eina.Strbuf sb) {
+                         Efl.ObjectNativeInherit.efl_debug_name_override_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Searches upwards in the object tree for a provider which knows the given class/interface.
+   /// The object from the provider will then be returned. The base implementation calls the provider_find function on the object parent, and returns its result. If no parent is present NULL is returned. Each implementation has to support this function by overriding it and returning itself if the interface matches the parameter. If this is not done the class cannot be found up in the object tree.</summary>
+   /// <param name="klass">The class identifier to search for.</param>
+   /// <returns>Object from the provider list.</returns>
+   virtual public Efl.Object FindProvider( Type klass) {
+                         var _ret_var = Efl.ObjectNativeInherit.efl_provider_find_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), klass);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Implement this method to provide optional initialization code for your object.
+   /// See the Life Cycle section in this class&apos; description.</summary>
+   /// <returns>The new object, can be <c>NULL</c> if aborted.</returns>
+   virtual public Efl.Object Constructor() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_constructor_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Implement this method to provide deinitialization code for your object if you need it.
+   /// Will be called once <see cref="Efl.Object.Invalidate"/> has returned. See the Life Cycle section in this class&apos; description.</summary>
+   /// <returns></returns>
+   virtual public  void Destructor() {
+       Efl.ObjectNativeInherit.efl_destructor_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Implement this method to finish the initialization of your object after all (if any) user-provided configuration methods have been executed.
+   /// Use this method to delay expensive operations until user configuration has finished, to avoid building the object in a &quot;default&quot; state in the constructor, just to have to throw it all away because a user configuration (a property being set, for example) requires a diferent state. This is the last call inside efl_add() and will set <see cref="Efl.Object.GetFinalized"/> to <c>true</c> once it returns. This is an optimization and implementing this method is optional if you already perform all your initialization in the <see cref="Efl.Object.Constructor"/> method. See the Life Cycle section in this class&apos; description.</summary>
+   /// <returns>The new object. Return <c>NULL</c> to abort object creation.</returns>
+   virtual public Efl.Object FinalizeAdd() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_finalize_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Implement this method to perform special actions when your object loses its parent, if you need to.
+   /// It is called when the parent reference is lost or set to <c>NULL</c>. After this call returns, <see cref="Efl.Object.GetInvalidated"/> is set to <c>true</c>. This allows a simpler tear down of complex hierarchies, by performing object destruction in two steps, first all object relationships are broken and then the isolated objects are destroyed. Performing everything in the <see cref="Efl.Object.Destructor"/> can sometimes lead to deadlocks, but implementing this method is optional if this is not your case. When an object with a parent is destroyed, it first receives a call to <see cref="Efl.Object.Invalidate"/> and then to <see cref="Efl.Object.Destructor"/>. See the Life Cycle section in this class&apos; description.</summary>
+   /// <returns></returns>
+   virtual public  void Invalidate() {
+       Efl.ObjectNativeInherit.efl_invalidate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Find a child object with the given name and return it.
+   /// The search string can be a glob (shell style, using *). It can also specify class name in the format of &quot;class:name&quot; where &quot;:&quot; separates class and name. Both class and name can be globs. If the class is specified but the name is empty like &quot;class:&quot; then the search will match any object of that class.</summary>
+   /// <param name="search">The name search string.</param>
+   /// <returns>The first object found.</returns>
+   virtual public Efl.Object FindName(  System.String search) {
+                         var _ret_var = Efl.ObjectNativeInherit.efl_name_find_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), search);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Thaw events of object.
+   /// Allows event callbacks to be called again for this object after a call to <see cref="Efl.Object.FreezeEvent"/>. The amount of thaws must match the amount of freezes for events to be re-enabled.</summary>
+   /// <returns></returns>
+   virtual public  void ThawEvent() {
+       Efl.ObjectNativeInherit.efl_event_thaw_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Freeze events of this object.
+   /// Prevents event callbacks from being called for this object. Enable events again using <see cref="Efl.Object.ThawEvent"/>. Events marked <c>hot</c> cannot be stopped.</summary>
+   /// <returns></returns>
+   virtual public  void FreezeEvent() {
+       Efl.ObjectNativeInherit.efl_event_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Gobally thaw events for ALL EFL OBJECTS.
+   /// Allows event callbacks to be called for all EFL objects after they have been disabled by <see cref="Efl.Object.FreezeEventGlobal"/>. The amount of thaws must match the amount of freezes for events to be re-enabled.</summary>
+   /// <returns></returns>
+   public static  void ThawEventGlobal() {
+       Efl.ObjectNativeInherit.efl_event_global_thaw_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Globally freeze events for ALL EFL OBJECTS.
+   /// Prevents event callbacks from being called for all EFL objects. Enable events again using <see cref="Efl.Object.ThawEventGlobal"/>. Events marked <c>hot</c> cannot be stopped.
+   /// 
+   /// Note: USE WITH CAUTION.</summary>
+   /// <returns></returns>
+   public static  void FreezeEventGlobal() {
+       Efl.ObjectNativeInherit.efl_event_global_freeze_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stop the current callback call.
+   /// This stops the current callback call. Any other callbacks for the current event will not be called. This is useful when you want to filter out events. Just add higher priority events and call this under certain conditions to block a certain event.</summary>
+   /// <returns></returns>
+   virtual public  void EventCallbackStop() {
+       Efl.ObjectNativeInherit.efl_event_callback_stop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove an event callback forwarder for a specified event and object.</summary>
+   /// <param name="desc">The description of the event to listen to</param>
+   /// <param name="new_obj">The object to emit events from</param>
+   /// <returns></returns>
+   virtual public  void DelEventCallbackForwarder( Efl.EventDescription desc,  Efl.Object new_obj) {
+       var _in_desc = Eina.PrimitiveConversion.ManagedToPointerAlloc(desc);
+                                    Efl.ObjectNativeInherit.efl_event_callback_forwarder_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_desc,  new_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get an iterator on all childrens</summary>
+   /// <returns>Children iterator</returns>
+   virtual public Eina.Iterator<Efl.Object> NewChildrenIterator() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_children_iterator_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Object>(_ret_var, true, false);
+ }
+   /// <summary>Make an object a composite object of another.
+   /// The class of comp_obj must be part of the extensions of the class of the parent. It isn&apos;t possible to attach more then 1 composite of the same class. This function also sets the parent of comp_obj to parent.
+   /// 
+   /// See <see cref="Efl.Object.CompositeDetach"/>, <see cref="Efl.Object.IsCompositePart"/>.</summary>
+   /// <param name="comp_obj">the object that will be used to composite the parent.</param>
+   /// <returns><c>true</c> if successful. <c>false</c> otherwise.</returns>
+   virtual public bool AttachComposite( Efl.Object comp_obj) {
+                         var _ret_var = Efl.ObjectNativeInherit.efl_composite_attach_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), comp_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Detach a composite object from another object.
+   /// This functions also sets the parent of comp_obj to <c>null</c>.
+   /// 
+   /// See <see cref="Efl.Object.AttachComposite"/>, <see cref="Efl.Object.IsCompositePart"/>.</summary>
+   /// <param name="comp_obj">The object that will be removed from the parent.</param>
+   /// <returns><c>true</c> if successful. <c>false</c> otherwise.</returns>
+   virtual public bool CompositeDetach( Efl.Object comp_obj) {
+                         var _ret_var = Efl.ObjectNativeInherit.efl_composite_detach_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), comp_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Check if an object is part of a composite object.
+   /// See <see cref="Efl.Object.AttachComposite"/>, <see cref="Efl.Object.IsCompositePart"/>.</summary>
+   /// <returns><c>true</c> if it is. <c>false</c> otherwise.</returns>
+   virtual public bool IsCompositePart() {
+       var _ret_var = Efl.ObjectNativeInherit.efl_composite_part_is_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The parent of an object.
+/// Parents keep references to their children and will release these references when destroyed. In this way, objects can be assigned to a parent upon creation, tying their life cycle so the programmer does not need to worry about destroying the child object. In order to destroy an object before its parent, set the parent to <c>NULL</c> and use efl_unref(), or use efl_del() directly.
+/// 
+/// The Eo parent is conceptually user set. That means that a parent should not be changed behind the scenes in an unexpected way.
+/// 
+/// For example: If you have a widget which can swallow objects into an internal box, the parent of the swallowed objects should be the widget, not the internal box. The user is not even aware of the existence of the internal box.</summary>
+/// <value>The new parent.</value>
+   public Efl.Object Parent {
+      get { return GetParent(); }
+      set { SetParent( value); }
+   }
+   /// <summary>The name of the object.
+/// Every EFL object can have a name. Names may not contain the following characters: / ? * [ ] !  : Using any of these in a name will result in undefined behavior later on. An empty string is considered the same as a <c>NULL</c> string or no string for the name.</summary>
+/// <value>The name.</value>
+   public  System.String Name {
+      get { return GetName(); }
+      set { SetName( value); }
+   }
+   /// <summary>A human readable comment for the object.
+/// Every EFL object can have a comment. This is intended for developers and debugging. An empty string is considered the same as a <c>NULL</c> string or no string for the comment.</summary>
+/// <value>The comment.</value>
+   public  System.String Comment {
+      get { return GetComment(); }
+      set { SetComment( value); }
+   }
+   /// <summary>Return the global count of freeze events.
+/// This is the amount of calls to <see cref="Efl.Object.FreezeEventGlobal"/> minus the amount of calls to <see cref="Efl.Object.ThawEventGlobal"/>. EFL will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).</summary>
+/// <value>The global event freeze count.</value>
+   public static  int EventGlobalFreezeCount {
+      get { return GetEventGlobalFreezeCount(); }
+   }
+   /// <summary>Return the count of freeze events for this object.
+/// This is the amount of calls to <see cref="Efl.Object.FreezeEvent"/> minus the amount of calls to <see cref="Efl.Object.ThawEvent"/>. This object will not emit any event while this count is &gt; 0 (Except events marked <c>hot</c>).</summary>
+/// <value>The event freeze count of this object.</value>
+   public  int EventFreezeCount {
+      get { return GetEventFreezeCount(); }
+   }
+   /// <summary><c>true</c> if the object has been finalized, i.e. construction has finished. See the Life Cycle section in this class&apos; description.</summary>
+/// <value><c>true</c> if the object is finalized, <c>false</c> otherwise.</value>
+   public bool Finalized {
+      get { return GetFinalized(); }
+   }
+   /// <summary><c>true</c> if the object has been invalidated, i.e. it has no parent. See the Life Cycle section in this class&apos; description.</summary>
+/// <value><c>true</c> if the object is invalidated, <c>false</c> otherwise.</value>
+   public bool Invalidated {
+      get { return GetInvalidated(); }
+   }
+   /// <summary><c>true</c> if the object has started the invalidation phase, but has not finished it yet. Note: This might become <c>true</c> before <see cref="Efl.Object.Invalidate"/> is called. See the Life Cycle section in this class&apos; description.</summary>
+/// <value><c>true</c> if the object is invalidating, <c>false</c> otherwise.</value>
+   public bool Invalidating {
+      get { return GetInvalidating(); }
+   }
+   /// <summary>Allow an object to be deleted by unref even if it has a parent.
+/// This simply hides the error message warning that an object being destroyed still has a parent. This property is false by default.
+/// 
+/// In a normal object use case, when ownership of an object is given to a caller, said ownership should be released with efl_unref(). If the object has a parent, this will print error messages, as efl_unref() is stealing the ref from the parent.
+/// 
+/// Warning: Use this function very carefully, unless you&apos;re absolutely sure of what you are doing.</summary>
+/// <value>Whether to allow efl_unref() to zero even if <see cref="Efl.Object.Parent"/> is not <c>null</c>.</value>
+   public bool AllowParentUnref {
+      get { return GetAllowParentUnref(); }
+      set { SetAllowParentUnref( value); }
+   }
+   private static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Object.efl_object_class_get();
+   }
+}
+public class ObjectNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Eo);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_parent_get_static_delegate == null)
+      efl_parent_get_static_delegate = new efl_parent_get_delegate(parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_parent_get_static_delegate)});
+      if (efl_parent_set_static_delegate == null)
+      efl_parent_set_static_delegate = new efl_parent_set_delegate(parent_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_parent_set_static_delegate)});
+      if (efl_name_get_static_delegate == null)
+      efl_name_get_static_delegate = new efl_name_get_delegate(name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_name_get_static_delegate)});
+      if (efl_name_set_static_delegate == null)
+      efl_name_set_static_delegate = new efl_name_set_delegate(name_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_name_set_static_delegate)});
+      if (efl_comment_get_static_delegate == null)
+      efl_comment_get_static_delegate = new efl_comment_get_delegate(comment_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_comment_get"), func = Marshal.GetFunctionPointerForDelegate(efl_comment_get_static_delegate)});
+      if (efl_comment_set_static_delegate == null)
+      efl_comment_set_static_delegate = new efl_comment_set_delegate(comment_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_comment_set"), func = Marshal.GetFunctionPointerForDelegate(efl_comment_set_static_delegate)});
+      if (efl_event_freeze_count_get_static_delegate == null)
+      efl_event_freeze_count_get_static_delegate = new efl_event_freeze_count_get_delegate(event_freeze_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_event_freeze_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_event_freeze_count_get_static_delegate)});
+      if (efl_finalized_get_static_delegate == null)
+      efl_finalized_get_static_delegate = new efl_finalized_get_delegate(finalized_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_finalized_get"), func = Marshal.GetFunctionPointerForDelegate(efl_finalized_get_static_delegate)});
+      if (efl_invalidated_get_static_delegate == null)
+      efl_invalidated_get_static_delegate = new efl_invalidated_get_delegate(invalidated_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_invalidated_get"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidated_get_static_delegate)});
+      if (efl_invalidating_get_static_delegate == null)
+      efl_invalidating_get_static_delegate = new efl_invalidating_get_delegate(invalidating_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_invalidating_get"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidating_get_static_delegate)});
+      if (efl_allow_parent_unref_get_static_delegate == null)
+      efl_allow_parent_unref_get_static_delegate = new efl_allow_parent_unref_get_delegate(allow_parent_unref_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_allow_parent_unref_get"), func = Marshal.GetFunctionPointerForDelegate(efl_allow_parent_unref_get_static_delegate)});
+      if (efl_allow_parent_unref_set_static_delegate == null)
+      efl_allow_parent_unref_set_static_delegate = new efl_allow_parent_unref_set_delegate(allow_parent_unref_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_allow_parent_unref_set"), func = Marshal.GetFunctionPointerForDelegate(efl_allow_parent_unref_set_static_delegate)});
+      if (efl_debug_name_override_static_delegate == null)
+      efl_debug_name_override_static_delegate = new efl_debug_name_override_delegate(debug_name_override);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_debug_name_override"), func = Marshal.GetFunctionPointerForDelegate(efl_debug_name_override_static_delegate)});
+      if (efl_provider_find_static_delegate == null)
+      efl_provider_find_static_delegate = new efl_provider_find_delegate(provider_find);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_provider_find"), func = Marshal.GetFunctionPointerForDelegate(efl_provider_find_static_delegate)});
+      if (efl_constructor_static_delegate == null)
+      efl_constructor_static_delegate = new efl_constructor_delegate(constructor);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_constructor"), func = Marshal.GetFunctionPointerForDelegate(efl_constructor_static_delegate)});
+      if (efl_destructor_static_delegate == null)
+      efl_destructor_static_delegate = new efl_destructor_delegate(destructor);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_destructor"), func = Marshal.GetFunctionPointerForDelegate(efl_destructor_static_delegate)});
+      if (efl_finalize_static_delegate == null)
+      efl_finalize_static_delegate = new efl_finalize_delegate(finalize);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_finalize"), func = Marshal.GetFunctionPointerForDelegate(efl_finalize_static_delegate)});
+      if (efl_invalidate_static_delegate == null)
+      efl_invalidate_static_delegate = new efl_invalidate_delegate(invalidate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_invalidate"), func = Marshal.GetFunctionPointerForDelegate(efl_invalidate_static_delegate)});
+      if (efl_name_find_static_delegate == null)
+      efl_name_find_static_delegate = new efl_name_find_delegate(name_find);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_name_find"), func = Marshal.GetFunctionPointerForDelegate(efl_name_find_static_delegate)});
+      if (efl_event_thaw_static_delegate == null)
+      efl_event_thaw_static_delegate = new efl_event_thaw_delegate(event_thaw);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_event_thaw"), func = Marshal.GetFunctionPointerForDelegate(efl_event_thaw_static_delegate)});
+      if (efl_event_freeze_static_delegate == null)
+      efl_event_freeze_static_delegate = new efl_event_freeze_delegate(event_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_event_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_event_freeze_static_delegate)});
+      if (efl_event_callback_stop_static_delegate == null)
+      efl_event_callback_stop_static_delegate = new efl_event_callback_stop_delegate(event_callback_stop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_event_callback_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_event_callback_stop_static_delegate)});
+      if (efl_event_callback_forwarder_del_static_delegate == null)
+      efl_event_callback_forwarder_del_static_delegate = new efl_event_callback_forwarder_del_delegate(event_callback_forwarder_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_event_callback_forwarder_del"), func = Marshal.GetFunctionPointerForDelegate(efl_event_callback_forwarder_del_static_delegate)});
+      if (efl_children_iterator_new_static_delegate == null)
+      efl_children_iterator_new_static_delegate = new efl_children_iterator_new_delegate(children_iterator_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_children_iterator_new"), func = Marshal.GetFunctionPointerForDelegate(efl_children_iterator_new_static_delegate)});
+      if (efl_composite_attach_static_delegate == null)
+      efl_composite_attach_static_delegate = new efl_composite_attach_delegate(composite_attach);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_composite_attach"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_attach_static_delegate)});
+      if (efl_composite_detach_static_delegate == null)
+      efl_composite_detach_static_delegate = new efl_composite_detach_delegate(composite_detach);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_composite_detach"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_detach_static_delegate)});
+      if (efl_composite_part_is_static_delegate == null)
+      efl_composite_part_is_static_delegate = new efl_composite_part_is_delegate(composite_part_is);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_composite_part_is"), func = Marshal.GetFunctionPointerForDelegate(efl_composite_part_is_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Object.efl_object_class_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Object.efl_object_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_parent_get_api_delegate> efl_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_parent_get_api_delegate>(_Module, "efl_parent_get");
+    private static Efl.Object parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Object)wrapper).GetParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_parent_get_delegate efl_parent_get_static_delegate;
+
+
+    private delegate  void efl_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object parent);
+
+
+    public delegate  void efl_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object parent);
+    public static Efl.Eo.FunctionWrapper<efl_parent_set_api_delegate> efl_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_parent_set_api_delegate>(_Module, "efl_parent_set");
+    private static  void parent_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object parent)
+   {
+      Eina.Log.Debug("function efl_parent_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetParent( parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent);
+      }
+   }
+   private static efl_parent_set_delegate efl_parent_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_name_get_api_delegate> efl_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_name_get_api_delegate>(_Module, "efl_name_get");
+    private static  System.String name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Object)wrapper).GetName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_name_get_delegate efl_name_get_static_delegate;
+
+
+    private delegate  void efl_name_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate  void efl_name_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_name_set_api_delegate> efl_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_name_set_api_delegate>(_Module, "efl_name_set");
+    private static  void name_set(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_name_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetName( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_name_set_delegate efl_name_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_comment_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_comment_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_comment_get_api_delegate> efl_comment_get_ptr = new Efl.Eo.FunctionWrapper<efl_comment_get_api_delegate>(_Module, "efl_comment_get");
+    private static  System.String comment_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_comment_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Object)wrapper).GetComment();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_comment_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_comment_get_delegate efl_comment_get_static_delegate;
+
+
+    private delegate  void efl_comment_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String comment);
+
+
+    public delegate  void efl_comment_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String comment);
+    public static Efl.Eo.FunctionWrapper<efl_comment_set_api_delegate> efl_comment_set_ptr = new Efl.Eo.FunctionWrapper<efl_comment_set_api_delegate>(_Module, "efl_comment_set");
+    private static  void comment_set(System.IntPtr obj, System.IntPtr pd,   System.String comment)
+   {
+      Eina.Log.Debug("function efl_comment_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetComment( comment);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_comment_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  comment);
+      }
+   }
+   private static efl_comment_set_delegate efl_comment_set_static_delegate;
+
+
+    private delegate  int efl_event_global_freeze_count_get_delegate();
+
+
+    public delegate  int efl_event_global_freeze_count_get_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_event_global_freeze_count_get_api_delegate> efl_event_global_freeze_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_freeze_count_get_api_delegate>(_Module, "efl_event_global_freeze_count_get");
+    private static  int event_global_freeze_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_event_global_freeze_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = Object.GetEventGlobalFreezeCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_event_global_freeze_count_get_ptr.Value.Delegate();
+      }
+   }
+
+
+    private delegate  int efl_event_freeze_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_event_freeze_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_event_freeze_count_get_api_delegate> efl_event_freeze_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_event_freeze_count_get_api_delegate>(_Module, "efl_event_freeze_count_get");
+    private static  int event_freeze_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_event_freeze_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Object)wrapper).GetEventFreezeCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_event_freeze_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_event_freeze_count_get_delegate efl_event_freeze_count_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_finalized_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_finalized_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_finalized_get_api_delegate> efl_finalized_get_ptr = new Efl.Eo.FunctionWrapper<efl_finalized_get_api_delegate>(_Module, "efl_finalized_get");
+    private static bool finalized_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_finalized_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetFinalized();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_finalized_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_finalized_get_delegate efl_finalized_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_invalidated_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_invalidated_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_invalidated_get_api_delegate> efl_invalidated_get_ptr = new Efl.Eo.FunctionWrapper<efl_invalidated_get_api_delegate>(_Module, "efl_invalidated_get");
+    private static bool invalidated_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_invalidated_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetInvalidated();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_invalidated_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_invalidated_get_delegate efl_invalidated_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_invalidating_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_invalidating_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_invalidating_get_api_delegate> efl_invalidating_get_ptr = new Efl.Eo.FunctionWrapper<efl_invalidating_get_api_delegate>(_Module, "efl_invalidating_get");
+    private static bool invalidating_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_invalidating_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetInvalidating();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_invalidating_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_invalidating_get_delegate efl_invalidating_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_allow_parent_unref_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_allow_parent_unref_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_allow_parent_unref_get_api_delegate> efl_allow_parent_unref_get_ptr = new Efl.Eo.FunctionWrapper<efl_allow_parent_unref_get_api_delegate>(_Module, "efl_allow_parent_unref_get");
+    private static bool allow_parent_unref_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_allow_parent_unref_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).GetAllowParentUnref();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_allow_parent_unref_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_allow_parent_unref_get_delegate efl_allow_parent_unref_get_static_delegate;
+
+
+    private delegate  void efl_allow_parent_unref_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool allow);
+
+
+    public delegate  void efl_allow_parent_unref_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool allow);
+    public static Efl.Eo.FunctionWrapper<efl_allow_parent_unref_set_api_delegate> efl_allow_parent_unref_set_ptr = new Efl.Eo.FunctionWrapper<efl_allow_parent_unref_set_api_delegate>(_Module, "efl_allow_parent_unref_set");
+    private static  void allow_parent_unref_set(System.IntPtr obj, System.IntPtr pd,  bool allow)
+   {
+      Eina.Log.Debug("function efl_allow_parent_unref_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).SetAllowParentUnref( allow);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_allow_parent_unref_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  allow);
+      }
+   }
+   private static efl_allow_parent_unref_set_delegate efl_allow_parent_unref_set_static_delegate;
+
+
+    private delegate  void efl_debug_name_override_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))]   Eina.Strbuf sb);
+
+
+    public delegate  void efl_debug_name_override_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))]   Eina.Strbuf sb);
+    public static Efl.Eo.FunctionWrapper<efl_debug_name_override_api_delegate> efl_debug_name_override_ptr = new Efl.Eo.FunctionWrapper<efl_debug_name_override_api_delegate>(_Module, "efl_debug_name_override");
+    private static  void debug_name_override(System.IntPtr obj, System.IntPtr pd,   Eina.Strbuf sb)
+   {
+      Eina.Log.Debug("function efl_debug_name_override was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Object)wrapper).DebugNameOverride( sb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_debug_name_override_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sb);
+      }
+   }
+   private static efl_debug_name_override_delegate efl_debug_name_override_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_provider_find_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_provider_find_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass);
+    public static Efl.Eo.FunctionWrapper<efl_provider_find_api_delegate> efl_provider_find_ptr = new Efl.Eo.FunctionWrapper<efl_provider_find_api_delegate>(_Module, "efl_provider_find");
+    private static Efl.Object provider_find(System.IntPtr obj, System.IntPtr pd,  Type klass)
+   {
+      Eina.Log.Debug("function efl_provider_find was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Object)wrapper).FindProvider( klass);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_provider_find_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  klass);
+      }
+   }
+   private static efl_provider_find_delegate efl_provider_find_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_constructor_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_constructor_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_constructor_api_delegate> efl_constructor_ptr = new Efl.Eo.FunctionWrapper<efl_constructor_api_delegate>(_Module, "efl_constructor");
+    private static Efl.Object constructor(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_constructor was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Object)wrapper).Constructor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_constructor_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_constructor_delegate efl_constructor_static_delegate;
+
+
+    private delegate  void efl_destructor_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_destructor_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_destructor_api_delegate> efl_destructor_ptr = new Efl.Eo.FunctionWrapper<efl_destructor_api_delegate>(_Module, "efl_destructor");
+    private static  void destructor(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_destructor was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).Destructor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_destructor_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_destructor_delegate efl_destructor_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_finalize_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_finalize_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_finalize_api_delegate> efl_finalize_ptr = new Efl.Eo.FunctionWrapper<efl_finalize_api_delegate>(_Module, "efl_finalize");
+    private static Efl.Object finalize(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_finalize was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Object)wrapper).FinalizeAdd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_finalize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_finalize_delegate efl_finalize_static_delegate;
+
+
+    private delegate  void efl_invalidate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_invalidate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_invalidate_api_delegate> efl_invalidate_ptr = new Efl.Eo.FunctionWrapper<efl_invalidate_api_delegate>(_Module, "efl_invalidate");
+    private static  void invalidate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_invalidate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).Invalidate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_invalidate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_invalidate_delegate efl_invalidate_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_name_find_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String search);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_name_find_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String search);
+    public static Efl.Eo.FunctionWrapper<efl_name_find_api_delegate> efl_name_find_ptr = new Efl.Eo.FunctionWrapper<efl_name_find_api_delegate>(_Module, "efl_name_find");
+    private static Efl.Object name_find(System.IntPtr obj, System.IntPtr pd,   System.String search)
+   {
+      Eina.Log.Debug("function efl_name_find was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Object)wrapper).FindName( search);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_name_find_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  search);
+      }
+   }
+   private static efl_name_find_delegate efl_name_find_static_delegate;
+
+
+    private delegate  void efl_event_thaw_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_event_thaw_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_event_thaw_api_delegate> efl_event_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_event_thaw_api_delegate>(_Module, "efl_event_thaw");
+    private static  void event_thaw(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_event_thaw was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).ThawEvent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_event_thaw_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_event_thaw_delegate efl_event_thaw_static_delegate;
+
+
+    private delegate  void efl_event_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_event_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_event_freeze_api_delegate> efl_event_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_event_freeze_api_delegate>(_Module, "efl_event_freeze");
+    private static  void event_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_event_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).FreezeEvent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_event_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_event_freeze_delegate efl_event_freeze_static_delegate;
+
+
+    private delegate  void efl_event_global_thaw_delegate();
+
+
+    public delegate  void efl_event_global_thaw_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_event_global_thaw_api_delegate> efl_event_global_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_thaw_api_delegate>(_Module, "efl_event_global_thaw");
+    private static  void event_global_thaw(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_event_global_thaw was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            Object.ThawEventGlobal();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_event_global_thaw_ptr.Value.Delegate();
+      }
+   }
+
+
+    private delegate  void efl_event_global_freeze_delegate();
+
+
+    public delegate  void efl_event_global_freeze_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_event_global_freeze_api_delegate> efl_event_global_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_event_global_freeze_api_delegate>(_Module, "efl_event_global_freeze");
+    private static  void event_global_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_event_global_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            Object.FreezeEventGlobal();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_event_global_freeze_ptr.Value.Delegate();
+      }
+   }
+
+
+    private delegate  void efl_event_callback_stop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_event_callback_stop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_event_callback_stop_api_delegate> efl_event_callback_stop_ptr = new Efl.Eo.FunctionWrapper<efl_event_callback_stop_api_delegate>(_Module, "efl_event_callback_stop");
+    private static  void event_callback_stop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_event_callback_stop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Object)wrapper).EventCallbackStop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_event_callback_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_event_callback_stop_delegate efl_event_callback_stop_static_delegate;
+
+
+    private delegate  void efl_event_callback_forwarder_del_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr desc, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object new_obj);
+
+
+    public delegate  void efl_event_callback_forwarder_del_api_delegate(System.IntPtr obj,    System.IntPtr desc, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object new_obj);
+    public static Efl.Eo.FunctionWrapper<efl_event_callback_forwarder_del_api_delegate> efl_event_callback_forwarder_del_ptr = new Efl.Eo.FunctionWrapper<efl_event_callback_forwarder_del_api_delegate>(_Module, "efl_event_callback_forwarder_del");
+    private static  void event_callback_forwarder_del(System.IntPtr obj, System.IntPtr pd,   System.IntPtr desc,  Efl.Object new_obj)
+   {
+      Eina.Log.Debug("function efl_event_callback_forwarder_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_desc = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(desc);
+                                       
+         try {
+            ((Object)wrapper).DelEventCallbackForwarder( _in_desc,  new_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_event_callback_forwarder_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  desc,  new_obj);
+      }
+   }
+   private static efl_event_callback_forwarder_del_delegate efl_event_callback_forwarder_del_static_delegate;
+
+
+    private delegate  System.IntPtr efl_children_iterator_new_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_children_iterator_new_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_children_iterator_new_api_delegate> efl_children_iterator_new_ptr = new Efl.Eo.FunctionWrapper<efl_children_iterator_new_api_delegate>(_Module, "efl_children_iterator_new");
+    private static  System.IntPtr children_iterator_new(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_children_iterator_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Object> _ret_var = default(Eina.Iterator<Efl.Object>);
+         try {
+            _ret_var = ((Object)wrapper).NewChildrenIterator();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_children_iterator_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_children_iterator_new_delegate efl_children_iterator_new_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_composite_attach_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object comp_obj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_composite_attach_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object comp_obj);
+    public static Efl.Eo.FunctionWrapper<efl_composite_attach_api_delegate> efl_composite_attach_ptr = new Efl.Eo.FunctionWrapper<efl_composite_attach_api_delegate>(_Module, "efl_composite_attach");
+    private static bool composite_attach(System.IntPtr obj, System.IntPtr pd,  Efl.Object comp_obj)
+   {
+      Eina.Log.Debug("function efl_composite_attach was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).AttachComposite( comp_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_composite_attach_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  comp_obj);
+      }
+   }
+   private static efl_composite_attach_delegate efl_composite_attach_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_composite_detach_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object comp_obj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_composite_detach_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object comp_obj);
+    public static Efl.Eo.FunctionWrapper<efl_composite_detach_api_delegate> efl_composite_detach_ptr = new Efl.Eo.FunctionWrapper<efl_composite_detach_api_delegate>(_Module, "efl_composite_detach");
+    private static bool composite_detach(System.IntPtr obj, System.IntPtr pd,  Efl.Object comp_obj)
+   {
+      Eina.Log.Debug("function efl_composite_detach was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).CompositeDetach( comp_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_composite_detach_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  comp_obj);
+      }
+   }
+   private static efl_composite_detach_delegate efl_composite_detach_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_composite_part_is_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_composite_part_is_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_composite_part_is_api_delegate> efl_composite_part_is_ptr = new Efl.Eo.FunctionWrapper<efl_composite_part_is_api_delegate>(_Module, "efl_composite_part_is");
+    private static bool composite_part_is(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_composite_part_is was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Object)wrapper).IsCompositePart();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_composite_part_is_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_composite_part_is_delegate efl_composite_part_is_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>A parameter passed in event callbacks holding extra event parameters.
+/// This is the full event information passed to callbacks in C.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Event
+{
+   /// <summary>The object the callback was called on.</summary>
+   public Efl.Object Object;
+   /// <summary>The event description.</summary>
+   public Efl.EventDescription Desc;
+   /// <summary>Extra event information passed by the event caller</summary>
+   public  System.IntPtr Info;
+   ///<summary>Constructor for Event.</summary>
+   public Event(
+      Efl.Object Object=default(Efl.Object),
+      Efl.EventDescription Desc=default(Efl.EventDescription),
+       System.IntPtr Info=default( System.IntPtr)   )
+   {
+      this.Object = Object;
+      this.Desc = Desc;
+      this.Info = Info;
+   }
+public static implicit operator Event(IntPtr ptr)
+   {
+      var tmp = (Event_StructInternal)Marshal.PtrToStructure(ptr, typeof(Event_StructInternal));
+      return Event_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Event.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Event_StructInternal
+{
+///<summary>Internal wrapper for field Object</summary>
+public System.IntPtr Object;
+   
+   public  System.IntPtr Desc;
+   
+   public  System.IntPtr Info;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Event(Event_StructInternal struct_)
+   {
+      return Event_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Event_StructInternal(Event struct_)
+   {
+      return Event_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Event</summary>
+public static class Event_StructConversion
+{
+   internal static Event_StructInternal ToInternal(Event _external_struct)
+   {
+      var _internal_struct = new Event_StructInternal();
+
+      _internal_struct.Object = _external_struct.Object.NativeHandle;
+      _internal_struct.Desc = Eina.PrimitiveConversion.ManagedToPointerAlloc(_external_struct.Desc);
+      _internal_struct.Info = _external_struct.Info;
+
+      return _internal_struct;
+   }
+
+   internal static Event ToManaged(Event_StructInternal _internal_struct)
+   {
+      var _external_struct = new Event();
+
+
+      _external_struct.Object = (Efl.Object) System.Activator.CreateInstance(typeof(Efl.Object), new System.Object[] {_internal_struct.Object});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Object);
+
+      _external_struct.Desc = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(_internal_struct.Desc);
+      _external_struct.Info = _internal_struct.Info;
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_observable.eo.cs b/internals/src/EflSharp/EflSharp/efl_observable.eo.cs
new file mode 100755 (executable)
index 0000000..6fec90e
--- /dev/null
@@ -0,0 +1,376 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl observable class</summary>
+[ObservableNativeInherit]
+public class Observable : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.ObservableNativeInherit nativeInherit = new Efl.ObservableNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Observable))
+            return Efl.ObservableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_observable_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Observable(Efl.Object parent= null
+         ) :
+      base(efl_observable_class_get(), typeof(Observable), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Observable(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Observable(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Observable static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Observable(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Add an observer to a group of observers.
+   /// Note: Observers that observe this observable are grouped by the <c>key</c> and an observer can belong to multiple groups at the same time.
+   /// 1.19</summary>
+   /// <param name="key">A key to classify observer groups</param>
+   /// <param name="obs">An observer object</param>
+   /// <returns></returns>
+   virtual public  void AddObserver(  System.String key,  Efl.Observer obs) {
+                                           Efl.ObservableNativeInherit.efl_observable_observer_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  obs);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Delete an observer from a group of observers.
+   /// See also <see cref="Efl.Observable.AddObserver"/>.
+   /// 1.19</summary>
+   /// <param name="key">A key to classify observer groups</param>
+   /// <param name="obs">An observer object</param>
+   /// <returns></returns>
+   virtual public  void DelObserver(  System.String key,  Efl.Observer obs) {
+                                           Efl.ObservableNativeInherit.efl_observable_observer_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  obs);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Clear an observer from all groups of observers.
+   /// 1.19</summary>
+   /// <param name="obs">An observer object</param>
+   /// <returns></returns>
+   virtual public  void ObserverClean( Efl.Observer obs) {
+                         Efl.ObservableNativeInherit.efl_observable_observer_clean_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), obs);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Return a new iterator associated with a group of observers.
+   /// 1.19</summary>
+   /// <param name="key">A key to classify observer groups</param>
+   /// <returns>Iterator for observers group</returns>
+   virtual public Eina.Iterator<Efl.Observer> NewObserversIterator(  System.String key) {
+                         var _ret_var = Efl.ObservableNativeInherit.efl_observable_observers_iterator_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Observer>(_ret_var, true, false);
+ }
+   /// <summary>Update all observers in a group by calling their update() method.
+   /// 1.19</summary>
+   /// <param name="key">A key to classify observer groups</param>
+   /// <param name="data">Required data to update observer</param>
+   /// <returns></returns>
+   virtual public  void UpdateObservers(  System.String key,   System.IntPtr data) {
+                                           Efl.ObservableNativeInherit.efl_observable_observers_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Return a new iterator associated to this observable.
+   /// 1.19</summary>
+   /// <returns>Iterator for observer</returns>
+   virtual public Eina.Iterator<Efl.ObservableTuple> NewIteratorTuple() {
+       var _ret_var = Efl.ObservableNativeInherit.efl_observable_iterator_tuple_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.ObservableTuple>(_ret_var, true, false);
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Observable.efl_observable_class_get();
+   }
+}
+public class ObservableNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_observable_observer_add_static_delegate == null)
+      efl_observable_observer_add_static_delegate = new efl_observable_observer_add_delegate(observer_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observable_observer_add"), func = Marshal.GetFunctionPointerForDelegate(efl_observable_observer_add_static_delegate)});
+      if (efl_observable_observer_del_static_delegate == null)
+      efl_observable_observer_del_static_delegate = new efl_observable_observer_del_delegate(observer_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observable_observer_del"), func = Marshal.GetFunctionPointerForDelegate(efl_observable_observer_del_static_delegate)});
+      if (efl_observable_observer_clean_static_delegate == null)
+      efl_observable_observer_clean_static_delegate = new efl_observable_observer_clean_delegate(observer_clean);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observable_observer_clean"), func = Marshal.GetFunctionPointerForDelegate(efl_observable_observer_clean_static_delegate)});
+      if (efl_observable_observers_iterator_new_static_delegate == null)
+      efl_observable_observers_iterator_new_static_delegate = new efl_observable_observers_iterator_new_delegate(observers_iterator_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observable_observers_iterator_new"), func = Marshal.GetFunctionPointerForDelegate(efl_observable_observers_iterator_new_static_delegate)});
+      if (efl_observable_observers_update_static_delegate == null)
+      efl_observable_observers_update_static_delegate = new efl_observable_observers_update_delegate(observers_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observable_observers_update"), func = Marshal.GetFunctionPointerForDelegate(efl_observable_observers_update_static_delegate)});
+      if (efl_observable_iterator_tuple_new_static_delegate == null)
+      efl_observable_iterator_tuple_new_static_delegate = new efl_observable_iterator_tuple_new_delegate(iterator_tuple_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observable_iterator_tuple_new"), func = Marshal.GetFunctionPointerForDelegate(efl_observable_iterator_tuple_new_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Observable.efl_observable_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Observable.efl_observable_class_get();
+   }
+
+
+    private delegate  void efl_observable_observer_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ObserverConcrete, Efl.Eo.NonOwnTag>))]  Efl.Observer obs);
+
+
+    public delegate  void efl_observable_observer_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ObserverConcrete, Efl.Eo.NonOwnTag>))]  Efl.Observer obs);
+    public static Efl.Eo.FunctionWrapper<efl_observable_observer_add_api_delegate> efl_observable_observer_add_ptr = new Efl.Eo.FunctionWrapper<efl_observable_observer_add_api_delegate>(_Module, "efl_observable_observer_add");
+    private static  void observer_add(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Observer obs)
+   {
+      Eina.Log.Debug("function efl_observable_observer_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Observable)wrapper).AddObserver( key,  obs);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_observable_observer_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  obs);
+      }
+   }
+   private static efl_observable_observer_add_delegate efl_observable_observer_add_static_delegate;
+
+
+    private delegate  void efl_observable_observer_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ObserverConcrete, Efl.Eo.NonOwnTag>))]  Efl.Observer obs);
+
+
+    public delegate  void efl_observable_observer_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ObserverConcrete, Efl.Eo.NonOwnTag>))]  Efl.Observer obs);
+    public static Efl.Eo.FunctionWrapper<efl_observable_observer_del_api_delegate> efl_observable_observer_del_ptr = new Efl.Eo.FunctionWrapper<efl_observable_observer_del_api_delegate>(_Module, "efl_observable_observer_del");
+    private static  void observer_del(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Observer obs)
+   {
+      Eina.Log.Debug("function efl_observable_observer_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Observable)wrapper).DelObserver( key,  obs);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_observable_observer_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  obs);
+      }
+   }
+   private static efl_observable_observer_del_delegate efl_observable_observer_del_static_delegate;
+
+
+    private delegate  void efl_observable_observer_clean_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ObserverConcrete, Efl.Eo.NonOwnTag>))]  Efl.Observer obs);
+
+
+    public delegate  void efl_observable_observer_clean_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ObserverConcrete, Efl.Eo.NonOwnTag>))]  Efl.Observer obs);
+    public static Efl.Eo.FunctionWrapper<efl_observable_observer_clean_api_delegate> efl_observable_observer_clean_ptr = new Efl.Eo.FunctionWrapper<efl_observable_observer_clean_api_delegate>(_Module, "efl_observable_observer_clean");
+    private static  void observer_clean(System.IntPtr obj, System.IntPtr pd,  Efl.Observer obs)
+   {
+      Eina.Log.Debug("function efl_observable_observer_clean was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Observable)wrapper).ObserverClean( obs);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_observable_observer_clean_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  obs);
+      }
+   }
+   private static efl_observable_observer_clean_delegate efl_observable_observer_clean_static_delegate;
+
+
+    private delegate  System.IntPtr efl_observable_observers_iterator_new_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  System.IntPtr efl_observable_observers_iterator_new_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_observable_observers_iterator_new_api_delegate> efl_observable_observers_iterator_new_ptr = new Efl.Eo.FunctionWrapper<efl_observable_observers_iterator_new_api_delegate>(_Module, "efl_observable_observers_iterator_new");
+    private static  System.IntPtr observers_iterator_new(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_observable_observers_iterator_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Iterator<Efl.Observer> _ret_var = default(Eina.Iterator<Efl.Observer>);
+         try {
+            _ret_var = ((Observable)wrapper).NewObserversIterator( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_observable_observers_iterator_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_observable_observers_iterator_new_delegate efl_observable_observers_iterator_new_static_delegate;
+
+
+    private delegate  void efl_observable_observers_update_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,    System.IntPtr data);
+
+
+    public delegate  void efl_observable_observers_update_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_observable_observers_update_api_delegate> efl_observable_observers_update_ptr = new Efl.Eo.FunctionWrapper<efl_observable_observers_update_api_delegate>(_Module, "efl_observable_observers_update");
+    private static  void observers_update(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_observable_observers_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Observable)wrapper).UpdateObservers( key,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_observable_observers_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  data);
+      }
+   }
+   private static efl_observable_observers_update_delegate efl_observable_observers_update_static_delegate;
+
+
+    private delegate  System.IntPtr efl_observable_iterator_tuple_new_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_observable_iterator_tuple_new_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_observable_iterator_tuple_new_api_delegate> efl_observable_iterator_tuple_new_ptr = new Efl.Eo.FunctionWrapper<efl_observable_iterator_tuple_new_api_delegate>(_Module, "efl_observable_iterator_tuple_new");
+    private static  System.IntPtr iterator_tuple_new(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_observable_iterator_tuple_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.ObservableTuple> _ret_var = default(Eina.Iterator<Efl.ObservableTuple>);
+         try {
+            _ret_var = ((Observable)wrapper).NewIteratorTuple();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_observable_iterator_tuple_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_observable_iterator_tuple_new_delegate efl_observable_iterator_tuple_new_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>This type describes an observable touple</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ObservableTuple
+{
+   /// <summary>Touple key</summary>
+   public  System.String Key;
+   /// <summary>Touple data</summary>
+   public Eina.Iterator<Efl.Observer> Data;
+   ///<summary>Constructor for ObservableTuple.</summary>
+   public ObservableTuple(
+       System.String Key=default( System.String),
+      Eina.Iterator<Efl.Observer> Data=default(Eina.Iterator<Efl.Observer>)   )
+   {
+      this.Key = Key;
+      this.Data = Data;
+   }
+public static implicit operator ObservableTuple(IntPtr ptr)
+   {
+      var tmp = (ObservableTuple_StructInternal)Marshal.PtrToStructure(ptr, typeof(ObservableTuple_StructInternal));
+      return ObservableTuple_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ObservableTuple.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ObservableTuple_StructInternal
+{
+///<summary>Internal wrapper for field Key</summary>
+public System.IntPtr Key;
+   
+   public  System.IntPtr Data;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ObservableTuple(ObservableTuple_StructInternal struct_)
+   {
+      return ObservableTuple_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ObservableTuple_StructInternal(ObservableTuple struct_)
+   {
+      return ObservableTuple_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ObservableTuple</summary>
+public static class ObservableTuple_StructConversion
+{
+   internal static ObservableTuple_StructInternal ToInternal(ObservableTuple _external_struct)
+   {
+      var _internal_struct = new ObservableTuple_StructInternal();
+
+      _internal_struct.Key = Eina.MemoryNative.StrDup(_external_struct.Key);
+      _internal_struct.Data = _external_struct.Data.Handle;
+
+      return _internal_struct;
+   }
+
+   internal static ObservableTuple ToManaged(ObservableTuple_StructInternal _internal_struct)
+   {
+      var _external_struct = new ObservableTuple();
+
+      _external_struct.Key = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Key);
+      _external_struct.Data = new Eina.Iterator<Efl.Observer>(_internal_struct.Data, false, false);
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_observer.eo.cs b/internals/src/EflSharp/EflSharp/efl_observer.eo.cs
new file mode 100755 (executable)
index 0000000..6092d70
--- /dev/null
@@ -0,0 +1,150 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl observer interface</summary>
+[ObserverNativeInherit]
+public interface Observer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Update observer according to the changes of observable object.
+/// 1.19</summary>
+/// <param name="obs">An observable object</param>
+/// <param name="key">A key to classify observer groups</param>
+/// <param name="data">Required data to update the observer, usually passed by observable object</param>
+/// <returns></returns>
+ void Update( Efl.Object obs,   System.String key,   System.IntPtr data);
+   }
+/// <summary>Efl observer interface</summary>
+sealed public class ObserverConcrete : 
+
+Observer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ObserverConcrete))
+            return Efl.ObserverNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_observer_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ObserverConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ObserverConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ObserverConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ObserverConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Update observer according to the changes of observable object.
+   /// 1.19</summary>
+   /// <param name="obs">An observable object</param>
+   /// <param name="key">A key to classify observer groups</param>
+   /// <param name="data">Required data to update the observer, usually passed by observable object</param>
+   /// <returns></returns>
+   public  void Update( Efl.Object obs,   System.String key,   System.IntPtr data) {
+                                                             Efl.ObserverNativeInherit.efl_observer_update_ptr.Value.Delegate(this.NativeHandle, obs,  key,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+}
+public class ObserverNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_observer_update_static_delegate == null)
+      efl_observer_update_static_delegate = new efl_observer_update_delegate(update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_observer_update"), func = Marshal.GetFunctionPointerForDelegate(efl_observer_update_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ObserverConcrete.efl_observer_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ObserverConcrete.efl_observer_interface_get();
+   }
+
+
+    private delegate  void efl_observer_update_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object obs,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,    System.IntPtr data);
+
+
+    public delegate  void efl_observer_update_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object obs,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_observer_update_api_delegate> efl_observer_update_ptr = new Efl.Eo.FunctionWrapper<efl_observer_update_api_delegate>(_Module, "efl_observer_update");
+    private static  void update(System.IntPtr obj, System.IntPtr pd,  Efl.Object obs,   System.String key,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_observer_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Observer)wrapper).Update( obs,  key,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_observer_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  obs,  key,  data);
+      }
+   }
+   private static efl_observer_update_delegate efl_observer_update_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_orientation.eo.cs b/internals/src/EflSharp/EflSharp/efl_orientation.eo.cs
new file mode 100755 (executable)
index 0000000..42016d9
--- /dev/null
@@ -0,0 +1,326 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl orientation interface</summary>
+[OrientationNativeInherit]
+public interface Orientation : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Control the orientation of a given object.
+/// This can be used to set the rotation on an image or a window, for instance.</summary>
+/// <returns>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</returns>
+Efl.Orient GetOrientation();
+   /// <summary>Control the orientation of a given object.
+/// This can be used to set the rotation on an image or a window, for instance.</summary>
+/// <param name="dir">The rotation angle (CCW), see <see cref="Efl.Orient"/>.</param>
+/// <returns></returns>
+ void SetOrientation( Efl.Orient dir);
+   /// <summary>Control the flip of the given image
+/// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+/// <returns>Flip method</returns>
+Efl.Flip GetFlip();
+   /// <summary>Control the flip of the given image
+/// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+/// <param name="flip">Flip method</param>
+/// <returns></returns>
+ void SetFlip( Efl.Flip flip);
+               /// <summary>Control the orientation of a given object.
+/// This can be used to set the rotation on an image or a window, for instance.</summary>
+/// <value>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</value>
+   Efl.Orient Orientation {
+      get ;
+      set ;
+   }
+   /// <summary>Control the flip of the given image
+/// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+/// <value>Flip method</value>
+   Efl.Flip Flip {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl orientation interface</summary>
+sealed public class OrientationConcrete : 
+
+Orientation
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (OrientationConcrete))
+            return Efl.OrientationNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_orientation_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public OrientationConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~OrientationConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static OrientationConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new OrientationConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Control the orientation of a given object.
+   /// This can be used to set the rotation on an image or a window, for instance.</summary>
+   /// <returns>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</returns>
+   public Efl.Orient GetOrientation() {
+       var _ret_var = Efl.OrientationNativeInherit.efl_orientation_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the orientation of a given object.
+   /// This can be used to set the rotation on an image or a window, for instance.</summary>
+   /// <param name="dir">The rotation angle (CCW), see <see cref="Efl.Orient"/>.</param>
+   /// <returns></returns>
+   public  void SetOrientation( Efl.Orient dir) {
+                         Efl.OrientationNativeInherit.efl_orientation_set_ptr.Value.Delegate(this.NativeHandle, dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the flip of the given image
+   /// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+   /// <returns>Flip method</returns>
+   public Efl.Flip GetFlip() {
+       var _ret_var = Efl.OrientationNativeInherit.efl_orientation_flip_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the flip of the given image
+   /// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+   /// <param name="flip">Flip method</param>
+   /// <returns></returns>
+   public  void SetFlip( Efl.Flip flip) {
+                         Efl.OrientationNativeInherit.efl_orientation_flip_set_ptr.Value.Delegate(this.NativeHandle, flip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the orientation of a given object.
+/// This can be used to set the rotation on an image or a window, for instance.</summary>
+/// <value>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</value>
+   public Efl.Orient Orientation {
+      get { return GetOrientation(); }
+      set { SetOrientation( value); }
+   }
+   /// <summary>Control the flip of the given image
+/// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+/// <value>Flip method</value>
+   public Efl.Flip Flip {
+      get { return GetFlip(); }
+      set { SetFlip( value); }
+   }
+}
+public class OrientationNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_orientation_get_static_delegate == null)
+      efl_orientation_get_static_delegate = new efl_orientation_get_delegate(orientation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_get_static_delegate)});
+      if (efl_orientation_set_static_delegate == null)
+      efl_orientation_set_static_delegate = new efl_orientation_set_delegate(orientation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_set_static_delegate)});
+      if (efl_orientation_flip_get_static_delegate == null)
+      efl_orientation_flip_get_static_delegate = new efl_orientation_flip_get_delegate(flip_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_flip_get"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_flip_get_static_delegate)});
+      if (efl_orientation_flip_set_static_delegate == null)
+      efl_orientation_flip_set_static_delegate = new efl_orientation_flip_set_delegate(flip_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_flip_set"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_flip_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.OrientationConcrete.efl_orientation_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.OrientationConcrete.efl_orientation_interface_get();
+   }
+
+
+    private delegate Efl.Orient efl_orientation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Orient efl_orientation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_get_api_delegate> efl_orientation_get_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_get_api_delegate>(_Module, "efl_orientation_get");
+    private static Efl.Orient orientation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_orientation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Orient _ret_var = default(Efl.Orient);
+         try {
+            _ret_var = ((Orientation)wrapper).GetOrientation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_orientation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_orientation_get_delegate efl_orientation_get_static_delegate;
+
+
+    private delegate  void efl_orientation_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Orient dir);
+
+
+    public delegate  void efl_orientation_set_api_delegate(System.IntPtr obj,   Efl.Orient dir);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_set_api_delegate> efl_orientation_set_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_set_api_delegate>(_Module, "efl_orientation_set");
+    private static  void orientation_set(System.IntPtr obj, System.IntPtr pd,  Efl.Orient dir)
+   {
+      Eina.Log.Debug("function efl_orientation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Orientation)wrapper).SetOrientation( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_orientation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_orientation_set_delegate efl_orientation_set_static_delegate;
+
+
+    private delegate Efl.Flip efl_orientation_flip_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Flip efl_orientation_flip_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_flip_get_api_delegate> efl_orientation_flip_get_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_flip_get_api_delegate>(_Module, "efl_orientation_flip_get");
+    private static Efl.Flip flip_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_orientation_flip_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Flip _ret_var = default(Efl.Flip);
+         try {
+            _ret_var = ((Orientation)wrapper).GetFlip();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_orientation_flip_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_orientation_flip_get_delegate efl_orientation_flip_get_static_delegate;
+
+
+    private delegate  void efl_orientation_flip_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Flip flip);
+
+
+    public delegate  void efl_orientation_flip_set_api_delegate(System.IntPtr obj,   Efl.Flip flip);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_flip_set_api_delegate> efl_orientation_flip_set_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_flip_set_api_delegate>(_Module, "efl_orientation_flip_set");
+    private static  void flip_set(System.IntPtr obj, System.IntPtr pd,  Efl.Flip flip)
+   {
+      Eina.Log.Debug("function efl_orientation_flip_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Orientation)wrapper).SetFlip( flip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_orientation_flip_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flip);
+      }
+   }
+   private static efl_orientation_flip_set_delegate efl_orientation_flip_set_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>An orientation type, to rotate visual objects.
+/// Not to be confused with <see cref="Efl.Ui.Dir"/> which is meant for widgets, rather than images and canvases. This enum is used to rotate images, videos and the like.
+/// 
+/// See also <see cref="Efl.Orientation"/>.</summary>
+public enum Orient
+{
+/// <summary>Default, same as up</summary>
+None = 0,
+/// <summary>Orient up, do not rotate.</summary>
+Up = 0,
+/// <summary>Orient right, rotate 90 degrees counter clock-wise.</summary>
+Right = 90,
+/// <summary>Orient down, rotate 180 degrees.</summary>
+Down = 180,
+/// <summary>Orient left, rotate 90 degrees clock-wise.</summary>
+Left = 270,
+}
+} 
+namespace Efl { 
+/// <summary>A flip type, to flip visual objects.
+/// See also <see cref="Efl.Orientation"/>.</summary>
+public enum Flip
+{
+/// <summary>No flip</summary>
+None = 0,
+/// <summary>Flip image horizontally</summary>
+Horizontal = 1,
+/// <summary>Flip image vertically</summary>
+Vertical = 2,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_pack.eo.cs b/internals/src/EflSharp/EflSharp/efl_pack.eo.cs
new file mode 100755 (executable)
index 0000000..15750f1
--- /dev/null
@@ -0,0 +1,643 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>API common to all UI container objects.</summary>
+[PackNativeInherit]
+public interface Pack : 
+   Efl.Container ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Alignment of the container within its bounds</summary>
+/// <param name="align_horiz">Horizontal alignment</param>
+/// <param name="align_vert">Vertical alignment</param>
+/// <returns></returns>
+ void GetPackAlign( out double align_horiz,  out double align_vert);
+   /// <summary>Alignment of the container within its bounds</summary>
+/// <param name="align_horiz">Horizontal alignment</param>
+/// <param name="align_vert">Vertical alignment</param>
+/// <returns></returns>
+ void SetPackAlign( double align_horiz,  double align_vert);
+   /// <summary>Padding between items contained in this object.</summary>
+/// <param name="pad_horiz">Horizontal padding</param>
+/// <param name="pad_vert">Vertical padding</param>
+/// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable);
+   /// <summary>Padding between items contained in this object.</summary>
+/// <param name="pad_horiz">Horizontal padding</param>
+/// <param name="pad_vert">Vertical padding</param>
+/// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable);
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool ClearPack();
+   /// <summary>Removes all packed contents, without unreferencing them.
+/// Use with caution.</summary>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool UnpackAll();
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+/// <param name="subobj">The unpacked object.</param>
+/// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+bool Unpack( Efl.Gfx.Entity subobj);
+   /// <summary>Adds an item to this container.
+/// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+/// 
+/// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+/// <param name="subobj">An object to pack.</param>
+/// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+bool DoPack( Efl.Gfx.Entity subobj);
+                        }
+/// <summary>API common to all UI container objects.</summary>
+sealed public class PackConcrete : 
+
+Pack
+   , Efl.Container
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PackConcrete))
+            return Efl.PackNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_pack_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PackConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PackConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PackConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PackConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate(this.NativeHandle, out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate(this.NativeHandle, align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate(this.NativeHandle, out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate(this.NativeHandle, pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+}
+public class PackNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.PackConcrete.efl_pack_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.PackConcrete.efl_pack_interface_get();
+   }
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((Pack)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Pack)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((Pack)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Pack)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pack)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pack)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pack)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pack)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Pack)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Pack)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_pack_layout.eo.cs b/internals/src/EflSharp/EflSharp/efl_pack_layout.eo.cs
new file mode 100755 (executable)
index 0000000..8ddf785
--- /dev/null
@@ -0,0 +1,281 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Low-level APIs for object that can lay their children out.
+/// Used for containers (box, grid).</summary>
+[PackLayoutNativeInherit]
+public interface PackLayout : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Requests EFL to call the <see cref="Efl.PackLayout.UpdateLayout"/> method on this object.
+/// This <see cref="Efl.PackLayout.UpdateLayout"/> may be called asynchronously.</summary>
+/// <returns></returns>
+ void LayoutRequest();
+   /// <summary>Implementation of this container&apos;s layout algorithm.
+/// EFL will call this function whenever the contents of this container need to be re-layed out on the canvas.
+/// 
+/// This can be overriden to implement custom layout behaviours.</summary>
+/// <returns></returns>
+ void UpdateLayout();
+         /// <summary>Sent after the layout was updated.</summary>
+   event EventHandler LayoutUpdatedEvt;
+}
+/// <summary>Low-level APIs for object that can lay their children out.
+/// Used for containers (box, grid).</summary>
+sealed public class PackLayoutConcrete : 
+
+PackLayout
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PackLayoutConcrete))
+            return Efl.PackLayoutNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_pack_layout_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PackLayoutConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PackLayoutConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PackLayoutConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PackLayoutConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object LayoutUpdatedEvtKey = new object();
+   /// <summary>Sent after the layout was updated.</summary>
+   public event EventHandler LayoutUpdatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LayoutUpdatedEvt_delegate)) {
+               eventHandlers.AddHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (remove_cpp_event_handler(key, this.evt_LayoutUpdatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LayoutUpdatedEvt.</summary>
+   public void On_LayoutUpdatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LayoutUpdatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LayoutUpdatedEvt_delegate;
+   private void on_LayoutUpdatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LayoutUpdatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_LayoutUpdatedEvt_delegate = new Efl.EventCb(on_LayoutUpdatedEvt_NativeCallback);
+   }
+   /// <summary>Requests EFL to call the <see cref="Efl.PackLayout.UpdateLayout"/> method on this object.
+   /// This <see cref="Efl.PackLayout.UpdateLayout"/> may be called asynchronously.</summary>
+   /// <returns></returns>
+   public  void LayoutRequest() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_request_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Implementation of this container&apos;s layout algorithm.
+   /// EFL will call this function whenever the contents of this container need to be re-layed out on the canvas.
+   /// 
+   /// This can be overriden to implement custom layout behaviours.</summary>
+   /// <returns></returns>
+   public  void UpdateLayout() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_update_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+}
+public class PackLayoutNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_pack_layout_request_static_delegate == null)
+      efl_pack_layout_request_static_delegate = new efl_pack_layout_request_delegate(layout_request);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_request"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_request_static_delegate)});
+      if (efl_pack_layout_update_static_delegate == null)
+      efl_pack_layout_update_static_delegate = new efl_pack_layout_update_delegate(layout_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_update"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_update_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.PackLayoutConcrete.efl_pack_layout_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.PackLayoutConcrete.efl_pack_layout_interface_get();
+   }
+
+
+    private delegate  void efl_pack_layout_request_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_request_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate> efl_pack_layout_request_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate>(_Module, "efl_pack_layout_request");
+    private static  void layout_request(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_request was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((PackLayout)wrapper).LayoutRequest();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_request_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_request_delegate efl_pack_layout_request_static_delegate;
+
+
+    private delegate  void efl_pack_layout_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate> efl_pack_layout_update_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate>(_Module, "efl_pack_layout_update");
+    private static  void layout_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((PackLayout)wrapper).UpdateLayout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_update_delegate efl_pack_layout_update_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_pack_linear.eo.cs b/internals/src/EflSharp/EflSharp/efl_pack_linear.eo.cs
new file mode 100755 (executable)
index 0000000..06ad794
--- /dev/null
@@ -0,0 +1,955 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>API for containers</summary>
+[PackLinearNativeInherit]
+public interface PackLinear : 
+   Efl.Pack ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Prepend an object at the beginning of this container.
+/// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+/// 
+/// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+/// <param name="subobj">Item to pack.</param>
+/// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+bool PackBegin( Efl.Gfx.Entity subobj);
+   /// <summary>Append object at the end of this container.
+/// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+/// 
+/// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+/// <param name="subobj">Item to pack at the end.</param>
+/// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+bool PackEnd( Efl.Gfx.Entity subobj);
+   /// <summary>Prepend item before other sub object.
+/// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+/// <param name="subobj">Item to pack before <c>existing</c>.</param>
+/// <param name="existing">Item to refer to.</param>
+/// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing);
+   /// <summary>Append item after other sub object.
+/// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+/// <param name="subobj">Item to pack after <c>existing</c>.</param>
+/// <param name="existing">Item to refer to.</param>
+/// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing);
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+/// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+/// 
+/// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+/// <param name="subobj">Item to pack at given index.</param>
+/// <param name="index">A position.</param>
+/// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+bool PackAt( Efl.Gfx.Entity subobj,   int index);
+   /// <summary>Content at a given index in this container.
+/// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+/// <param name="index">Index number</param>
+/// <returns>The object contained at the given <c>index</c>.</returns>
+Efl.Gfx.Entity GetPackContent(  int index);
+   /// <summary>Get the index of a child in this container.</summary>
+/// <param name="subobj">An object contained in this pack.</param>
+/// <returns>-1 in case of failure, or the index of this item.</returns>
+ int GetPackIndex( Efl.Gfx.Entity subobj);
+   /// <summary>Pop out item at specified <c>index</c>.
+/// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+/// <param name="index">Index number</param>
+/// <returns>The child item if it could be removed.</returns>
+Efl.Gfx.Entity PackUnpackAt(  int index);
+                        }
+/// <summary>API for containers</summary>
+sealed public class PackLinearConcrete : 
+
+PackLinear
+   , Efl.Container, Efl.Pack
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PackLinearConcrete))
+            return Efl.PackLinearNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_pack_linear_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PackLinearConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PackLinearConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PackLinearConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PackLinearConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate(this.NativeHandle, subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate(this.NativeHandle, subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate(this.NativeHandle, subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate(this.NativeHandle, index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate(this.NativeHandle, index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate(this.NativeHandle, out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate(this.NativeHandle, align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate(this.NativeHandle, out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate(this.NativeHandle, pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+}
+public class PackLinearNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.PackLinearConcrete.efl_pack_linear_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.PackLinearConcrete.efl_pack_linear_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((PackLinear)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((PackLinear)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((PackLinear)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((PackLinear)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((PackLinear)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((PackLinear)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PackLinear)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((PackLinear)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((PackLinear)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackLinear)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_pack_table.eo.cs b/internals/src/EflSharp/EflSharp/efl_pack_table.eo.cs
new file mode 100755 (executable)
index 0000000..2715f1d
--- /dev/null
@@ -0,0 +1,1431 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>2D containers aligned on a table with rows and columns</summary>
+[PackTableNativeInherit]
+public interface PackTable : 
+   Efl.PackLinear ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Position and span of the <c>subobj</c> in this container, may be modified to move the <c>subobj</c></summary>
+/// <param name="subobj">Child object</param>
+/// <param name="col">Column number</param>
+/// <param name="row">Row number</param>
+/// <param name="colspan">Column span</param>
+/// <param name="rowspan">Row span</param>
+/// <returns>Returns false if item is not a child</returns>
+bool GetTablePosition( Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan);
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+/// <param name="cols">Number of columns</param>
+/// <param name="rows">Number of rows</param>
+/// <returns></returns>
+ void GetTableSize( out  int cols,  out  int rows);
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+/// <param name="cols">Number of columns</param>
+/// <param name="rows">Number of rows</param>
+/// <returns></returns>
+ void SetTableSize(  int cols,   int rows);
+   /// <summary>Gird columns property</summary>
+/// <returns>Number of columns</returns>
+ int GetTableColumns();
+   /// <summary>Specifies limit for linear adds - if direction is horizontal</summary>
+/// <param name="cols">Number of columns</param>
+/// <returns></returns>
+ void SetTableColumns(  int cols);
+   /// <summary>Table rows property</summary>
+/// <returns>Number of rows</returns>
+ int GetTableRows();
+   /// <summary>Specifies limit for linear adds - if direction is vertical</summary>
+/// <param name="rows">Number of rows</param>
+/// <returns></returns>
+ void SetTableRows(  int rows);
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+/// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+/// <param name="primary">Primary direction</param>
+/// <param name="secondary">Secondary direction</param>
+/// <returns></returns>
+ void GetTableDirection( out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary);
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+/// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+/// <param name="primary">Primary direction</param>
+/// <param name="secondary">Secondary direction</param>
+/// <returns></returns>
+ void SetTableDirection( Efl.Ui.Dir primary,  Efl.Ui.Dir secondary);
+   /// <summary>Pack object at a given location in the table.
+/// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+/// <param name="subobj">A child object to pack in this table.</param>
+/// <param name="col">Column number</param>
+/// <param name="row">Row number</param>
+/// <param name="colspan">0 means 1, -1 means <see cref="Efl.PackTable.TableColumns"/></param>
+/// <param name="rowspan">0 means 1, -1 means <see cref="Efl.PackTable.TableRows"/></param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+bool PackTable( Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan);
+   /// <summary>Returns all objects at a given position in this table.</summary>
+/// <param name="col">Column number</param>
+/// <param name="row">Row number</param>
+/// <param name="below">If <c>true</c> get objects spanning over this cell.</param>
+/// <returns>Iterator to table contents</returns>
+Eina.Iterator<Efl.Gfx.Entity> GetTableContents(  int col,   int row,  bool below);
+   /// <summary>Returns a child at a given position, see <see cref="Efl.PackTable.GetTableContents"/>.</summary>
+/// <param name="col">Column number</param>
+/// <param name="row">Row number</param>
+/// <returns>Child object</returns>
+Efl.Gfx.Entity GetTableContent(  int col,   int row);
+                                       /// <summary>Gird columns property</summary>
+/// <value>Number of columns</value>
+    int TableColumns {
+      get ;
+      set ;
+   }
+   /// <summary>Table rows property</summary>
+/// <value>Number of rows</value>
+    int TableRows {
+      get ;
+      set ;
+   }
+}
+/// <summary>2D containers aligned on a table with rows and columns</summary>
+sealed public class PackTableConcrete : 
+
+PackTable
+   , Efl.Container, Efl.Pack, Efl.PackLinear
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PackTableConcrete))
+            return Efl.PackTableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_pack_table_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PackTableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PackTableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PackTableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PackTableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Position and span of the <c>subobj</c> in this container, may be modified to move the <c>subobj</c></summary>
+   /// <param name="subobj">Child object</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">Column span</param>
+   /// <param name="rowspan">Row span</param>
+   /// <returns>Returns false if item is not a child</returns>
+   public bool GetTablePosition( Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_position_get_ptr.Value.Delegate(this.NativeHandle, subobj,  out col,  out row,  out colspan,  out rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   public  void GetTableSize( out  int cols,  out  int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_get_ptr.Value.Delegate(this.NativeHandle, out cols,  out rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   public  void SetTableSize(  int cols,   int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_set_ptr.Value.Delegate(this.NativeHandle, cols,  rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gird columns property</summary>
+   /// <returns>Number of columns</returns>
+   public  int GetTableColumns() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_columns_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is horizontal</summary>
+   /// <param name="cols">Number of columns</param>
+   /// <returns></returns>
+   public  void SetTableColumns(  int cols) {
+                         Efl.PackTableNativeInherit.efl_pack_table_columns_set_ptr.Value.Delegate(this.NativeHandle, cols);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Table rows property</summary>
+   /// <returns>Number of rows</returns>
+   public  int GetTableRows() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_rows_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is vertical</summary>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   public  void SetTableRows(  int rows) {
+                         Efl.PackTableNativeInherit.efl_pack_table_rows_set_ptr.Value.Delegate(this.NativeHandle, rows);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   public  void GetTableDirection( out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_get_ptr.Value.Delegate(this.NativeHandle, out primary,  out secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   public  void SetTableDirection( Efl.Ui.Dir primary,  Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_set_ptr.Value.Delegate(this.NativeHandle, primary,  secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pack object at a given location in the table.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">A child object to pack in this table.</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">0 means 1, -1 means <see cref="Efl.PackTable.TableColumns"/></param>
+   /// <param name="rowspan">0 means 1, -1 means <see cref="Efl.PackTable.TableRows"/></param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool PackTable( Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_ptr.Value.Delegate(this.NativeHandle, subobj,  col,  row,  colspan,  rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Returns all objects at a given position in this table.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="below">If <c>true</c> get objects spanning over this cell.</param>
+   /// <returns>Iterator to table contents</returns>
+   public Eina.Iterator<Efl.Gfx.Entity> GetTableContents(  int col,   int row,  bool below) {
+                                                             var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_contents_get_ptr.Value.Delegate(this.NativeHandle, col,  row,  below);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns a child at a given position, see <see cref="Efl.PackTable.GetTableContents"/>.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <returns>Child object</returns>
+   public Efl.Gfx.Entity GetTableContent(  int col,   int row) {
+                                           var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_content_get_ptr.Value.Delegate(this.NativeHandle, col,  row);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate(this.NativeHandle, out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate(this.NativeHandle, align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate(this.NativeHandle, out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate(this.NativeHandle, pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate(this.NativeHandle, subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate(this.NativeHandle, subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate(this.NativeHandle, subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate(this.NativeHandle, index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate(this.NativeHandle, subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate(this.NativeHandle, index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gird columns property</summary>
+/// <value>Number of columns</value>
+   public  int TableColumns {
+      get { return GetTableColumns(); }
+      set { SetTableColumns( value); }
+   }
+   /// <summary>Table rows property</summary>
+/// <value>Number of rows</value>
+   public  int TableRows {
+      get { return GetTableRows(); }
+      set { SetTableRows( value); }
+   }
+}
+public class PackTableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_pack_table_position_get_static_delegate == null)
+      efl_pack_table_position_get_static_delegate = new efl_pack_table_position_get_delegate(table_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_position_get_static_delegate)});
+      if (efl_pack_table_size_get_static_delegate == null)
+      efl_pack_table_size_get_static_delegate = new efl_pack_table_size_get_delegate(table_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_get_static_delegate)});
+      if (efl_pack_table_size_set_static_delegate == null)
+      efl_pack_table_size_set_static_delegate = new efl_pack_table_size_set_delegate(table_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_set_static_delegate)});
+      if (efl_pack_table_columns_get_static_delegate == null)
+      efl_pack_table_columns_get_static_delegate = new efl_pack_table_columns_get_delegate(table_columns_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_get_static_delegate)});
+      if (efl_pack_table_columns_set_static_delegate == null)
+      efl_pack_table_columns_set_static_delegate = new efl_pack_table_columns_set_delegate(table_columns_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_set_static_delegate)});
+      if (efl_pack_table_rows_get_static_delegate == null)
+      efl_pack_table_rows_get_static_delegate = new efl_pack_table_rows_get_delegate(table_rows_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_get_static_delegate)});
+      if (efl_pack_table_rows_set_static_delegate == null)
+      efl_pack_table_rows_set_static_delegate = new efl_pack_table_rows_set_delegate(table_rows_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_set_static_delegate)});
+      if (efl_pack_table_direction_get_static_delegate == null)
+      efl_pack_table_direction_get_static_delegate = new efl_pack_table_direction_get_delegate(table_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_get_static_delegate)});
+      if (efl_pack_table_direction_set_static_delegate == null)
+      efl_pack_table_direction_set_static_delegate = new efl_pack_table_direction_set_delegate(table_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_set_static_delegate)});
+      if (efl_pack_table_static_delegate == null)
+      efl_pack_table_static_delegate = new efl_pack_table_delegate(pack_table);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_static_delegate)});
+      if (efl_pack_table_contents_get_static_delegate == null)
+      efl_pack_table_contents_get_static_delegate = new efl_pack_table_contents_get_delegate(table_contents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_contents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_contents_get_static_delegate)});
+      if (efl_pack_table_content_get_static_delegate == null)
+      efl_pack_table_content_get_static_delegate = new efl_pack_table_content_get_delegate(table_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_content_get_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.PackTableConcrete.efl_pack_table_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.PackTableConcrete.efl_pack_table_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_position_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_position_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate> efl_pack_table_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate>(_Module, "efl_pack_table_position_get");
+    private static bool table_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   col = default( int);      row = default( int);      colspan = default( int);      rowspan = default( int);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).GetTablePosition( subobj,  out col,  out row,  out colspan,  out rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  out col,  out row,  out colspan,  out rowspan);
+      }
+   }
+   private static efl_pack_table_position_get_delegate efl_pack_table_position_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int cols,   out  int rows);
+
+
+    public delegate  void efl_pack_table_size_get_api_delegate(System.IntPtr obj,   out  int cols,   out  int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate> efl_pack_table_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate>(_Module, "efl_pack_table_size_get");
+    private static  void table_size_get(System.IntPtr obj, System.IntPtr pd,  out  int cols,  out  int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           cols = default( int);      rows = default( int);                     
+         try {
+            ((PackTable)wrapper).GetTableSize( out cols,  out rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cols,  out rows);
+      }
+   }
+   private static efl_pack_table_size_get_delegate efl_pack_table_size_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols,    int rows);
+
+
+    public delegate  void efl_pack_table_size_set_api_delegate(System.IntPtr obj,    int cols,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate> efl_pack_table_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate>(_Module, "efl_pack_table_size_set");
+    private static  void table_size_set(System.IntPtr obj, System.IntPtr pd,   int cols,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PackTable)wrapper).SetTableSize( cols,  rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols,  rows);
+      }
+   }
+   private static efl_pack_table_size_set_delegate efl_pack_table_size_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_columns_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_columns_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate> efl_pack_table_columns_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate>(_Module, "efl_pack_table_columns_get");
+    private static  int table_columns_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((PackTable)wrapper).GetTableColumns();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_columns_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_columns_get_delegate efl_pack_table_columns_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_columns_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols);
+
+
+    public delegate  void efl_pack_table_columns_set_api_delegate(System.IntPtr obj,    int cols);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate> efl_pack_table_columns_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate>(_Module, "efl_pack_table_columns_set");
+    private static  void table_columns_set(System.IntPtr obj, System.IntPtr pd,   int cols)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PackTable)wrapper).SetTableColumns( cols);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_columns_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols);
+      }
+   }
+   private static efl_pack_table_columns_set_delegate efl_pack_table_columns_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_rows_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_rows_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate> efl_pack_table_rows_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate>(_Module, "efl_pack_table_rows_get");
+    private static  int table_rows_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((PackTable)wrapper).GetTableRows();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_rows_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_rows_get_delegate efl_pack_table_rows_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_rows_set_delegate(System.IntPtr obj, System.IntPtr pd,    int rows);
+
+
+    public delegate  void efl_pack_table_rows_set_api_delegate(System.IntPtr obj,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate> efl_pack_table_rows_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate>(_Module, "efl_pack_table_rows_set");
+    private static  void table_rows_set(System.IntPtr obj, System.IntPtr pd,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PackTable)wrapper).SetTableRows( rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_rows_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rows);
+      }
+   }
+   private static efl_pack_table_rows_set_delegate efl_pack_table_rows_set_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_get_api_delegate(System.IntPtr obj,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate> efl_pack_table_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate>(_Module, "efl_pack_table_direction_get");
+    private static  void table_direction_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           primary = default(Efl.Ui.Dir);      secondary = default(Efl.Ui.Dir);                     
+         try {
+            ((PackTable)wrapper).GetTableDirection( out primary,  out secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out primary,  out secondary);
+      }
+   }
+   private static efl_pack_table_direction_get_delegate efl_pack_table_direction_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate> efl_pack_table_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate>(_Module, "efl_pack_table_direction_set");
+    private static  void table_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir primary,  Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PackTable)wrapper).SetTableDirection( primary,  secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  primary,  secondary);
+      }
+   }
+   private static efl_pack_table_direction_set_delegate efl_pack_table_direction_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate> efl_pack_table_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate>(_Module, "efl_pack_table");
+    private static bool pack_table(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).PackTable( subobj,  col,  row,  colspan,  rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  col,  row,  colspan,  rowspan);
+      }
+   }
+   private static efl_pack_table_delegate efl_pack_table_static_delegate;
+
+
+    private delegate  System.IntPtr efl_pack_table_contents_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+
+
+    public delegate  System.IntPtr efl_pack_table_contents_get_api_delegate(System.IntPtr obj,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate> efl_pack_table_contents_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate>(_Module, "efl_pack_table_contents_get");
+    private static  System.IntPtr table_contents_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row,  bool below)
+   {
+      Eina.Log.Debug("function efl_pack_table_contents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((PackTable)wrapper).GetTableContents( col,  row,  below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_pack_table_contents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row,  below);
+      }
+   }
+   private static efl_pack_table_contents_get_delegate efl_pack_table_contents_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_table_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_table_content_get_api_delegate(System.IntPtr obj,    int col,    int row);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate> efl_pack_table_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate>(_Module, "efl_pack_table_content_get");
+    private static Efl.Gfx.Entity table_content_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row)
+   {
+      Eina.Log.Debug("function efl_pack_table_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((PackTable)wrapper).GetTableContent( col,  row);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_table_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row);
+      }
+   }
+   private static efl_pack_table_content_get_delegate efl_pack_table_content_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((PackTable)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((PackTable)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((PackTable)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PackTable)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((PackTable)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((PackTable)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PackTable)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((PackTable)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((PackTable)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((PackTable)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_page_indicator.eo.cs b/internals/src/EflSharp/EflSharp/efl_page_indicator.eo.cs
new file mode 100755 (executable)
index 0000000..92d340f
--- /dev/null
@@ -0,0 +1,127 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Page { 
+/// <summary>Page indicator
+/// Page indicator is used with <see cref="Efl.Ui.Pager"/>. It is located on the top layer of pager widget and helps users to know the number of pages and the current page&apos;s index without scrolling.</summary>
+[IndicatorNativeInherit]
+public class Indicator : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Page.IndicatorNativeInherit nativeInherit = new Efl.Page.IndicatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Indicator))
+            return Efl.Page.IndicatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_page_indicator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Indicator(Efl.Object parent= null
+         ) :
+      base(efl_page_indicator_class_get(), typeof(Indicator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Indicator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Indicator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Indicator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Indicator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>set object</summary>
+   /// <param name="pager">pager object</param>
+   /// <param name="group">a dummy object for layer adjustment</param>
+   /// <returns></returns>
+   virtual public  void Bind( Efl.Ui.Pager pager,  Efl.Canvas.Group group) {
+                                           Efl.Page.IndicatorNativeInherit.efl_page_indicator_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pager,  group);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.Indicator.efl_page_indicator_class_get();
+   }
+}
+public class IndicatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_page_indicator_bind_static_delegate == null)
+      efl_page_indicator_bind_static_delegate = new efl_page_indicator_bind_delegate(bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_page_indicator_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_page_indicator_bind_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Page.Indicator.efl_page_indicator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.Indicator.efl_page_indicator_class_get();
+   }
+
+
+    private delegate  void efl_page_indicator_bind_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Pager, Efl.Eo.NonOwnTag>))]  Efl.Ui.Pager pager, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Group, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Group group);
+
+
+    public delegate  void efl_page_indicator_bind_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Pager, Efl.Eo.NonOwnTag>))]  Efl.Ui.Pager pager, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Group, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Group group);
+    public static Efl.Eo.FunctionWrapper<efl_page_indicator_bind_api_delegate> efl_page_indicator_bind_ptr = new Efl.Eo.FunctionWrapper<efl_page_indicator_bind_api_delegate>(_Module, "efl_page_indicator_bind");
+    private static  void bind(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Pager pager,  Efl.Canvas.Group group)
+   {
+      Eina.Log.Debug("function efl_page_indicator_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Indicator)wrapper).Bind( pager,  group);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_page_indicator_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pager,  group);
+      }
+   }
+   private static efl_page_indicator_bind_delegate efl_page_indicator_bind_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_page_indicator_icon.eo.cs b/internals/src/EflSharp/EflSharp/efl_page_indicator_icon.eo.cs
new file mode 100755 (executable)
index 0000000..ad70339
--- /dev/null
@@ -0,0 +1,92 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Page { 
+/// <summary>Icon type page indicator
+/// This class offers icon type indicator for <see cref="Efl.Ui.Pager"/>. This type of page indicator creates the same number of icons as pages and arrange them in a linear order. An icon has two states: default and selected.</summary>
+[IndicatorIconNativeInherit]
+public class IndicatorIcon : Efl.Page.Indicator, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Page.IndicatorIconNativeInherit nativeInherit = new Efl.Page.IndicatorIconNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (IndicatorIcon))
+            return Efl.Page.IndicatorIconNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_page_indicator_icon_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public IndicatorIcon(Efl.Object parent= null
+         ) :
+      base(efl_page_indicator_icon_class_get(), typeof(IndicatorIcon), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public IndicatorIcon(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected IndicatorIcon(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static IndicatorIcon static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new IndicatorIcon(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.IndicatorIcon.efl_page_indicator_icon_class_get();
+   }
+}
+public class IndicatorIconNativeInherit : Efl.Page.IndicatorNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Page.IndicatorIcon.efl_page_indicator_icon_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.IndicatorIcon.efl_page_indicator_icon_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_page_transition.eo.cs b/internals/src/EflSharp/EflSharp/efl_page_transition.eo.cs
new file mode 100755 (executable)
index 0000000..4c50a9e
--- /dev/null
@@ -0,0 +1,127 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Page { 
+/// <summary>Page transition for <see cref="Efl.Ui.Pager"/>
+/// A page transition is essential to <see cref="Efl.Ui.Pager"/> object and invoked whenever pages are rearranged or scrolled (see <see cref="Efl.Ui.Pager"/>).</summary>
+[TransitionNativeInherit]
+public class Transition : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Page.TransitionNativeInherit nativeInherit = new Efl.Page.TransitionNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Transition))
+            return Efl.Page.TransitionNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_page_transition_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Transition(Efl.Object parent= null
+         ) :
+      base(efl_page_transition_class_get(), typeof(Transition), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Transition(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Transition(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Transition static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Transition(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>set object</summary>
+   /// <param name="pager">pager object</param>
+   /// <param name="group">a dummy object for layer adjustment</param>
+   /// <returns></returns>
+   virtual public  void Bind( Efl.Ui.Pager pager,  Efl.Canvas.Group group) {
+                                           Efl.Page.TransitionNativeInherit.efl_page_transition_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pager,  group);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.Transition.efl_page_transition_class_get();
+   }
+}
+public class TransitionNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_page_transition_bind_static_delegate == null)
+      efl_page_transition_bind_static_delegate = new efl_page_transition_bind_delegate(bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_page_transition_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_page_transition_bind_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Page.Transition.efl_page_transition_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.Transition.efl_page_transition_class_get();
+   }
+
+
+    private delegate  void efl_page_transition_bind_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Pager, Efl.Eo.NonOwnTag>))]  Efl.Ui.Pager pager, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Group, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Group group);
+
+
+    public delegate  void efl_page_transition_bind_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Pager, Efl.Eo.NonOwnTag>))]  Efl.Ui.Pager pager, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Group, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Group group);
+    public static Efl.Eo.FunctionWrapper<efl_page_transition_bind_api_delegate> efl_page_transition_bind_ptr = new Efl.Eo.FunctionWrapper<efl_page_transition_bind_api_delegate>(_Module, "efl_page_transition_bind");
+    private static  void bind(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Pager pager,  Efl.Canvas.Group group)
+   {
+      Eina.Log.Debug("function efl_page_transition_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Transition)wrapper).Bind( pager,  group);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_page_transition_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pager,  group);
+      }
+   }
+   private static efl_page_transition_bind_delegate efl_page_transition_bind_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_page_transition_scroll.eo.cs b/internals/src/EflSharp/EflSharp/efl_page_transition_scroll.eo.cs
new file mode 100755 (executable)
index 0000000..19ab18b
--- /dev/null
@@ -0,0 +1,167 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Page { 
+/// <summary>Page transition for <see cref="Efl.Ui.Pager"/>
+/// With this type of transition, pages are arranged linearly and move parallel to the screen by scrolling. The current page is displayed at center, and previous and next pages might be displayed optionally.</summary>
+[TransitionScrollNativeInherit]
+public class TransitionScroll : Efl.Page.Transition, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Page.TransitionScrollNativeInherit nativeInherit = new Efl.Page.TransitionScrollNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TransitionScroll))
+            return Efl.Page.TransitionScrollNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_page_transition_scroll_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public TransitionScroll(Efl.Object parent= null
+         ) :
+      base(efl_page_transition_scroll_class_get(), typeof(TransitionScroll), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TransitionScroll(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TransitionScroll(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TransitionScroll static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TransitionScroll(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The number of pages displayed on each side of the current page</summary>
+   /// <returns></returns>
+   virtual public  int GetSidePageNum() {
+       var _ret_var = Efl.Page.TransitionScrollNativeInherit.efl_page_transition_scroll_side_page_num_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The number of pages displayed on each side of the current page</summary>
+   /// <param name="side_page_num"></param>
+   /// <returns></returns>
+   virtual public  void SetSidePageNum(  int side_page_num) {
+                         Efl.Page.TransitionScrollNativeInherit.efl_page_transition_scroll_side_page_num_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), side_page_num);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The number of pages displayed on each side of the current page</summary>
+/// <value></value>
+   public  int SidePageNum {
+      get { return GetSidePageNum(); }
+      set { SetSidePageNum( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.TransitionScroll.efl_page_transition_scroll_class_get();
+   }
+}
+public class TransitionScrollNativeInherit : Efl.Page.TransitionNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_page_transition_scroll_side_page_num_get_static_delegate == null)
+      efl_page_transition_scroll_side_page_num_get_static_delegate = new efl_page_transition_scroll_side_page_num_get_delegate(side_page_num_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_page_transition_scroll_side_page_num_get"), func = Marshal.GetFunctionPointerForDelegate(efl_page_transition_scroll_side_page_num_get_static_delegate)});
+      if (efl_page_transition_scroll_side_page_num_set_static_delegate == null)
+      efl_page_transition_scroll_side_page_num_set_static_delegate = new efl_page_transition_scroll_side_page_num_set_delegate(side_page_num_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_page_transition_scroll_side_page_num_set"), func = Marshal.GetFunctionPointerForDelegate(efl_page_transition_scroll_side_page_num_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Page.TransitionScroll.efl_page_transition_scroll_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Page.TransitionScroll.efl_page_transition_scroll_class_get();
+   }
+
+
+    private delegate  int efl_page_transition_scroll_side_page_num_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_page_transition_scroll_side_page_num_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_page_transition_scroll_side_page_num_get_api_delegate> efl_page_transition_scroll_side_page_num_get_ptr = new Efl.Eo.FunctionWrapper<efl_page_transition_scroll_side_page_num_get_api_delegate>(_Module, "efl_page_transition_scroll_side_page_num_get");
+    private static  int side_page_num_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_page_transition_scroll_side_page_num_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TransitionScroll)wrapper).GetSidePageNum();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_page_transition_scroll_side_page_num_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_page_transition_scroll_side_page_num_get_delegate efl_page_transition_scroll_side_page_num_get_static_delegate;
+
+
+    private delegate  void efl_page_transition_scroll_side_page_num_set_delegate(System.IntPtr obj, System.IntPtr pd,    int side_page_num);
+
+
+    public delegate  void efl_page_transition_scroll_side_page_num_set_api_delegate(System.IntPtr obj,    int side_page_num);
+    public static Efl.Eo.FunctionWrapper<efl_page_transition_scroll_side_page_num_set_api_delegate> efl_page_transition_scroll_side_page_num_set_ptr = new Efl.Eo.FunctionWrapper<efl_page_transition_scroll_side_page_num_set_api_delegate>(_Module, "efl_page_transition_scroll_side_page_num_set");
+    private static  void side_page_num_set(System.IntPtr obj, System.IntPtr pd,   int side_page_num)
+   {
+      Eina.Log.Debug("function efl_page_transition_scroll_side_page_num_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TransitionScroll)wrapper).SetSidePageNum( side_page_num);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_page_transition_scroll_side_page_num_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  side_page_num);
+      }
+   }
+   private static efl_page_transition_scroll_side_page_num_set_delegate efl_page_transition_scroll_side_page_num_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_part.eo.cs
new file mode 100755 (executable)
index 0000000..cf1fad2
--- /dev/null
@@ -0,0 +1,172 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Interface for objects supporting named parts.
+/// An object implementing this interface will be able to provide access to some of its sub-objects by name. This gives access to parts as defined in a widget&apos;s theme.
+/// 
+/// Part proxy objects have a special lifetime that is limited to one and only one function call. This behavior is implemented in efl_part() which call Efl.Part.part_get(). Calling Efl.Part.part_get() directly should be avoided.
+/// 
+/// In other words, the caller does not hold a reference to this proxy object. It may be possible, in languages that allow it, to get an extra reference to this part object and extend its lifetime to more than a single function call.
+/// 
+/// In pseudo-code, this means only the following two use cases are supported:
+/// 
+/// obj.func(part(obj, &quot;part&quot;), args)
+/// 
+/// And:
+/// 
+/// part = ref(part(obj, &quot;part&quot;)) func1(part, args) func2(part, args) func3(part, args) unref(part)</summary>
+[PartNativeInherit]
+public interface Part : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get a proxy object referring to a part of an object.</summary>
+/// <param name="name">The part name.</param>
+/// <returns>A (proxy) object, valid for a single call.</returns>
+Efl.Object GetPart(  System.String name);
+   }
+/// <summary>Interface for objects supporting named parts.
+/// An object implementing this interface will be able to provide access to some of its sub-objects by name. This gives access to parts as defined in a widget&apos;s theme.
+/// 
+/// Part proxy objects have a special lifetime that is limited to one and only one function call. This behavior is implemented in efl_part() which call Efl.Part.part_get(). Calling Efl.Part.part_get() directly should be avoided.
+/// 
+/// In other words, the caller does not hold a reference to this proxy object. It may be possible, in languages that allow it, to get an extra reference to this part object and extend its lifetime to more than a single function call.
+/// 
+/// In pseudo-code, this means only the following two use cases are supported:
+/// 
+/// obj.func(part(obj, &quot;part&quot;), args)
+/// 
+/// And:
+/// 
+/// part = ref(part(obj, &quot;part&quot;)) func1(part, args) func2(part, args) func3(part, args) unref(part)</summary>
+sealed public class PartConcrete : 
+
+Part
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PartConcrete))
+            return Efl.PartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_part_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PartConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PartConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PartConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PartConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get a proxy object referring to a part of an object.</summary>
+   /// <param name="name">The part name.</param>
+   /// <returns>A (proxy) object, valid for a single call.</returns>
+   public Efl.Object GetPart(  System.String name) {
+                         var _ret_var = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(this.NativeHandle, name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+}
+public class PartNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_part_get_static_delegate == null)
+      efl_part_get_static_delegate = new efl_part_get_delegate(part_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_part_get"), func = Marshal.GetFunctionPointerForDelegate(efl_part_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.PartConcrete.efl_part_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.PartConcrete.efl_part_interface_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_part_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_part_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_part_get_api_delegate> efl_part_get_ptr = new Efl.Eo.FunctionWrapper<efl_part_get_api_delegate>(_Module, "efl_part_get");
+    private static Efl.Object part_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_part_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Part)wrapper).GetPart( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_part_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_part_get_delegate efl_part_get_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_playable.eo.cs b/internals/src/EflSharp/EflSharp/efl_playable.eo.cs
new file mode 100755 (executable)
index 0000000..1ffb342
--- /dev/null
@@ -0,0 +1,250 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl media playable interface</summary>
+[PlayableNativeInherit]
+public interface Playable : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get the length of play for the media file.</summary>
+/// <returns>The length of the stream in seconds.</returns>
+double GetLength();
+   /// <summary></summary>
+/// <returns></returns>
+bool GetPlayable();
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <returns><c>true</c> if seekable.</returns>
+bool GetSeekable();
+            /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   double Length {
+      get ;
+   }
+   /// <summary></summary>
+/// <value></value>
+   bool Playable {
+      get ;
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   bool Seekable {
+      get ;
+   }
+}
+/// <summary>Efl media playable interface</summary>
+sealed public class PlayableConcrete : 
+
+Playable
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PlayableConcrete))
+            return Efl.PlayableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_playable_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PlayableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PlayableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PlayableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PlayableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+   /// <returns>The length of the stream in seconds.</returns>
+   public double GetLength() {
+       var _ret_var = Efl.PlayableNativeInherit.efl_playable_length_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <returns></returns>
+   public bool GetPlayable() {
+       var _ret_var = Efl.PlayableNativeInherit.efl_playable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get whether the media file is seekable.</summary>
+   /// <returns><c>true</c> if seekable.</returns>
+   public bool GetSeekable() {
+       var _ret_var = Efl.PlayableNativeInherit.efl_playable_seekable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   public double Length {
+      get { return GetLength(); }
+   }
+   /// <summary></summary>
+/// <value></value>
+   public bool Playable {
+      get { return GetPlayable(); }
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   public bool Seekable {
+      get { return GetSeekable(); }
+   }
+}
+public class PlayableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_playable_length_get_static_delegate == null)
+      efl_playable_length_get_static_delegate = new efl_playable_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_playable_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_playable_length_get_static_delegate)});
+      if (efl_playable_get_static_delegate == null)
+      efl_playable_get_static_delegate = new efl_playable_get_delegate(playable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_playable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_playable_get_static_delegate)});
+      if (efl_playable_seekable_get_static_delegate == null)
+      efl_playable_seekable_get_static_delegate = new efl_playable_seekable_get_delegate(seekable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_playable_seekable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_playable_seekable_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.PlayableConcrete.efl_playable_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.PlayableConcrete.efl_playable_interface_get();
+   }
+
+
+    private delegate double efl_playable_length_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_playable_length_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_playable_length_get_api_delegate> efl_playable_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_playable_length_get_api_delegate>(_Module, "efl_playable_length_get");
+    private static double length_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_playable_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Playable)wrapper).GetLength();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_playable_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_playable_length_get_delegate efl_playable_length_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_playable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_playable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_playable_get_api_delegate> efl_playable_get_ptr = new Efl.Eo.FunctionWrapper<efl_playable_get_api_delegate>(_Module, "efl_playable_get");
+    private static bool playable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_playable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Playable)wrapper).GetPlayable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_playable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_playable_get_delegate efl_playable_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_playable_seekable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_playable_seekable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_playable_seekable_get_api_delegate> efl_playable_seekable_get_ptr = new Efl.Eo.FunctionWrapper<efl_playable_seekable_get_api_delegate>(_Module, "efl_playable_seekable_get");
+    private static bool seekable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_playable_seekable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Playable)wrapper).GetSeekable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_playable_seekable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_playable_seekable_get_delegate efl_playable_seekable_get_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_player.eo.cs b/internals/src/EflSharp/EflSharp/efl_player.eo.cs
new file mode 100755 (executable)
index 0000000..a34dcc3
--- /dev/null
@@ -0,0 +1,834 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl media player interface</summary>
+[PlayerNativeInherit]
+public interface Player : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Whether or not the playable can be played.</summary>
+/// <returns><c>true</c> if the object have playable data, <c>false</c> otherwise</returns>
+bool GetPlayable();
+   /// <summary>Get play/pause state of the media file.</summary>
+/// <returns><c>true</c> if playing, <c>false</c> otherwise.</returns>
+bool GetPlay();
+   /// <summary>Set play/pause state of the media file.
+/// This functions sets the currently playing status of the video. Using this function to play or pause the video doesn&apos;t alter it&apos;s current position.</summary>
+/// <param name="play"><c>true</c> if playing, <c>false</c> otherwise.</param>
+/// <returns></returns>
+ void SetPlay( bool play);
+   /// <summary>Get the position in the media file.
+/// The position is returned as the number of seconds since the beginning of the media file.</summary>
+/// <returns>The position (in seconds).</returns>
+double GetPos();
+   /// <summary>Set the position in the media file.
+/// This functions sets the current position of the media file to &quot;sec&quot;, this only works on seekable streams. Setting the position doesn&apos;t change the playing state of the media file.</summary>
+/// <param name="sec">The position (in seconds).</param>
+/// <returns></returns>
+ void SetPos( double sec);
+   /// <summary>Get how much of the file has been played.
+/// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+/// <returns>The progress within the [0, 1] range.</returns>
+double GetProgress();
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <returns>The play speed in the [0, infinity) range.</returns>
+double GetPlaySpeed();
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <param name="speed">The play speed in the [0, infinity) range.</param>
+/// <returns></returns>
+ void SetPlaySpeed( double speed);
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <returns>The volume level</returns>
+double GetVolume();
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <param name="volume">The volume level</param>
+/// <returns></returns>
+ void SetVolume( double volume);
+   /// <summary>This property controls the audio mute state.</summary>
+/// <returns>The mute state. <c>true</c> or <c>false</c>.</returns>
+bool GetMute();
+   /// <summary>This property controls the audio mute state.</summary>
+/// <param name="mute">The mute state. <c>true</c> or <c>false</c>.</param>
+/// <returns></returns>
+ void SetMute( bool mute);
+   /// <summary>Get the length of play for the media file.</summary>
+/// <returns>The length of the stream in seconds.</returns>
+double GetLength();
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <returns><c>true</c> if seekable.</returns>
+bool GetSeekable();
+   /// <summary>Start a playing playable object.</summary>
+/// <returns></returns>
+ void Start();
+   /// <summary>Stop playable object.</summary>
+/// <returns></returns>
+ void Stop();
+                                                   /// <summary>Whether or not the playable can be played.</summary>
+/// <value><c>true</c> if the object have playable data, <c>false</c> otherwise</value>
+   bool Playable {
+      get ;
+   }
+   /// <summary>Get play/pause state of the media file.</summary>
+/// <value><c>true</c> if playing, <c>false</c> otherwise.</value>
+   bool Play {
+      get ;
+      set ;
+   }
+   /// <summary>Get the position in the media file.
+/// The position is returned as the number of seconds since the beginning of the media file.</summary>
+/// <value>The position (in seconds).</value>
+   double Pos {
+      get ;
+      set ;
+   }
+   /// <summary>Get how much of the file has been played.
+/// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+/// <value>The progress within the [0, 1] range.</value>
+   double Progress {
+      get ;
+   }
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <value>The play speed in the [0, infinity) range.</value>
+   double PlaySpeed {
+      get ;
+      set ;
+   }
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <value>The volume level</value>
+   double Volume {
+      get ;
+      set ;
+   }
+   /// <summary>This property controls the audio mute state.</summary>
+/// <value>The mute state. <c>true</c> or <c>false</c>.</value>
+   bool Mute {
+      get ;
+      set ;
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   double Length {
+      get ;
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   bool Seekable {
+      get ;
+   }
+}
+/// <summary>Efl media player interface</summary>
+sealed public class PlayerConcrete : 
+
+Player
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PlayerConcrete))
+            return Efl.PlayerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_player_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PlayerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PlayerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PlayerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PlayerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Whether or not the playable can be played.</summary>
+   /// <returns><c>true</c> if the object have playable data, <c>false</c> otherwise</returns>
+   public bool GetPlayable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_playable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get play/pause state of the media file.</summary>
+   /// <returns><c>true</c> if playing, <c>false</c> otherwise.</returns>
+   public bool GetPlay() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set play/pause state of the media file.
+   /// This functions sets the currently playing status of the video. Using this function to play or pause the video doesn&apos;t alter it&apos;s current position.</summary>
+   /// <param name="play"><c>true</c> if playing, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   public  void SetPlay( bool play) {
+                         Efl.PlayerNativeInherit.efl_player_play_set_ptr.Value.Delegate(this.NativeHandle, play);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the position in the media file.
+   /// The position is returned as the number of seconds since the beginning of the media file.</summary>
+   /// <returns>The position (in seconds).</returns>
+   public double GetPos() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_pos_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the position in the media file.
+   /// This functions sets the current position of the media file to &quot;sec&quot;, this only works on seekable streams. Setting the position doesn&apos;t change the playing state of the media file.</summary>
+   /// <param name="sec">The position (in seconds).</param>
+   /// <returns></returns>
+   public  void SetPos( double sec) {
+                         Efl.PlayerNativeInherit.efl_player_pos_set_ptr.Value.Delegate(this.NativeHandle, sec);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get how much of the file has been played.
+   /// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+   /// <returns>The progress within the [0, 1] range.</returns>
+   public double GetProgress() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_progress_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <returns>The play speed in the [0, infinity) range.</returns>
+   public double GetPlaySpeed() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_speed_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <param name="speed">The play speed in the [0, infinity) range.</param>
+   /// <returns></returns>
+   public  void SetPlaySpeed( double speed) {
+                         Efl.PlayerNativeInherit.efl_player_play_speed_set_ptr.Value.Delegate(this.NativeHandle, speed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <returns>The volume level</returns>
+   public double GetVolume() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_volume_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <param name="volume">The volume level</param>
+   /// <returns></returns>
+   public  void SetVolume( double volume) {
+                         Efl.PlayerNativeInherit.efl_player_volume_set_ptr.Value.Delegate(this.NativeHandle, volume);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <returns>The mute state. <c>true</c> or <c>false</c>.</returns>
+   public bool GetMute() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_mute_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <param name="mute">The mute state. <c>true</c> or <c>false</c>.</param>
+   /// <returns></returns>
+   public  void SetMute( bool mute) {
+                         Efl.PlayerNativeInherit.efl_player_mute_set_ptr.Value.Delegate(this.NativeHandle, mute);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the length of play for the media file.</summary>
+   /// <returns>The length of the stream in seconds.</returns>
+   public double GetLength() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_length_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get whether the media file is seekable.</summary>
+   /// <returns><c>true</c> if seekable.</returns>
+   public bool GetSeekable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_seekable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start a playing playable object.</summary>
+   /// <returns></returns>
+   public  void Start() {
+       Efl.PlayerNativeInherit.efl_player_start_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stop playable object.</summary>
+   /// <returns></returns>
+   public  void Stop() {
+       Efl.PlayerNativeInherit.efl_player_stop_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Whether or not the playable can be played.</summary>
+/// <value><c>true</c> if the object have playable data, <c>false</c> otherwise</value>
+   public bool Playable {
+      get { return GetPlayable(); }
+   }
+   /// <summary>Get play/pause state of the media file.</summary>
+/// <value><c>true</c> if playing, <c>false</c> otherwise.</value>
+   public bool Play {
+      get { return GetPlay(); }
+      set { SetPlay( value); }
+   }
+   /// <summary>Get the position in the media file.
+/// The position is returned as the number of seconds since the beginning of the media file.</summary>
+/// <value>The position (in seconds).</value>
+   public double Pos {
+      get { return GetPos(); }
+      set { SetPos( value); }
+   }
+   /// <summary>Get how much of the file has been played.
+/// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+/// <value>The progress within the [0, 1] range.</value>
+   public double Progress {
+      get { return GetProgress(); }
+   }
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <value>The play speed in the [0, infinity) range.</value>
+   public double PlaySpeed {
+      get { return GetPlaySpeed(); }
+      set { SetPlaySpeed( value); }
+   }
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <value>The volume level</value>
+   public double Volume {
+      get { return GetVolume(); }
+      set { SetVolume( value); }
+   }
+   /// <summary>This property controls the audio mute state.</summary>
+/// <value>The mute state. <c>true</c> or <c>false</c>.</value>
+   public bool Mute {
+      get { return GetMute(); }
+      set { SetMute( value); }
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   public double Length {
+      get { return GetLength(); }
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   public bool Seekable {
+      get { return GetSeekable(); }
+   }
+}
+public class PlayerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_player_playable_get_static_delegate == null)
+      efl_player_playable_get_static_delegate = new efl_player_playable_get_delegate(playable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_playable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_playable_get_static_delegate)});
+      if (efl_player_play_get_static_delegate == null)
+      efl_player_play_get_static_delegate = new efl_player_play_get_delegate(play_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_get_static_delegate)});
+      if (efl_player_play_set_static_delegate == null)
+      efl_player_play_set_static_delegate = new efl_player_play_set_delegate(play_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_set_static_delegate)});
+      if (efl_player_pos_get_static_delegate == null)
+      efl_player_pos_get_static_delegate = new efl_player_pos_get_delegate(pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_get_static_delegate)});
+      if (efl_player_pos_set_static_delegate == null)
+      efl_player_pos_set_static_delegate = new efl_player_pos_set_delegate(pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_set_static_delegate)});
+      if (efl_player_progress_get_static_delegate == null)
+      efl_player_progress_get_static_delegate = new efl_player_progress_get_delegate(progress_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_progress_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_progress_get_static_delegate)});
+      if (efl_player_play_speed_get_static_delegate == null)
+      efl_player_play_speed_get_static_delegate = new efl_player_play_speed_get_delegate(play_speed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_get_static_delegate)});
+      if (efl_player_play_speed_set_static_delegate == null)
+      efl_player_play_speed_set_static_delegate = new efl_player_play_speed_set_delegate(play_speed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_set_static_delegate)});
+      if (efl_player_volume_get_static_delegate == null)
+      efl_player_volume_get_static_delegate = new efl_player_volume_get_delegate(volume_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_get_static_delegate)});
+      if (efl_player_volume_set_static_delegate == null)
+      efl_player_volume_set_static_delegate = new efl_player_volume_set_delegate(volume_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_set_static_delegate)});
+      if (efl_player_mute_get_static_delegate == null)
+      efl_player_mute_get_static_delegate = new efl_player_mute_get_delegate(mute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_get_static_delegate)});
+      if (efl_player_mute_set_static_delegate == null)
+      efl_player_mute_set_static_delegate = new efl_player_mute_set_delegate(mute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_set_static_delegate)});
+      if (efl_player_length_get_static_delegate == null)
+      efl_player_length_get_static_delegate = new efl_player_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_length_get_static_delegate)});
+      if (efl_player_seekable_get_static_delegate == null)
+      efl_player_seekable_get_static_delegate = new efl_player_seekable_get_delegate(seekable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_seekable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_seekable_get_static_delegate)});
+      if (efl_player_start_static_delegate == null)
+      efl_player_start_static_delegate = new efl_player_start_delegate(start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_start"), func = Marshal.GetFunctionPointerForDelegate(efl_player_start_static_delegate)});
+      if (efl_player_stop_static_delegate == null)
+      efl_player_stop_static_delegate = new efl_player_stop_delegate(stop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_player_stop_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.PlayerConcrete.efl_player_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.PlayerConcrete.efl_player_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_playable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_playable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate> efl_player_playable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate>(_Module, "efl_player_playable_get");
+    private static bool playable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_playable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Player)wrapper).GetPlayable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_playable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_playable_get_delegate efl_player_playable_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_play_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_play_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate> efl_player_play_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate>(_Module, "efl_player_play_get");
+    private static bool play_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Player)wrapper).GetPlay();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_get_delegate efl_player_play_get_static_delegate;
+
+
+    private delegate  void efl_player_play_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool play);
+
+
+    public delegate  void efl_player_play_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool play);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate> efl_player_play_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate>(_Module, "efl_player_play_set");
+    private static  void play_set(System.IntPtr obj, System.IntPtr pd,  bool play)
+   {
+      Eina.Log.Debug("function efl_player_play_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Player)wrapper).SetPlay( play);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  play);
+      }
+   }
+   private static efl_player_play_set_delegate efl_player_play_set_static_delegate;
+
+
+    private delegate double efl_player_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate> efl_player_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate>(_Module, "efl_player_pos_get");
+    private static double pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Player)wrapper).GetPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_pos_get_delegate efl_player_pos_get_static_delegate;
+
+
+    private delegate  void efl_player_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   double sec);
+
+
+    public delegate  void efl_player_pos_set_api_delegate(System.IntPtr obj,   double sec);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate> efl_player_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate>(_Module, "efl_player_pos_set");
+    private static  void pos_set(System.IntPtr obj, System.IntPtr pd,  double sec)
+   {
+      Eina.Log.Debug("function efl_player_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Player)wrapper).SetPos( sec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sec);
+      }
+   }
+   private static efl_player_pos_set_delegate efl_player_pos_set_static_delegate;
+
+
+    private delegate double efl_player_progress_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_progress_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate> efl_player_progress_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate>(_Module, "efl_player_progress_get");
+    private static double progress_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_progress_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Player)wrapper).GetProgress();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_progress_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_progress_get_delegate efl_player_progress_get_static_delegate;
+
+
+    private delegate double efl_player_play_speed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_play_speed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate> efl_player_play_speed_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate>(_Module, "efl_player_play_speed_get");
+    private static double play_speed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Player)wrapper).GetPlaySpeed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_speed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_speed_get_delegate efl_player_play_speed_get_static_delegate;
+
+
+    private delegate  void efl_player_play_speed_set_delegate(System.IntPtr obj, System.IntPtr pd,   double speed);
+
+
+    public delegate  void efl_player_play_speed_set_api_delegate(System.IntPtr obj,   double speed);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate> efl_player_play_speed_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate>(_Module, "efl_player_play_speed_set");
+    private static  void play_speed_set(System.IntPtr obj, System.IntPtr pd,  double speed)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Player)wrapper).SetPlaySpeed( speed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_speed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  speed);
+      }
+   }
+   private static efl_player_play_speed_set_delegate efl_player_play_speed_set_static_delegate;
+
+
+    private delegate double efl_player_volume_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_volume_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate> efl_player_volume_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate>(_Module, "efl_player_volume_get");
+    private static double volume_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_volume_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Player)wrapper).GetVolume();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_volume_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_volume_get_delegate efl_player_volume_get_static_delegate;
+
+
+    private delegate  void efl_player_volume_set_delegate(System.IntPtr obj, System.IntPtr pd,   double volume);
+
+
+    public delegate  void efl_player_volume_set_api_delegate(System.IntPtr obj,   double volume);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate> efl_player_volume_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate>(_Module, "efl_player_volume_set");
+    private static  void volume_set(System.IntPtr obj, System.IntPtr pd,  double volume)
+   {
+      Eina.Log.Debug("function efl_player_volume_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Player)wrapper).SetVolume( volume);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_volume_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  volume);
+      }
+   }
+   private static efl_player_volume_set_delegate efl_player_volume_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_mute_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_mute_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate> efl_player_mute_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate>(_Module, "efl_player_mute_get");
+    private static bool mute_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_mute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Player)wrapper).GetMute();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_mute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_mute_get_delegate efl_player_mute_get_static_delegate;
+
+
+    private delegate  void efl_player_mute_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+
+
+    public delegate  void efl_player_mute_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate> efl_player_mute_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate>(_Module, "efl_player_mute_set");
+    private static  void mute_set(System.IntPtr obj, System.IntPtr pd,  bool mute)
+   {
+      Eina.Log.Debug("function efl_player_mute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Player)wrapper).SetMute( mute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_mute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mute);
+      }
+   }
+   private static efl_player_mute_set_delegate efl_player_mute_set_static_delegate;
+
+
+    private delegate double efl_player_length_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_length_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate> efl_player_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate>(_Module, "efl_player_length_get");
+    private static double length_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Player)wrapper).GetLength();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_length_get_delegate efl_player_length_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_seekable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_seekable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate> efl_player_seekable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate>(_Module, "efl_player_seekable_get");
+    private static bool seekable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_seekable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Player)wrapper).GetSeekable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_seekable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_seekable_get_delegate efl_player_seekable_get_static_delegate;
+
+
+    private delegate  void efl_player_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_start_api_delegate> efl_player_start_ptr = new Efl.Eo.FunctionWrapper<efl_player_start_api_delegate>(_Module, "efl_player_start");
+    private static  void start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Player)wrapper).Start();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_start_delegate efl_player_start_static_delegate;
+
+
+    private delegate  void efl_player_stop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_stop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate> efl_player_stop_ptr = new Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate>(_Module, "efl_player_stop");
+    private static  void stop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_stop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Player)wrapper).Stop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_stop_delegate efl_player_stop_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_screen.eo.cs b/internals/src/EflSharp/EflSharp/efl_screen.eo.cs
new file mode 100755 (executable)
index 0000000..34e7385
--- /dev/null
@@ -0,0 +1,316 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl screen interface</summary>
+[ScreenNativeInherit]
+public interface Screen : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get screen size (in pixels) for the screen.
+/// Note that on some display systems this information is not available and a value of 0x0 will be returned.</summary>
+/// <returns>The screen size in pixels.</returns>
+Eina.Size2D GetScreenSizeInPixels();
+   /// <summary>Get screen scaling factor.
+/// This is the factor by which window contents will be scaled on the screen.
+/// 
+/// Note that on some display systems this information is not available and a value of 1.0 will be returned.</summary>
+/// <returns>The screen scaling factor.</returns>
+float GetScreenScaleFactor();
+   /// <summary>Get the rotation of the screen.
+/// Most engines only return multiples of 90.
+/// 1.19</summary>
+/// <returns>Screen rotation in degrees.</returns>
+ int GetScreenRotation();
+   /// <summary>Get the pixel density in DPI (Dots Per Inch) for the screen that a window is on.
+/// 1.7</summary>
+/// <param name="xdpi">Horizontal DPI.</param>
+/// <param name="ydpi">Vertical DPI.</param>
+/// <returns></returns>
+ void GetScreenDpi( out  int xdpi,  out  int ydpi);
+               /// <summary>Get screen size (in pixels) for the screen.
+/// Note that on some display systems this information is not available and a value of 0x0 will be returned.</summary>
+/// <value>The screen size in pixels.</value>
+   Eina.Size2D ScreenSizeInPixels {
+      get ;
+   }
+   /// <summary>Get screen scaling factor.
+/// This is the factor by which window contents will be scaled on the screen.
+/// 
+/// Note that on some display systems this information is not available and a value of 1.0 will be returned.</summary>
+/// <value>The screen scaling factor.</value>
+   float ScreenScaleFactor {
+      get ;
+   }
+   /// <summary>Get the rotation of the screen.
+/// Most engines only return multiples of 90.
+/// 1.19</summary>
+/// <value>Screen rotation in degrees.</value>
+    int ScreenRotation {
+      get ;
+   }
+}
+/// <summary>Efl screen interface</summary>
+sealed public class ScreenConcrete : 
+
+Screen
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ScreenConcrete))
+            return Efl.ScreenNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_screen_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ScreenConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ScreenConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ScreenConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ScreenConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get screen size (in pixels) for the screen.
+   /// Note that on some display systems this information is not available and a value of 0x0 will be returned.</summary>
+   /// <returns>The screen size in pixels.</returns>
+   public Eina.Size2D GetScreenSizeInPixels() {
+       var _ret_var = Efl.ScreenNativeInherit.efl_screen_size_in_pixels_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Get screen scaling factor.
+   /// This is the factor by which window contents will be scaled on the screen.
+   /// 
+   /// Note that on some display systems this information is not available and a value of 1.0 will be returned.</summary>
+   /// <returns>The screen scaling factor.</returns>
+   public float GetScreenScaleFactor() {
+       var _ret_var = Efl.ScreenNativeInherit.efl_screen_scale_factor_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the rotation of the screen.
+   /// Most engines only return multiples of 90.
+   /// 1.19</summary>
+   /// <returns>Screen rotation in degrees.</returns>
+   public  int GetScreenRotation() {
+       var _ret_var = Efl.ScreenNativeInherit.efl_screen_rotation_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the pixel density in DPI (Dots Per Inch) for the screen that a window is on.
+   /// 1.7</summary>
+   /// <param name="xdpi">Horizontal DPI.</param>
+   /// <param name="ydpi">Vertical DPI.</param>
+   /// <returns></returns>
+   public  void GetScreenDpi( out  int xdpi,  out  int ydpi) {
+                                           Efl.ScreenNativeInherit.efl_screen_dpi_get_ptr.Value.Delegate(this.NativeHandle, out xdpi,  out ydpi);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get screen size (in pixels) for the screen.
+/// Note that on some display systems this information is not available and a value of 0x0 will be returned.</summary>
+/// <value>The screen size in pixels.</value>
+   public Eina.Size2D ScreenSizeInPixels {
+      get { return GetScreenSizeInPixels(); }
+   }
+   /// <summary>Get screen scaling factor.
+/// This is the factor by which window contents will be scaled on the screen.
+/// 
+/// Note that on some display systems this information is not available and a value of 1.0 will be returned.</summary>
+/// <value>The screen scaling factor.</value>
+   public float ScreenScaleFactor {
+      get { return GetScreenScaleFactor(); }
+   }
+   /// <summary>Get the rotation of the screen.
+/// Most engines only return multiples of 90.
+/// 1.19</summary>
+/// <value>Screen rotation in degrees.</value>
+   public  int ScreenRotation {
+      get { return GetScreenRotation(); }
+   }
+}
+public class ScreenNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_screen_size_in_pixels_get_static_delegate == null)
+      efl_screen_size_in_pixels_get_static_delegate = new efl_screen_size_in_pixels_get_delegate(screen_size_in_pixels_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_size_in_pixels_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_size_in_pixels_get_static_delegate)});
+      if (efl_screen_scale_factor_get_static_delegate == null)
+      efl_screen_scale_factor_get_static_delegate = new efl_screen_scale_factor_get_delegate(screen_scale_factor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_scale_factor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_scale_factor_get_static_delegate)});
+      if (efl_screen_rotation_get_static_delegate == null)
+      efl_screen_rotation_get_static_delegate = new efl_screen_rotation_get_delegate(screen_rotation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_rotation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_rotation_get_static_delegate)});
+      if (efl_screen_dpi_get_static_delegate == null)
+      efl_screen_dpi_get_static_delegate = new efl_screen_dpi_get_delegate(screen_dpi_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_dpi_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_dpi_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ScreenConcrete.efl_screen_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ScreenConcrete.efl_screen_interface_get();
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_screen_size_in_pixels_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_screen_size_in_pixels_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_screen_size_in_pixels_get_api_delegate> efl_screen_size_in_pixels_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_size_in_pixels_get_api_delegate>(_Module, "efl_screen_size_in_pixels_get");
+    private static Eina.Size2D_StructInternal screen_size_in_pixels_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_screen_size_in_pixels_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Screen)wrapper).GetScreenSizeInPixels();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_screen_size_in_pixels_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_screen_size_in_pixels_get_delegate efl_screen_size_in_pixels_get_static_delegate;
+
+
+    private delegate float efl_screen_scale_factor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate float efl_screen_scale_factor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_screen_scale_factor_get_api_delegate> efl_screen_scale_factor_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_scale_factor_get_api_delegate>(_Module, "efl_screen_scale_factor_get");
+    private static float screen_scale_factor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_screen_scale_factor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  float _ret_var = default(float);
+         try {
+            _ret_var = ((Screen)wrapper).GetScreenScaleFactor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_screen_scale_factor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_screen_scale_factor_get_delegate efl_screen_scale_factor_get_static_delegate;
+
+
+    private delegate  int efl_screen_rotation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_screen_rotation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_screen_rotation_get_api_delegate> efl_screen_rotation_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_rotation_get_api_delegate>(_Module, "efl_screen_rotation_get");
+    private static  int screen_rotation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_screen_rotation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Screen)wrapper).GetScreenRotation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_screen_rotation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_screen_rotation_get_delegate efl_screen_rotation_get_static_delegate;
+
+
+    private delegate  void efl_screen_dpi_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int xdpi,   out  int ydpi);
+
+
+    public delegate  void efl_screen_dpi_get_api_delegate(System.IntPtr obj,   out  int xdpi,   out  int ydpi);
+    public static Efl.Eo.FunctionWrapper<efl_screen_dpi_get_api_delegate> efl_screen_dpi_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_dpi_get_api_delegate>(_Module, "efl_screen_dpi_get");
+    private static  void screen_dpi_get(System.IntPtr obj, System.IntPtr pd,  out  int xdpi,  out  int ydpi)
+   {
+      Eina.Log.Debug("function efl_screen_dpi_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           xdpi = default( int);      ydpi = default( int);                     
+         try {
+            ((Screen)wrapper).GetScreenDpi( out xdpi,  out ydpi);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_screen_dpi_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out xdpi,  out ydpi);
+      }
+   }
+   private static efl_screen_dpi_get_delegate efl_screen_dpi_get_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_select_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_select_model.eo.cs
new file mode 100755 (executable)
index 0000000..c6fd10f
--- /dev/null
@@ -0,0 +1,199 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+///<summary>Event argument wrapper for event <see cref="Efl.SelectModel.SelectedEvt"/>.</summary>
+public class SelectModelSelectedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.SelectModel.UnselectedEvt"/>.</summary>
+public class SelectModelUnselectedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+/// <summary>Efl select model class</summary>
+[SelectModelNativeInherit]
+public class SelectModel : Efl.BooleanModel, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.SelectModelNativeInherit nativeInherit = new Efl.SelectModelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SelectModel))
+            return Efl.SelectModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_select_model_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="model">Model that is/will be See <see cref="Efl.Ui.View.SetModel"/></param>
+   ///<param name="index">Position of this object in the parent model. See <see cref="Efl.CompositeModel.SetIndex"/></param>
+   public SelectModel(Efl.Object parent
+         , Efl.Model model,  uint? index = null) :
+      base(efl_select_model_class_get(), typeof(SelectModel), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(model))
+         SetModel(Efl.Eo.Globals.GetParamHelper(model));
+      if (Efl.Eo.Globals.ParamHelperCheck(index))
+         SetIndex(Efl.Eo.Globals.GetParamHelper(index));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SelectModel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SelectModel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SelectModel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SelectModel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object SelectedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.SelectModelSelectedEvt_Args> SelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_SELECT_MODEL_EVENT_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_SelectedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_SELECT_MODEL_EVENT_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_SelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectedEvt.</summary>
+   public void On_SelectedEvt(Efl.SelectModelSelectedEvt_Args e)
+   {
+      EventHandler<Efl.SelectModelSelectedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.SelectModelSelectedEvt_Args>)eventHandlers[SelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectedEvt_delegate;
+   private void on_SelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.SelectModelSelectedEvt_Args args = new Efl.SelectModelSelectedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_SelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnselectedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.SelectModelUnselectedEvt_Args> UnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_SELECT_MODEL_EVENT_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Ecore, key, this.evt_UnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_SELECT_MODEL_EVENT_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_UnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnselectedEvt.</summary>
+   public void On_UnselectedEvt(Efl.SelectModelUnselectedEvt_Args e)
+   {
+      EventHandler<Efl.SelectModelUnselectedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.SelectModelUnselectedEvt_Args>)eventHandlers[UnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnselectedEvt_delegate;
+   private void on_UnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.SelectModelUnselectedEvt_Args args = new Efl.SelectModelUnselectedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_SelectedEvt_delegate = new Efl.EventCb(on_SelectedEvt_NativeCallback);
+      evt_UnselectedEvt_delegate = new Efl.EventCb(on_UnselectedEvt_NativeCallback);
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.SelectModel.efl_select_model_class_get();
+   }
+}
+public class SelectModelNativeInherit : Efl.BooleanModelNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.SelectModel.efl_select_model_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.SelectModel.efl_select_model_class_get();
+   }
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_sinusoidal_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_sinusoidal_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..2dfad44
--- /dev/null
@@ -0,0 +1,203 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl sinusoidal interpolator class
+/// output = (1 - cos(input * Pi)) / 2;</summary>
+[SinusoidalInterpolatorNativeInherit]
+public class SinusoidalInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.SinusoidalInterpolatorNativeInherit nativeInherit = new Efl.SinusoidalInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SinusoidalInterpolator))
+            return Efl.SinusoidalInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_sinusoidal_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public SinusoidalInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_sinusoidal_interpolator_class_get(), typeof(SinusoidalInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SinusoidalInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SinusoidalInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SinusoidalInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SinusoidalInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Factor property</summary>
+   /// <returns>Factor of the interpolation function.</returns>
+   virtual public double GetFactor() {
+       var _ret_var = Efl.SinusoidalInterpolatorNativeInherit.efl_sinusoidal_interpolator_factor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Factor property</summary>
+   /// <param name="factor">Factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void SetFactor( double factor) {
+                         Efl.SinusoidalInterpolatorNativeInherit.efl_sinusoidal_interpolator_factor_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factor);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Factor property</summary>
+/// <value>Factor of the interpolation function.</value>
+   public double Factor {
+      get { return GetFactor(); }
+      set { SetFactor( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.SinusoidalInterpolator.efl_sinusoidal_interpolator_class_get();
+   }
+}
+public class SinusoidalInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_sinusoidal_interpolator_factor_get_static_delegate == null)
+      efl_sinusoidal_interpolator_factor_get_static_delegate = new efl_sinusoidal_interpolator_factor_get_delegate(factor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_sinusoidal_interpolator_factor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_sinusoidal_interpolator_factor_get_static_delegate)});
+      if (efl_sinusoidal_interpolator_factor_set_static_delegate == null)
+      efl_sinusoidal_interpolator_factor_set_static_delegate = new efl_sinusoidal_interpolator_factor_set_delegate(factor_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_sinusoidal_interpolator_factor_set"), func = Marshal.GetFunctionPointerForDelegate(efl_sinusoidal_interpolator_factor_set_static_delegate)});
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.SinusoidalInterpolator.efl_sinusoidal_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.SinusoidalInterpolator.efl_sinusoidal_interpolator_class_get();
+   }
+
+
+    private delegate double efl_sinusoidal_interpolator_factor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_sinusoidal_interpolator_factor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_sinusoidal_interpolator_factor_get_api_delegate> efl_sinusoidal_interpolator_factor_get_ptr = new Efl.Eo.FunctionWrapper<efl_sinusoidal_interpolator_factor_get_api_delegate>(_Module, "efl_sinusoidal_interpolator_factor_get");
+    private static double factor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_sinusoidal_interpolator_factor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((SinusoidalInterpolator)wrapper).GetFactor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_sinusoidal_interpolator_factor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_sinusoidal_interpolator_factor_get_delegate efl_sinusoidal_interpolator_factor_get_static_delegate;
+
+
+    private delegate  void efl_sinusoidal_interpolator_factor_set_delegate(System.IntPtr obj, System.IntPtr pd,   double factor);
+
+
+    public delegate  void efl_sinusoidal_interpolator_factor_set_api_delegate(System.IntPtr obj,   double factor);
+    public static Efl.Eo.FunctionWrapper<efl_sinusoidal_interpolator_factor_set_api_delegate> efl_sinusoidal_interpolator_factor_set_ptr = new Efl.Eo.FunctionWrapper<efl_sinusoidal_interpolator_factor_set_api_delegate>(_Module, "efl_sinusoidal_interpolator_factor_set");
+    private static  void factor_set(System.IntPtr obj, System.IntPtr pd,  double factor)
+   {
+      Eina.Log.Debug("function efl_sinusoidal_interpolator_factor_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((SinusoidalInterpolator)wrapper).SetFactor( factor);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_sinusoidal_interpolator_factor_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factor);
+      }
+   }
+   private static efl_sinusoidal_interpolator_factor_set_delegate efl_sinusoidal_interpolator_factor_set_static_delegate;
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((SinusoidalInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_spring_interpolator.eo.cs b/internals/src/EflSharp/EflSharp/efl_spring_interpolator.eo.cs
new file mode 100755 (executable)
index 0000000..0d2b838
--- /dev/null
@@ -0,0 +1,197 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl spring interpolator class</summary>
+[SpringInterpolatorNativeInherit]
+public class SpringInterpolator : Efl.Object, Efl.Eo.IWrapper,Efl.Interpolator
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.SpringInterpolatorNativeInherit nativeInherit = new Efl.SpringInterpolatorNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SpringInterpolator))
+            return Efl.SpringInterpolatorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_spring_interpolator_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public SpringInterpolator(Efl.Object parent= null
+         ) :
+      base(efl_spring_interpolator_class_get(), typeof(SpringInterpolator), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SpringInterpolator(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SpringInterpolator(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SpringInterpolator static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SpringInterpolator(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void GetFactors( out double factor1,  out double factor2) {
+                                           Efl.SpringInterpolatorNativeInherit.efl_spring_interpolator_factors_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out factor1,  out factor2);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Factors property</summary>
+   /// <param name="factor1">First factor of the interpolation function.</param>
+   /// <param name="factor2">Second factor of the interpolation function.</param>
+   /// <returns></returns>
+   virtual public  void SetFactors( double factor1,  double factor2) {
+                                           Efl.SpringInterpolatorNativeInherit.efl_spring_interpolator_factors_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factor1,  factor2);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Interpolate the given value.</summary>
+   /// <param name="progress">Input value mapped from 0.0 to 1.0.</param>
+   /// <returns>Output value calculated by interpolating the input value.</returns>
+   virtual public double Interpolate( double progress) {
+                         var _ret_var = Efl.InterpolatorNativeInherit.efl_interpolator_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), progress);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.SpringInterpolator.efl_spring_interpolator_class_get();
+   }
+}
+public class SpringInterpolatorNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_spring_interpolator_factors_get_static_delegate == null)
+      efl_spring_interpolator_factors_get_static_delegate = new efl_spring_interpolator_factors_get_delegate(factors_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_spring_interpolator_factors_get"), func = Marshal.GetFunctionPointerForDelegate(efl_spring_interpolator_factors_get_static_delegate)});
+      if (efl_spring_interpolator_factors_set_static_delegate == null)
+      efl_spring_interpolator_factors_set_static_delegate = new efl_spring_interpolator_factors_set_delegate(factors_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_spring_interpolator_factors_set"), func = Marshal.GetFunctionPointerForDelegate(efl_spring_interpolator_factors_set_static_delegate)});
+      if (efl_interpolator_interpolate_static_delegate == null)
+      efl_interpolator_interpolate_static_delegate = new efl_interpolator_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_interpolator_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_interpolator_interpolate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.SpringInterpolator.efl_spring_interpolator_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.SpringInterpolator.efl_spring_interpolator_class_get();
+   }
+
+
+    private delegate  void efl_spring_interpolator_factors_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double factor1,   out double factor2);
+
+
+    public delegate  void efl_spring_interpolator_factors_get_api_delegate(System.IntPtr obj,   out double factor1,   out double factor2);
+    public static Efl.Eo.FunctionWrapper<efl_spring_interpolator_factors_get_api_delegate> efl_spring_interpolator_factors_get_ptr = new Efl.Eo.FunctionWrapper<efl_spring_interpolator_factors_get_api_delegate>(_Module, "efl_spring_interpolator_factors_get");
+    private static  void factors_get(System.IntPtr obj, System.IntPtr pd,  out double factor1,  out double factor2)
+   {
+      Eina.Log.Debug("function efl_spring_interpolator_factors_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           factor1 = default(double);      factor2 = default(double);                     
+         try {
+            ((SpringInterpolator)wrapper).GetFactors( out factor1,  out factor2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_spring_interpolator_factors_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out factor1,  out factor2);
+      }
+   }
+   private static efl_spring_interpolator_factors_get_delegate efl_spring_interpolator_factors_get_static_delegate;
+
+
+    private delegate  void efl_spring_interpolator_factors_set_delegate(System.IntPtr obj, System.IntPtr pd,   double factor1,   double factor2);
+
+
+    public delegate  void efl_spring_interpolator_factors_set_api_delegate(System.IntPtr obj,   double factor1,   double factor2);
+    public static Efl.Eo.FunctionWrapper<efl_spring_interpolator_factors_set_api_delegate> efl_spring_interpolator_factors_set_ptr = new Efl.Eo.FunctionWrapper<efl_spring_interpolator_factors_set_api_delegate>(_Module, "efl_spring_interpolator_factors_set");
+    private static  void factors_set(System.IntPtr obj, System.IntPtr pd,  double factor1,  double factor2)
+   {
+      Eina.Log.Debug("function efl_spring_interpolator_factors_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((SpringInterpolator)wrapper).SetFactors( factor1,  factor2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_spring_interpolator_factors_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factor1,  factor2);
+      }
+   }
+   private static efl_spring_interpolator_factors_set_delegate efl_spring_interpolator_factors_set_static_delegate;
+
+
+    private delegate double efl_interpolator_interpolate_delegate(System.IntPtr obj, System.IntPtr pd,   double progress);
+
+
+    public delegate double efl_interpolator_interpolate_api_delegate(System.IntPtr obj,   double progress);
+    public static Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate> efl_interpolator_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_interpolator_interpolate_api_delegate>(_Module, "efl_interpolator_interpolate");
+    private static double interpolate(System.IntPtr obj, System.IntPtr pd,  double progress)
+   {
+      Eina.Log.Debug("function efl_interpolator_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((SpringInterpolator)wrapper).Interpolate( progress);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_interpolator_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  progress);
+      }
+   }
+   private static efl_interpolator_interpolate_delegate efl_interpolator_interpolate_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_task.eo.cs b/internals/src/EflSharp/EflSharp/efl_task.eo.cs
new file mode 100755 (executable)
index 0000000..fef81f0
--- /dev/null
@@ -0,0 +1,384 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+[TaskNativeInherit]
+public class Task : Efl.LoopConsumer, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.TaskNativeInherit nativeInherit = new Efl.TaskNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Task))
+            return Efl.TaskNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_task_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Task(Efl.Object parent= null
+         ) :
+      base(efl_task_class_get(), typeof(Task), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Task(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Task(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Task static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Task(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The priority of this task.</summary>
+   /// <returns>No description supplied.</returns>
+   virtual public Efl.TaskPriority GetPriority() {
+       var _ret_var = Efl.TaskNativeInherit.efl_task_priority_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The priority of this task.</summary>
+   /// <param name="priority">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetPriority( Efl.TaskPriority priority) {
+                         Efl.TaskNativeInherit.efl_task_priority_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), priority);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The final exit code of this task.</summary>
+   /// <returns>No description supplied.</returns>
+   virtual public  int GetExitCode() {
+       var _ret_var = Efl.TaskNativeInherit.efl_task_exit_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   virtual public Efl.TaskFlags GetFlags() {
+       var _ret_var = Efl.TaskNativeInherit.efl_task_flags_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="flags">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetFlags( Efl.TaskFlags flags) {
+                         Efl.TaskNativeInherit.efl_task_flags_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flags);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Actually run the task</summary>
+   /// <returns>A future triggered when task exits and is passed int exit code</returns>
+   virtual public  Eina.Future Run() {
+       var _ret_var = Efl.TaskNativeInherit.efl_task_run_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Request the task end (may send a signal or interrupt signal resulting in a terminate event being tiggered in the target task loop)</summary>
+   /// <returns></returns>
+   virtual public  void End() {
+       Efl.TaskNativeInherit.efl_task_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   public System.Threading.Tasks.Task<Eina.Value> RunAsync( System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = Run();
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   /// <summary>The priority of this task.</summary>
+/// <value>No description supplied.</value>
+   public Efl.TaskPriority Priority {
+      get { return GetPriority(); }
+      set { SetPriority( value); }
+   }
+   /// <summary>The final exit code of this task.</summary>
+/// <value>No description supplied.</value>
+   public  int ExitCode {
+      get { return GetExitCode(); }
+   }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public Efl.TaskFlags Flags {
+      get { return GetFlags(); }
+      set { SetFlags( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Task.efl_task_class_get();
+   }
+}
+public class TaskNativeInherit : Efl.LoopConsumerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_task_priority_get_static_delegate == null)
+      efl_task_priority_get_static_delegate = new efl_task_priority_get_delegate(priority_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_task_priority_get"), func = Marshal.GetFunctionPointerForDelegate(efl_task_priority_get_static_delegate)});
+      if (efl_task_priority_set_static_delegate == null)
+      efl_task_priority_set_static_delegate = new efl_task_priority_set_delegate(priority_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_task_priority_set"), func = Marshal.GetFunctionPointerForDelegate(efl_task_priority_set_static_delegate)});
+      if (efl_task_exit_code_get_static_delegate == null)
+      efl_task_exit_code_get_static_delegate = new efl_task_exit_code_get_delegate(exit_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_task_exit_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_task_exit_code_get_static_delegate)});
+      if (efl_task_flags_get_static_delegate == null)
+      efl_task_flags_get_static_delegate = new efl_task_flags_get_delegate(flags_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_task_flags_get"), func = Marshal.GetFunctionPointerForDelegate(efl_task_flags_get_static_delegate)});
+      if (efl_task_flags_set_static_delegate == null)
+      efl_task_flags_set_static_delegate = new efl_task_flags_set_delegate(flags_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_task_flags_set"), func = Marshal.GetFunctionPointerForDelegate(efl_task_flags_set_static_delegate)});
+      if (efl_task_run_static_delegate == null)
+      efl_task_run_static_delegate = new efl_task_run_delegate(run);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_task_run"), func = Marshal.GetFunctionPointerForDelegate(efl_task_run_static_delegate)});
+      if (efl_task_end_static_delegate == null)
+      efl_task_end_static_delegate = new efl_task_end_delegate(end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_task_end"), func = Marshal.GetFunctionPointerForDelegate(efl_task_end_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Task.efl_task_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Task.efl_task_class_get();
+   }
+
+
+    private delegate Efl.TaskPriority efl_task_priority_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TaskPriority efl_task_priority_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_task_priority_get_api_delegate> efl_task_priority_get_ptr = new Efl.Eo.FunctionWrapper<efl_task_priority_get_api_delegate>(_Module, "efl_task_priority_get");
+    private static Efl.TaskPriority priority_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_task_priority_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TaskPriority _ret_var = default(Efl.TaskPriority);
+         try {
+            _ret_var = ((Task)wrapper).GetPriority();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_task_priority_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_task_priority_get_delegate efl_task_priority_get_static_delegate;
+
+
+    private delegate  void efl_task_priority_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TaskPriority priority);
+
+
+    public delegate  void efl_task_priority_set_api_delegate(System.IntPtr obj,   Efl.TaskPriority priority);
+    public static Efl.Eo.FunctionWrapper<efl_task_priority_set_api_delegate> efl_task_priority_set_ptr = new Efl.Eo.FunctionWrapper<efl_task_priority_set_api_delegate>(_Module, "efl_task_priority_set");
+    private static  void priority_set(System.IntPtr obj, System.IntPtr pd,  Efl.TaskPriority priority)
+   {
+      Eina.Log.Debug("function efl_task_priority_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Task)wrapper).SetPriority( priority);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_task_priority_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  priority);
+      }
+   }
+   private static efl_task_priority_set_delegate efl_task_priority_set_static_delegate;
+
+
+    private delegate  int efl_task_exit_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_task_exit_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_task_exit_code_get_api_delegate> efl_task_exit_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_task_exit_code_get_api_delegate>(_Module, "efl_task_exit_code_get");
+    private static  int exit_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_task_exit_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Task)wrapper).GetExitCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_task_exit_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_task_exit_code_get_delegate efl_task_exit_code_get_static_delegate;
+
+
+    private delegate Efl.TaskFlags efl_task_flags_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TaskFlags efl_task_flags_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_task_flags_get_api_delegate> efl_task_flags_get_ptr = new Efl.Eo.FunctionWrapper<efl_task_flags_get_api_delegate>(_Module, "efl_task_flags_get");
+    private static Efl.TaskFlags flags_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_task_flags_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TaskFlags _ret_var = default(Efl.TaskFlags);
+         try {
+            _ret_var = ((Task)wrapper).GetFlags();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_task_flags_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_task_flags_get_delegate efl_task_flags_get_static_delegate;
+
+
+    private delegate  void efl_task_flags_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TaskFlags flags);
+
+
+    public delegate  void efl_task_flags_set_api_delegate(System.IntPtr obj,   Efl.TaskFlags flags);
+    public static Efl.Eo.FunctionWrapper<efl_task_flags_set_api_delegate> efl_task_flags_set_ptr = new Efl.Eo.FunctionWrapper<efl_task_flags_set_api_delegate>(_Module, "efl_task_flags_set");
+    private static  void flags_set(System.IntPtr obj, System.IntPtr pd,  Efl.TaskFlags flags)
+   {
+      Eina.Log.Debug("function efl_task_flags_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Task)wrapper).SetFlags( flags);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_task_flags_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flags);
+      }
+   }
+   private static efl_task_flags_set_delegate efl_task_flags_set_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_task_run_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_task_run_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_task_run_api_delegate> efl_task_run_ptr = new Efl.Eo.FunctionWrapper<efl_task_run_api_delegate>(_Module, "efl_task_run");
+    private static  Eina.Future run(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_task_run was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Task)wrapper).Run();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_task_run_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_task_run_delegate efl_task_run_static_delegate;
+
+
+    private delegate  void efl_task_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_task_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_task_end_api_delegate> efl_task_end_ptr = new Efl.Eo.FunctionWrapper<efl_task_end_api_delegate>(_Module, "efl_task_end");
+    private static  void end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_task_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Task)wrapper).End();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_task_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_task_end_delegate efl_task_end_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+public enum TaskPriority
+{
+/// <summary></summary>
+Normal = 0,
+/// <summary></summary>
+Background = 1,
+/// <summary></summary>
+Low = 2,
+/// <summary></summary>
+High = 3,
+/// <summary></summary>
+Ultra = 4,
+}
+} 
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+public enum TaskFlags
+{
+/// <summary></summary>
+None = 0,
+/// <summary></summary>
+UseStdin = 1,
+/// <summary></summary>
+UseStdout = 2,
+/// <summary></summary>
+NoExitCodeError = 4,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text.eo.cs b/internals/src/EflSharp/EflSharp/efl_text.eo.cs
new file mode 100755 (executable)
index 0000000..bc90054
--- /dev/null
@@ -0,0 +1,190 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Efl text interface</summary>
+[TextNativeInherit]
+public interface Text : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+/// Do not free() the return value.
+/// 
+/// See also <see cref="Efl.Text.GetText"/>.</summary>
+/// <returns>Text string to display on it.</returns>
+ System.String GetText();
+   /// <summary>Sets the text string to be displayed by the given text object.
+/// See also <see cref="Efl.Text.GetText"/>.</summary>
+/// <param name="text">Text string to display on it.</param>
+/// <returns></returns>
+ void SetText(  System.String text);
+      }
+/// <summary>Efl text interface</summary>
+sealed public class TextConcrete : 
+
+Text
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextConcrete))
+            return Efl.TextNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate(this.NativeHandle, text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+}
+public class TextNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextConcrete.efl_text_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextConcrete.efl_text_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_annotate.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_annotate.eo.cs
new file mode 100755 (executable)
index 0000000..c136af6
--- /dev/null
@@ -0,0 +1,628 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Cursor API
+/// 1.20</summary>
+[TextAnnotateNativeInherit]
+public interface TextAnnotate : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>A new format for <c>annotation</c>.
+/// This will replace the format applied by <c>annotation</c> with <c>format</c>. Assumes that <c>annotation</c> is a handle for an existing annotation, i.e. one that was added using <see cref="Efl.TextAnnotate.AnnotationInsert"/> to this object. Otherwise, this will fail and return <c>false</c>.
+/// 1.18</summary>
+/// <param name="annotation">Given annotation
+/// 1.20</param>
+/// <returns>The new format for the given annotation
+/// 1.20</returns>
+ System.String GetAnnotation( Efl.TextAnnotateAnnotation annotation);
+   /// <summary>A new format for <c>annotation</c>.
+/// This will replace the format applied by <c>annotation</c> with <c>format</c>. Assumes that <c>annotation</c> is a handle for an existing annotation, i.e. one that was added using <see cref="Efl.TextAnnotate.AnnotationInsert"/> to this object. Otherwise, this will fail and return <c>false</c>.
+/// 1.18</summary>
+/// <param name="annotation">Given annotation
+/// 1.20</param>
+/// <param name="format">The new format for the given annotation
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise.
+/// 1.20</returns>
+bool SetAnnotation( Efl.TextAnnotateAnnotation annotation,   System.String format);
+   /// <summary>The object-item annotation at the cursor&apos;s position.
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns>Annotation
+/// 1.20</returns>
+Efl.TextAnnotateAnnotation GetCursorItemAnnotation( Efl.TextCursorCursor cur);
+   /// <summary>Returns an iterator of all the handles in a range.
+/// 1.18</summary>
+/// <param name="start">Start of range
+/// 1.20</param>
+/// <param name="end">End of range
+/// 1.20</param>
+/// <returns>Handle of the Annotation
+/// 1.20</returns>
+Eina.Iterator<Efl.TextAnnotateAnnotation> GetRangeAnnotations( Efl.TextCursorCursor start,  Efl.TextCursorCursor end);
+   /// <summary>Inserts an annotation format in a specified range [<c>start</c>, <c>end</c> - 1].
+/// The <c>format</c> will be applied to the given range, and the <c>annotation</c> handle will be returned for further handling.
+/// 1.18</summary>
+/// <param name="start">Start of range
+/// 1.20</param>
+/// <param name="end">End of range
+/// 1.20</param>
+/// <param name="format">Annotation format
+/// 1.20</param>
+/// <returns>Handle of inserted annotation
+/// 1.20</returns>
+Efl.TextAnnotateAnnotation AnnotationInsert( Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String format);
+   /// <summary>Deletes given annotation.
+/// All formats applied by <c>annotation</c> will be removed and it will be deleted.
+/// 1.18</summary>
+/// <param name="annotation">Annotation to be removed
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise.
+/// 1.20</returns>
+bool DelAnnotation( Efl.TextAnnotateAnnotation annotation);
+   /// <summary>Sets given cursors to the start and end positions of the annotation.
+/// The cursors <c>start</c> and <c>end</c> will be set to the start and end positions of the given annotation <c>annotation</c>.
+/// 1.18</summary>
+/// <param name="annotation">Annotation handle to query
+/// 1.20</param>
+/// <param name="start">Cursor to be set to the start position of the annotation in the text
+/// 1.20</param>
+/// <param name="end">Cursor to be set to the end position of the annotation in the text
+/// 1.20</param>
+/// <returns></returns>
+ void GetAnnotationPositions( Efl.TextAnnotateAnnotation annotation,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end);
+   /// <summary>Whether this is an &quot;item&quot; type of annotation. Should be used before querying the annotation&apos;s geometry, as only &quot;item&quot; annotations have a geometry.
+/// see <see cref="Efl.TextAnnotate.CursorItemInsert"/> see <see cref="Efl.TextAnnotate.GetItemGeometry"/>
+/// 1.21</summary>
+/// <param name="annotation">Given annotation
+/// 1.20</param>
+/// <returns><c>true</c> if given annotation is an object item, <c>false</c> otherwise
+/// 1.20</returns>
+bool AnnotationIsItem( Efl.TextAnnotateAnnotation annotation);
+   /// <summary>Queries a given object item for its geometry.
+/// Note that the provided annotation should be an object item type.
+/// 1.18</summary>
+/// <param name="an">Given annotation to query
+/// 1.20</param>
+/// <param name="x">X coordinate of the annotation
+/// 1.20</param>
+/// <param name="y">Y coordinate of the annotation
+/// 1.20</param>
+/// <param name="w">Width of the annotation
+/// 1.20</param>
+/// <param name="h">Height of the annotation
+/// 1.20</param>
+/// <returns><c>true</c> if given annotation is an object item, <c>false</c> otherwise
+/// 1.20</returns>
+bool GetItemGeometry( Efl.TextAnnotateAnnotation an,  out  int x,  out  int y,  out  int w,  out  int h);
+   /// <summary>Inserts a object item at specified position.
+/// This adds a placeholder to be queried by higher-level code, which in turn place graphics on top of it. It essentially places an OBJECT REPLACEMENT CHARACTER and set a special annotation to it.
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <param name="item">Item key to be used in higher-up code to query and decided what image, emoticon etc. to embed.
+/// 1.20</param>
+/// <param name="format">Size format of the inserted item. This hints how to size the item in the text.
+/// 1.20</param>
+/// <returns>The annotation handle of the inserted item.
+/// 1.20</returns>
+Efl.TextAnnotateAnnotation CursorItemInsert( Efl.TextCursorCursor cur,   System.String item,   System.String format);
+                              }
+/// <summary>Cursor API
+/// 1.20</summary>
+sealed public class TextAnnotateConcrete : 
+
+TextAnnotate
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextAnnotateConcrete))
+            return Efl.TextAnnotateNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_annotate_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextAnnotateConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextAnnotateConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextAnnotateConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextAnnotateConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>A new format for <c>annotation</c>.
+   /// This will replace the format applied by <c>annotation</c> with <c>format</c>. Assumes that <c>annotation</c> is a handle for an existing annotation, i.e. one that was added using <see cref="Efl.TextAnnotate.AnnotationInsert"/> to this object. Otherwise, this will fail and return <c>false</c>.
+   /// 1.18</summary>
+   /// <param name="annotation">Given annotation
+   /// 1.20</param>
+   /// <returns>The new format for the given annotation
+   /// 1.20</returns>
+   public  System.String GetAnnotation( Efl.TextAnnotateAnnotation annotation) {
+                         var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_annotation_get_ptr.Value.Delegate(this.NativeHandle, annotation);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>A new format for <c>annotation</c>.
+   /// This will replace the format applied by <c>annotation</c> with <c>format</c>. Assumes that <c>annotation</c> is a handle for an existing annotation, i.e. one that was added using <see cref="Efl.TextAnnotate.AnnotationInsert"/> to this object. Otherwise, this will fail and return <c>false</c>.
+   /// 1.18</summary>
+   /// <param name="annotation">Given annotation
+   /// 1.20</param>
+   /// <param name="format">The new format for the given annotation
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise.
+   /// 1.20</returns>
+   public bool SetAnnotation( Efl.TextAnnotateAnnotation annotation,   System.String format) {
+                                           var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_annotation_set_ptr.Value.Delegate(this.NativeHandle, annotation,  format);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>The object-item annotation at the cursor&apos;s position.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns>Annotation
+   /// 1.20</returns>
+   public Efl.TextAnnotateAnnotation GetCursorItemAnnotation( Efl.TextCursorCursor cur) {
+                         var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_cursor_item_annotation_get_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns an iterator of all the handles in a range.
+   /// 1.18</summary>
+   /// <param name="start">Start of range
+   /// 1.20</param>
+   /// <param name="end">End of range
+   /// 1.20</param>
+   /// <returns>Handle of the Annotation
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.TextAnnotateAnnotation> GetRangeAnnotations( Efl.TextCursorCursor start,  Efl.TextCursorCursor end) {
+                                           var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_range_annotations_get_ptr.Value.Delegate(this.NativeHandle, start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return new Eina.Iterator<Efl.TextAnnotateAnnotation>(_ret_var, true, false);
+ }
+   /// <summary>Inserts an annotation format in a specified range [<c>start</c>, <c>end</c> - 1].
+   /// The <c>format</c> will be applied to the given range, and the <c>annotation</c> handle will be returned for further handling.
+   /// 1.18</summary>
+   /// <param name="start">Start of range
+   /// 1.20</param>
+   /// <param name="end">End of range
+   /// 1.20</param>
+   /// <param name="format">Annotation format
+   /// 1.20</param>
+   /// <returns>Handle of inserted annotation
+   /// 1.20</returns>
+   public Efl.TextAnnotateAnnotation AnnotationInsert( Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String format) {
+                                                             var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_annotation_insert_ptr.Value.Delegate(this.NativeHandle, start,  end,  format);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Deletes given annotation.
+   /// All formats applied by <c>annotation</c> will be removed and it will be deleted.
+   /// 1.18</summary>
+   /// <param name="annotation">Annotation to be removed
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise.
+   /// 1.20</returns>
+   public bool DelAnnotation( Efl.TextAnnotateAnnotation annotation) {
+                         var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_annotation_del_ptr.Value.Delegate(this.NativeHandle, annotation);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets given cursors to the start and end positions of the annotation.
+   /// The cursors <c>start</c> and <c>end</c> will be set to the start and end positions of the given annotation <c>annotation</c>.
+   /// 1.18</summary>
+   /// <param name="annotation">Annotation handle to query
+   /// 1.20</param>
+   /// <param name="start">Cursor to be set to the start position of the annotation in the text
+   /// 1.20</param>
+   /// <param name="end">Cursor to be set to the end position of the annotation in the text
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetAnnotationPositions( Efl.TextAnnotateAnnotation annotation,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end) {
+                                                             Efl.TextAnnotateNativeInherit.efl_text_annotation_positions_get_ptr.Value.Delegate(this.NativeHandle, annotation,  start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Whether this is an &quot;item&quot; type of annotation. Should be used before querying the annotation&apos;s geometry, as only &quot;item&quot; annotations have a geometry.
+   /// see <see cref="Efl.TextAnnotate.CursorItemInsert"/> see <see cref="Efl.TextAnnotate.GetItemGeometry"/>
+   /// 1.21</summary>
+   /// <param name="annotation">Given annotation
+   /// 1.20</param>
+   /// <returns><c>true</c> if given annotation is an object item, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool AnnotationIsItem( Efl.TextAnnotateAnnotation annotation) {
+                         var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_annotation_is_item_ptr.Value.Delegate(this.NativeHandle, annotation);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Queries a given object item for its geometry.
+   /// Note that the provided annotation should be an object item type.
+   /// 1.18</summary>
+   /// <param name="an">Given annotation to query
+   /// 1.20</param>
+   /// <param name="x">X coordinate of the annotation
+   /// 1.20</param>
+   /// <param name="y">Y coordinate of the annotation
+   /// 1.20</param>
+   /// <param name="w">Width of the annotation
+   /// 1.20</param>
+   /// <param name="h">Height of the annotation
+   /// 1.20</param>
+   /// <returns><c>true</c> if given annotation is an object item, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetItemGeometry( Efl.TextAnnotateAnnotation an,  out  int x,  out  int y,  out  int w,  out  int h) {
+                                                                                                 var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_item_geometry_get_ptr.Value.Delegate(this.NativeHandle, an,  out x,  out y,  out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Inserts a object item at specified position.
+   /// This adds a placeholder to be queried by higher-level code, which in turn place graphics on top of it. It essentially places an OBJECT REPLACEMENT CHARACTER and set a special annotation to it.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="item">Item key to be used in higher-up code to query and decided what image, emoticon etc. to embed.
+   /// 1.20</param>
+   /// <param name="format">Size format of the inserted item. This hints how to size the item in the text.
+   /// 1.20</param>
+   /// <returns>The annotation handle of the inserted item.
+   /// 1.20</returns>
+   public Efl.TextAnnotateAnnotation CursorItemInsert( Efl.TextCursorCursor cur,   System.String item,   System.String format) {
+                                                             var _ret_var = Efl.TextAnnotateNativeInherit.efl_text_cursor_item_insert_ptr.Value.Delegate(this.NativeHandle, cur,  item,  format);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+}
+public class TextAnnotateNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_annotation_get_static_delegate == null)
+      efl_text_annotation_get_static_delegate = new efl_text_annotation_get_delegate(annotation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_annotation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_annotation_get_static_delegate)});
+      if (efl_text_annotation_set_static_delegate == null)
+      efl_text_annotation_set_static_delegate = new efl_text_annotation_set_delegate(annotation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_annotation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_annotation_set_static_delegate)});
+      if (efl_text_cursor_item_annotation_get_static_delegate == null)
+      efl_text_cursor_item_annotation_get_static_delegate = new efl_text_cursor_item_annotation_get_delegate(cursor_item_annotation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_item_annotation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_item_annotation_get_static_delegate)});
+      if (efl_text_range_annotations_get_static_delegate == null)
+      efl_text_range_annotations_get_static_delegate = new efl_text_range_annotations_get_delegate(range_annotations_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_range_annotations_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_range_annotations_get_static_delegate)});
+      if (efl_text_annotation_insert_static_delegate == null)
+      efl_text_annotation_insert_static_delegate = new efl_text_annotation_insert_delegate(annotation_insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_annotation_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_text_annotation_insert_static_delegate)});
+      if (efl_text_annotation_del_static_delegate == null)
+      efl_text_annotation_del_static_delegate = new efl_text_annotation_del_delegate(annotation_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_annotation_del"), func = Marshal.GetFunctionPointerForDelegate(efl_text_annotation_del_static_delegate)});
+      if (efl_text_annotation_positions_get_static_delegate == null)
+      efl_text_annotation_positions_get_static_delegate = new efl_text_annotation_positions_get_delegate(annotation_positions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_annotation_positions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_annotation_positions_get_static_delegate)});
+      if (efl_text_annotation_is_item_static_delegate == null)
+      efl_text_annotation_is_item_static_delegate = new efl_text_annotation_is_item_delegate(annotation_is_item);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_annotation_is_item"), func = Marshal.GetFunctionPointerForDelegate(efl_text_annotation_is_item_static_delegate)});
+      if (efl_text_item_geometry_get_static_delegate == null)
+      efl_text_item_geometry_get_static_delegate = new efl_text_item_geometry_get_delegate(item_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_item_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_item_geometry_get_static_delegate)});
+      if (efl_text_cursor_item_insert_static_delegate == null)
+      efl_text_cursor_item_insert_static_delegate = new efl_text_cursor_item_insert_delegate(cursor_item_insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_item_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_item_insert_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextAnnotateConcrete.efl_text_annotate_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextAnnotateConcrete.efl_text_annotate_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_annotation_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextAnnotateAnnotation annotation);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_annotation_get_api_delegate(System.IntPtr obj,   Efl.TextAnnotateAnnotation annotation);
+    public static Efl.Eo.FunctionWrapper<efl_text_annotation_get_api_delegate> efl_text_annotation_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_annotation_get_api_delegate>(_Module, "efl_text_annotation_get");
+    private static  System.String annotation_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextAnnotateAnnotation annotation)
+   {
+      Eina.Log.Debug("function efl_text_annotation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).GetAnnotation( annotation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_annotation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  annotation);
+      }
+   }
+   private static efl_text_annotation_get_delegate efl_text_annotation_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_annotation_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextAnnotateAnnotation annotation,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String format);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_annotation_set_api_delegate(System.IntPtr obj,   Efl.TextAnnotateAnnotation annotation,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String format);
+    public static Efl.Eo.FunctionWrapper<efl_text_annotation_set_api_delegate> efl_text_annotation_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_annotation_set_api_delegate>(_Module, "efl_text_annotation_set");
+    private static bool annotation_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextAnnotateAnnotation annotation,   System.String format)
+   {
+      Eina.Log.Debug("function efl_text_annotation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).SetAnnotation( annotation,  format);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_annotation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  annotation,  format);
+      }
+   }
+   private static efl_text_annotation_set_delegate efl_text_annotation_set_static_delegate;
+
+
+    private delegate Efl.TextAnnotateAnnotation efl_text_cursor_item_annotation_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate Efl.TextAnnotateAnnotation efl_text_cursor_item_annotation_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_item_annotation_get_api_delegate> efl_text_cursor_item_annotation_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_item_annotation_get_api_delegate>(_Module, "efl_text_cursor_item_annotation_get");
+    private static Efl.TextAnnotateAnnotation cursor_item_annotation_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_item_annotation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.TextAnnotateAnnotation _ret_var = default(Efl.TextAnnotateAnnotation);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).GetCursorItemAnnotation( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_item_annotation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_item_annotation_get_delegate efl_text_cursor_item_annotation_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_text_range_annotations_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+
+
+    public delegate  System.IntPtr efl_text_range_annotations_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+    public static Efl.Eo.FunctionWrapper<efl_text_range_annotations_get_api_delegate> efl_text_range_annotations_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_range_annotations_get_api_delegate>(_Module, "efl_text_range_annotations_get");
+    private static  System.IntPtr range_annotations_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end)
+   {
+      Eina.Log.Debug("function efl_text_range_annotations_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Eina.Iterator<Efl.TextAnnotateAnnotation> _ret_var = default(Eina.Iterator<Efl.TextAnnotateAnnotation>);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).GetRangeAnnotations( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_text_range_annotations_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_text_range_annotations_get_delegate efl_text_range_annotations_get_static_delegate;
+
+
+    private delegate Efl.TextAnnotateAnnotation efl_text_annotation_insert_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String format);
+
+
+    public delegate Efl.TextAnnotateAnnotation efl_text_annotation_insert_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String format);
+    public static Efl.Eo.FunctionWrapper<efl_text_annotation_insert_api_delegate> efl_text_annotation_insert_ptr = new Efl.Eo.FunctionWrapper<efl_text_annotation_insert_api_delegate>(_Module, "efl_text_annotation_insert");
+    private static Efl.TextAnnotateAnnotation annotation_insert(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String format)
+   {
+      Eina.Log.Debug("function efl_text_annotation_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.TextAnnotateAnnotation _ret_var = default(Efl.TextAnnotateAnnotation);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).AnnotationInsert( start,  end,  format);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_text_annotation_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end,  format);
+      }
+   }
+   private static efl_text_annotation_insert_delegate efl_text_annotation_insert_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_annotation_del_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextAnnotateAnnotation annotation);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_annotation_del_api_delegate(System.IntPtr obj,   Efl.TextAnnotateAnnotation annotation);
+    public static Efl.Eo.FunctionWrapper<efl_text_annotation_del_api_delegate> efl_text_annotation_del_ptr = new Efl.Eo.FunctionWrapper<efl_text_annotation_del_api_delegate>(_Module, "efl_text_annotation_del");
+    private static bool annotation_del(System.IntPtr obj, System.IntPtr pd,  Efl.TextAnnotateAnnotation annotation)
+   {
+      Eina.Log.Debug("function efl_text_annotation_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).DelAnnotation( annotation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_annotation_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  annotation);
+      }
+   }
+   private static efl_text_annotation_del_delegate efl_text_annotation_del_static_delegate;
+
+
+    private delegate  void efl_text_annotation_positions_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextAnnotateAnnotation annotation,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+
+
+    public delegate  void efl_text_annotation_positions_get_api_delegate(System.IntPtr obj,   Efl.TextAnnotateAnnotation annotation,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+    public static Efl.Eo.FunctionWrapper<efl_text_annotation_positions_get_api_delegate> efl_text_annotation_positions_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_annotation_positions_get_api_delegate>(_Module, "efl_text_annotation_positions_get");
+    private static  void annotation_positions_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextAnnotateAnnotation annotation,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end)
+   {
+      Eina.Log.Debug("function efl_text_annotation_positions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((TextAnnotate)wrapper).GetAnnotationPositions( annotation,  start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_annotation_positions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  annotation,  start,  end);
+      }
+   }
+   private static efl_text_annotation_positions_get_delegate efl_text_annotation_positions_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_annotation_is_item_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextAnnotateAnnotation annotation);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_annotation_is_item_api_delegate(System.IntPtr obj,   Efl.TextAnnotateAnnotation annotation);
+    public static Efl.Eo.FunctionWrapper<efl_text_annotation_is_item_api_delegate> efl_text_annotation_is_item_ptr = new Efl.Eo.FunctionWrapper<efl_text_annotation_is_item_api_delegate>(_Module, "efl_text_annotation_is_item");
+    private static bool annotation_is_item(System.IntPtr obj, System.IntPtr pd,  Efl.TextAnnotateAnnotation annotation)
+   {
+      Eina.Log.Debug("function efl_text_annotation_is_item was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).AnnotationIsItem( annotation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_annotation_is_item_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  annotation);
+      }
+   }
+   private static efl_text_annotation_is_item_delegate efl_text_annotation_is_item_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_item_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextAnnotateAnnotation an,   out  int x,   out  int y,   out  int w,   out  int h);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_item_geometry_get_api_delegate(System.IntPtr obj,   Efl.TextAnnotateAnnotation an,   out  int x,   out  int y,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<efl_text_item_geometry_get_api_delegate> efl_text_item_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_item_geometry_get_api_delegate>(_Module, "efl_text_item_geometry_get");
+    private static bool item_geometry_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextAnnotateAnnotation an,  out  int x,  out  int y,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function efl_text_item_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   x = default( int);      y = default( int);      w = default( int);      h = default( int);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).GetItemGeometry( an,  out x,  out y,  out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_text_item_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  an,  out x,  out y,  out w,  out h);
+      }
+   }
+   private static efl_text_item_geometry_get_delegate efl_text_item_geometry_get_static_delegate;
+
+
+    private delegate Efl.TextAnnotateAnnotation efl_text_cursor_item_insert_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String format);
+
+
+    public delegate Efl.TextAnnotateAnnotation efl_text_cursor_item_insert_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String format);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_item_insert_api_delegate> efl_text_cursor_item_insert_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_item_insert_api_delegate>(_Module, "efl_text_cursor_item_insert");
+    private static Efl.TextAnnotateAnnotation cursor_item_insert(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   System.String item,   System.String format)
+   {
+      Eina.Log.Debug("function efl_text_cursor_item_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.TextAnnotateAnnotation _ret_var = default(Efl.TextAnnotateAnnotation);
+         try {
+            _ret_var = ((TextAnnotate)wrapper).CursorItemInsert( cur,  item,  format);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_text_cursor_item_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  item,  format);
+      }
+   }
+   private static efl_text_cursor_item_insert_delegate efl_text_cursor_item_insert_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_cursor.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_cursor.eo.cs
new file mode 100755 (executable)
index 0000000..0119e09
--- /dev/null
@@ -0,0 +1,1464 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Cursor API
+/// 1.20</summary>
+[TextCursorNativeInherit]
+public interface TextCursor : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The object&apos;s main cursor.
+/// 1.18</summary>
+/// <param name="get_type">Cursor type
+/// 1.20</param>
+/// <returns>Text cursor object
+/// 1.20</returns>
+Efl.TextCursorCursor GetTextCursor( Efl.TextCursorGetType get_type);
+   /// <summary>Cursor position
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns>Cursor position
+/// 1.20</returns>
+ int GetCursorPosition( Efl.TextCursorCursor cur);
+   /// <summary>Cursor position
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <param name="position">Cursor position
+/// 1.20</param>
+/// <returns></returns>
+ void SetCursorPosition( Efl.TextCursorCursor cur,   int position);
+   /// <summary>The content of the cursor (the character under the cursor)
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns>The unicode codepoint of the character
+/// 1.20</returns>
+Eina.Unicode GetCursorContent( Efl.TextCursorCursor cur);
+   /// <summary>Returns the geometry of two cursors (&quot;split cursor&quot;), if logical cursor is between LTR/RTL text, also considering paragraph direction. Upper cursor is shown for the text of the same direction as paragraph, lower cursor - for opposite.
+/// Split cursor geometry is valid only  in &apos;|&apos; cursor mode. In this case <c>true</c> is returned and <c>cx2</c>, <c>cy2</c>, <c>cw2</c>, <c>ch2</c> are set.
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <param name="ctype">The type of the cursor.
+/// 1.20</param>
+/// <param name="cx">The x of the cursor (or upper cursor)
+/// 1.20</param>
+/// <param name="cy">The y of the cursor (or upper cursor)
+/// 1.20</param>
+/// <param name="cw">The width of the cursor (or upper cursor)
+/// 1.20</param>
+/// <param name="ch">The height of the cursor (or upper cursor)
+/// 1.20</param>
+/// <param name="cx2">The x of the lower cursor
+/// 1.20</param>
+/// <param name="cy2">The y of the lower cursor
+/// 1.20</param>
+/// <param name="cw2">The width of the lower cursor
+/// 1.20</param>
+/// <param name="ch2">The height of the lower cursor
+/// 1.20</param>
+/// <returns><c>true</c> if split cursor, <c>false</c> otherwise.
+/// 1.20</returns>
+bool GetCursorGeometry( Efl.TextCursorCursor cur,  Efl.TextCursorType ctype,  out  int cx,  out  int cy,  out  int cw,  out  int ch,  out  int cx2,  out  int cy2,  out  int cw2,  out  int ch2);
+   /// <summary>Create new cursor
+/// 1.20</summary>
+/// <returns>Cursor object
+/// 1.20</returns>
+Efl.TextCursorCursor NewCursor();
+   /// <summary>Free existing cursor
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorFree( Efl.TextCursorCursor cur);
+   /// <summary>Check if two cursors are equal
+/// 1.20</summary>
+/// <param name="cur1">Cursor 1 object
+/// 1.20</param>
+/// <param name="cur2">Cursor 2 object
+/// 1.20</param>
+/// <returns><c>true</c> if cursors are equal, <c>false</c> otherwise
+/// 1.20</returns>
+bool CursorEqual( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2);
+   /// <summary>Compare two cursors
+/// 1.20</summary>
+/// <param name="cur1">Cursor 1 object
+/// 1.20</param>
+/// <param name="cur2">Cursor 2 object
+/// 1.20</param>
+/// <returns>Difference between cursors
+/// 1.20</returns>
+ int CursorCompare( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2);
+   /// <summary>Copy existing cursor
+/// 1.20</summary>
+/// <param name="dst">Destination cursor
+/// 1.20</param>
+/// <param name="src">Source cursor
+/// 1.20</param>
+/// <returns></returns>
+ void CursorCopy( Efl.TextCursorCursor dst,  Efl.TextCursorCursor src);
+   /// <summary>Advances to the next character
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorCharNext( Efl.TextCursorCursor cur);
+   /// <summary>Advances to the previous character
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorCharPrev( Efl.TextCursorCursor cur);
+   /// <summary>Advances to the next grapheme cluster
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorClusterNext( Efl.TextCursorCursor cur);
+   /// <summary>Advances to the previous grapheme cluster
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorClusterPrev( Efl.TextCursorCursor cur);
+   /// <summary>Advances to the first character in this paragraph
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorParagraphCharFirst( Efl.TextCursorCursor cur);
+   /// <summary>Advances to the last character in this paragraph
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorParagraphCharLast( Efl.TextCursorCursor cur);
+   /// <summary>Advance to current word start
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorWordStart( Efl.TextCursorCursor cur);
+   /// <summary>Advance to current word end
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorWordEnd( Efl.TextCursorCursor cur);
+   /// <summary>Advance to current line first character
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorLineCharFirst( Efl.TextCursorCursor cur);
+   /// <summary>Advance to current line last character
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorLineCharLast( Efl.TextCursorCursor cur);
+   /// <summary>Advance to current paragraph first character
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorParagraphFirst( Efl.TextCursorCursor cur);
+   /// <summary>Advance to current paragraph last character
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorParagraphLast( Efl.TextCursorCursor cur);
+   /// <summary>Advances to the start of the next text node
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorParagraphNext( Efl.TextCursorCursor cur);
+   /// <summary>Advances to the end of the previous text node
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorParagraphPrev( Efl.TextCursorCursor cur);
+   /// <summary>Jump the cursor by the given number of lines
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <param name="by">Number of lines
+/// 1.20</param>
+/// <returns></returns>
+ void CursorLineJumpBy( Efl.TextCursorCursor cur,   int by);
+   /// <summary>Set cursor coordinates
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <param name="x">X coord to set by.
+/// 1.20</param>
+/// <param name="y">Y coord to set by.
+/// 1.20</param>
+/// <returns></returns>
+ void SetCursorCoord( Efl.TextCursorCursor cur,   int x,   int y);
+   /// <summary>Set cursor coordinates according to grapheme clusters. It does not allow to put a cursor to the middle of a grapheme cluster.
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <param name="x">X coord to set by.
+/// 1.20</param>
+/// <param name="y">Y coord to set by.
+/// 1.20</param>
+/// <returns></returns>
+ void SetCursorClusterCoord( Efl.TextCursorCursor cur,   int x,   int y);
+   /// <summary>Adds text to the current cursor position and set the cursor to *after* the start of the text just added.
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <param name="text">Text to append (UTF-8 format).
+/// 1.20</param>
+/// <returns>Length of the appended text.
+/// 1.20</returns>
+ int CursorTextInsert( Efl.TextCursorCursor cur,   System.String text);
+   /// <summary>Deletes a single character from position pointed by given cursor.
+/// 1.20</summary>
+/// <param name="cur">Cursor object
+/// 1.20</param>
+/// <returns></returns>
+ void CursorCharDelete( Efl.TextCursorCursor cur);
+                                                                                       }
+/// <summary>Cursor API
+/// 1.20</summary>
+sealed public class TextCursorConcrete : 
+
+TextCursor
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextCursorConcrete))
+            return Efl.TextCursorNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_cursor_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextCursorConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextCursorConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextCursorConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextCursorConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The object&apos;s main cursor.
+   /// 1.18</summary>
+   /// <param name="get_type">Cursor type
+   /// 1.20</param>
+   /// <returns>Text cursor object
+   /// 1.20</returns>
+   public Efl.TextCursorCursor GetTextCursor( Efl.TextCursorGetType get_type) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_get_ptr.Value.Delegate(this.NativeHandle, get_type);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Cursor position
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns>Cursor position
+   /// 1.20</returns>
+   public  int GetCursorPosition( Efl.TextCursorCursor cur) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_position_get_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Cursor position
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="position">Cursor position
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetCursorPosition( Efl.TextCursorCursor cur,   int position) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_position_set_ptr.Value.Delegate(this.NativeHandle, cur,  position);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The content of the cursor (the character under the cursor)
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns>The unicode codepoint of the character
+   /// 1.20</returns>
+   public Eina.Unicode GetCursorContent( Efl.TextCursorCursor cur) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_content_get_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the geometry of two cursors (&quot;split cursor&quot;), if logical cursor is between LTR/RTL text, also considering paragraph direction. Upper cursor is shown for the text of the same direction as paragraph, lower cursor - for opposite.
+   /// Split cursor geometry is valid only  in &apos;|&apos; cursor mode. In this case <c>true</c> is returned and <c>cx2</c>, <c>cy2</c>, <c>cw2</c>, <c>ch2</c> are set.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="ctype">The type of the cursor.
+   /// 1.20</param>
+   /// <param name="cx">The x of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cy">The y of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cw">The width of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="ch">The height of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cx2">The x of the lower cursor
+   /// 1.20</param>
+   /// <param name="cy2">The y of the lower cursor
+   /// 1.20</param>
+   /// <param name="cw2">The width of the lower cursor
+   /// 1.20</param>
+   /// <param name="ch2">The height of the lower cursor
+   /// 1.20</param>
+   /// <returns><c>true</c> if split cursor, <c>false</c> otherwise.
+   /// 1.20</returns>
+   public bool GetCursorGeometry( Efl.TextCursorCursor cur,  Efl.TextCursorType ctype,  out  int cx,  out  int cy,  out  int cw,  out  int ch,  out  int cx2,  out  int cy2,  out  int cw2,  out  int ch2) {
+                                                                                                                                                                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_geometry_get_ptr.Value.Delegate(this.NativeHandle, cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                              return _ret_var;
+ }
+   /// <summary>Create new cursor
+   /// 1.20</summary>
+   /// <returns>Cursor object
+   /// 1.20</returns>
+   public Efl.TextCursorCursor NewCursor() {
+       var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_new_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Free existing cursor
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorFree( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_free_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Check if two cursors are equal
+   /// 1.20</summary>
+   /// <param name="cur1">Cursor 1 object
+   /// 1.20</param>
+   /// <param name="cur2">Cursor 2 object
+   /// 1.20</param>
+   /// <returns><c>true</c> if cursors are equal, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool CursorEqual( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_equal_ptr.Value.Delegate(this.NativeHandle, cur1,  cur2);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Compare two cursors
+   /// 1.20</summary>
+   /// <param name="cur1">Cursor 1 object
+   /// 1.20</param>
+   /// <param name="cur2">Cursor 2 object
+   /// 1.20</param>
+   /// <returns>Difference between cursors
+   /// 1.20</returns>
+   public  int CursorCompare( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_compare_ptr.Value.Delegate(this.NativeHandle, cur1,  cur2);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Copy existing cursor
+   /// 1.20</summary>
+   /// <param name="dst">Destination cursor
+   /// 1.20</param>
+   /// <param name="src">Source cursor
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCopy( Efl.TextCursorCursor dst,  Efl.TextCursorCursor src) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_copy_ptr.Value.Delegate(this.NativeHandle, dst,  src);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Advances to the next character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCharNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_next_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the previous character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCharPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_prev_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the next grapheme cluster
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorClusterNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_cluster_next_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the previous grapheme cluster
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorClusterPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_cluster_prev_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the first character in this paragraph
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphCharFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_char_first_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the last character in this paragraph
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphCharLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_char_last_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current word start
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorWordStart( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_word_start_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current word end
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorWordEnd( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_word_end_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current line first character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorLineCharFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_line_char_first_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current line last character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorLineCharLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_line_char_last_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current paragraph first character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_first_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current paragraph last character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_last_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the start of the next text node
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_next_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the end of the previous text node
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_prev_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Jump the cursor by the given number of lines
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="by">Number of lines
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorLineJumpBy( Efl.TextCursorCursor cur,   int by) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_line_jump_by_ptr.Value.Delegate(this.NativeHandle, cur,  by);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set cursor coordinates
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="x">X coord to set by.
+   /// 1.20</param>
+   /// <param name="y">Y coord to set by.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetCursorCoord( Efl.TextCursorCursor cur,   int x,   int y) {
+                                                             Efl.TextCursorNativeInherit.efl_text_cursor_coord_set_ptr.Value.Delegate(this.NativeHandle, cur,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Set cursor coordinates according to grapheme clusters. It does not allow to put a cursor to the middle of a grapheme cluster.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="x">X coord to set by.
+   /// 1.20</param>
+   /// <param name="y">Y coord to set by.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetCursorClusterCoord( Efl.TextCursorCursor cur,   int x,   int y) {
+                                                             Efl.TextCursorNativeInherit.efl_text_cursor_cluster_coord_set_ptr.Value.Delegate(this.NativeHandle, cur,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Adds text to the current cursor position and set the cursor to *after* the start of the text just added.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="text">Text to append (UTF-8 format).
+   /// 1.20</param>
+   /// <returns>Length of the appended text.
+   /// 1.20</returns>
+   public  int CursorTextInsert( Efl.TextCursorCursor cur,   System.String text) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_text_insert_ptr.Value.Delegate(this.NativeHandle, cur,  text);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Deletes a single character from position pointed by given cursor.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCharDelete( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_delete_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+}
+public class TextCursorNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_cursor_get_static_delegate == null)
+      efl_text_cursor_get_static_delegate = new efl_text_cursor_get_delegate(text_cursor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_get_static_delegate)});
+      if (efl_text_cursor_position_get_static_delegate == null)
+      efl_text_cursor_position_get_static_delegate = new efl_text_cursor_position_get_delegate(cursor_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_position_get_static_delegate)});
+      if (efl_text_cursor_position_set_static_delegate == null)
+      efl_text_cursor_position_set_static_delegate = new efl_text_cursor_position_set_delegate(cursor_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_position_set_static_delegate)});
+      if (efl_text_cursor_content_get_static_delegate == null)
+      efl_text_cursor_content_get_static_delegate = new efl_text_cursor_content_get_delegate(cursor_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_content_get_static_delegate)});
+      if (efl_text_cursor_geometry_get_static_delegate == null)
+      efl_text_cursor_geometry_get_static_delegate = new efl_text_cursor_geometry_get_delegate(cursor_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_geometry_get_static_delegate)});
+      if (efl_text_cursor_new_static_delegate == null)
+      efl_text_cursor_new_static_delegate = new efl_text_cursor_new_delegate(cursor_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_new"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_new_static_delegate)});
+      if (efl_text_cursor_free_static_delegate == null)
+      efl_text_cursor_free_static_delegate = new efl_text_cursor_free_delegate(cursor_free);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_free"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_free_static_delegate)});
+      if (efl_text_cursor_equal_static_delegate == null)
+      efl_text_cursor_equal_static_delegate = new efl_text_cursor_equal_delegate(cursor_equal);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_equal"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_equal_static_delegate)});
+      if (efl_text_cursor_compare_static_delegate == null)
+      efl_text_cursor_compare_static_delegate = new efl_text_cursor_compare_delegate(cursor_compare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_compare"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_compare_static_delegate)});
+      if (efl_text_cursor_copy_static_delegate == null)
+      efl_text_cursor_copy_static_delegate = new efl_text_cursor_copy_delegate(cursor_copy);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_copy"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_copy_static_delegate)});
+      if (efl_text_cursor_char_next_static_delegate == null)
+      efl_text_cursor_char_next_static_delegate = new efl_text_cursor_char_next_delegate(cursor_char_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_next_static_delegate)});
+      if (efl_text_cursor_char_prev_static_delegate == null)
+      efl_text_cursor_char_prev_static_delegate = new efl_text_cursor_char_prev_delegate(cursor_char_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_prev_static_delegate)});
+      if (efl_text_cursor_cluster_next_static_delegate == null)
+      efl_text_cursor_cluster_next_static_delegate = new efl_text_cursor_cluster_next_delegate(cursor_cluster_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_next_static_delegate)});
+      if (efl_text_cursor_cluster_prev_static_delegate == null)
+      efl_text_cursor_cluster_prev_static_delegate = new efl_text_cursor_cluster_prev_delegate(cursor_cluster_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_prev_static_delegate)});
+      if (efl_text_cursor_paragraph_char_first_static_delegate == null)
+      efl_text_cursor_paragraph_char_first_static_delegate = new efl_text_cursor_paragraph_char_first_delegate(cursor_paragraph_char_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_char_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_char_first_static_delegate)});
+      if (efl_text_cursor_paragraph_char_last_static_delegate == null)
+      efl_text_cursor_paragraph_char_last_static_delegate = new efl_text_cursor_paragraph_char_last_delegate(cursor_paragraph_char_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_char_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_char_last_static_delegate)});
+      if (efl_text_cursor_word_start_static_delegate == null)
+      efl_text_cursor_word_start_static_delegate = new efl_text_cursor_word_start_delegate(cursor_word_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_word_start"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_word_start_static_delegate)});
+      if (efl_text_cursor_word_end_static_delegate == null)
+      efl_text_cursor_word_end_static_delegate = new efl_text_cursor_word_end_delegate(cursor_word_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_word_end"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_word_end_static_delegate)});
+      if (efl_text_cursor_line_char_first_static_delegate == null)
+      efl_text_cursor_line_char_first_static_delegate = new efl_text_cursor_line_char_first_delegate(cursor_line_char_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_char_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_char_first_static_delegate)});
+      if (efl_text_cursor_line_char_last_static_delegate == null)
+      efl_text_cursor_line_char_last_static_delegate = new efl_text_cursor_line_char_last_delegate(cursor_line_char_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_char_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_char_last_static_delegate)});
+      if (efl_text_cursor_paragraph_first_static_delegate == null)
+      efl_text_cursor_paragraph_first_static_delegate = new efl_text_cursor_paragraph_first_delegate(cursor_paragraph_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_first_static_delegate)});
+      if (efl_text_cursor_paragraph_last_static_delegate == null)
+      efl_text_cursor_paragraph_last_static_delegate = new efl_text_cursor_paragraph_last_delegate(cursor_paragraph_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_last_static_delegate)});
+      if (efl_text_cursor_paragraph_next_static_delegate == null)
+      efl_text_cursor_paragraph_next_static_delegate = new efl_text_cursor_paragraph_next_delegate(cursor_paragraph_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_next_static_delegate)});
+      if (efl_text_cursor_paragraph_prev_static_delegate == null)
+      efl_text_cursor_paragraph_prev_static_delegate = new efl_text_cursor_paragraph_prev_delegate(cursor_paragraph_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_prev_static_delegate)});
+      if (efl_text_cursor_line_jump_by_static_delegate == null)
+      efl_text_cursor_line_jump_by_static_delegate = new efl_text_cursor_line_jump_by_delegate(cursor_line_jump_by);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_jump_by"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_jump_by_static_delegate)});
+      if (efl_text_cursor_coord_set_static_delegate == null)
+      efl_text_cursor_coord_set_static_delegate = new efl_text_cursor_coord_set_delegate(cursor_coord_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_coord_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_coord_set_static_delegate)});
+      if (efl_text_cursor_cluster_coord_set_static_delegate == null)
+      efl_text_cursor_cluster_coord_set_static_delegate = new efl_text_cursor_cluster_coord_set_delegate(cursor_cluster_coord_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_coord_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_coord_set_static_delegate)});
+      if (efl_text_cursor_text_insert_static_delegate == null)
+      efl_text_cursor_text_insert_static_delegate = new efl_text_cursor_text_insert_delegate(cursor_text_insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_text_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_text_insert_static_delegate)});
+      if (efl_text_cursor_char_delete_static_delegate == null)
+      efl_text_cursor_char_delete_static_delegate = new efl_text_cursor_char_delete_delegate(cursor_char_delete);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_delete"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_delete_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextCursorConcrete.efl_text_cursor_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextCursorConcrete.efl_text_cursor_interface_get();
+   }
+
+
+    private delegate Efl.TextCursorCursor efl_text_cursor_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorGetType get_type);
+
+
+    public delegate Efl.TextCursorCursor efl_text_cursor_get_api_delegate(System.IntPtr obj,   Efl.TextCursorGetType get_type);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_get_api_delegate> efl_text_cursor_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_get_api_delegate>(_Module, "efl_text_cursor_get");
+    private static Efl.TextCursorCursor text_cursor_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorGetType get_type)
+   {
+      Eina.Log.Debug("function efl_text_cursor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.TextCursorCursor _ret_var = default(Efl.TextCursorCursor);
+         try {
+            _ret_var = ((TextCursor)wrapper).GetTextCursor( get_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  get_type);
+      }
+   }
+   private static efl_text_cursor_get_delegate efl_text_cursor_get_static_delegate;
+
+
+    private delegate  int efl_text_cursor_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  int efl_text_cursor_position_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_position_get_api_delegate> efl_text_cursor_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_position_get_api_delegate>(_Module, "efl_text_cursor_position_get");
+    private static  int cursor_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((TextCursor)wrapper).GetCursorPosition( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_position_get_delegate efl_text_cursor_position_get_static_delegate;
+
+
+    private delegate  void efl_text_cursor_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int position);
+
+
+    public delegate  void efl_text_cursor_position_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int position);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_position_set_api_delegate> efl_text_cursor_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_position_set_api_delegate>(_Module, "efl_text_cursor_position_set");
+    private static  void cursor_position_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int position)
+   {
+      Eina.Log.Debug("function efl_text_cursor_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextCursor)wrapper).SetCursorPosition( cur,  position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  position);
+      }
+   }
+   private static efl_text_cursor_position_set_delegate efl_text_cursor_position_set_static_delegate;
+
+
+    private delegate Eina.Unicode efl_text_cursor_content_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate Eina.Unicode efl_text_cursor_content_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_content_get_api_delegate> efl_text_cursor_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_content_get_api_delegate>(_Module, "efl_text_cursor_content_get");
+    private static Eina.Unicode cursor_content_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Unicode _ret_var = default(Eina.Unicode);
+         try {
+            _ret_var = ((TextCursor)wrapper).GetCursorContent( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_content_get_delegate efl_text_cursor_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_cursor_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,   Efl.TextCursorType ctype,   out  int cx,   out  int cy,   out  int cw,   out  int ch,   out  int cx2,   out  int cy2,   out  int cw2,   out  int ch2);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_cursor_geometry_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,   Efl.TextCursorType ctype,   out  int cx,   out  int cy,   out  int cw,   out  int ch,   out  int cx2,   out  int cy2,   out  int cw2,   out  int ch2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_geometry_get_api_delegate> efl_text_cursor_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_geometry_get_api_delegate>(_Module, "efl_text_cursor_geometry_get");
+    private static bool cursor_geometry_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,  Efl.TextCursorType ctype,  out  int cx,  out  int cy,  out  int cw,  out  int ch,  out  int cx2,  out  int cy2,  out  int cw2,  out  int ch2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                       cx = default( int);      cy = default( int);      cw = default( int);      ch = default( int);      cx2 = default( int);      cy2 = default( int);      cw2 = default( int);      ch2 = default( int);                                                                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextCursor)wrapper).GetCursorGeometry( cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                              return _ret_var;
+      } else {
+         return efl_text_cursor_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+      }
+   }
+   private static efl_text_cursor_geometry_get_delegate efl_text_cursor_geometry_get_static_delegate;
+
+
+    private delegate Efl.TextCursorCursor efl_text_cursor_new_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextCursorCursor efl_text_cursor_new_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_new_api_delegate> efl_text_cursor_new_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_new_api_delegate>(_Module, "efl_text_cursor_new");
+    private static Efl.TextCursorCursor cursor_new(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_cursor_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextCursorCursor _ret_var = default(Efl.TextCursorCursor);
+         try {
+            _ret_var = ((TextCursor)wrapper).NewCursor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_cursor_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_cursor_new_delegate efl_text_cursor_new_static_delegate;
+
+
+    private delegate  void efl_text_cursor_free_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_free_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_free_api_delegate> efl_text_cursor_free_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_free_api_delegate>(_Module, "efl_text_cursor_free");
+    private static  void cursor_free(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_free was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorFree( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_free_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_free_delegate efl_text_cursor_free_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_cursor_equal_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_cursor_equal_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_equal_api_delegate> efl_text_cursor_equal_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_equal_api_delegate>(_Module, "efl_text_cursor_equal");
+    private static bool cursor_equal(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_equal was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextCursor)wrapper).CursorEqual( cur1,  cur2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_equal_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur1,  cur2);
+      }
+   }
+   private static efl_text_cursor_equal_delegate efl_text_cursor_equal_static_delegate;
+
+
+    private delegate  int efl_text_cursor_compare_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+
+
+    public delegate  int efl_text_cursor_compare_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_compare_api_delegate> efl_text_cursor_compare_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_compare_api_delegate>(_Module, "efl_text_cursor_compare");
+    private static  int cursor_compare(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_compare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       int _ret_var = default( int);
+         try {
+            _ret_var = ((TextCursor)wrapper).CursorCompare( cur1,  cur2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_compare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur1,  cur2);
+      }
+   }
+   private static efl_text_cursor_compare_delegate efl_text_cursor_compare_static_delegate;
+
+
+    private delegate  void efl_text_cursor_copy_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor dst,   Efl.TextCursorCursor src);
+
+
+    public delegate  void efl_text_cursor_copy_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor dst,   Efl.TextCursorCursor src);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_copy_api_delegate> efl_text_cursor_copy_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_copy_api_delegate>(_Module, "efl_text_cursor_copy");
+    private static  void cursor_copy(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor dst,  Efl.TextCursorCursor src)
+   {
+      Eina.Log.Debug("function efl_text_cursor_copy was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextCursor)wrapper).CursorCopy( dst,  src);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_copy_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dst,  src);
+      }
+   }
+   private static efl_text_cursor_copy_delegate efl_text_cursor_copy_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_next_api_delegate> efl_text_cursor_char_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_next_api_delegate>(_Module, "efl_text_cursor_char_next");
+    private static  void cursor_char_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorCharNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_next_delegate efl_text_cursor_char_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_prev_api_delegate> efl_text_cursor_char_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_prev_api_delegate>(_Module, "efl_text_cursor_char_prev");
+    private static  void cursor_char_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorCharPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_prev_delegate efl_text_cursor_char_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_cluster_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_next_api_delegate> efl_text_cursor_cluster_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_next_api_delegate>(_Module, "efl_text_cursor_cluster_next");
+    private static  void cursor_cluster_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorClusterNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_cluster_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_cluster_next_delegate efl_text_cursor_cluster_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_cluster_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_prev_api_delegate> efl_text_cursor_cluster_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_prev_api_delegate>(_Module, "efl_text_cursor_cluster_prev");
+    private static  void cursor_cluster_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorClusterPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_cluster_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_cluster_prev_delegate efl_text_cursor_cluster_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_char_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_char_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_first_api_delegate> efl_text_cursor_paragraph_char_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_first_api_delegate>(_Module, "efl_text_cursor_paragraph_char_first");
+    private static  void cursor_paragraph_char_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_char_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorParagraphCharFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_char_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_char_first_delegate efl_text_cursor_paragraph_char_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_char_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_char_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_last_api_delegate> efl_text_cursor_paragraph_char_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_last_api_delegate>(_Module, "efl_text_cursor_paragraph_char_last");
+    private static  void cursor_paragraph_char_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_char_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorParagraphCharLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_char_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_char_last_delegate efl_text_cursor_paragraph_char_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_word_start_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_word_start_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_word_start_api_delegate> efl_text_cursor_word_start_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_word_start_api_delegate>(_Module, "efl_text_cursor_word_start");
+    private static  void cursor_word_start(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_word_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorWordStart( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_word_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_word_start_delegate efl_text_cursor_word_start_static_delegate;
+
+
+    private delegate  void efl_text_cursor_word_end_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_word_end_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_word_end_api_delegate> efl_text_cursor_word_end_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_word_end_api_delegate>(_Module, "efl_text_cursor_word_end");
+    private static  void cursor_word_end(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_word_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorWordEnd( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_word_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_word_end_delegate efl_text_cursor_word_end_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_char_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_line_char_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_first_api_delegate> efl_text_cursor_line_char_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_first_api_delegate>(_Module, "efl_text_cursor_line_char_first");
+    private static  void cursor_line_char_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_char_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorLineCharFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_line_char_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_line_char_first_delegate efl_text_cursor_line_char_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_char_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_line_char_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_last_api_delegate> efl_text_cursor_line_char_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_last_api_delegate>(_Module, "efl_text_cursor_line_char_last");
+    private static  void cursor_line_char_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_char_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorLineCharLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_line_char_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_line_char_last_delegate efl_text_cursor_line_char_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_first_api_delegate> efl_text_cursor_paragraph_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_first_api_delegate>(_Module, "efl_text_cursor_paragraph_first");
+    private static  void cursor_paragraph_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorParagraphFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_first_delegate efl_text_cursor_paragraph_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_last_api_delegate> efl_text_cursor_paragraph_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_last_api_delegate>(_Module, "efl_text_cursor_paragraph_last");
+    private static  void cursor_paragraph_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorParagraphLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_last_delegate efl_text_cursor_paragraph_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_next_api_delegate> efl_text_cursor_paragraph_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_next_api_delegate>(_Module, "efl_text_cursor_paragraph_next");
+    private static  void cursor_paragraph_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorParagraphNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_next_delegate efl_text_cursor_paragraph_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_prev_api_delegate> efl_text_cursor_paragraph_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_prev_api_delegate>(_Module, "efl_text_cursor_paragraph_prev");
+    private static  void cursor_paragraph_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorParagraphPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_prev_delegate efl_text_cursor_paragraph_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_jump_by_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int by);
+
+
+    public delegate  void efl_text_cursor_line_jump_by_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int by);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_jump_by_api_delegate> efl_text_cursor_line_jump_by_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_jump_by_api_delegate>(_Module, "efl_text_cursor_line_jump_by");
+    private static  void cursor_line_jump_by(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int by)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_jump_by was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextCursor)wrapper).CursorLineJumpBy( cur,  by);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_line_jump_by_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  by);
+      }
+   }
+   private static efl_text_cursor_line_jump_by_delegate efl_text_cursor_line_jump_by_static_delegate;
+
+
+    private delegate  void efl_text_cursor_coord_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int x,    int y);
+
+
+    public delegate  void efl_text_cursor_coord_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_coord_set_api_delegate> efl_text_cursor_coord_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_coord_set_api_delegate>(_Module, "efl_text_cursor_coord_set");
+    private static  void cursor_coord_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_text_cursor_coord_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((TextCursor)wrapper).SetCursorCoord( cur,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_cursor_coord_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  x,  y);
+      }
+   }
+   private static efl_text_cursor_coord_set_delegate efl_text_cursor_coord_set_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_coord_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int x,    int y);
+
+
+    public delegate  void efl_text_cursor_cluster_coord_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_coord_set_api_delegate> efl_text_cursor_cluster_coord_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_coord_set_api_delegate>(_Module, "efl_text_cursor_cluster_coord_set");
+    private static  void cursor_cluster_coord_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_coord_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((TextCursor)wrapper).SetCursorClusterCoord( cur,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_cursor_cluster_coord_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  x,  y);
+      }
+   }
+   private static efl_text_cursor_cluster_coord_set_delegate efl_text_cursor_cluster_coord_set_static_delegate;
+
+
+    private delegate  int efl_text_cursor_text_insert_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  int efl_text_cursor_text_insert_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_text_insert_api_delegate> efl_text_cursor_text_insert_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_text_insert_api_delegate>(_Module, "efl_text_cursor_text_insert");
+    private static  int cursor_text_insert(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_cursor_text_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       int _ret_var = default( int);
+         try {
+            _ret_var = ((TextCursor)wrapper).CursorTextInsert( cur,  text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_text_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  text);
+      }
+   }
+   private static efl_text_cursor_text_insert_delegate efl_text_cursor_text_insert_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_delete_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_delete_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_delete_api_delegate> efl_text_cursor_char_delete_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_delete_api_delegate>(_Module, "efl_text_cursor_char_delete");
+    private static  void cursor_char_delete(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_delete was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextCursor)wrapper).CursorCharDelete( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_delete_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_delete_delegate efl_text_cursor_char_delete_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>All available cursor states</summary>
+public enum TextCursorGetType
+{
+/// <summary>Main cursor state (alias to &quot;main&quot;)</summary>
+Default = 0,
+/// <summary>Main cursor state</summary>
+Main = 1,
+/// <summary>Selection begin cursor state</summary>
+SelectionBegin = 2,
+/// <summary>Selection end cursor state</summary>
+SelectionEnd = 3,
+/// <summary>Pre-edit start cursor state</summary>
+PreeditStart = 4,
+/// <summary>Pre-edit end cursor state</summary>
+PreeditEnd = 5,
+/// <summary>User cursor state</summary>
+User = 6,
+/// <summary>User extra cursor state</summary>
+UserExtra = 7,
+}
+} 
+namespace Efl { 
+/// <summary>Text cursor types</summary>
+public enum TextCursorType
+{
+/// <summary>Cursor type before</summary>
+Before = 0,
+/// <summary>Cursor type under</summary>
+Under = 1,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_font.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_font.eo.cs
new file mode 100755 (executable)
index 0000000..813efe2
--- /dev/null
@@ -0,0 +1,1039 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Font settings of the text
+/// 1.20</summary>
+[TextFontNativeInherit]
+public interface TextFont : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Retrieve the font family and size in use on a given text object.
+/// This function allows the font name and size of a text object to be queried. Remember that the font name string is still owned by Evas and should not have free() called on it by the caller of the function.
+/// 
+/// See also <see cref="Efl.TextFont.GetFont"/>.
+/// 1.20</summary>
+/// <param name="font">The font family name or filename.
+/// 1.20</param>
+/// <param name="size">The font size, in points.
+/// 1.20</param>
+/// <returns></returns>
+ void GetFont( out  System.String font,  out Efl.Font.Size size);
+   /// <summary>Set the font family, filename and size for a given text object.
+/// This function allows the font name and size of a text object to be set. The font string has to follow fontconfig&apos;s convention for naming fonts, as it&apos;s the underlying library used to query system fonts by Evas (see the fc-list command&apos;s output, on your system, to get an idea). Alternatively, youe can use the full path to a font file.
+/// 
+/// See also <see cref="Efl.TextFont.GetFont"/>, <see cref="Efl.TextFont.GetFontSource"/>.
+/// 1.20</summary>
+/// <param name="font">The font family name or filename.
+/// 1.20</param>
+/// <param name="size">The font size, in points.
+/// 1.20</param>
+/// <returns></returns>
+ void SetFont(  System.String font,  Efl.Font.Size size);
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+/// See <see cref="Efl.TextFont.GetFont"/> for more details.
+/// 1.20</summary>
+/// <returns>The font file&apos;s path.
+/// 1.20</returns>
+ System.String GetFontSource();
+   /// <summary>Set the font (source) file to be used on a given text object.
+/// This function allows the font file to be explicitly set for a given text object, overriding system lookup, which will first occur in the given file&apos;s contents.
+/// 
+/// See also <see cref="Efl.TextFont.GetFont"/>.
+/// 1.20</summary>
+/// <param name="font_source">The font file&apos;s path.
+/// 1.20</param>
+/// <returns></returns>
+ void SetFontSource(  System.String font_source);
+   /// <summary>Comma-separated list of font fallbacks
+/// Will be used in case the primary font isn&apos;t available.
+/// 1.20</summary>
+/// <returns>Font name fallbacks
+/// 1.20</returns>
+ System.String GetFontFallbacks();
+   /// <summary>Comma-separated list of font fallbacks
+/// Will be used in case the primary font isn&apos;t available.
+/// 1.20</summary>
+/// <param name="font_fallbacks">Font name fallbacks
+/// 1.20</param>
+/// <returns></returns>
+ void SetFontFallbacks(  System.String font_fallbacks);
+   /// <summary>Type of weight of the displayed font
+/// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+/// 1.20</summary>
+/// <returns>Font weight
+/// 1.20</returns>
+Efl.TextFontWeight GetFontWeight();
+   /// <summary>Type of weight of the displayed font
+/// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+/// 1.20</summary>
+/// <param name="font_weight">Font weight
+/// 1.20</param>
+/// <returns></returns>
+ void SetFontWeight( Efl.TextFontWeight font_weight);
+   /// <summary>Type of slant of the displayed font
+/// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+/// 1.20</summary>
+/// <returns>Font slant
+/// 1.20</returns>
+Efl.TextFontSlant GetFontSlant();
+   /// <summary>Type of slant of the displayed font
+/// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+/// 1.20</summary>
+/// <param name="style">Font slant
+/// 1.20</param>
+/// <returns></returns>
+ void SetFontSlant( Efl.TextFontSlant style);
+   /// <summary>Type of width of the displayed font
+/// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+/// 1.20</summary>
+/// <returns>Font width
+/// 1.20</returns>
+Efl.TextFontWidth GetFontWidth();
+   /// <summary>Type of width of the displayed font
+/// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+/// 1.20</summary>
+/// <param name="width">Font width
+/// 1.20</param>
+/// <returns></returns>
+ void SetFontWidth( Efl.TextFontWidth width);
+   /// <summary>Specific language of the displayed font
+/// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+/// 1.20</summary>
+/// <returns>Language
+/// 1.20</returns>
+ System.String GetFontLang();
+   /// <summary>Specific language of the displayed font
+/// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+/// 1.20</summary>
+/// <param name="lang">Language
+/// 1.20</param>
+/// <returns></returns>
+ void SetFontLang(  System.String lang);
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+/// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+/// 1.20</summary>
+/// <returns>Scalable
+/// 1.20</returns>
+Efl.TextFontBitmapScalable GetFontBitmapScalable();
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+/// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+/// 1.20</summary>
+/// <param name="scalable">Scalable
+/// 1.20</param>
+/// <returns></returns>
+ void SetFontBitmapScalable( Efl.TextFontBitmapScalable scalable);
+                                                   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+/// See <see cref="Efl.TextFont.GetFont"/> for more details.
+/// 1.20</summary>
+/// <value>The font file&apos;s path.
+/// 1.20</value>
+    System.String FontSource {
+      get ;
+      set ;
+   }
+   /// <summary>Comma-separated list of font fallbacks
+/// Will be used in case the primary font isn&apos;t available.
+/// 1.20</summary>
+/// <value>Font name fallbacks
+/// 1.20</value>
+    System.String FontFallbacks {
+      get ;
+      set ;
+   }
+   /// <summary>Type of weight of the displayed font
+/// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+/// 1.20</summary>
+/// <value>Font weight
+/// 1.20</value>
+   Efl.TextFontWeight FontWeight {
+      get ;
+      set ;
+   }
+   /// <summary>Type of slant of the displayed font
+/// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+/// 1.20</summary>
+/// <value>Font slant
+/// 1.20</value>
+   Efl.TextFontSlant FontSlant {
+      get ;
+      set ;
+   }
+   /// <summary>Type of width of the displayed font
+/// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+/// 1.20</summary>
+/// <value>Font width
+/// 1.20</value>
+   Efl.TextFontWidth FontWidth {
+      get ;
+      set ;
+   }
+   /// <summary>Specific language of the displayed font
+/// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+/// 1.20</summary>
+/// <value>Language
+/// 1.20</value>
+    System.String FontLang {
+      get ;
+      set ;
+   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+/// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+/// 1.20</summary>
+/// <value>Scalable
+/// 1.20</value>
+   Efl.TextFontBitmapScalable FontBitmapScalable {
+      get ;
+      set ;
+   }
+}
+/// <summary>Font settings of the text
+/// 1.20</summary>
+sealed public class TextFontConcrete : 
+
+TextFont
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextFontConcrete))
+            return Efl.TextFontNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_font_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextFontConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextFontConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextFontConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextFontConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Retrieve the font family and size in use on a given text object.
+   /// This function allows the font name and size of a text object to be queried. Remember that the font name string is still owned by Evas and should not have free() called on it by the caller of the function.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetFont( out  System.String font,  out Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_get_ptr.Value.Delegate(this.NativeHandle, out font,  out size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the font family, filename and size for a given text object.
+   /// This function allows the font name and size of a text object to be set. The font string has to follow fontconfig&apos;s convention for naming fonts, as it&apos;s the underlying library used to query system fonts by Evas (see the fc-list command&apos;s output, on your system, to get an idea). Alternatively, youe can use the full path to a font file.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>, <see cref="Efl.TextFont.GetFontSource"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFont(  System.String font,  Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_set_ptr.Value.Delegate(this.NativeHandle, font,  size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+   /// See <see cref="Efl.TextFont.GetFont"/> for more details.
+   /// 1.20</summary>
+   /// <returns>The font file&apos;s path.
+   /// 1.20</returns>
+   public  System.String GetFontSource() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_source_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the font (source) file to be used on a given text object.
+   /// This function allows the font file to be explicitly set for a given text object, overriding system lookup, which will first occur in the given file&apos;s contents.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font_source">The font file&apos;s path.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontSource(  System.String font_source) {
+                         Efl.TextFontNativeInherit.efl_text_font_source_set_ptr.Value.Delegate(this.NativeHandle, font_source);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <returns>Font name fallbacks
+   /// 1.20</returns>
+   public  System.String GetFontFallbacks() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_fallbacks_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <param name="font_fallbacks">Font name fallbacks
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontFallbacks(  System.String font_fallbacks) {
+                         Efl.TextFontNativeInherit.efl_text_font_fallbacks_set_ptr.Value.Delegate(this.NativeHandle, font_fallbacks);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font weight
+   /// 1.20</returns>
+   public Efl.TextFontWeight GetFontWeight() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_weight_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="font_weight">Font weight
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontWeight( Efl.TextFontWeight font_weight) {
+                         Efl.TextFontNativeInherit.efl_text_font_weight_set_ptr.Value.Delegate(this.NativeHandle, font_weight);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font slant
+   /// 1.20</returns>
+   public Efl.TextFontSlant GetFontSlant() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_slant_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="style">Font slant
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontSlant( Efl.TextFontSlant style) {
+                         Efl.TextFontNativeInherit.efl_text_font_slant_set_ptr.Value.Delegate(this.NativeHandle, style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font width
+   /// 1.20</returns>
+   public Efl.TextFontWidth GetFontWidth() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_width_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="width">Font width
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontWidth( Efl.TextFontWidth width) {
+                         Efl.TextFontNativeInherit.efl_text_font_width_set_ptr.Value.Delegate(this.NativeHandle, width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <returns>Language
+   /// 1.20</returns>
+   public  System.String GetFontLang() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_lang_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <param name="lang">Language
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontLang(  System.String lang) {
+                         Efl.TextFontNativeInherit.efl_text_font_lang_set_ptr.Value.Delegate(this.NativeHandle, lang);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <returns>Scalable
+   /// 1.20</returns>
+   public Efl.TextFontBitmapScalable GetFontBitmapScalable() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <param name="scalable">Scalable
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontBitmapScalable( Efl.TextFontBitmapScalable scalable) {
+                         Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_set_ptr.Value.Delegate(this.NativeHandle, scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+/// See <see cref="Efl.TextFont.GetFont"/> for more details.
+/// 1.20</summary>
+/// <value>The font file&apos;s path.
+/// 1.20</value>
+   public  System.String FontSource {
+      get { return GetFontSource(); }
+      set { SetFontSource( value); }
+   }
+   /// <summary>Comma-separated list of font fallbacks
+/// Will be used in case the primary font isn&apos;t available.
+/// 1.20</summary>
+/// <value>Font name fallbacks
+/// 1.20</value>
+   public  System.String FontFallbacks {
+      get { return GetFontFallbacks(); }
+      set { SetFontFallbacks( value); }
+   }
+   /// <summary>Type of weight of the displayed font
+/// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+/// 1.20</summary>
+/// <value>Font weight
+/// 1.20</value>
+   public Efl.TextFontWeight FontWeight {
+      get { return GetFontWeight(); }
+      set { SetFontWeight( value); }
+   }
+   /// <summary>Type of slant of the displayed font
+/// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+/// 1.20</summary>
+/// <value>Font slant
+/// 1.20</value>
+   public Efl.TextFontSlant FontSlant {
+      get { return GetFontSlant(); }
+      set { SetFontSlant( value); }
+   }
+   /// <summary>Type of width of the displayed font
+/// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+/// 1.20</summary>
+/// <value>Font width
+/// 1.20</value>
+   public Efl.TextFontWidth FontWidth {
+      get { return GetFontWidth(); }
+      set { SetFontWidth( value); }
+   }
+   /// <summary>Specific language of the displayed font
+/// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+/// 1.20</summary>
+/// <value>Language
+/// 1.20</value>
+   public  System.String FontLang {
+      get { return GetFontLang(); }
+      set { SetFontLang( value); }
+   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+/// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+/// 1.20</summary>
+/// <value>Scalable
+/// 1.20</value>
+   public Efl.TextFontBitmapScalable FontBitmapScalable {
+      get { return GetFontBitmapScalable(); }
+      set { SetFontBitmapScalable( value); }
+   }
+}
+public class TextFontNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_font_get_static_delegate == null)
+      efl_text_font_get_static_delegate = new efl_text_font_get_delegate(font_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_get_static_delegate)});
+      if (efl_text_font_set_static_delegate == null)
+      efl_text_font_set_static_delegate = new efl_text_font_set_delegate(font_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_set_static_delegate)});
+      if (efl_text_font_source_get_static_delegate == null)
+      efl_text_font_source_get_static_delegate = new efl_text_font_source_get_delegate(font_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_get_static_delegate)});
+      if (efl_text_font_source_set_static_delegate == null)
+      efl_text_font_source_set_static_delegate = new efl_text_font_source_set_delegate(font_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_set_static_delegate)});
+      if (efl_text_font_fallbacks_get_static_delegate == null)
+      efl_text_font_fallbacks_get_static_delegate = new efl_text_font_fallbacks_get_delegate(font_fallbacks_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_get_static_delegate)});
+      if (efl_text_font_fallbacks_set_static_delegate == null)
+      efl_text_font_fallbacks_set_static_delegate = new efl_text_font_fallbacks_set_delegate(font_fallbacks_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_set_static_delegate)});
+      if (efl_text_font_weight_get_static_delegate == null)
+      efl_text_font_weight_get_static_delegate = new efl_text_font_weight_get_delegate(font_weight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_get_static_delegate)});
+      if (efl_text_font_weight_set_static_delegate == null)
+      efl_text_font_weight_set_static_delegate = new efl_text_font_weight_set_delegate(font_weight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_set_static_delegate)});
+      if (efl_text_font_slant_get_static_delegate == null)
+      efl_text_font_slant_get_static_delegate = new efl_text_font_slant_get_delegate(font_slant_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_get_static_delegate)});
+      if (efl_text_font_slant_set_static_delegate == null)
+      efl_text_font_slant_set_static_delegate = new efl_text_font_slant_set_delegate(font_slant_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_set_static_delegate)});
+      if (efl_text_font_width_get_static_delegate == null)
+      efl_text_font_width_get_static_delegate = new efl_text_font_width_get_delegate(font_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_get_static_delegate)});
+      if (efl_text_font_width_set_static_delegate == null)
+      efl_text_font_width_set_static_delegate = new efl_text_font_width_set_delegate(font_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_set_static_delegate)});
+      if (efl_text_font_lang_get_static_delegate == null)
+      efl_text_font_lang_get_static_delegate = new efl_text_font_lang_get_delegate(font_lang_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_get_static_delegate)});
+      if (efl_text_font_lang_set_static_delegate == null)
+      efl_text_font_lang_set_static_delegate = new efl_text_font_lang_set_delegate(font_lang_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_set_static_delegate)});
+      if (efl_text_font_bitmap_scalable_get_static_delegate == null)
+      efl_text_font_bitmap_scalable_get_static_delegate = new efl_text_font_bitmap_scalable_get_delegate(font_bitmap_scalable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_get_static_delegate)});
+      if (efl_text_font_bitmap_scalable_set_static_delegate == null)
+      efl_text_font_bitmap_scalable_set_static_delegate = new efl_text_font_bitmap_scalable_set_delegate(font_bitmap_scalable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextFontConcrete.efl_text_font_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextFontConcrete.efl_text_font_interface_get();
+   }
+
+
+    private delegate  void efl_text_font_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate> efl_text_font_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate>(_Module, "efl_text_font_get");
+    private static  void font_get(System.IntPtr obj, System.IntPtr pd,  out  System.String font,  out Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_font = default( System.String);
+      size = default(Efl.Font.Size);                     
+         try {
+            ((TextFont)wrapper).GetFont( out _out_font,  out size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      font = _out_font;
+                              } else {
+         efl_text_font_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out font,  out size);
+      }
+   }
+   private static efl_text_font_get_delegate efl_text_font_get_static_delegate;
+
+
+    private delegate  void efl_text_font_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate> efl_text_font_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate>(_Module, "efl_text_font_set");
+    private static  void font_set(System.IntPtr obj, System.IntPtr pd,   System.String font,  Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextFont)wrapper).SetFont( font,  size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_font_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font,  size);
+      }
+   }
+   private static efl_text_font_set_delegate efl_text_font_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_source_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_source_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate> efl_text_font_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate>(_Module, "efl_text_font_source_get");
+    private static  System.String font_source_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextFont)wrapper).GetFontSource();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_source_get_delegate efl_text_font_source_get_static_delegate;
+
+
+    private delegate  void efl_text_font_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+
+
+    public delegate  void efl_text_font_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate> efl_text_font_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate>(_Module, "efl_text_font_source_set");
+    private static  void font_source_set(System.IntPtr obj, System.IntPtr pd,   System.String font_source)
+   {
+      Eina.Log.Debug("function efl_text_font_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFont)wrapper).SetFontSource( font_source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_source);
+      }
+   }
+   private static efl_text_font_source_set_delegate efl_text_font_source_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_fallbacks_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_fallbacks_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate> efl_text_font_fallbacks_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate>(_Module, "efl_text_font_fallbacks_get");
+    private static  System.String font_fallbacks_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextFont)wrapper).GetFontFallbacks();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_fallbacks_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_fallbacks_get_delegate efl_text_font_fallbacks_get_static_delegate;
+
+
+    private delegate  void efl_text_font_fallbacks_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+
+
+    public delegate  void efl_text_font_fallbacks_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate> efl_text_font_fallbacks_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate>(_Module, "efl_text_font_fallbacks_set");
+    private static  void font_fallbacks_set(System.IntPtr obj, System.IntPtr pd,   System.String font_fallbacks)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFont)wrapper).SetFontFallbacks( font_fallbacks);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_fallbacks_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_fallbacks);
+      }
+   }
+   private static efl_text_font_fallbacks_set_delegate efl_text_font_fallbacks_set_static_delegate;
+
+
+    private delegate Efl.TextFontWeight efl_text_font_weight_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWeight efl_text_font_weight_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate> efl_text_font_weight_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate>(_Module, "efl_text_font_weight_get");
+    private static Efl.TextFontWeight font_weight_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWeight _ret_var = default(Efl.TextFontWeight);
+         try {
+            _ret_var = ((TextFont)wrapper).GetFontWeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_weight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_weight_get_delegate efl_text_font_weight_get_static_delegate;
+
+
+    private delegate  void efl_text_font_weight_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWeight font_weight);
+
+
+    public delegate  void efl_text_font_weight_set_api_delegate(System.IntPtr obj,   Efl.TextFontWeight font_weight);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate> efl_text_font_weight_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate>(_Module, "efl_text_font_weight_set");
+    private static  void font_weight_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWeight font_weight)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFont)wrapper).SetFontWeight( font_weight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_weight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_weight);
+      }
+   }
+   private static efl_text_font_weight_set_delegate efl_text_font_weight_set_static_delegate;
+
+
+    private delegate Efl.TextFontSlant efl_text_font_slant_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontSlant efl_text_font_slant_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate> efl_text_font_slant_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate>(_Module, "efl_text_font_slant_get");
+    private static Efl.TextFontSlant font_slant_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontSlant _ret_var = default(Efl.TextFontSlant);
+         try {
+            _ret_var = ((TextFont)wrapper).GetFontSlant();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_slant_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_slant_get_delegate efl_text_font_slant_get_static_delegate;
+
+
+    private delegate  void efl_text_font_slant_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontSlant style);
+
+
+    public delegate  void efl_text_font_slant_set_api_delegate(System.IntPtr obj,   Efl.TextFontSlant style);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate> efl_text_font_slant_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate>(_Module, "efl_text_font_slant_set");
+    private static  void font_slant_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontSlant style)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFont)wrapper).SetFontSlant( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_slant_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_text_font_slant_set_delegate efl_text_font_slant_set_static_delegate;
+
+
+    private delegate Efl.TextFontWidth efl_text_font_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWidth efl_text_font_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate> efl_text_font_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate>(_Module, "efl_text_font_width_get");
+    private static Efl.TextFontWidth font_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWidth _ret_var = default(Efl.TextFontWidth);
+         try {
+            _ret_var = ((TextFont)wrapper).GetFontWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_width_get_delegate efl_text_font_width_get_static_delegate;
+
+
+    private delegate  void efl_text_font_width_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWidth width);
+
+
+    public delegate  void efl_text_font_width_set_api_delegate(System.IntPtr obj,   Efl.TextFontWidth width);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate> efl_text_font_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate>(_Module, "efl_text_font_width_set");
+    private static  void font_width_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWidth width)
+   {
+      Eina.Log.Debug("function efl_text_font_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFont)wrapper).SetFontWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_font_width_set_delegate efl_text_font_width_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_lang_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_lang_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate> efl_text_font_lang_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate>(_Module, "efl_text_font_lang_get");
+    private static  System.String font_lang_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextFont)wrapper).GetFontLang();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_lang_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_lang_get_delegate efl_text_font_lang_get_static_delegate;
+
+
+    private delegate  void efl_text_font_lang_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+
+
+    public delegate  void efl_text_font_lang_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate> efl_text_font_lang_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate>(_Module, "efl_text_font_lang_set");
+    private static  void font_lang_set(System.IntPtr obj, System.IntPtr pd,   System.String lang)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFont)wrapper).SetFontLang( lang);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_lang_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  lang);
+      }
+   }
+   private static efl_text_font_lang_set_delegate efl_text_font_lang_set_static_delegate;
+
+
+    private delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate> efl_text_font_bitmap_scalable_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate>(_Module, "efl_text_font_bitmap_scalable_get");
+    private static Efl.TextFontBitmapScalable font_bitmap_scalable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontBitmapScalable _ret_var = default(Efl.TextFontBitmapScalable);
+         try {
+            _ret_var = ((TextFont)wrapper).GetFontBitmapScalable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_bitmap_scalable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_bitmap_scalable_get_delegate efl_text_font_bitmap_scalable_get_static_delegate;
+
+
+    private delegate  void efl_text_font_bitmap_scalable_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontBitmapScalable scalable);
+
+
+    public delegate  void efl_text_font_bitmap_scalable_set_api_delegate(System.IntPtr obj,   Efl.TextFontBitmapScalable scalable);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate> efl_text_font_bitmap_scalable_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate>(_Module, "efl_text_font_bitmap_scalable_set");
+    private static  void font_bitmap_scalable_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontBitmapScalable scalable)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFont)wrapper).SetFontBitmapScalable( scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_bitmap_scalable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scalable);
+      }
+   }
+   private static efl_text_font_bitmap_scalable_set_delegate efl_text_font_bitmap_scalable_set_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>Type of font weight</summary>
+public enum TextFontWeight
+{
+/// <summary>Normal font weight</summary>
+Normal = 0,
+/// <summary>Thin font weight</summary>
+Thin = 1,
+/// <summary>Ultralight font weight</summary>
+Ultralight = 2,
+/// <summary>Extralight font weight</summary>
+Extralight = 3,
+/// <summary>Light font weight</summary>
+Light = 4,
+/// <summary>Book font weight</summary>
+Book = 5,
+/// <summary>Medium font weight</summary>
+Medium = 6,
+/// <summary>Semibold font weight</summary>
+Semibold = 7,
+/// <summary>Bold font weight</summary>
+Bold = 8,
+/// <summary>Ultrabold font weight</summary>
+Ultrabold = 9,
+/// <summary>Extrabold font weight</summary>
+Extrabold = 10,
+/// <summary>Black font weight</summary>
+Black = 11,
+/// <summary>Extrablack font weight</summary>
+Extrablack = 12,
+}
+} 
+namespace Efl { 
+/// <summary>Type of font width</summary>
+public enum TextFontWidth
+{
+/// <summary>Normal font width</summary>
+Normal = 0,
+/// <summary>Ultracondensed font width</summary>
+Ultracondensed = 1,
+/// <summary>Extracondensed font width</summary>
+Extracondensed = 2,
+/// <summary>Condensed font width</summary>
+Condensed = 3,
+/// <summary>Semicondensed font width</summary>
+Semicondensed = 4,
+/// <summary>Semiexpanded font width</summary>
+Semiexpanded = 5,
+/// <summary>Expanded font width</summary>
+Expanded = 6,
+/// <summary>Extraexpanded font width</summary>
+Extraexpanded = 7,
+/// <summary>Ultraexpanded font width</summary>
+Ultraexpanded = 8,
+}
+} 
+namespace Efl { 
+/// <summary>Type of font slant</summary>
+public enum TextFontSlant
+{
+/// <summary>Normal font slant</summary>
+Normal = 0,
+/// <summary>Oblique font slant</summary>
+Oblique = 1,
+/// <summary>Italic font slant</summary>
+Italic = 2,
+}
+} 
+namespace Efl { 
+/// <summary>Scalable of bitmap fonts
+/// 1.21</summary>
+public enum TextFontBitmapScalable
+{
+/// <summary>Disable scalable feature for bitmap fonts.</summary>
+None = 0,
+/// <summary>Enable scalable feature for color bitmap fonts.</summary>
+Color = 1,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_format.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_format.eo.cs
new file mode 100755 (executable)
index 0000000..d1f116e
--- /dev/null
@@ -0,0 +1,1258 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>The look and layout of the text
+/// The text format can affect the geometry of the text object, as well as how characters are presented.
+/// 1.20</summary>
+[TextFormatNativeInherit]
+public interface TextFormat : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+/// 1.20</summary>
+/// <returns>Ellipsis value
+/// 1.20</returns>
+double GetEllipsis();
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+/// 1.20</summary>
+/// <param name="value">Ellipsis value
+/// 1.20</param>
+/// <returns></returns>
+ void SetEllipsis( double value);
+   /// <summary>Wrap mode for use in the text
+/// 1.20</summary>
+/// <returns>Wrap mode
+/// 1.20</returns>
+Efl.TextFormatWrap GetWrap();
+   /// <summary>Wrap mode for use in the text
+/// 1.20</summary>
+/// <param name="wrap">Wrap mode
+/// 1.20</param>
+/// <returns></returns>
+ void SetWrap( Efl.TextFormatWrap wrap);
+   /// <summary>Multiline is enabled or not
+/// 1.20</summary>
+/// <returns><c>true</c> if multiline is enabled, <c>false</c> otherwise
+/// 1.20</returns>
+bool GetMultiline();
+   /// <summary>Multiline is enabled or not
+/// 1.20</summary>
+/// <param name="enabled"><c>true</c> if multiline is enabled, <c>false</c> otherwise
+/// 1.20</param>
+/// <returns></returns>
+ void SetMultiline( bool enabled);
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <returns>Alignment type
+/// 1.20</returns>
+Efl.TextFormatHorizontalAlignmentAutoType GetHalignAutoType();
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <param name="value">Alignment type
+/// 1.20</param>
+/// <returns></returns>
+ void SetHalignAutoType( Efl.TextFormatHorizontalAlignmentAutoType value);
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <returns>Horizontal alignment value
+/// 1.20</returns>
+double GetHalign();
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <param name="value">Horizontal alignment value
+/// 1.20</param>
+/// <returns></returns>
+ void SetHalign( double value);
+   /// <summary>Vertical alignment of text
+/// 1.20</summary>
+/// <returns>Vertical alignment value
+/// 1.20</returns>
+double GetValign();
+   /// <summary>Vertical alignment of text
+/// 1.20</summary>
+/// <param name="value">Vertical alignment value
+/// 1.20</param>
+/// <returns></returns>
+ void SetValign( double value);
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+/// <c>value</c> is absolute size.
+/// 1.20</summary>
+/// <returns>Line gap value
+/// 1.20</returns>
+double GetLinegap();
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+/// <c>value</c> is absolute size.
+/// 1.20</summary>
+/// <param name="value">Line gap value
+/// 1.20</param>
+/// <returns></returns>
+ void SetLinegap( double value);
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+/// The original line gap value is multiplied by <c>value</c>.
+/// 1.20</summary>
+/// <returns>Relative line gap value
+/// 1.20</returns>
+double GetLinerelgap();
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+/// The original line gap value is multiplied by <c>value</c>.
+/// 1.20</summary>
+/// <param name="value">Relative line gap value
+/// 1.20</param>
+/// <returns></returns>
+ void SetLinerelgap( double value);
+   /// <summary>Tabstops value
+/// 1.20</summary>
+/// <returns>Tapstops value
+/// 1.20</returns>
+ int GetTabstops();
+   /// <summary>Tabstops value
+/// 1.20</summary>
+/// <param name="value">Tapstops value
+/// 1.20</param>
+/// <returns></returns>
+ void SetTabstops(  int value);
+   /// <summary>Whether text is a password
+/// 1.20</summary>
+/// <returns><c>true</c> if the text is a password, <c>false</c> otherwise
+/// 1.20</returns>
+bool GetPassword();
+   /// <summary>Whether text is a password
+/// 1.20</summary>
+/// <param name="enabled"><c>true</c> if the text is a password, <c>false</c> otherwise
+/// 1.20</param>
+/// <returns></returns>
+ void SetPassword( bool enabled);
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+/// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+/// 1.20</summary>
+/// <returns>Replacement character
+/// 1.20</returns>
+ System.String GetReplacementChar();
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+/// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+/// 1.20</summary>
+/// <param name="repch">Replacement character
+/// 1.20</param>
+/// <returns></returns>
+ void SetReplacementChar(  System.String repch);
+                                                                     /// <summary>Ellipsis value (number from -1.0 to 1.0)
+/// 1.20</summary>
+/// <value>Ellipsis value
+/// 1.20</value>
+   double Ellipsis {
+      get ;
+      set ;
+   }
+   /// <summary>Wrap mode for use in the text
+/// 1.20</summary>
+/// <value>Wrap mode
+/// 1.20</value>
+   Efl.TextFormatWrap Wrap {
+      get ;
+      set ;
+   }
+   /// <summary>Multiline is enabled or not
+/// 1.20</summary>
+/// <value><c>true</c> if multiline is enabled, <c>false</c> otherwise
+/// 1.20</value>
+   bool Multiline {
+      get ;
+      set ;
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Alignment type
+/// 1.20</value>
+   Efl.TextFormatHorizontalAlignmentAutoType HalignAutoType {
+      get ;
+      set ;
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Horizontal alignment value
+/// 1.20</value>
+   double Halign {
+      get ;
+      set ;
+   }
+   /// <summary>Vertical alignment of text
+/// 1.20</summary>
+/// <value>Vertical alignment value
+/// 1.20</value>
+   double Valign {
+      get ;
+      set ;
+   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+/// <c>value</c> is absolute size.
+/// 1.20</summary>
+/// <value>Line gap value
+/// 1.20</value>
+   double Linegap {
+      get ;
+      set ;
+   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+/// The original line gap value is multiplied by <c>value</c>.
+/// 1.20</summary>
+/// <value>Relative line gap value
+/// 1.20</value>
+   double Linerelgap {
+      get ;
+      set ;
+   }
+   /// <summary>Tabstops value
+/// 1.20</summary>
+/// <value>Tapstops value
+/// 1.20</value>
+    int Tabstops {
+      get ;
+      set ;
+   }
+   /// <summary>Whether text is a password
+/// 1.20</summary>
+/// <value><c>true</c> if the text is a password, <c>false</c> otherwise
+/// 1.20</value>
+   bool Password {
+      get ;
+      set ;
+   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+/// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+/// 1.20</summary>
+/// <value>Replacement character
+/// 1.20</value>
+    System.String ReplacementChar {
+      get ;
+      set ;
+   }
+}
+/// <summary>The look and layout of the text
+/// The text format can affect the geometry of the text object, as well as how characters are presented.
+/// 1.20</summary>
+sealed public class TextFormatConcrete : 
+
+TextFormat
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextFormatConcrete))
+            return Efl.TextFormatNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_format_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextFormatConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextFormatConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextFormatConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextFormatConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <returns>Ellipsis value
+   /// 1.20</returns>
+   public double GetEllipsis() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_ellipsis_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <param name="value">Ellipsis value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetEllipsis( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_ellipsis_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <returns>Wrap mode
+   /// 1.20</returns>
+   public Efl.TextFormatWrap GetWrap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_wrap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <param name="wrap">Wrap mode
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetWrap( Efl.TextFormatWrap wrap) {
+                         Efl.TextFormatNativeInherit.efl_text_wrap_set_ptr.Value.Delegate(this.NativeHandle, wrap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <returns><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetMultiline() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_multiline_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMultiline( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_multiline_set_ptr.Value.Delegate(this.NativeHandle, enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Alignment type
+   /// 1.20</returns>
+   public Efl.TextFormatHorizontalAlignmentAutoType GetHalignAutoType() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_auto_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Alignment type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetHalignAutoType( Efl.TextFormatHorizontalAlignmentAutoType value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_auto_type_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Horizontal alignment value
+   /// 1.20</returns>
+   public double GetHalign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Horizontal alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetHalign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <returns>Vertical alignment value
+   /// 1.20</returns>
+   public double GetValign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_valign_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Vertical alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetValign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_valign_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <returns>Line gap value
+   /// 1.20</returns>
+   public double GetLinegap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linegap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <param name="value">Line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetLinegap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linegap_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <returns>Relative line gap value
+   /// 1.20</returns>
+   public double GetLinerelgap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linerelgap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <param name="value">Relative line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetLinerelgap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linerelgap_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <returns>Tapstops value
+   /// 1.20</returns>
+   public  int GetTabstops() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_tabstops_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <param name="value">Tapstops value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetTabstops(  int value) {
+                         Efl.TextFormatNativeInherit.efl_text_tabstops_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <returns><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetPassword() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_password_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetPassword( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_password_set_ptr.Value.Delegate(this.NativeHandle, enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <returns>Replacement character
+   /// 1.20</returns>
+   public  System.String GetReplacementChar() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_replacement_char_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <param name="repch">Replacement character
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetReplacementChar(  System.String repch) {
+                         Efl.TextFormatNativeInherit.efl_text_replacement_char_set_ptr.Value.Delegate(this.NativeHandle, repch);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+/// 1.20</summary>
+/// <value>Ellipsis value
+/// 1.20</value>
+   public double Ellipsis {
+      get { return GetEllipsis(); }
+      set { SetEllipsis( value); }
+   }
+   /// <summary>Wrap mode for use in the text
+/// 1.20</summary>
+/// <value>Wrap mode
+/// 1.20</value>
+   public Efl.TextFormatWrap Wrap {
+      get { return GetWrap(); }
+      set { SetWrap( value); }
+   }
+   /// <summary>Multiline is enabled or not
+/// 1.20</summary>
+/// <value><c>true</c> if multiline is enabled, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Multiline {
+      get { return GetMultiline(); }
+      set { SetMultiline( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Alignment type
+/// 1.20</value>
+   public Efl.TextFormatHorizontalAlignmentAutoType HalignAutoType {
+      get { return GetHalignAutoType(); }
+      set { SetHalignAutoType( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Horizontal alignment value
+/// 1.20</value>
+   public double Halign {
+      get { return GetHalign(); }
+      set { SetHalign( value); }
+   }
+   /// <summary>Vertical alignment of text
+/// 1.20</summary>
+/// <value>Vertical alignment value
+/// 1.20</value>
+   public double Valign {
+      get { return GetValign(); }
+      set { SetValign( value); }
+   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+/// <c>value</c> is absolute size.
+/// 1.20</summary>
+/// <value>Line gap value
+/// 1.20</value>
+   public double Linegap {
+      get { return GetLinegap(); }
+      set { SetLinegap( value); }
+   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+/// The original line gap value is multiplied by <c>value</c>.
+/// 1.20</summary>
+/// <value>Relative line gap value
+/// 1.20</value>
+   public double Linerelgap {
+      get { return GetLinerelgap(); }
+      set { SetLinerelgap( value); }
+   }
+   /// <summary>Tabstops value
+/// 1.20</summary>
+/// <value>Tapstops value
+/// 1.20</value>
+   public  int Tabstops {
+      get { return GetTabstops(); }
+      set { SetTabstops( value); }
+   }
+   /// <summary>Whether text is a password
+/// 1.20</summary>
+/// <value><c>true</c> if the text is a password, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Password {
+      get { return GetPassword(); }
+      set { SetPassword( value); }
+   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+/// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+/// 1.20</summary>
+/// <value>Replacement character
+/// 1.20</value>
+   public  System.String ReplacementChar {
+      get { return GetReplacementChar(); }
+      set { SetReplacementChar( value); }
+   }
+}
+public class TextFormatNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_ellipsis_get_static_delegate == null)
+      efl_text_ellipsis_get_static_delegate = new efl_text_ellipsis_get_delegate(ellipsis_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_get_static_delegate)});
+      if (efl_text_ellipsis_set_static_delegate == null)
+      efl_text_ellipsis_set_static_delegate = new efl_text_ellipsis_set_delegate(ellipsis_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_set_static_delegate)});
+      if (efl_text_wrap_get_static_delegate == null)
+      efl_text_wrap_get_static_delegate = new efl_text_wrap_get_delegate(wrap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_get_static_delegate)});
+      if (efl_text_wrap_set_static_delegate == null)
+      efl_text_wrap_set_static_delegate = new efl_text_wrap_set_delegate(wrap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_set_static_delegate)});
+      if (efl_text_multiline_get_static_delegate == null)
+      efl_text_multiline_get_static_delegate = new efl_text_multiline_get_delegate(multiline_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_get_static_delegate)});
+      if (efl_text_multiline_set_static_delegate == null)
+      efl_text_multiline_set_static_delegate = new efl_text_multiline_set_delegate(multiline_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_set_static_delegate)});
+      if (efl_text_halign_auto_type_get_static_delegate == null)
+      efl_text_halign_auto_type_get_static_delegate = new efl_text_halign_auto_type_get_delegate(halign_auto_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_get_static_delegate)});
+      if (efl_text_halign_auto_type_set_static_delegate == null)
+      efl_text_halign_auto_type_set_static_delegate = new efl_text_halign_auto_type_set_delegate(halign_auto_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_set_static_delegate)});
+      if (efl_text_halign_get_static_delegate == null)
+      efl_text_halign_get_static_delegate = new efl_text_halign_get_delegate(halign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_get_static_delegate)});
+      if (efl_text_halign_set_static_delegate == null)
+      efl_text_halign_set_static_delegate = new efl_text_halign_set_delegate(halign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_set_static_delegate)});
+      if (efl_text_valign_get_static_delegate == null)
+      efl_text_valign_get_static_delegate = new efl_text_valign_get_delegate(valign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_get_static_delegate)});
+      if (efl_text_valign_set_static_delegate == null)
+      efl_text_valign_set_static_delegate = new efl_text_valign_set_delegate(valign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_set_static_delegate)});
+      if (efl_text_linegap_get_static_delegate == null)
+      efl_text_linegap_get_static_delegate = new efl_text_linegap_get_delegate(linegap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_get_static_delegate)});
+      if (efl_text_linegap_set_static_delegate == null)
+      efl_text_linegap_set_static_delegate = new efl_text_linegap_set_delegate(linegap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_set_static_delegate)});
+      if (efl_text_linerelgap_get_static_delegate == null)
+      efl_text_linerelgap_get_static_delegate = new efl_text_linerelgap_get_delegate(linerelgap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_get_static_delegate)});
+      if (efl_text_linerelgap_set_static_delegate == null)
+      efl_text_linerelgap_set_static_delegate = new efl_text_linerelgap_set_delegate(linerelgap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_set_static_delegate)});
+      if (efl_text_tabstops_get_static_delegate == null)
+      efl_text_tabstops_get_static_delegate = new efl_text_tabstops_get_delegate(tabstops_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_get_static_delegate)});
+      if (efl_text_tabstops_set_static_delegate == null)
+      efl_text_tabstops_set_static_delegate = new efl_text_tabstops_set_delegate(tabstops_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_set_static_delegate)});
+      if (efl_text_password_get_static_delegate == null)
+      efl_text_password_get_static_delegate = new efl_text_password_get_delegate(password_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_get_static_delegate)});
+      if (efl_text_password_set_static_delegate == null)
+      efl_text_password_set_static_delegate = new efl_text_password_set_delegate(password_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_set_static_delegate)});
+      if (efl_text_replacement_char_get_static_delegate == null)
+      efl_text_replacement_char_get_static_delegate = new efl_text_replacement_char_get_delegate(replacement_char_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_get_static_delegate)});
+      if (efl_text_replacement_char_set_static_delegate == null)
+      efl_text_replacement_char_set_static_delegate = new efl_text_replacement_char_set_delegate(replacement_char_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextFormatConcrete.efl_text_format_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextFormatConcrete.efl_text_format_interface_get();
+   }
+
+
+    private delegate double efl_text_ellipsis_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_ellipsis_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate> efl_text_ellipsis_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate>(_Module, "efl_text_ellipsis_get");
+    private static double ellipsis_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetEllipsis();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_ellipsis_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_ellipsis_get_delegate efl_text_ellipsis_get_static_delegate;
+
+
+    private delegate  void efl_text_ellipsis_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_ellipsis_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate> efl_text_ellipsis_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate>(_Module, "efl_text_ellipsis_set");
+    private static  void ellipsis_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetEllipsis( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_ellipsis_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_ellipsis_set_delegate efl_text_ellipsis_set_static_delegate;
+
+
+    private delegate Efl.TextFormatWrap efl_text_wrap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatWrap efl_text_wrap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate> efl_text_wrap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate>(_Module, "efl_text_wrap_get");
+    private static Efl.TextFormatWrap wrap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_wrap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatWrap _ret_var = default(Efl.TextFormatWrap);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetWrap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_wrap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_wrap_get_delegate efl_text_wrap_get_static_delegate;
+
+
+    private delegate  void efl_text_wrap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatWrap wrap);
+
+
+    public delegate  void efl_text_wrap_set_api_delegate(System.IntPtr obj,   Efl.TextFormatWrap wrap);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate> efl_text_wrap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate>(_Module, "efl_text_wrap_set");
+    private static  void wrap_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatWrap wrap)
+   {
+      Eina.Log.Debug("function efl_text_wrap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetWrap( wrap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_wrap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  wrap);
+      }
+   }
+   private static efl_text_wrap_set_delegate efl_text_wrap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_multiline_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_multiline_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate> efl_text_multiline_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate>(_Module, "efl_text_multiline_get");
+    private static bool multiline_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_multiline_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetMultiline();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_multiline_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_multiline_get_delegate efl_text_multiline_get_static_delegate;
+
+
+    private delegate  void efl_text_multiline_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_multiline_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate> efl_text_multiline_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate>(_Module, "efl_text_multiline_set");
+    private static  void multiline_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_multiline_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetMultiline( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_multiline_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_multiline_set_delegate efl_text_multiline_set_static_delegate;
+
+
+    private delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate> efl_text_halign_auto_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate>(_Module, "efl_text_halign_auto_type_get");
+    private static Efl.TextFormatHorizontalAlignmentAutoType halign_auto_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatHorizontalAlignmentAutoType _ret_var = default(Efl.TextFormatHorizontalAlignmentAutoType);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetHalignAutoType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_auto_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_auto_type_get_delegate efl_text_halign_auto_type_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_auto_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatHorizontalAlignmentAutoType value);
+
+
+    public delegate  void efl_text_halign_auto_type_set_api_delegate(System.IntPtr obj,   Efl.TextFormatHorizontalAlignmentAutoType value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate> efl_text_halign_auto_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate>(_Module, "efl_text_halign_auto_type_set");
+    private static  void halign_auto_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatHorizontalAlignmentAutoType value)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetHalignAutoType( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_auto_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_auto_type_set_delegate efl_text_halign_auto_type_set_static_delegate;
+
+
+    private delegate double efl_text_halign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_halign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate> efl_text_halign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate>(_Module, "efl_text_halign_get");
+    private static double halign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetHalign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_get_delegate efl_text_halign_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_halign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate> efl_text_halign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate>(_Module, "efl_text_halign_set");
+    private static  void halign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_halign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetHalign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_set_delegate efl_text_halign_set_static_delegate;
+
+
+    private delegate double efl_text_valign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_valign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate> efl_text_valign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate>(_Module, "efl_text_valign_get");
+    private static double valign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_valign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetValign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_valign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_valign_get_delegate efl_text_valign_get_static_delegate;
+
+
+    private delegate  void efl_text_valign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_valign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate> efl_text_valign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate>(_Module, "efl_text_valign_set");
+    private static  void valign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_valign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetValign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_valign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_valign_set_delegate efl_text_valign_set_static_delegate;
+
+
+    private delegate double efl_text_linegap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linegap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate> efl_text_linegap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate>(_Module, "efl_text_linegap_get");
+    private static double linegap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linegap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetLinegap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linegap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linegap_get_delegate efl_text_linegap_get_static_delegate;
+
+
+    private delegate  void efl_text_linegap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linegap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate> efl_text_linegap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate>(_Module, "efl_text_linegap_set");
+    private static  void linegap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linegap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetLinegap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linegap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linegap_set_delegate efl_text_linegap_set_static_delegate;
+
+
+    private delegate double efl_text_linerelgap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linerelgap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate> efl_text_linerelgap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate>(_Module, "efl_text_linerelgap_get");
+    private static double linerelgap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetLinerelgap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linerelgap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linerelgap_get_delegate efl_text_linerelgap_get_static_delegate;
+
+
+    private delegate  void efl_text_linerelgap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linerelgap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate> efl_text_linerelgap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate>(_Module, "efl_text_linerelgap_set");
+    private static  void linerelgap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetLinerelgap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linerelgap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linerelgap_set_delegate efl_text_linerelgap_set_static_delegate;
+
+
+    private delegate  int efl_text_tabstops_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_tabstops_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate> efl_text_tabstops_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate>(_Module, "efl_text_tabstops_get");
+    private static  int tabstops_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetTabstops();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_tabstops_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_tabstops_get_delegate efl_text_tabstops_get_static_delegate;
+
+
+    private delegate  void efl_text_tabstops_set_delegate(System.IntPtr obj, System.IntPtr pd,    int value);
+
+
+    public delegate  void efl_text_tabstops_set_api_delegate(System.IntPtr obj,    int value);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate> efl_text_tabstops_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate>(_Module, "efl_text_tabstops_set");
+    private static  void tabstops_set(System.IntPtr obj, System.IntPtr pd,   int value)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetTabstops( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_tabstops_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_tabstops_set_delegate efl_text_tabstops_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_password_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_password_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate> efl_text_password_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate>(_Module, "efl_text_password_get");
+    private static bool password_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_password_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetPassword();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_password_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_password_get_delegate efl_text_password_get_static_delegate;
+
+
+    private delegate  void efl_text_password_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_password_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate> efl_text_password_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate>(_Module, "efl_text_password_set");
+    private static  void password_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_password_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetPassword( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_password_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_password_set_delegate efl_text_password_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_replacement_char_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_replacement_char_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate> efl_text_replacement_char_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate>(_Module, "efl_text_replacement_char_get");
+    private static  System.String replacement_char_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextFormat)wrapper).GetReplacementChar();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_replacement_char_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_replacement_char_get_delegate efl_text_replacement_char_get_static_delegate;
+
+
+    private delegate  void efl_text_replacement_char_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+
+
+    public delegate  void efl_text_replacement_char_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate> efl_text_replacement_char_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate>(_Module, "efl_text_replacement_char_set");
+    private static  void replacement_char_set(System.IntPtr obj, System.IntPtr pd,   System.String repch)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextFormat)wrapper).SetReplacementChar( repch);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_replacement_char_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repch);
+      }
+   }
+   private static efl_text_replacement_char_set_delegate efl_text_replacement_char_set_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>Wrap mode of the text (not in effect if not multiline)</summary>
+public enum TextFormatWrap
+{
+/// <summary>No wrapping</summary>
+None = 0,
+/// <summary>Wrap mode character</summary>
+Char = 1,
+/// <summary>Wrap mode word</summary>
+Word = 2,
+/// <summary>Wrap mode mixed</summary>
+Mixed = 3,
+/// <summary>Wrap mode hyphenation</summary>
+Hyphenation = 4,
+}
+} 
+namespace Efl { 
+/// <summary>Auto-horizontal alignment of the text</summary>
+public enum TextFormatHorizontalAlignmentAutoType
+{
+/// <summary>No auto-alignment rule</summary>
+None = 0,
+/// <summary>Respects LTR/RTL (bidirectional) settings</summary>
+Normal = 1,
+/// <summary>Respects locale&apos;s langauge settings</summary>
+Locale = 2,
+/// <summary>Text is places at opposite side of LTR/RTL (bidirectional) settings</summary>
+End = 3,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_interactive.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_interactive.eo.cs
new file mode 100755 (executable)
index 0000000..7ba3dc0
--- /dev/null
@@ -0,0 +1,3686 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>This is an interface interactive text inputs should implement</summary>
+[TextInteractiveNativeInherit]
+public interface TextInteractive : 
+   Efl.Text ,
+   Efl.TextFont ,
+   Efl.TextFormat ,
+   Efl.TextStyle ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Whether or not selection is allowed on this object</summary>
+/// <returns><c>true</c> if enabled, <c>false</c> otherwise</returns>
+bool GetSelectionAllowed();
+   /// <summary>Whether or not selection is allowed on this object</summary>
+/// <param name="allowed"><c>true</c> if enabled, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetSelectionAllowed( bool allowed);
+   /// <summary>The cursors used for selection handling.
+/// If the cursors are equal there&apos;s no selection.
+/// 
+/// You are allowed to retain and modify them. Modifying them modifies the selection of the object.</summary>
+/// <param name="start">The start of the selection</param>
+/// <param name="end">The end of the selection</param>
+/// <returns></returns>
+ void GetSelectionCursors( out Efl.TextCursorCursor start,  out Efl.TextCursorCursor end);
+   /// <summary>Whether the entry is editable.
+/// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+/// <returns>If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</returns>
+bool GetEditable();
+   /// <summary>Whether the entry is editable.
+/// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+/// <param name="editable">If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</param>
+/// <returns></returns>
+ void SetEditable( bool editable);
+   /// <summary>Clears the selection.</summary>
+/// <returns></returns>
+ void SelectNone();
+                     /// <summary>The selection on the object has changed. Query using <see cref="Efl.TextInteractive.GetSelectionCursors"/></summary>
+   event EventHandler SelectionChangedEvt;
+   /// <summary>Whether or not selection is allowed on this object</summary>
+/// <value><c>true</c> if enabled, <c>false</c> otherwise</value>
+   bool SelectionAllowed {
+      get ;
+      set ;
+   }
+   /// <summary>Whether the entry is editable.
+/// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+/// <value>If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</value>
+   bool Editable {
+      get ;
+      set ;
+   }
+}
+/// <summary>This is an interface interactive text inputs should implement</summary>
+sealed public class TextInteractiveConcrete : 
+
+TextInteractive
+   , Efl.Text, Efl.TextFont, Efl.TextFormat, Efl.TextStyle
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextInteractiveConcrete))
+            return Efl.TextInteractiveNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_text_interactive_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextInteractiveConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextInteractiveConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextInteractiveConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextInteractiveConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object SelectionChangedEvtKey = new object();
+   /// <summary>The selection on the object has changed. Query using <see cref="Efl.TextInteractive.GetSelectionCursors"/></summary>
+   public event EventHandler SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_TEXT_INTERACTIVE_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_TEXT_INTERACTIVE_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionChangedEvt.</summary>
+   public void On_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionChangedEvt_delegate;
+   private void on_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_SelectionChangedEvt_delegate = new Efl.EventCb(on_SelectionChangedEvt_NativeCallback);
+   }
+   /// <summary>Whether or not selection is allowed on this object</summary>
+   /// <returns><c>true</c> if enabled, <c>false</c> otherwise</returns>
+   public bool GetSelectionAllowed() {
+       var _ret_var = Efl.TextInteractiveNativeInherit.efl_text_interactive_selection_allowed_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether or not selection is allowed on this object</summary>
+   /// <param name="allowed"><c>true</c> if enabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetSelectionAllowed( bool allowed) {
+                         Efl.TextInteractiveNativeInherit.efl_text_interactive_selection_allowed_set_ptr.Value.Delegate(this.NativeHandle, allowed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The cursors used for selection handling.
+   /// If the cursors are equal there&apos;s no selection.
+   /// 
+   /// You are allowed to retain and modify them. Modifying them modifies the selection of the object.</summary>
+   /// <param name="start">The start of the selection</param>
+   /// <param name="end">The end of the selection</param>
+   /// <returns></returns>
+   public  void GetSelectionCursors( out Efl.TextCursorCursor start,  out Efl.TextCursorCursor end) {
+                                           Efl.TextInteractiveNativeInherit.efl_text_interactive_selection_cursors_get_ptr.Value.Delegate(this.NativeHandle, out start,  out end);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Whether the entry is editable.
+   /// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+   /// <returns>If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</returns>
+   public bool GetEditable() {
+       var _ret_var = Efl.TextInteractiveNativeInherit.efl_text_interactive_editable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether the entry is editable.
+   /// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+   /// <param name="editable">If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</param>
+   /// <returns></returns>
+   public  void SetEditable( bool editable) {
+                         Efl.TextInteractiveNativeInherit.efl_text_interactive_editable_set_ptr.Value.Delegate(this.NativeHandle, editable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Clears the selection.</summary>
+   /// <returns></returns>
+   public  void SelectNone() {
+       Efl.TextInteractiveNativeInherit.efl_text_interactive_select_none_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate(this.NativeHandle, text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieve the font family and size in use on a given text object.
+   /// This function allows the font name and size of a text object to be queried. Remember that the font name string is still owned by Evas and should not have free() called on it by the caller of the function.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetFont( out  System.String font,  out Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_get_ptr.Value.Delegate(this.NativeHandle, out font,  out size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the font family, filename and size for a given text object.
+   /// This function allows the font name and size of a text object to be set. The font string has to follow fontconfig&apos;s convention for naming fonts, as it&apos;s the underlying library used to query system fonts by Evas (see the fc-list command&apos;s output, on your system, to get an idea). Alternatively, youe can use the full path to a font file.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>, <see cref="Efl.TextFont.GetFontSource"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFont(  System.String font,  Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_set_ptr.Value.Delegate(this.NativeHandle, font,  size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+   /// See <see cref="Efl.TextFont.GetFont"/> for more details.
+   /// 1.20</summary>
+   /// <returns>The font file&apos;s path.
+   /// 1.20</returns>
+   public  System.String GetFontSource() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_source_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the font (source) file to be used on a given text object.
+   /// This function allows the font file to be explicitly set for a given text object, overriding system lookup, which will first occur in the given file&apos;s contents.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font_source">The font file&apos;s path.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontSource(  System.String font_source) {
+                         Efl.TextFontNativeInherit.efl_text_font_source_set_ptr.Value.Delegate(this.NativeHandle, font_source);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <returns>Font name fallbacks
+   /// 1.20</returns>
+   public  System.String GetFontFallbacks() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_fallbacks_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <param name="font_fallbacks">Font name fallbacks
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontFallbacks(  System.String font_fallbacks) {
+                         Efl.TextFontNativeInherit.efl_text_font_fallbacks_set_ptr.Value.Delegate(this.NativeHandle, font_fallbacks);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font weight
+   /// 1.20</returns>
+   public Efl.TextFontWeight GetFontWeight() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_weight_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="font_weight">Font weight
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontWeight( Efl.TextFontWeight font_weight) {
+                         Efl.TextFontNativeInherit.efl_text_font_weight_set_ptr.Value.Delegate(this.NativeHandle, font_weight);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font slant
+   /// 1.20</returns>
+   public Efl.TextFontSlant GetFontSlant() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_slant_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="style">Font slant
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontSlant( Efl.TextFontSlant style) {
+                         Efl.TextFontNativeInherit.efl_text_font_slant_set_ptr.Value.Delegate(this.NativeHandle, style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font width
+   /// 1.20</returns>
+   public Efl.TextFontWidth GetFontWidth() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_width_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="width">Font width
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontWidth( Efl.TextFontWidth width) {
+                         Efl.TextFontNativeInherit.efl_text_font_width_set_ptr.Value.Delegate(this.NativeHandle, width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <returns>Language
+   /// 1.20</returns>
+   public  System.String GetFontLang() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_lang_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <param name="lang">Language
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontLang(  System.String lang) {
+                         Efl.TextFontNativeInherit.efl_text_font_lang_set_ptr.Value.Delegate(this.NativeHandle, lang);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <returns>Scalable
+   /// 1.20</returns>
+   public Efl.TextFontBitmapScalable GetFontBitmapScalable() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <param name="scalable">Scalable
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFontBitmapScalable( Efl.TextFontBitmapScalable scalable) {
+                         Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_set_ptr.Value.Delegate(this.NativeHandle, scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <returns>Ellipsis value
+   /// 1.20</returns>
+   public double GetEllipsis() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_ellipsis_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <param name="value">Ellipsis value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetEllipsis( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_ellipsis_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <returns>Wrap mode
+   /// 1.20</returns>
+   public Efl.TextFormatWrap GetWrap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_wrap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <param name="wrap">Wrap mode
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetWrap( Efl.TextFormatWrap wrap) {
+                         Efl.TextFormatNativeInherit.efl_text_wrap_set_ptr.Value.Delegate(this.NativeHandle, wrap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <returns><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetMultiline() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_multiline_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetMultiline( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_multiline_set_ptr.Value.Delegate(this.NativeHandle, enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Alignment type
+   /// 1.20</returns>
+   public Efl.TextFormatHorizontalAlignmentAutoType GetHalignAutoType() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_auto_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Alignment type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetHalignAutoType( Efl.TextFormatHorizontalAlignmentAutoType value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_auto_type_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Horizontal alignment value
+   /// 1.20</returns>
+   public double GetHalign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Horizontal alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetHalign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <returns>Vertical alignment value
+   /// 1.20</returns>
+   public double GetValign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_valign_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Vertical alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetValign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_valign_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <returns>Line gap value
+   /// 1.20</returns>
+   public double GetLinegap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linegap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <param name="value">Line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetLinegap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linegap_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <returns>Relative line gap value
+   /// 1.20</returns>
+   public double GetLinerelgap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linerelgap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <param name="value">Relative line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetLinerelgap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linerelgap_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <returns>Tapstops value
+   /// 1.20</returns>
+   public  int GetTabstops() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_tabstops_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <param name="value">Tapstops value
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetTabstops(  int value) {
+                         Efl.TextFormatNativeInherit.efl_text_tabstops_set_ptr.Value.Delegate(this.NativeHandle, value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <returns><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetPassword() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_password_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetPassword( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_password_set_ptr.Value.Delegate(this.NativeHandle, enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <returns>Replacement character
+   /// 1.20</returns>
+   public  System.String GetReplacementChar() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_replacement_char_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <param name="repch">Replacement character
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetReplacementChar(  System.String repch) {
+                         Efl.TextFormatNativeInherit.efl_text_replacement_char_set_ptr.Value.Delegate(this.NativeHandle, repch);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetNormalColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetNormalColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <returns>Backing type
+   /// 1.20</returns>
+   public Efl.TextStyleBackingType GetBackingType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_backing_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <param name="type">Backing type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetBackingType( Efl.TextStyleBackingType type) {
+                         Efl.TextStyleNativeInherit.efl_text_backing_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetBackingColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetBackingColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <returns>Underline type
+   /// 1.20</returns>
+   public Efl.TextStyleUnderlineType GetUnderlineType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <param name="type">Underline type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineType( Efl.TextStyleUnderlineType type) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetUnderlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <returns>Height
+   /// 1.20</returns>
+   public double GetUnderlineHeight() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_height_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <param name="height">Height
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineHeight( double height) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_height_set_ptr.Value.Delegate(this.NativeHandle, height);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetUnderlineDashedColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineDashedColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Width
+   /// 1.20</returns>
+   public  int GetUnderlineDashedWidth() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <param name="width">Width
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineDashedWidth(  int width) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_set_ptr.Value.Delegate(this.NativeHandle, width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Gap
+   /// 1.20</returns>
+   public  int GetUnderlineDashedGap() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <param name="gap">Gap
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineDashedGap(  int gap) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_set_ptr.Value.Delegate(this.NativeHandle, gap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetUnderline2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderline2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <returns>Strikethrough type
+   /// 1.20</returns>
+   public Efl.TextStyleStrikethroughType GetStrikethroughType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_strikethrough_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <param name="type">Strikethrough type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetStrikethroughType( Efl.TextStyleStrikethroughType type) {
+                         Efl.TextStyleNativeInherit.efl_text_strikethrough_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetStrikethroughColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetStrikethroughColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <returns>Effect type
+   /// 1.20</returns>
+   public Efl.TextStyleEffectType GetEffectType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_effect_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <param name="type">Effect type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetEffectType( Efl.TextStyleEffectType type) {
+                         Efl.TextStyleNativeInherit.efl_text_effect_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetOutlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetOutlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <returns>Shadow direction
+   /// 1.20</returns>
+   public Efl.TextStyleShadowDirection GetShadowDirection() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_shadow_direction_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <param name="type">Shadow direction
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetShadowDirection( Efl.TextStyleShadowDirection type) {
+                         Efl.TextStyleNativeInherit.efl_text_shadow_direction_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetShadowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetShadowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetGlowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetGlowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetGlow2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetGlow2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <returns>Filter code
+   /// 1.20</returns>
+   public  System.String GetGfxFilter() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_gfx_filter_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <param name="code">Filter code
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetGfxFilter(  System.String code) {
+                         Efl.TextStyleNativeInherit.efl_text_gfx_filter_set_ptr.Value.Delegate(this.NativeHandle, code);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether or not selection is allowed on this object</summary>
+/// <value><c>true</c> if enabled, <c>false</c> otherwise</value>
+   public bool SelectionAllowed {
+      get { return GetSelectionAllowed(); }
+      set { SetSelectionAllowed( value); }
+   }
+   /// <summary>Whether the entry is editable.
+/// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+/// <value>If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</value>
+   public bool Editable {
+      get { return GetEditable(); }
+      set { SetEditable( value); }
+   }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+/// See <see cref="Efl.TextFont.GetFont"/> for more details.
+/// 1.20</summary>
+/// <value>The font file&apos;s path.
+/// 1.20</value>
+   public  System.String FontSource {
+      get { return GetFontSource(); }
+      set { SetFontSource( value); }
+   }
+   /// <summary>Comma-separated list of font fallbacks
+/// Will be used in case the primary font isn&apos;t available.
+/// 1.20</summary>
+/// <value>Font name fallbacks
+/// 1.20</value>
+   public  System.String FontFallbacks {
+      get { return GetFontFallbacks(); }
+      set { SetFontFallbacks( value); }
+   }
+   /// <summary>Type of weight of the displayed font
+/// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+/// 1.20</summary>
+/// <value>Font weight
+/// 1.20</value>
+   public Efl.TextFontWeight FontWeight {
+      get { return GetFontWeight(); }
+      set { SetFontWeight( value); }
+   }
+   /// <summary>Type of slant of the displayed font
+/// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+/// 1.20</summary>
+/// <value>Font slant
+/// 1.20</value>
+   public Efl.TextFontSlant FontSlant {
+      get { return GetFontSlant(); }
+      set { SetFontSlant( value); }
+   }
+   /// <summary>Type of width of the displayed font
+/// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+/// 1.20</summary>
+/// <value>Font width
+/// 1.20</value>
+   public Efl.TextFontWidth FontWidth {
+      get { return GetFontWidth(); }
+      set { SetFontWidth( value); }
+   }
+   /// <summary>Specific language of the displayed font
+/// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+/// 1.20</summary>
+/// <value>Language
+/// 1.20</value>
+   public  System.String FontLang {
+      get { return GetFontLang(); }
+      set { SetFontLang( value); }
+   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+/// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+/// 1.20</summary>
+/// <value>Scalable
+/// 1.20</value>
+   public Efl.TextFontBitmapScalable FontBitmapScalable {
+      get { return GetFontBitmapScalable(); }
+      set { SetFontBitmapScalable( value); }
+   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+/// 1.20</summary>
+/// <value>Ellipsis value
+/// 1.20</value>
+   public double Ellipsis {
+      get { return GetEllipsis(); }
+      set { SetEllipsis( value); }
+   }
+   /// <summary>Wrap mode for use in the text
+/// 1.20</summary>
+/// <value>Wrap mode
+/// 1.20</value>
+   public Efl.TextFormatWrap Wrap {
+      get { return GetWrap(); }
+      set { SetWrap( value); }
+   }
+   /// <summary>Multiline is enabled or not
+/// 1.20</summary>
+/// <value><c>true</c> if multiline is enabled, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Multiline {
+      get { return GetMultiline(); }
+      set { SetMultiline( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Alignment type
+/// 1.20</value>
+   public Efl.TextFormatHorizontalAlignmentAutoType HalignAutoType {
+      get { return GetHalignAutoType(); }
+      set { SetHalignAutoType( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Horizontal alignment value
+/// 1.20</value>
+   public double Halign {
+      get { return GetHalign(); }
+      set { SetHalign( value); }
+   }
+   /// <summary>Vertical alignment of text
+/// 1.20</summary>
+/// <value>Vertical alignment value
+/// 1.20</value>
+   public double Valign {
+      get { return GetValign(); }
+      set { SetValign( value); }
+   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+/// <c>value</c> is absolute size.
+/// 1.20</summary>
+/// <value>Line gap value
+/// 1.20</value>
+   public double Linegap {
+      get { return GetLinegap(); }
+      set { SetLinegap( value); }
+   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+/// The original line gap value is multiplied by <c>value</c>.
+/// 1.20</summary>
+/// <value>Relative line gap value
+/// 1.20</value>
+   public double Linerelgap {
+      get { return GetLinerelgap(); }
+      set { SetLinerelgap( value); }
+   }
+   /// <summary>Tabstops value
+/// 1.20</summary>
+/// <value>Tapstops value
+/// 1.20</value>
+   public  int Tabstops {
+      get { return GetTabstops(); }
+      set { SetTabstops( value); }
+   }
+   /// <summary>Whether text is a password
+/// 1.20</summary>
+/// <value><c>true</c> if the text is a password, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Password {
+      get { return GetPassword(); }
+      set { SetPassword( value); }
+   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+/// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+/// 1.20</summary>
+/// <value>Replacement character
+/// 1.20</value>
+   public  System.String ReplacementChar {
+      get { return GetReplacementChar(); }
+      set { SetReplacementChar( value); }
+   }
+   /// <summary>Enable or disable backing type
+/// 1.20</summary>
+/// <value>Backing type
+/// 1.20</value>
+   public Efl.TextStyleBackingType BackingType {
+      get { return GetBackingType(); }
+      set { SetBackingType( value); }
+   }
+   /// <summary>Sets an underline style on the text
+/// 1.20</summary>
+/// <value>Underline type
+/// 1.20</value>
+   public Efl.TextStyleUnderlineType UnderlineType {
+      get { return GetUnderlineType(); }
+      set { SetUnderlineType( value); }
+   }
+   /// <summary>Height of underline style
+/// 1.20</summary>
+/// <value>Height
+/// 1.20</value>
+   public double UnderlineHeight {
+      get { return GetUnderlineHeight(); }
+      set { SetUnderlineHeight( value); }
+   }
+   /// <summary>Width of dashed underline style
+/// 1.20</summary>
+/// <value>Width
+/// 1.20</value>
+   public  int UnderlineDashedWidth {
+      get { return GetUnderlineDashedWidth(); }
+      set { SetUnderlineDashedWidth( value); }
+   }
+   /// <summary>Gap of dashed underline style
+/// 1.20</summary>
+/// <value>Gap
+/// 1.20</value>
+   public  int UnderlineDashedGap {
+      get { return GetUnderlineDashedGap(); }
+      set { SetUnderlineDashedGap( value); }
+   }
+   /// <summary>Type of strikethrough style
+/// 1.20</summary>
+/// <value>Strikethrough type
+/// 1.20</value>
+   public Efl.TextStyleStrikethroughType StrikethroughType {
+      get { return GetStrikethroughType(); }
+      set { SetStrikethroughType( value); }
+   }
+   /// <summary>Type of effect used for the displayed text
+/// 1.20</summary>
+/// <value>Effect type
+/// 1.20</value>
+   public Efl.TextStyleEffectType EffectType {
+      get { return GetEffectType(); }
+      set { SetEffectType( value); }
+   }
+   /// <summary>Direction of shadow effect
+/// 1.20</summary>
+/// <value>Shadow direction
+/// 1.20</value>
+   public Efl.TextStyleShadowDirection ShadowDirection {
+      get { return GetShadowDirection(); }
+      set { SetShadowDirection( value); }
+   }
+   /// <summary>Program that applies a special filter
+/// See <see cref="Efl.Gfx.Filter"/>.
+/// 1.20</summary>
+/// <value>Filter code
+/// 1.20</value>
+   public  System.String GfxFilter {
+      get { return GetGfxFilter(); }
+      set { SetGfxFilter( value); }
+   }
+}
+public class TextInteractiveNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_interactive_selection_allowed_get_static_delegate == null)
+      efl_text_interactive_selection_allowed_get_static_delegate = new efl_text_interactive_selection_allowed_get_delegate(selection_allowed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_selection_allowed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_selection_allowed_get_static_delegate)});
+      if (efl_text_interactive_selection_allowed_set_static_delegate == null)
+      efl_text_interactive_selection_allowed_set_static_delegate = new efl_text_interactive_selection_allowed_set_delegate(selection_allowed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_selection_allowed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_selection_allowed_set_static_delegate)});
+      if (efl_text_interactive_selection_cursors_get_static_delegate == null)
+      efl_text_interactive_selection_cursors_get_static_delegate = new efl_text_interactive_selection_cursors_get_delegate(selection_cursors_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_selection_cursors_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_selection_cursors_get_static_delegate)});
+      if (efl_text_interactive_editable_get_static_delegate == null)
+      efl_text_interactive_editable_get_static_delegate = new efl_text_interactive_editable_get_delegate(editable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_editable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_editable_get_static_delegate)});
+      if (efl_text_interactive_editable_set_static_delegate == null)
+      efl_text_interactive_editable_set_static_delegate = new efl_text_interactive_editable_set_delegate(editable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_editable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_editable_set_static_delegate)});
+      if (efl_text_interactive_select_none_static_delegate == null)
+      efl_text_interactive_select_none_static_delegate = new efl_text_interactive_select_none_delegate(select_none);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_select_none"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_select_none_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_font_get_static_delegate == null)
+      efl_text_font_get_static_delegate = new efl_text_font_get_delegate(font_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_get_static_delegate)});
+      if (efl_text_font_set_static_delegate == null)
+      efl_text_font_set_static_delegate = new efl_text_font_set_delegate(font_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_set_static_delegate)});
+      if (efl_text_font_source_get_static_delegate == null)
+      efl_text_font_source_get_static_delegate = new efl_text_font_source_get_delegate(font_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_get_static_delegate)});
+      if (efl_text_font_source_set_static_delegate == null)
+      efl_text_font_source_set_static_delegate = new efl_text_font_source_set_delegate(font_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_set_static_delegate)});
+      if (efl_text_font_fallbacks_get_static_delegate == null)
+      efl_text_font_fallbacks_get_static_delegate = new efl_text_font_fallbacks_get_delegate(font_fallbacks_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_get_static_delegate)});
+      if (efl_text_font_fallbacks_set_static_delegate == null)
+      efl_text_font_fallbacks_set_static_delegate = new efl_text_font_fallbacks_set_delegate(font_fallbacks_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_set_static_delegate)});
+      if (efl_text_font_weight_get_static_delegate == null)
+      efl_text_font_weight_get_static_delegate = new efl_text_font_weight_get_delegate(font_weight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_get_static_delegate)});
+      if (efl_text_font_weight_set_static_delegate == null)
+      efl_text_font_weight_set_static_delegate = new efl_text_font_weight_set_delegate(font_weight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_set_static_delegate)});
+      if (efl_text_font_slant_get_static_delegate == null)
+      efl_text_font_slant_get_static_delegate = new efl_text_font_slant_get_delegate(font_slant_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_get_static_delegate)});
+      if (efl_text_font_slant_set_static_delegate == null)
+      efl_text_font_slant_set_static_delegate = new efl_text_font_slant_set_delegate(font_slant_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_set_static_delegate)});
+      if (efl_text_font_width_get_static_delegate == null)
+      efl_text_font_width_get_static_delegate = new efl_text_font_width_get_delegate(font_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_get_static_delegate)});
+      if (efl_text_font_width_set_static_delegate == null)
+      efl_text_font_width_set_static_delegate = new efl_text_font_width_set_delegate(font_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_set_static_delegate)});
+      if (efl_text_font_lang_get_static_delegate == null)
+      efl_text_font_lang_get_static_delegate = new efl_text_font_lang_get_delegate(font_lang_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_get_static_delegate)});
+      if (efl_text_font_lang_set_static_delegate == null)
+      efl_text_font_lang_set_static_delegate = new efl_text_font_lang_set_delegate(font_lang_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_set_static_delegate)});
+      if (efl_text_font_bitmap_scalable_get_static_delegate == null)
+      efl_text_font_bitmap_scalable_get_static_delegate = new efl_text_font_bitmap_scalable_get_delegate(font_bitmap_scalable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_get_static_delegate)});
+      if (efl_text_font_bitmap_scalable_set_static_delegate == null)
+      efl_text_font_bitmap_scalable_set_static_delegate = new efl_text_font_bitmap_scalable_set_delegate(font_bitmap_scalable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_set_static_delegate)});
+      if (efl_text_ellipsis_get_static_delegate == null)
+      efl_text_ellipsis_get_static_delegate = new efl_text_ellipsis_get_delegate(ellipsis_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_get_static_delegate)});
+      if (efl_text_ellipsis_set_static_delegate == null)
+      efl_text_ellipsis_set_static_delegate = new efl_text_ellipsis_set_delegate(ellipsis_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_set_static_delegate)});
+      if (efl_text_wrap_get_static_delegate == null)
+      efl_text_wrap_get_static_delegate = new efl_text_wrap_get_delegate(wrap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_get_static_delegate)});
+      if (efl_text_wrap_set_static_delegate == null)
+      efl_text_wrap_set_static_delegate = new efl_text_wrap_set_delegate(wrap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_set_static_delegate)});
+      if (efl_text_multiline_get_static_delegate == null)
+      efl_text_multiline_get_static_delegate = new efl_text_multiline_get_delegate(multiline_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_get_static_delegate)});
+      if (efl_text_multiline_set_static_delegate == null)
+      efl_text_multiline_set_static_delegate = new efl_text_multiline_set_delegate(multiline_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_set_static_delegate)});
+      if (efl_text_halign_auto_type_get_static_delegate == null)
+      efl_text_halign_auto_type_get_static_delegate = new efl_text_halign_auto_type_get_delegate(halign_auto_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_get_static_delegate)});
+      if (efl_text_halign_auto_type_set_static_delegate == null)
+      efl_text_halign_auto_type_set_static_delegate = new efl_text_halign_auto_type_set_delegate(halign_auto_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_set_static_delegate)});
+      if (efl_text_halign_get_static_delegate == null)
+      efl_text_halign_get_static_delegate = new efl_text_halign_get_delegate(halign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_get_static_delegate)});
+      if (efl_text_halign_set_static_delegate == null)
+      efl_text_halign_set_static_delegate = new efl_text_halign_set_delegate(halign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_set_static_delegate)});
+      if (efl_text_valign_get_static_delegate == null)
+      efl_text_valign_get_static_delegate = new efl_text_valign_get_delegate(valign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_get_static_delegate)});
+      if (efl_text_valign_set_static_delegate == null)
+      efl_text_valign_set_static_delegate = new efl_text_valign_set_delegate(valign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_set_static_delegate)});
+      if (efl_text_linegap_get_static_delegate == null)
+      efl_text_linegap_get_static_delegate = new efl_text_linegap_get_delegate(linegap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_get_static_delegate)});
+      if (efl_text_linegap_set_static_delegate == null)
+      efl_text_linegap_set_static_delegate = new efl_text_linegap_set_delegate(linegap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_set_static_delegate)});
+      if (efl_text_linerelgap_get_static_delegate == null)
+      efl_text_linerelgap_get_static_delegate = new efl_text_linerelgap_get_delegate(linerelgap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_get_static_delegate)});
+      if (efl_text_linerelgap_set_static_delegate == null)
+      efl_text_linerelgap_set_static_delegate = new efl_text_linerelgap_set_delegate(linerelgap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_set_static_delegate)});
+      if (efl_text_tabstops_get_static_delegate == null)
+      efl_text_tabstops_get_static_delegate = new efl_text_tabstops_get_delegate(tabstops_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_get_static_delegate)});
+      if (efl_text_tabstops_set_static_delegate == null)
+      efl_text_tabstops_set_static_delegate = new efl_text_tabstops_set_delegate(tabstops_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_set_static_delegate)});
+      if (efl_text_password_get_static_delegate == null)
+      efl_text_password_get_static_delegate = new efl_text_password_get_delegate(password_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_get_static_delegate)});
+      if (efl_text_password_set_static_delegate == null)
+      efl_text_password_set_static_delegate = new efl_text_password_set_delegate(password_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_set_static_delegate)});
+      if (efl_text_replacement_char_get_static_delegate == null)
+      efl_text_replacement_char_get_static_delegate = new efl_text_replacement_char_get_delegate(replacement_char_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_get_static_delegate)});
+      if (efl_text_replacement_char_set_static_delegate == null)
+      efl_text_replacement_char_set_static_delegate = new efl_text_replacement_char_set_delegate(replacement_char_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_set_static_delegate)});
+      if (efl_text_normal_color_get_static_delegate == null)
+      efl_text_normal_color_get_static_delegate = new efl_text_normal_color_get_delegate(normal_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_get_static_delegate)});
+      if (efl_text_normal_color_set_static_delegate == null)
+      efl_text_normal_color_set_static_delegate = new efl_text_normal_color_set_delegate(normal_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_set_static_delegate)});
+      if (efl_text_backing_type_get_static_delegate == null)
+      efl_text_backing_type_get_static_delegate = new efl_text_backing_type_get_delegate(backing_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_get_static_delegate)});
+      if (efl_text_backing_type_set_static_delegate == null)
+      efl_text_backing_type_set_static_delegate = new efl_text_backing_type_set_delegate(backing_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_set_static_delegate)});
+      if (efl_text_backing_color_get_static_delegate == null)
+      efl_text_backing_color_get_static_delegate = new efl_text_backing_color_get_delegate(backing_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_get_static_delegate)});
+      if (efl_text_backing_color_set_static_delegate == null)
+      efl_text_backing_color_set_static_delegate = new efl_text_backing_color_set_delegate(backing_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_set_static_delegate)});
+      if (efl_text_underline_type_get_static_delegate == null)
+      efl_text_underline_type_get_static_delegate = new efl_text_underline_type_get_delegate(underline_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_get_static_delegate)});
+      if (efl_text_underline_type_set_static_delegate == null)
+      efl_text_underline_type_set_static_delegate = new efl_text_underline_type_set_delegate(underline_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_set_static_delegate)});
+      if (efl_text_underline_color_get_static_delegate == null)
+      efl_text_underline_color_get_static_delegate = new efl_text_underline_color_get_delegate(underline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_get_static_delegate)});
+      if (efl_text_underline_color_set_static_delegate == null)
+      efl_text_underline_color_set_static_delegate = new efl_text_underline_color_set_delegate(underline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_set_static_delegate)});
+      if (efl_text_underline_height_get_static_delegate == null)
+      efl_text_underline_height_get_static_delegate = new efl_text_underline_height_get_delegate(underline_height_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_get_static_delegate)});
+      if (efl_text_underline_height_set_static_delegate == null)
+      efl_text_underline_height_set_static_delegate = new efl_text_underline_height_set_delegate(underline_height_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_set_static_delegate)});
+      if (efl_text_underline_dashed_color_get_static_delegate == null)
+      efl_text_underline_dashed_color_get_static_delegate = new efl_text_underline_dashed_color_get_delegate(underline_dashed_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_get_static_delegate)});
+      if (efl_text_underline_dashed_color_set_static_delegate == null)
+      efl_text_underline_dashed_color_set_static_delegate = new efl_text_underline_dashed_color_set_delegate(underline_dashed_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_set_static_delegate)});
+      if (efl_text_underline_dashed_width_get_static_delegate == null)
+      efl_text_underline_dashed_width_get_static_delegate = new efl_text_underline_dashed_width_get_delegate(underline_dashed_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_get_static_delegate)});
+      if (efl_text_underline_dashed_width_set_static_delegate == null)
+      efl_text_underline_dashed_width_set_static_delegate = new efl_text_underline_dashed_width_set_delegate(underline_dashed_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_set_static_delegate)});
+      if (efl_text_underline_dashed_gap_get_static_delegate == null)
+      efl_text_underline_dashed_gap_get_static_delegate = new efl_text_underline_dashed_gap_get_delegate(underline_dashed_gap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_get_static_delegate)});
+      if (efl_text_underline_dashed_gap_set_static_delegate == null)
+      efl_text_underline_dashed_gap_set_static_delegate = new efl_text_underline_dashed_gap_set_delegate(underline_dashed_gap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_set_static_delegate)});
+      if (efl_text_underline2_color_get_static_delegate == null)
+      efl_text_underline2_color_get_static_delegate = new efl_text_underline2_color_get_delegate(underline2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_get_static_delegate)});
+      if (efl_text_underline2_color_set_static_delegate == null)
+      efl_text_underline2_color_set_static_delegate = new efl_text_underline2_color_set_delegate(underline2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_set_static_delegate)});
+      if (efl_text_strikethrough_type_get_static_delegate == null)
+      efl_text_strikethrough_type_get_static_delegate = new efl_text_strikethrough_type_get_delegate(strikethrough_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_get_static_delegate)});
+      if (efl_text_strikethrough_type_set_static_delegate == null)
+      efl_text_strikethrough_type_set_static_delegate = new efl_text_strikethrough_type_set_delegate(strikethrough_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_set_static_delegate)});
+      if (efl_text_strikethrough_color_get_static_delegate == null)
+      efl_text_strikethrough_color_get_static_delegate = new efl_text_strikethrough_color_get_delegate(strikethrough_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_get_static_delegate)});
+      if (efl_text_strikethrough_color_set_static_delegate == null)
+      efl_text_strikethrough_color_set_static_delegate = new efl_text_strikethrough_color_set_delegate(strikethrough_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_set_static_delegate)});
+      if (efl_text_effect_type_get_static_delegate == null)
+      efl_text_effect_type_get_static_delegate = new efl_text_effect_type_get_delegate(effect_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_get_static_delegate)});
+      if (efl_text_effect_type_set_static_delegate == null)
+      efl_text_effect_type_set_static_delegate = new efl_text_effect_type_set_delegate(effect_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_set_static_delegate)});
+      if (efl_text_outline_color_get_static_delegate == null)
+      efl_text_outline_color_get_static_delegate = new efl_text_outline_color_get_delegate(outline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_get_static_delegate)});
+      if (efl_text_outline_color_set_static_delegate == null)
+      efl_text_outline_color_set_static_delegate = new efl_text_outline_color_set_delegate(outline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_set_static_delegate)});
+      if (efl_text_shadow_direction_get_static_delegate == null)
+      efl_text_shadow_direction_get_static_delegate = new efl_text_shadow_direction_get_delegate(shadow_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_get_static_delegate)});
+      if (efl_text_shadow_direction_set_static_delegate == null)
+      efl_text_shadow_direction_set_static_delegate = new efl_text_shadow_direction_set_delegate(shadow_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_set_static_delegate)});
+      if (efl_text_shadow_color_get_static_delegate == null)
+      efl_text_shadow_color_get_static_delegate = new efl_text_shadow_color_get_delegate(shadow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_get_static_delegate)});
+      if (efl_text_shadow_color_set_static_delegate == null)
+      efl_text_shadow_color_set_static_delegate = new efl_text_shadow_color_set_delegate(shadow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_set_static_delegate)});
+      if (efl_text_glow_color_get_static_delegate == null)
+      efl_text_glow_color_get_static_delegate = new efl_text_glow_color_get_delegate(glow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_get_static_delegate)});
+      if (efl_text_glow_color_set_static_delegate == null)
+      efl_text_glow_color_set_static_delegate = new efl_text_glow_color_set_delegate(glow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_set_static_delegate)});
+      if (efl_text_glow2_color_get_static_delegate == null)
+      efl_text_glow2_color_get_static_delegate = new efl_text_glow2_color_get_delegate(glow2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_get_static_delegate)});
+      if (efl_text_glow2_color_set_static_delegate == null)
+      efl_text_glow2_color_set_static_delegate = new efl_text_glow2_color_set_delegate(glow2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_set_static_delegate)});
+      if (efl_text_gfx_filter_get_static_delegate == null)
+      efl_text_gfx_filter_get_static_delegate = new efl_text_gfx_filter_get_delegate(gfx_filter_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_get_static_delegate)});
+      if (efl_text_gfx_filter_set_static_delegate == null)
+      efl_text_gfx_filter_set_static_delegate = new efl_text_gfx_filter_set_delegate(gfx_filter_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextInteractiveConcrete.efl_text_interactive_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextInteractiveConcrete.efl_text_interactive_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_interactive_selection_allowed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_interactive_selection_allowed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_get_api_delegate> efl_text_interactive_selection_allowed_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_get_api_delegate>(_Module, "efl_text_interactive_selection_allowed_get");
+    private static bool selection_allowed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_interactive_selection_allowed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetSelectionAllowed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_interactive_selection_allowed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_interactive_selection_allowed_get_delegate efl_text_interactive_selection_allowed_get_static_delegate;
+
+
+    private delegate  void efl_text_interactive_selection_allowed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool allowed);
+
+
+    public delegate  void efl_text_interactive_selection_allowed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool allowed);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_set_api_delegate> efl_text_interactive_selection_allowed_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_set_api_delegate>(_Module, "efl_text_interactive_selection_allowed_set");
+    private static  void selection_allowed_set(System.IntPtr obj, System.IntPtr pd,  bool allowed)
+   {
+      Eina.Log.Debug("function efl_text_interactive_selection_allowed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetSelectionAllowed( allowed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_interactive_selection_allowed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  allowed);
+      }
+   }
+   private static efl_text_interactive_selection_allowed_set_delegate efl_text_interactive_selection_allowed_set_static_delegate;
+
+
+    private delegate  void efl_text_interactive_selection_cursors_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.TextCursorCursor start,   out Efl.TextCursorCursor end);
+
+
+    public delegate  void efl_text_interactive_selection_cursors_get_api_delegate(System.IntPtr obj,   out Efl.TextCursorCursor start,   out Efl.TextCursorCursor end);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_selection_cursors_get_api_delegate> efl_text_interactive_selection_cursors_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_selection_cursors_get_api_delegate>(_Module, "efl_text_interactive_selection_cursors_get");
+    private static  void selection_cursors_get(System.IntPtr obj, System.IntPtr pd,  out Efl.TextCursorCursor start,  out Efl.TextCursorCursor end)
+   {
+      Eina.Log.Debug("function efl_text_interactive_selection_cursors_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           start = default(Efl.TextCursorCursor);      end = default(Efl.TextCursorCursor);                     
+         try {
+            ((TextInteractive)wrapper).GetSelectionCursors( out start,  out end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_interactive_selection_cursors_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out start,  out end);
+      }
+   }
+   private static efl_text_interactive_selection_cursors_get_delegate efl_text_interactive_selection_cursors_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_interactive_editable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_interactive_editable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_editable_get_api_delegate> efl_text_interactive_editable_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_editable_get_api_delegate>(_Module, "efl_text_interactive_editable_get");
+    private static bool editable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_interactive_editable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetEditable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_interactive_editable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_interactive_editable_get_delegate efl_text_interactive_editable_get_static_delegate;
+
+
+    private delegate  void efl_text_interactive_editable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+
+
+    public delegate  void efl_text_interactive_editable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_editable_set_api_delegate> efl_text_interactive_editable_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_editable_set_api_delegate>(_Module, "efl_text_interactive_editable_set");
+    private static  void editable_set(System.IntPtr obj, System.IntPtr pd,  bool editable)
+   {
+      Eina.Log.Debug("function efl_text_interactive_editable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetEditable( editable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_interactive_editable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  editable);
+      }
+   }
+   private static efl_text_interactive_editable_set_delegate efl_text_interactive_editable_set_static_delegate;
+
+
+    private delegate  void efl_text_interactive_select_none_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_text_interactive_select_none_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_select_none_api_delegate> efl_text_interactive_select_none_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_select_none_api_delegate>(_Module, "efl_text_interactive_select_none");
+    private static  void select_none(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_interactive_select_none was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((TextInteractive)wrapper).SelectNone();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_text_interactive_select_none_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_interactive_select_none_delegate efl_text_interactive_select_none_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    private delegate  void efl_text_font_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate> efl_text_font_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate>(_Module, "efl_text_font_get");
+    private static  void font_get(System.IntPtr obj, System.IntPtr pd,  out  System.String font,  out Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_font = default( System.String);
+      size = default(Efl.Font.Size);                     
+         try {
+            ((TextInteractive)wrapper).GetFont( out _out_font,  out size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      font = _out_font;
+                              } else {
+         efl_text_font_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out font,  out size);
+      }
+   }
+   private static efl_text_font_get_delegate efl_text_font_get_static_delegate;
+
+
+    private delegate  void efl_text_font_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate> efl_text_font_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate>(_Module, "efl_text_font_set");
+    private static  void font_set(System.IntPtr obj, System.IntPtr pd,   System.String font,  Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextInteractive)wrapper).SetFont( font,  size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_font_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font,  size);
+      }
+   }
+   private static efl_text_font_set_delegate efl_text_font_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_source_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_source_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate> efl_text_font_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate>(_Module, "efl_text_font_source_get");
+    private static  System.String font_source_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetFontSource();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_source_get_delegate efl_text_font_source_get_static_delegate;
+
+
+    private delegate  void efl_text_font_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+
+
+    public delegate  void efl_text_font_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate> efl_text_font_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate>(_Module, "efl_text_font_source_set");
+    private static  void font_source_set(System.IntPtr obj, System.IntPtr pd,   System.String font_source)
+   {
+      Eina.Log.Debug("function efl_text_font_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetFontSource( font_source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_source);
+      }
+   }
+   private static efl_text_font_source_set_delegate efl_text_font_source_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_fallbacks_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_fallbacks_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate> efl_text_font_fallbacks_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate>(_Module, "efl_text_font_fallbacks_get");
+    private static  System.String font_fallbacks_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetFontFallbacks();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_fallbacks_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_fallbacks_get_delegate efl_text_font_fallbacks_get_static_delegate;
+
+
+    private delegate  void efl_text_font_fallbacks_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+
+
+    public delegate  void efl_text_font_fallbacks_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate> efl_text_font_fallbacks_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate>(_Module, "efl_text_font_fallbacks_set");
+    private static  void font_fallbacks_set(System.IntPtr obj, System.IntPtr pd,   System.String font_fallbacks)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetFontFallbacks( font_fallbacks);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_fallbacks_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_fallbacks);
+      }
+   }
+   private static efl_text_font_fallbacks_set_delegate efl_text_font_fallbacks_set_static_delegate;
+
+
+    private delegate Efl.TextFontWeight efl_text_font_weight_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWeight efl_text_font_weight_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate> efl_text_font_weight_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate>(_Module, "efl_text_font_weight_get");
+    private static Efl.TextFontWeight font_weight_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWeight _ret_var = default(Efl.TextFontWeight);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetFontWeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_weight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_weight_get_delegate efl_text_font_weight_get_static_delegate;
+
+
+    private delegate  void efl_text_font_weight_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWeight font_weight);
+
+
+    public delegate  void efl_text_font_weight_set_api_delegate(System.IntPtr obj,   Efl.TextFontWeight font_weight);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate> efl_text_font_weight_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate>(_Module, "efl_text_font_weight_set");
+    private static  void font_weight_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWeight font_weight)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetFontWeight( font_weight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_weight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_weight);
+      }
+   }
+   private static efl_text_font_weight_set_delegate efl_text_font_weight_set_static_delegate;
+
+
+    private delegate Efl.TextFontSlant efl_text_font_slant_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontSlant efl_text_font_slant_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate> efl_text_font_slant_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate>(_Module, "efl_text_font_slant_get");
+    private static Efl.TextFontSlant font_slant_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontSlant _ret_var = default(Efl.TextFontSlant);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetFontSlant();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_slant_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_slant_get_delegate efl_text_font_slant_get_static_delegate;
+
+
+    private delegate  void efl_text_font_slant_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontSlant style);
+
+
+    public delegate  void efl_text_font_slant_set_api_delegate(System.IntPtr obj,   Efl.TextFontSlant style);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate> efl_text_font_slant_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate>(_Module, "efl_text_font_slant_set");
+    private static  void font_slant_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontSlant style)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetFontSlant( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_slant_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_text_font_slant_set_delegate efl_text_font_slant_set_static_delegate;
+
+
+    private delegate Efl.TextFontWidth efl_text_font_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWidth efl_text_font_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate> efl_text_font_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate>(_Module, "efl_text_font_width_get");
+    private static Efl.TextFontWidth font_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWidth _ret_var = default(Efl.TextFontWidth);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetFontWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_width_get_delegate efl_text_font_width_get_static_delegate;
+
+
+    private delegate  void efl_text_font_width_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWidth width);
+
+
+    public delegate  void efl_text_font_width_set_api_delegate(System.IntPtr obj,   Efl.TextFontWidth width);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate> efl_text_font_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate>(_Module, "efl_text_font_width_set");
+    private static  void font_width_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWidth width)
+   {
+      Eina.Log.Debug("function efl_text_font_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetFontWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_font_width_set_delegate efl_text_font_width_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_lang_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_lang_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate> efl_text_font_lang_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate>(_Module, "efl_text_font_lang_get");
+    private static  System.String font_lang_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetFontLang();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_lang_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_lang_get_delegate efl_text_font_lang_get_static_delegate;
+
+
+    private delegate  void efl_text_font_lang_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+
+
+    public delegate  void efl_text_font_lang_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate> efl_text_font_lang_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate>(_Module, "efl_text_font_lang_set");
+    private static  void font_lang_set(System.IntPtr obj, System.IntPtr pd,   System.String lang)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetFontLang( lang);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_lang_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  lang);
+      }
+   }
+   private static efl_text_font_lang_set_delegate efl_text_font_lang_set_static_delegate;
+
+
+    private delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate> efl_text_font_bitmap_scalable_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate>(_Module, "efl_text_font_bitmap_scalable_get");
+    private static Efl.TextFontBitmapScalable font_bitmap_scalable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontBitmapScalable _ret_var = default(Efl.TextFontBitmapScalable);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetFontBitmapScalable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_bitmap_scalable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_bitmap_scalable_get_delegate efl_text_font_bitmap_scalable_get_static_delegate;
+
+
+    private delegate  void efl_text_font_bitmap_scalable_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontBitmapScalable scalable);
+
+
+    public delegate  void efl_text_font_bitmap_scalable_set_api_delegate(System.IntPtr obj,   Efl.TextFontBitmapScalable scalable);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate> efl_text_font_bitmap_scalable_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate>(_Module, "efl_text_font_bitmap_scalable_set");
+    private static  void font_bitmap_scalable_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontBitmapScalable scalable)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetFontBitmapScalable( scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_bitmap_scalable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scalable);
+      }
+   }
+   private static efl_text_font_bitmap_scalable_set_delegate efl_text_font_bitmap_scalable_set_static_delegate;
+
+
+    private delegate double efl_text_ellipsis_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_ellipsis_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate> efl_text_ellipsis_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate>(_Module, "efl_text_ellipsis_get");
+    private static double ellipsis_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetEllipsis();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_ellipsis_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_ellipsis_get_delegate efl_text_ellipsis_get_static_delegate;
+
+
+    private delegate  void efl_text_ellipsis_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_ellipsis_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate> efl_text_ellipsis_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate>(_Module, "efl_text_ellipsis_set");
+    private static  void ellipsis_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetEllipsis( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_ellipsis_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_ellipsis_set_delegate efl_text_ellipsis_set_static_delegate;
+
+
+    private delegate Efl.TextFormatWrap efl_text_wrap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatWrap efl_text_wrap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate> efl_text_wrap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate>(_Module, "efl_text_wrap_get");
+    private static Efl.TextFormatWrap wrap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_wrap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatWrap _ret_var = default(Efl.TextFormatWrap);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetWrap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_wrap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_wrap_get_delegate efl_text_wrap_get_static_delegate;
+
+
+    private delegate  void efl_text_wrap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatWrap wrap);
+
+
+    public delegate  void efl_text_wrap_set_api_delegate(System.IntPtr obj,   Efl.TextFormatWrap wrap);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate> efl_text_wrap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate>(_Module, "efl_text_wrap_set");
+    private static  void wrap_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatWrap wrap)
+   {
+      Eina.Log.Debug("function efl_text_wrap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetWrap( wrap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_wrap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  wrap);
+      }
+   }
+   private static efl_text_wrap_set_delegate efl_text_wrap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_multiline_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_multiline_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate> efl_text_multiline_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate>(_Module, "efl_text_multiline_get");
+    private static bool multiline_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_multiline_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetMultiline();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_multiline_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_multiline_get_delegate efl_text_multiline_get_static_delegate;
+
+
+    private delegate  void efl_text_multiline_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_multiline_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate> efl_text_multiline_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate>(_Module, "efl_text_multiline_set");
+    private static  void multiline_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_multiline_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetMultiline( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_multiline_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_multiline_set_delegate efl_text_multiline_set_static_delegate;
+
+
+    private delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate> efl_text_halign_auto_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate>(_Module, "efl_text_halign_auto_type_get");
+    private static Efl.TextFormatHorizontalAlignmentAutoType halign_auto_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatHorizontalAlignmentAutoType _ret_var = default(Efl.TextFormatHorizontalAlignmentAutoType);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetHalignAutoType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_auto_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_auto_type_get_delegate efl_text_halign_auto_type_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_auto_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatHorizontalAlignmentAutoType value);
+
+
+    public delegate  void efl_text_halign_auto_type_set_api_delegate(System.IntPtr obj,   Efl.TextFormatHorizontalAlignmentAutoType value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate> efl_text_halign_auto_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate>(_Module, "efl_text_halign_auto_type_set");
+    private static  void halign_auto_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatHorizontalAlignmentAutoType value)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetHalignAutoType( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_auto_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_auto_type_set_delegate efl_text_halign_auto_type_set_static_delegate;
+
+
+    private delegate double efl_text_halign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_halign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate> efl_text_halign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate>(_Module, "efl_text_halign_get");
+    private static double halign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetHalign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_get_delegate efl_text_halign_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_halign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate> efl_text_halign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate>(_Module, "efl_text_halign_set");
+    private static  void halign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_halign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetHalign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_set_delegate efl_text_halign_set_static_delegate;
+
+
+    private delegate double efl_text_valign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_valign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate> efl_text_valign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate>(_Module, "efl_text_valign_get");
+    private static double valign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_valign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetValign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_valign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_valign_get_delegate efl_text_valign_get_static_delegate;
+
+
+    private delegate  void efl_text_valign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_valign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate> efl_text_valign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate>(_Module, "efl_text_valign_set");
+    private static  void valign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_valign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetValign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_valign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_valign_set_delegate efl_text_valign_set_static_delegate;
+
+
+    private delegate double efl_text_linegap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linegap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate> efl_text_linegap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate>(_Module, "efl_text_linegap_get");
+    private static double linegap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linegap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetLinegap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linegap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linegap_get_delegate efl_text_linegap_get_static_delegate;
+
+
+    private delegate  void efl_text_linegap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linegap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate> efl_text_linegap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate>(_Module, "efl_text_linegap_set");
+    private static  void linegap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linegap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetLinegap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linegap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linegap_set_delegate efl_text_linegap_set_static_delegate;
+
+
+    private delegate double efl_text_linerelgap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linerelgap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate> efl_text_linerelgap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate>(_Module, "efl_text_linerelgap_get");
+    private static double linerelgap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetLinerelgap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linerelgap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linerelgap_get_delegate efl_text_linerelgap_get_static_delegate;
+
+
+    private delegate  void efl_text_linerelgap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linerelgap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate> efl_text_linerelgap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate>(_Module, "efl_text_linerelgap_set");
+    private static  void linerelgap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetLinerelgap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linerelgap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linerelgap_set_delegate efl_text_linerelgap_set_static_delegate;
+
+
+    private delegate  int efl_text_tabstops_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_tabstops_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate> efl_text_tabstops_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate>(_Module, "efl_text_tabstops_get");
+    private static  int tabstops_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetTabstops();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_tabstops_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_tabstops_get_delegate efl_text_tabstops_get_static_delegate;
+
+
+    private delegate  void efl_text_tabstops_set_delegate(System.IntPtr obj, System.IntPtr pd,    int value);
+
+
+    public delegate  void efl_text_tabstops_set_api_delegate(System.IntPtr obj,    int value);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate> efl_text_tabstops_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate>(_Module, "efl_text_tabstops_set");
+    private static  void tabstops_set(System.IntPtr obj, System.IntPtr pd,   int value)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetTabstops( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_tabstops_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_tabstops_set_delegate efl_text_tabstops_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_password_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_password_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate> efl_text_password_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate>(_Module, "efl_text_password_get");
+    private static bool password_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_password_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetPassword();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_password_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_password_get_delegate efl_text_password_get_static_delegate;
+
+
+    private delegate  void efl_text_password_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_password_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate> efl_text_password_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate>(_Module, "efl_text_password_set");
+    private static  void password_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_password_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetPassword( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_password_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_password_set_delegate efl_text_password_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_replacement_char_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_replacement_char_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate> efl_text_replacement_char_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate>(_Module, "efl_text_replacement_char_get");
+    private static  System.String replacement_char_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetReplacementChar();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_replacement_char_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_replacement_char_get_delegate efl_text_replacement_char_get_static_delegate;
+
+
+    private delegate  void efl_text_replacement_char_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+
+
+    public delegate  void efl_text_replacement_char_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate> efl_text_replacement_char_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate>(_Module, "efl_text_replacement_char_set");
+    private static  void replacement_char_set(System.IntPtr obj, System.IntPtr pd,   System.String repch)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetReplacementChar( repch);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_replacement_char_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repch);
+      }
+   }
+   private static efl_text_replacement_char_set_delegate efl_text_replacement_char_set_static_delegate;
+
+
+    private delegate  void efl_text_normal_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_normal_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate> efl_text_normal_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate>(_Module, "efl_text_normal_color_get");
+    private static  void normal_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetNormalColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_normal_color_get_delegate efl_text_normal_color_get_static_delegate;
+
+
+    private delegate  void efl_text_normal_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_normal_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate> efl_text_normal_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate>(_Module, "efl_text_normal_color_set");
+    private static  void normal_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetNormalColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_normal_color_set_delegate efl_text_normal_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleBackingType efl_text_backing_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleBackingType efl_text_backing_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate> efl_text_backing_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate>(_Module, "efl_text_backing_type_get");
+    private static Efl.TextStyleBackingType backing_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleBackingType _ret_var = default(Efl.TextStyleBackingType);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetBackingType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_backing_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_backing_type_get_delegate efl_text_backing_type_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleBackingType type);
+
+
+    public delegate  void efl_text_backing_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleBackingType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate> efl_text_backing_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate>(_Module, "efl_text_backing_type_set");
+    private static  void backing_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleBackingType type)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetBackingType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_backing_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_backing_type_set_delegate efl_text_backing_type_set_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_backing_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate> efl_text_backing_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate>(_Module, "efl_text_backing_color_get");
+    private static  void backing_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetBackingColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_backing_color_get_delegate efl_text_backing_color_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_backing_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate> efl_text_backing_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate>(_Module, "efl_text_backing_color_set");
+    private static  void backing_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetBackingColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_backing_color_set_delegate efl_text_backing_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate> efl_text_underline_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate>(_Module, "efl_text_underline_type_get");
+    private static Efl.TextStyleUnderlineType underline_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleUnderlineType _ret_var = default(Efl.TextStyleUnderlineType);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetUnderlineType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_type_get_delegate efl_text_underline_type_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleUnderlineType type);
+
+
+    public delegate  void efl_text_underline_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleUnderlineType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate> efl_text_underline_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate>(_Module, "efl_text_underline_type_set");
+    private static  void underline_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleUnderlineType type)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetUnderlineType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_underline_type_set_delegate efl_text_underline_type_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate> efl_text_underline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate>(_Module, "efl_text_underline_color_get");
+    private static  void underline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetUnderlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_color_get_delegate efl_text_underline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate> efl_text_underline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate>(_Module, "efl_text_underline_color_set");
+    private static  void underline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetUnderlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_color_set_delegate efl_text_underline_color_set_static_delegate;
+
+
+    private delegate double efl_text_underline_height_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_underline_height_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate> efl_text_underline_height_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate>(_Module, "efl_text_underline_height_get");
+    private static double underline_height_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetUnderlineHeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_height_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_height_get_delegate efl_text_underline_height_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_height_set_delegate(System.IntPtr obj, System.IntPtr pd,   double height);
+
+
+    public delegate  void efl_text_underline_height_set_api_delegate(System.IntPtr obj,   double height);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate> efl_text_underline_height_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate>(_Module, "efl_text_underline_height_set");
+    private static  void underline_height_set(System.IntPtr obj, System.IntPtr pd,  double height)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetUnderlineHeight( height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_height_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  height);
+      }
+   }
+   private static efl_text_underline_height_set_delegate efl_text_underline_height_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate> efl_text_underline_dashed_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate>(_Module, "efl_text_underline_dashed_color_get");
+    private static  void underline_dashed_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetUnderlineDashedColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_dashed_color_get_delegate efl_text_underline_dashed_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate> efl_text_underline_dashed_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate>(_Module, "efl_text_underline_dashed_color_set");
+    private static  void underline_dashed_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetUnderlineDashedColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_dashed_color_set_delegate efl_text_underline_dashed_color_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate> efl_text_underline_dashed_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate>(_Module, "efl_text_underline_dashed_width_get");
+    private static  int underline_dashed_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetUnderlineDashedWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_width_get_delegate efl_text_underline_dashed_width_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_width_set_delegate(System.IntPtr obj, System.IntPtr pd,    int width);
+
+
+    public delegate  void efl_text_underline_dashed_width_set_api_delegate(System.IntPtr obj,    int width);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate> efl_text_underline_dashed_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate>(_Module, "efl_text_underline_dashed_width_set");
+    private static  void underline_dashed_width_set(System.IntPtr obj, System.IntPtr pd,   int width)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetUnderlineDashedWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_underline_dashed_width_set_delegate efl_text_underline_dashed_width_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_gap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_gap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate> efl_text_underline_dashed_gap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate>(_Module, "efl_text_underline_dashed_gap_get");
+    private static  int underline_dashed_gap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetUnderlineDashedGap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_gap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_gap_get_delegate efl_text_underline_dashed_gap_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_gap_set_delegate(System.IntPtr obj, System.IntPtr pd,    int gap);
+
+
+    public delegate  void efl_text_underline_dashed_gap_set_api_delegate(System.IntPtr obj,    int gap);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate> efl_text_underline_dashed_gap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate>(_Module, "efl_text_underline_dashed_gap_set");
+    private static  void underline_dashed_gap_set(System.IntPtr obj, System.IntPtr pd,   int gap)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetUnderlineDashedGap( gap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_gap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gap);
+      }
+   }
+   private static efl_text_underline_dashed_gap_set_delegate efl_text_underline_dashed_gap_set_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate> efl_text_underline2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate>(_Module, "efl_text_underline2_color_get");
+    private static  void underline2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetUnderline2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline2_color_get_delegate efl_text_underline2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate> efl_text_underline2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate>(_Module, "efl_text_underline2_color_set");
+    private static  void underline2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetUnderline2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline2_color_set_delegate efl_text_underline2_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate> efl_text_strikethrough_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate>(_Module, "efl_text_strikethrough_type_get");
+    private static Efl.TextStyleStrikethroughType strikethrough_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleStrikethroughType _ret_var = default(Efl.TextStyleStrikethroughType);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetStrikethroughType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_strikethrough_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_strikethrough_type_get_delegate efl_text_strikethrough_type_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleStrikethroughType type);
+
+
+    public delegate  void efl_text_strikethrough_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleStrikethroughType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate> efl_text_strikethrough_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate>(_Module, "efl_text_strikethrough_type_set");
+    private static  void strikethrough_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleStrikethroughType type)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetStrikethroughType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_strikethrough_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_strikethrough_type_set_delegate efl_text_strikethrough_type_set_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate> efl_text_strikethrough_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate>(_Module, "efl_text_strikethrough_color_get");
+    private static  void strikethrough_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetStrikethroughColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_strikethrough_color_get_delegate efl_text_strikethrough_color_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate> efl_text_strikethrough_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate>(_Module, "efl_text_strikethrough_color_set");
+    private static  void strikethrough_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetStrikethroughColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_strikethrough_color_set_delegate efl_text_strikethrough_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleEffectType efl_text_effect_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleEffectType efl_text_effect_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate> efl_text_effect_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate>(_Module, "efl_text_effect_type_get");
+    private static Efl.TextStyleEffectType effect_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleEffectType _ret_var = default(Efl.TextStyleEffectType);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetEffectType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_effect_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_effect_type_get_delegate efl_text_effect_type_get_static_delegate;
+
+
+    private delegate  void efl_text_effect_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleEffectType type);
+
+
+    public delegate  void efl_text_effect_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleEffectType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate> efl_text_effect_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate>(_Module, "efl_text_effect_type_set");
+    private static  void effect_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleEffectType type)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetEffectType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_effect_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_effect_type_set_delegate efl_text_effect_type_set_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_outline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate> efl_text_outline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate>(_Module, "efl_text_outline_color_get");
+    private static  void outline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetOutlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_outline_color_get_delegate efl_text_outline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_outline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate> efl_text_outline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate>(_Module, "efl_text_outline_color_set");
+    private static  void outline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetOutlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_outline_color_set_delegate efl_text_outline_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate> efl_text_shadow_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate>(_Module, "efl_text_shadow_direction_get");
+    private static Efl.TextStyleShadowDirection shadow_direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleShadowDirection _ret_var = default(Efl.TextStyleShadowDirection);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetShadowDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_shadow_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_shadow_direction_get_delegate efl_text_shadow_direction_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleShadowDirection type);
+
+
+    public delegate  void efl_text_shadow_direction_set_api_delegate(System.IntPtr obj,   Efl.TextStyleShadowDirection type);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate> efl_text_shadow_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate>(_Module, "efl_text_shadow_direction_set");
+    private static  void shadow_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleShadowDirection type)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetShadowDirection( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_shadow_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_shadow_direction_set_delegate efl_text_shadow_direction_set_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_shadow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate> efl_text_shadow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate>(_Module, "efl_text_shadow_color_get");
+    private static  void shadow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetShadowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_shadow_color_get_delegate efl_text_shadow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_shadow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate> efl_text_shadow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate>(_Module, "efl_text_shadow_color_set");
+    private static  void shadow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetShadowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_shadow_color_set_delegate efl_text_shadow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate> efl_text_glow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate>(_Module, "efl_text_glow_color_get");
+    private static  void glow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetGlowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow_color_get_delegate efl_text_glow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate> efl_text_glow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate>(_Module, "efl_text_glow_color_set");
+    private static  void glow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetGlowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow_color_set_delegate efl_text_glow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate> efl_text_glow2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate>(_Module, "efl_text_glow2_color_get");
+    private static  void glow2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextInteractive)wrapper).GetGlow2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow2_color_get_delegate efl_text_glow2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate> efl_text_glow2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate>(_Module, "efl_text_glow2_color_set");
+    private static  void glow2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextInteractive)wrapper).SetGlow2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow2_color_set_delegate efl_text_glow2_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_gfx_filter_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_gfx_filter_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate> efl_text_gfx_filter_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate>(_Module, "efl_text_gfx_filter_get");
+    private static  System.String gfx_filter_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextInteractive)wrapper).GetGfxFilter();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_gfx_filter_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_gfx_filter_get_delegate efl_text_gfx_filter_get_static_delegate;
+
+
+    private delegate  void efl_text_gfx_filter_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+
+
+    public delegate  void efl_text_gfx_filter_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate> efl_text_gfx_filter_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate>(_Module, "efl_text_gfx_filter_set");
+    private static  void gfx_filter_set(System.IntPtr obj, System.IntPtr pd,   System.String code)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextInteractive)wrapper).SetGfxFilter( code);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_gfx_filter_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code);
+      }
+   }
+   private static efl_text_gfx_filter_set_delegate efl_text_gfx_filter_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_markup.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_markup.eo.cs
new file mode 100755 (executable)
index 0000000..e230e31
--- /dev/null
@@ -0,0 +1,208 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Markup data that populates the text object&apos;s style and format
+/// 1.21</summary>
+[TextMarkupNativeInherit]
+public interface TextMarkup : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <returns>The markup-text representation set to this text.
+/// 1.21</returns>
+ System.String GetMarkup();
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <param name="markup">The markup-text representation set to this text.
+/// 1.21</param>
+/// <returns></returns>
+ void SetMarkup(  System.String markup);
+         /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+    System.String Markup {
+      get ;
+      set ;
+   }
+}
+/// <summary>Markup data that populates the text object&apos;s style and format
+/// 1.21</summary>
+sealed public class TextMarkupConcrete : 
+
+TextMarkup
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextMarkupConcrete))
+            return Efl.TextMarkupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_markup_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextMarkupConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextMarkupConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextMarkupConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextMarkupConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate(this.NativeHandle, markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+}
+public class TextMarkupNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextMarkupConcrete.efl_text_markup_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextMarkupConcrete.efl_text_markup_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextMarkup)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkup)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_markup_interactive.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_markup_interactive.eo.cs
new file mode 100755 (executable)
index 0000000..f856cf5
--- /dev/null
@@ -0,0 +1,1352 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Markup data that populates the text object&apos;s style and format
+/// 1.22</summary>
+[TextMarkupInteractiveNativeInherit]
+public interface TextMarkupInteractive : 
+   Efl.TextCursor ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Markup of a given range in the text
+/// 1.22</summary>
+/// <param name="start"></param>
+/// <param name="end"></param>
+/// <returns>The markup-text representation set to this text of a given range
+/// 1.22</returns>
+ System.String GetMarkupRange( Efl.TextCursorCursor start,  Efl.TextCursorCursor end);
+   /// <summary>Markup of a given range in the text
+/// 1.22</summary>
+/// <param name="start"></param>
+/// <param name="end"></param>
+/// <param name="markup">The markup-text representation set to this text of a given range
+/// 1.22</param>
+/// <returns></returns>
+ void SetMarkupRange( Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String markup);
+   /// <summary>Inserts a markup text to the text object in a given cursor position
+/// 1.22</summary>
+/// <param name="cur">Cursor position to insert markup
+/// 1.22</param>
+/// <param name="markup">The markup text to insert
+/// 1.22</param>
+/// <returns></returns>
+ void CursorMarkupInsert( Efl.TextCursorCursor cur,   System.String markup);
+         }
+/// <summary>Markup data that populates the text object&apos;s style and format
+/// 1.22</summary>
+sealed public class TextMarkupInteractiveConcrete : 
+
+TextMarkupInteractive
+   , Efl.TextCursor
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextMarkupInteractiveConcrete))
+            return Efl.TextMarkupInteractiveNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_markup_interactive_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextMarkupInteractiveConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextMarkupInteractiveConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextMarkupInteractiveConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextMarkupInteractiveConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Markup of a given range in the text
+   /// 1.22</summary>
+   /// <param name="start"></param>
+   /// <param name="end"></param>
+   /// <returns>The markup-text representation set to this text of a given range
+   /// 1.22</returns>
+   public  System.String GetMarkupRange( Efl.TextCursorCursor start,  Efl.TextCursorCursor end) {
+                                           var _ret_var = Efl.TextMarkupInteractiveNativeInherit.efl_text_markup_interactive_markup_range_get_ptr.Value.Delegate(this.NativeHandle, start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Markup of a given range in the text
+   /// 1.22</summary>
+   /// <param name="start"></param>
+   /// <param name="end"></param>
+   /// <param name="markup">The markup-text representation set to this text of a given range
+   /// 1.22</param>
+   /// <returns></returns>
+   public  void SetMarkupRange( Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String markup) {
+                                                             Efl.TextMarkupInteractiveNativeInherit.efl_text_markup_interactive_markup_range_set_ptr.Value.Delegate(this.NativeHandle, start,  end,  markup);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Inserts a markup text to the text object in a given cursor position
+   /// 1.22</summary>
+   /// <param name="cur">Cursor position to insert markup
+   /// 1.22</param>
+   /// <param name="markup">The markup text to insert
+   /// 1.22</param>
+   /// <returns></returns>
+   public  void CursorMarkupInsert( Efl.TextCursorCursor cur,   System.String markup) {
+                                           Efl.TextMarkupInteractiveNativeInherit.efl_text_markup_interactive_cursor_markup_insert_ptr.Value.Delegate(this.NativeHandle, cur,  markup);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The object&apos;s main cursor.
+   /// 1.18</summary>
+   /// <param name="get_type">Cursor type
+   /// 1.20</param>
+   /// <returns>Text cursor object
+   /// 1.20</returns>
+   public Efl.TextCursorCursor GetTextCursor( Efl.TextCursorGetType get_type) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_get_ptr.Value.Delegate(this.NativeHandle, get_type);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Cursor position
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns>Cursor position
+   /// 1.20</returns>
+   public  int GetCursorPosition( Efl.TextCursorCursor cur) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_position_get_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Cursor position
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="position">Cursor position
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetCursorPosition( Efl.TextCursorCursor cur,   int position) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_position_set_ptr.Value.Delegate(this.NativeHandle, cur,  position);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The content of the cursor (the character under the cursor)
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns>The unicode codepoint of the character
+   /// 1.20</returns>
+   public Eina.Unicode GetCursorContent( Efl.TextCursorCursor cur) {
+                         var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_content_get_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the geometry of two cursors (&quot;split cursor&quot;), if logical cursor is between LTR/RTL text, also considering paragraph direction. Upper cursor is shown for the text of the same direction as paragraph, lower cursor - for opposite.
+   /// Split cursor geometry is valid only  in &apos;|&apos; cursor mode. In this case <c>true</c> is returned and <c>cx2</c>, <c>cy2</c>, <c>cw2</c>, <c>ch2</c> are set.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="ctype">The type of the cursor.
+   /// 1.20</param>
+   /// <param name="cx">The x of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cy">The y of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cw">The width of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="ch">The height of the cursor (or upper cursor)
+   /// 1.20</param>
+   /// <param name="cx2">The x of the lower cursor
+   /// 1.20</param>
+   /// <param name="cy2">The y of the lower cursor
+   /// 1.20</param>
+   /// <param name="cw2">The width of the lower cursor
+   /// 1.20</param>
+   /// <param name="ch2">The height of the lower cursor
+   /// 1.20</param>
+   /// <returns><c>true</c> if split cursor, <c>false</c> otherwise.
+   /// 1.20</returns>
+   public bool GetCursorGeometry( Efl.TextCursorCursor cur,  Efl.TextCursorType ctype,  out  int cx,  out  int cy,  out  int cw,  out  int ch,  out  int cx2,  out  int cy2,  out  int cw2,  out  int ch2) {
+                                                                                                                                                                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_geometry_get_ptr.Value.Delegate(this.NativeHandle, cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                                                              return _ret_var;
+ }
+   /// <summary>Create new cursor
+   /// 1.20</summary>
+   /// <returns>Cursor object
+   /// 1.20</returns>
+   public Efl.TextCursorCursor NewCursor() {
+       var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_new_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Free existing cursor
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorFree( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_free_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Check if two cursors are equal
+   /// 1.20</summary>
+   /// <param name="cur1">Cursor 1 object
+   /// 1.20</param>
+   /// <param name="cur2">Cursor 2 object
+   /// 1.20</param>
+   /// <returns><c>true</c> if cursors are equal, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool CursorEqual( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_equal_ptr.Value.Delegate(this.NativeHandle, cur1,  cur2);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Compare two cursors
+   /// 1.20</summary>
+   /// <param name="cur1">Cursor 1 object
+   /// 1.20</param>
+   /// <param name="cur2">Cursor 2 object
+   /// 1.20</param>
+   /// <returns>Difference between cursors
+   /// 1.20</returns>
+   public  int CursorCompare( Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_compare_ptr.Value.Delegate(this.NativeHandle, cur1,  cur2);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Copy existing cursor
+   /// 1.20</summary>
+   /// <param name="dst">Destination cursor
+   /// 1.20</param>
+   /// <param name="src">Source cursor
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCopy( Efl.TextCursorCursor dst,  Efl.TextCursorCursor src) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_copy_ptr.Value.Delegate(this.NativeHandle, dst,  src);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Advances to the next character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCharNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_next_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the previous character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCharPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_prev_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the next grapheme cluster
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorClusterNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_cluster_next_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the previous grapheme cluster
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorClusterPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_cluster_prev_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the first character in this paragraph
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphCharFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_char_first_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the last character in this paragraph
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphCharLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_char_last_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current word start
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorWordStart( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_word_start_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current word end
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorWordEnd( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_word_end_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current line first character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorLineCharFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_line_char_first_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current line last character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorLineCharLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_line_char_last_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current paragraph first character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphFirst( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_first_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advance to current paragraph last character
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphLast( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_last_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the start of the next text node
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphNext( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_next_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Advances to the end of the previous text node
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorParagraphPrev( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_paragraph_prev_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Jump the cursor by the given number of lines
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="by">Number of lines
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorLineJumpBy( Efl.TextCursorCursor cur,   int by) {
+                                           Efl.TextCursorNativeInherit.efl_text_cursor_line_jump_by_ptr.Value.Delegate(this.NativeHandle, cur,  by);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set cursor coordinates
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="x">X coord to set by.
+   /// 1.20</param>
+   /// <param name="y">Y coord to set by.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetCursorCoord( Efl.TextCursorCursor cur,   int x,   int y) {
+                                                             Efl.TextCursorNativeInherit.efl_text_cursor_coord_set_ptr.Value.Delegate(this.NativeHandle, cur,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Set cursor coordinates according to grapheme clusters. It does not allow to put a cursor to the middle of a grapheme cluster.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="x">X coord to set by.
+   /// 1.20</param>
+   /// <param name="y">Y coord to set by.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetCursorClusterCoord( Efl.TextCursorCursor cur,   int x,   int y) {
+                                                             Efl.TextCursorNativeInherit.efl_text_cursor_cluster_coord_set_ptr.Value.Delegate(this.NativeHandle, cur,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Adds text to the current cursor position and set the cursor to *after* the start of the text just added.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <param name="text">Text to append (UTF-8 format).
+   /// 1.20</param>
+   /// <returns>Length of the appended text.
+   /// 1.20</returns>
+   public  int CursorTextInsert( Efl.TextCursorCursor cur,   System.String text) {
+                                           var _ret_var = Efl.TextCursorNativeInherit.efl_text_cursor_text_insert_ptr.Value.Delegate(this.NativeHandle, cur,  text);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Deletes a single character from position pointed by given cursor.
+   /// 1.20</summary>
+   /// <param name="cur">Cursor object
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void CursorCharDelete( Efl.TextCursorCursor cur) {
+                         Efl.TextCursorNativeInherit.efl_text_cursor_char_delete_ptr.Value.Delegate(this.NativeHandle, cur);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+}
+public class TextMarkupInteractiveNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_markup_interactive_markup_range_get_static_delegate == null)
+      efl_text_markup_interactive_markup_range_get_static_delegate = new efl_text_markup_interactive_markup_range_get_delegate(markup_range_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_interactive_markup_range_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_interactive_markup_range_get_static_delegate)});
+      if (efl_text_markup_interactive_markup_range_set_static_delegate == null)
+      efl_text_markup_interactive_markup_range_set_static_delegate = new efl_text_markup_interactive_markup_range_set_delegate(markup_range_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_interactive_markup_range_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_interactive_markup_range_set_static_delegate)});
+      if (efl_text_markup_interactive_cursor_markup_insert_static_delegate == null)
+      efl_text_markup_interactive_cursor_markup_insert_static_delegate = new efl_text_markup_interactive_cursor_markup_insert_delegate(cursor_markup_insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_interactive_cursor_markup_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_interactive_cursor_markup_insert_static_delegate)});
+      if (efl_text_cursor_get_static_delegate == null)
+      efl_text_cursor_get_static_delegate = new efl_text_cursor_get_delegate(text_cursor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_get_static_delegate)});
+      if (efl_text_cursor_position_get_static_delegate == null)
+      efl_text_cursor_position_get_static_delegate = new efl_text_cursor_position_get_delegate(cursor_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_position_get_static_delegate)});
+      if (efl_text_cursor_position_set_static_delegate == null)
+      efl_text_cursor_position_set_static_delegate = new efl_text_cursor_position_set_delegate(cursor_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_position_set_static_delegate)});
+      if (efl_text_cursor_content_get_static_delegate == null)
+      efl_text_cursor_content_get_static_delegate = new efl_text_cursor_content_get_delegate(cursor_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_content_get_static_delegate)});
+      if (efl_text_cursor_geometry_get_static_delegate == null)
+      efl_text_cursor_geometry_get_static_delegate = new efl_text_cursor_geometry_get_delegate(cursor_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_geometry_get_static_delegate)});
+      if (efl_text_cursor_new_static_delegate == null)
+      efl_text_cursor_new_static_delegate = new efl_text_cursor_new_delegate(cursor_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_new"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_new_static_delegate)});
+      if (efl_text_cursor_free_static_delegate == null)
+      efl_text_cursor_free_static_delegate = new efl_text_cursor_free_delegate(cursor_free);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_free"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_free_static_delegate)});
+      if (efl_text_cursor_equal_static_delegate == null)
+      efl_text_cursor_equal_static_delegate = new efl_text_cursor_equal_delegate(cursor_equal);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_equal"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_equal_static_delegate)});
+      if (efl_text_cursor_compare_static_delegate == null)
+      efl_text_cursor_compare_static_delegate = new efl_text_cursor_compare_delegate(cursor_compare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_compare"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_compare_static_delegate)});
+      if (efl_text_cursor_copy_static_delegate == null)
+      efl_text_cursor_copy_static_delegate = new efl_text_cursor_copy_delegate(cursor_copy);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_copy"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_copy_static_delegate)});
+      if (efl_text_cursor_char_next_static_delegate == null)
+      efl_text_cursor_char_next_static_delegate = new efl_text_cursor_char_next_delegate(cursor_char_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_next_static_delegate)});
+      if (efl_text_cursor_char_prev_static_delegate == null)
+      efl_text_cursor_char_prev_static_delegate = new efl_text_cursor_char_prev_delegate(cursor_char_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_prev_static_delegate)});
+      if (efl_text_cursor_cluster_next_static_delegate == null)
+      efl_text_cursor_cluster_next_static_delegate = new efl_text_cursor_cluster_next_delegate(cursor_cluster_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_next_static_delegate)});
+      if (efl_text_cursor_cluster_prev_static_delegate == null)
+      efl_text_cursor_cluster_prev_static_delegate = new efl_text_cursor_cluster_prev_delegate(cursor_cluster_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_prev_static_delegate)});
+      if (efl_text_cursor_paragraph_char_first_static_delegate == null)
+      efl_text_cursor_paragraph_char_first_static_delegate = new efl_text_cursor_paragraph_char_first_delegate(cursor_paragraph_char_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_char_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_char_first_static_delegate)});
+      if (efl_text_cursor_paragraph_char_last_static_delegate == null)
+      efl_text_cursor_paragraph_char_last_static_delegate = new efl_text_cursor_paragraph_char_last_delegate(cursor_paragraph_char_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_char_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_char_last_static_delegate)});
+      if (efl_text_cursor_word_start_static_delegate == null)
+      efl_text_cursor_word_start_static_delegate = new efl_text_cursor_word_start_delegate(cursor_word_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_word_start"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_word_start_static_delegate)});
+      if (efl_text_cursor_word_end_static_delegate == null)
+      efl_text_cursor_word_end_static_delegate = new efl_text_cursor_word_end_delegate(cursor_word_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_word_end"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_word_end_static_delegate)});
+      if (efl_text_cursor_line_char_first_static_delegate == null)
+      efl_text_cursor_line_char_first_static_delegate = new efl_text_cursor_line_char_first_delegate(cursor_line_char_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_char_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_char_first_static_delegate)});
+      if (efl_text_cursor_line_char_last_static_delegate == null)
+      efl_text_cursor_line_char_last_static_delegate = new efl_text_cursor_line_char_last_delegate(cursor_line_char_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_char_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_char_last_static_delegate)});
+      if (efl_text_cursor_paragraph_first_static_delegate == null)
+      efl_text_cursor_paragraph_first_static_delegate = new efl_text_cursor_paragraph_first_delegate(cursor_paragraph_first);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_first"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_first_static_delegate)});
+      if (efl_text_cursor_paragraph_last_static_delegate == null)
+      efl_text_cursor_paragraph_last_static_delegate = new efl_text_cursor_paragraph_last_delegate(cursor_paragraph_last);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_last"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_last_static_delegate)});
+      if (efl_text_cursor_paragraph_next_static_delegate == null)
+      efl_text_cursor_paragraph_next_static_delegate = new efl_text_cursor_paragraph_next_delegate(cursor_paragraph_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_next"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_next_static_delegate)});
+      if (efl_text_cursor_paragraph_prev_static_delegate == null)
+      efl_text_cursor_paragraph_prev_static_delegate = new efl_text_cursor_paragraph_prev_delegate(cursor_paragraph_prev);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_paragraph_prev"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_paragraph_prev_static_delegate)});
+      if (efl_text_cursor_line_jump_by_static_delegate == null)
+      efl_text_cursor_line_jump_by_static_delegate = new efl_text_cursor_line_jump_by_delegate(cursor_line_jump_by);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_line_jump_by"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_line_jump_by_static_delegate)});
+      if (efl_text_cursor_coord_set_static_delegate == null)
+      efl_text_cursor_coord_set_static_delegate = new efl_text_cursor_coord_set_delegate(cursor_coord_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_coord_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_coord_set_static_delegate)});
+      if (efl_text_cursor_cluster_coord_set_static_delegate == null)
+      efl_text_cursor_cluster_coord_set_static_delegate = new efl_text_cursor_cluster_coord_set_delegate(cursor_cluster_coord_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_cluster_coord_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_cluster_coord_set_static_delegate)});
+      if (efl_text_cursor_text_insert_static_delegate == null)
+      efl_text_cursor_text_insert_static_delegate = new efl_text_cursor_text_insert_delegate(cursor_text_insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_text_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_text_insert_static_delegate)});
+      if (efl_text_cursor_char_delete_static_delegate == null)
+      efl_text_cursor_char_delete_static_delegate = new efl_text_cursor_char_delete_delegate(cursor_char_delete);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_cursor_char_delete"), func = Marshal.GetFunctionPointerForDelegate(efl_text_cursor_char_delete_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextMarkupInteractiveConcrete.efl_text_markup_interactive_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextMarkupInteractiveConcrete.efl_text_markup_interactive_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_text_markup_interactive_markup_range_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_text_markup_interactive_markup_range_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_get_api_delegate> efl_text_markup_interactive_markup_range_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_get_api_delegate>(_Module, "efl_text_markup_interactive_markup_range_get");
+    private static  System.String markup_range_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end)
+   {
+      Eina.Log.Debug("function efl_text_markup_interactive_markup_range_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).GetMarkupRange( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_markup_interactive_markup_range_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_text_markup_interactive_markup_range_get_delegate efl_text_markup_interactive_markup_range_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_interactive_markup_range_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_interactive_markup_range_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor start,   Efl.TextCursorCursor end,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_set_api_delegate> efl_text_markup_interactive_markup_range_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_interactive_markup_range_set_api_delegate>(_Module, "efl_text_markup_interactive_markup_range_set");
+    private static  void markup_range_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor start,  Efl.TextCursorCursor end,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_interactive_markup_range_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((TextMarkupInteractive)wrapper).SetMarkupRange( start,  end,  markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_markup_interactive_markup_range_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end,  markup);
+      }
+   }
+   private static efl_text_markup_interactive_markup_range_set_delegate efl_text_markup_interactive_markup_range_set_static_delegate;
+
+
+    private delegate  void efl_text_markup_interactive_cursor_markup_insert_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_interactive_cursor_markup_insert_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_interactive_cursor_markup_insert_api_delegate> efl_text_markup_interactive_cursor_markup_insert_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_interactive_cursor_markup_insert_api_delegate>(_Module, "efl_text_markup_interactive_cursor_markup_insert");
+    private static  void cursor_markup_insert(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_interactive_cursor_markup_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextMarkupInteractive)wrapper).CursorMarkupInsert( cur,  markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_markup_interactive_cursor_markup_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  markup);
+      }
+   }
+   private static efl_text_markup_interactive_cursor_markup_insert_delegate efl_text_markup_interactive_cursor_markup_insert_static_delegate;
+
+
+    private delegate Efl.TextCursorCursor efl_text_cursor_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorGetType get_type);
+
+
+    public delegate Efl.TextCursorCursor efl_text_cursor_get_api_delegate(System.IntPtr obj,   Efl.TextCursorGetType get_type);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_get_api_delegate> efl_text_cursor_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_get_api_delegate>(_Module, "efl_text_cursor_get");
+    private static Efl.TextCursorCursor text_cursor_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorGetType get_type)
+   {
+      Eina.Log.Debug("function efl_text_cursor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.TextCursorCursor _ret_var = default(Efl.TextCursorCursor);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).GetTextCursor( get_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  get_type);
+      }
+   }
+   private static efl_text_cursor_get_delegate efl_text_cursor_get_static_delegate;
+
+
+    private delegate  int efl_text_cursor_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  int efl_text_cursor_position_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_position_get_api_delegate> efl_text_cursor_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_position_get_api_delegate>(_Module, "efl_text_cursor_position_get");
+    private static  int cursor_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).GetCursorPosition( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_position_get_delegate efl_text_cursor_position_get_static_delegate;
+
+
+    private delegate  void efl_text_cursor_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int position);
+
+
+    public delegate  void efl_text_cursor_position_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int position);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_position_set_api_delegate> efl_text_cursor_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_position_set_api_delegate>(_Module, "efl_text_cursor_position_set");
+    private static  void cursor_position_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int position)
+   {
+      Eina.Log.Debug("function efl_text_cursor_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextMarkupInteractive)wrapper).SetCursorPosition( cur,  position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  position);
+      }
+   }
+   private static efl_text_cursor_position_set_delegate efl_text_cursor_position_set_static_delegate;
+
+
+    private delegate Eina.Unicode efl_text_cursor_content_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate Eina.Unicode efl_text_cursor_content_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_content_get_api_delegate> efl_text_cursor_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_content_get_api_delegate>(_Module, "efl_text_cursor_content_get");
+    private static Eina.Unicode cursor_content_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Unicode _ret_var = default(Eina.Unicode);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).GetCursorContent( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_cursor_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_content_get_delegate efl_text_cursor_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_cursor_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,   Efl.TextCursorType ctype,   out  int cx,   out  int cy,   out  int cw,   out  int ch,   out  int cx2,   out  int cy2,   out  int cw2,   out  int ch2);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_cursor_geometry_get_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,   Efl.TextCursorType ctype,   out  int cx,   out  int cy,   out  int cw,   out  int ch,   out  int cx2,   out  int cy2,   out  int cw2,   out  int ch2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_geometry_get_api_delegate> efl_text_cursor_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_geometry_get_api_delegate>(_Module, "efl_text_cursor_geometry_get");
+    private static bool cursor_geometry_get(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,  Efl.TextCursorType ctype,  out  int cx,  out  int cy,  out  int cw,  out  int ch,  out  int cx2,  out  int cy2,  out  int cw2,  out  int ch2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                       cx = default( int);      cy = default( int);      cw = default( int);      ch = default( int);      cx2 = default( int);      cy2 = default( int);      cw2 = default( int);      ch2 = default( int);                                                                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).GetCursorGeometry( cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                                              return _ret_var;
+      } else {
+         return efl_text_cursor_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  ctype,  out cx,  out cy,  out cw,  out ch,  out cx2,  out cy2,  out cw2,  out ch2);
+      }
+   }
+   private static efl_text_cursor_geometry_get_delegate efl_text_cursor_geometry_get_static_delegate;
+
+
+    private delegate Efl.TextCursorCursor efl_text_cursor_new_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextCursorCursor efl_text_cursor_new_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_new_api_delegate> efl_text_cursor_new_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_new_api_delegate>(_Module, "efl_text_cursor_new");
+    private static Efl.TextCursorCursor cursor_new(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_cursor_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextCursorCursor _ret_var = default(Efl.TextCursorCursor);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).NewCursor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_cursor_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_cursor_new_delegate efl_text_cursor_new_static_delegate;
+
+
+    private delegate  void efl_text_cursor_free_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_free_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_free_api_delegate> efl_text_cursor_free_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_free_api_delegate>(_Module, "efl_text_cursor_free");
+    private static  void cursor_free(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_free was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorFree( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_free_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_free_delegate efl_text_cursor_free_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_cursor_equal_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_cursor_equal_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_equal_api_delegate> efl_text_cursor_equal_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_equal_api_delegate>(_Module, "efl_text_cursor_equal");
+    private static bool cursor_equal(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_equal was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).CursorEqual( cur1,  cur2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_equal_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur1,  cur2);
+      }
+   }
+   private static efl_text_cursor_equal_delegate efl_text_cursor_equal_static_delegate;
+
+
+    private delegate  int efl_text_cursor_compare_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+
+
+    public delegate  int efl_text_cursor_compare_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur1,   Efl.TextCursorCursor cur2);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_compare_api_delegate> efl_text_cursor_compare_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_compare_api_delegate>(_Module, "efl_text_cursor_compare");
+    private static  int cursor_compare(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur1,  Efl.TextCursorCursor cur2)
+   {
+      Eina.Log.Debug("function efl_text_cursor_compare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       int _ret_var = default( int);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).CursorCompare( cur1,  cur2);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_compare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur1,  cur2);
+      }
+   }
+   private static efl_text_cursor_compare_delegate efl_text_cursor_compare_static_delegate;
+
+
+    private delegate  void efl_text_cursor_copy_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor dst,   Efl.TextCursorCursor src);
+
+
+    public delegate  void efl_text_cursor_copy_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor dst,   Efl.TextCursorCursor src);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_copy_api_delegate> efl_text_cursor_copy_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_copy_api_delegate>(_Module, "efl_text_cursor_copy");
+    private static  void cursor_copy(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor dst,  Efl.TextCursorCursor src)
+   {
+      Eina.Log.Debug("function efl_text_cursor_copy was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextMarkupInteractive)wrapper).CursorCopy( dst,  src);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_copy_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dst,  src);
+      }
+   }
+   private static efl_text_cursor_copy_delegate efl_text_cursor_copy_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_next_api_delegate> efl_text_cursor_char_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_next_api_delegate>(_Module, "efl_text_cursor_char_next");
+    private static  void cursor_char_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorCharNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_next_delegate efl_text_cursor_char_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_prev_api_delegate> efl_text_cursor_char_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_prev_api_delegate>(_Module, "efl_text_cursor_char_prev");
+    private static  void cursor_char_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorCharPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_prev_delegate efl_text_cursor_char_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_cluster_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_next_api_delegate> efl_text_cursor_cluster_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_next_api_delegate>(_Module, "efl_text_cursor_cluster_next");
+    private static  void cursor_cluster_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorClusterNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_cluster_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_cluster_next_delegate efl_text_cursor_cluster_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_cluster_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_prev_api_delegate> efl_text_cursor_cluster_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_prev_api_delegate>(_Module, "efl_text_cursor_cluster_prev");
+    private static  void cursor_cluster_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorClusterPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_cluster_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_cluster_prev_delegate efl_text_cursor_cluster_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_char_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_char_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_first_api_delegate> efl_text_cursor_paragraph_char_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_first_api_delegate>(_Module, "efl_text_cursor_paragraph_char_first");
+    private static  void cursor_paragraph_char_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_char_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorParagraphCharFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_char_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_char_first_delegate efl_text_cursor_paragraph_char_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_char_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_char_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_last_api_delegate> efl_text_cursor_paragraph_char_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_char_last_api_delegate>(_Module, "efl_text_cursor_paragraph_char_last");
+    private static  void cursor_paragraph_char_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_char_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorParagraphCharLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_char_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_char_last_delegate efl_text_cursor_paragraph_char_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_word_start_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_word_start_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_word_start_api_delegate> efl_text_cursor_word_start_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_word_start_api_delegate>(_Module, "efl_text_cursor_word_start");
+    private static  void cursor_word_start(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_word_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorWordStart( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_word_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_word_start_delegate efl_text_cursor_word_start_static_delegate;
+
+
+    private delegate  void efl_text_cursor_word_end_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_word_end_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_word_end_api_delegate> efl_text_cursor_word_end_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_word_end_api_delegate>(_Module, "efl_text_cursor_word_end");
+    private static  void cursor_word_end(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_word_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorWordEnd( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_word_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_word_end_delegate efl_text_cursor_word_end_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_char_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_line_char_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_first_api_delegate> efl_text_cursor_line_char_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_first_api_delegate>(_Module, "efl_text_cursor_line_char_first");
+    private static  void cursor_line_char_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_char_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorLineCharFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_line_char_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_line_char_first_delegate efl_text_cursor_line_char_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_char_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_line_char_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_last_api_delegate> efl_text_cursor_line_char_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_char_last_api_delegate>(_Module, "efl_text_cursor_line_char_last");
+    private static  void cursor_line_char_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_char_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorLineCharLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_line_char_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_line_char_last_delegate efl_text_cursor_line_char_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_first_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_first_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_first_api_delegate> efl_text_cursor_paragraph_first_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_first_api_delegate>(_Module, "efl_text_cursor_paragraph_first");
+    private static  void cursor_paragraph_first(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_first was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorParagraphFirst( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_first_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_first_delegate efl_text_cursor_paragraph_first_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_last_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_last_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_last_api_delegate> efl_text_cursor_paragraph_last_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_last_api_delegate>(_Module, "efl_text_cursor_paragraph_last");
+    private static  void cursor_paragraph_last(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_last was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorParagraphLast( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_last_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_last_delegate efl_text_cursor_paragraph_last_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_next_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_next_api_delegate> efl_text_cursor_paragraph_next_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_next_api_delegate>(_Module, "efl_text_cursor_paragraph_next");
+    private static  void cursor_paragraph_next(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorParagraphNext( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_next_delegate efl_text_cursor_paragraph_next_static_delegate;
+
+
+    private delegate  void efl_text_cursor_paragraph_prev_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_paragraph_prev_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_prev_api_delegate> efl_text_cursor_paragraph_prev_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_paragraph_prev_api_delegate>(_Module, "efl_text_cursor_paragraph_prev");
+    private static  void cursor_paragraph_prev(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_paragraph_prev was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorParagraphPrev( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_paragraph_prev_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_paragraph_prev_delegate efl_text_cursor_paragraph_prev_static_delegate;
+
+
+    private delegate  void efl_text_cursor_line_jump_by_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int by);
+
+
+    public delegate  void efl_text_cursor_line_jump_by_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int by);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_line_jump_by_api_delegate> efl_text_cursor_line_jump_by_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_line_jump_by_api_delegate>(_Module, "efl_text_cursor_line_jump_by");
+    private static  void cursor_line_jump_by(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int by)
+   {
+      Eina.Log.Debug("function efl_text_cursor_line_jump_by was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TextMarkupInteractive)wrapper).CursorLineJumpBy( cur,  by);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_cursor_line_jump_by_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  by);
+      }
+   }
+   private static efl_text_cursor_line_jump_by_delegate efl_text_cursor_line_jump_by_static_delegate;
+
+
+    private delegate  void efl_text_cursor_coord_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int x,    int y);
+
+
+    public delegate  void efl_text_cursor_coord_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_coord_set_api_delegate> efl_text_cursor_coord_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_coord_set_api_delegate>(_Module, "efl_text_cursor_coord_set");
+    private static  void cursor_coord_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_text_cursor_coord_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((TextMarkupInteractive)wrapper).SetCursorCoord( cur,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_cursor_coord_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  x,  y);
+      }
+   }
+   private static efl_text_cursor_coord_set_delegate efl_text_cursor_coord_set_static_delegate;
+
+
+    private delegate  void efl_text_cursor_cluster_coord_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,    int x,    int y);
+
+
+    public delegate  void efl_text_cursor_cluster_coord_set_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_coord_set_api_delegate> efl_text_cursor_cluster_coord_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_cluster_coord_set_api_delegate>(_Module, "efl_text_cursor_cluster_coord_set");
+    private static  void cursor_cluster_coord_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_text_cursor_cluster_coord_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((TextMarkupInteractive)wrapper).SetCursorClusterCoord( cur,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_text_cursor_cluster_coord_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  x,  y);
+      }
+   }
+   private static efl_text_cursor_cluster_coord_set_delegate efl_text_cursor_cluster_coord_set_static_delegate;
+
+
+    private delegate  int efl_text_cursor_text_insert_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  int efl_text_cursor_text_insert_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_text_insert_api_delegate> efl_text_cursor_text_insert_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_text_insert_api_delegate>(_Module, "efl_text_cursor_text_insert");
+    private static  int cursor_text_insert(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_cursor_text_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       int _ret_var = default( int);
+         try {
+            _ret_var = ((TextMarkupInteractive)wrapper).CursorTextInsert( cur,  text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_text_cursor_text_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur,  text);
+      }
+   }
+   private static efl_text_cursor_text_insert_delegate efl_text_cursor_text_insert_static_delegate;
+
+
+    private delegate  void efl_text_cursor_char_delete_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextCursorCursor cur);
+
+
+    public delegate  void efl_text_cursor_char_delete_api_delegate(System.IntPtr obj,   Efl.TextCursorCursor cur);
+    public static Efl.Eo.FunctionWrapper<efl_text_cursor_char_delete_api_delegate> efl_text_cursor_char_delete_ptr = new Efl.Eo.FunctionWrapper<efl_text_cursor_char_delete_api_delegate>(_Module, "efl_text_cursor_char_delete");
+    private static  void cursor_char_delete(System.IntPtr obj, System.IntPtr pd,  Efl.TextCursorCursor cur)
+   {
+      Eina.Log.Debug("function efl_text_cursor_char_delete was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextMarkupInteractive)wrapper).CursorCharDelete( cur);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_cursor_char_delete_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur);
+      }
+   }
+   private static efl_text_cursor_char_delete_delegate efl_text_cursor_char_delete_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_markup_util.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_markup_util.eo.cs
new file mode 100755 (executable)
index 0000000..53e6b91
--- /dev/null
@@ -0,0 +1,203 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Utility class for markup, such as conversions
+/// 1.21.</summary>
+[TextMarkupUtilNativeInherit]
+public class TextMarkupUtil :  Efl.Eo.IWrapper, IDisposable
+{
+   public static System.IntPtr klass = System.IntPtr.Zero;
+   public static Efl.TextMarkupUtilNativeInherit nativeInherit = new Efl.TextMarkupUtilNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public virtual System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextMarkupUtil))
+            return Efl.TextMarkupUtilNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private static readonly object klassAllocLock = new object();
+   protected bool inherited;
+   protected  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_markup_util_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public TextMarkupUtil(Efl.Object parent= null
+         ) :
+      this(efl_text_markup_util_class_get(), typeof(TextMarkupUtil), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextMarkupUtil(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   protected TextMarkupUtil(IntPtr base_klass, System.Type managed_type, Efl.Object parent)
+   {
+      inherited = ((object)this).GetType() != managed_type;
+      IntPtr actual_klass = base_klass;
+      if (inherited) {
+         actual_klass = Efl.Eo.ClassRegister.GetInheritKlassOrRegister(base_klass, ((object)this).GetType());
+      }
+      handle = Efl.Eo.Globals.instantiate_start(actual_klass, parent);
+      register_event_proxies();
+   }
+   protected void FinishInstantiation()
+   {
+      if (inherited) {
+         Efl.Eo.Globals.data_set(this);
+      }
+      handle = Efl.Eo.Globals.instantiate_end(handle);
+      Eina.Error.RaiseIfUnhandledException();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextMarkupUtil()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   protected virtual void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextMarkupUtil static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextMarkupUtil(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected virtual void register_event_proxies()
+   {
+   }
+   /// <summary>Converts a given (UTF-8) text to a markup-compatible string. This is used mainly to set a plain text with the $.markup_set property.
+   /// 1.21.</summary>
+   /// <param name="text">The text (UTF-8) to convert to markup
+   /// 1.21.</param>
+   /// <returns>The markup representation of given text
+   /// 1.21.</returns>
+   public static  System.String TextToMarkup(  System.String text) {
+                         var _ret_var = Efl.TextMarkupUtilNativeInherit.efl_text_markup_util_text_to_markup_ptr.Value.Delegate( text);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Converts a given (UTF-8) text to a markup-compatible string. This is used mainly to set a plain text with the $.markup_set property.
+   /// 1.21.</summary>
+   /// <param name="text">The markup-text to convert to text (UTF-8)
+   /// 1.21.</param>
+   /// <returns>The text representation of given format
+   /// 1.21.</returns>
+   public static  System.String MarkupToText(  System.String text) {
+                         var _ret_var = Efl.TextMarkupUtilNativeInherit.efl_text_markup_util_markup_to_text_ptr.Value.Delegate( text);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   private static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextMarkupUtil.efl_text_markup_util_class_get();
+   }
+}
+public class TextMarkupUtilNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextMarkupUtil.efl_text_markup_util_class_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextMarkupUtil.efl_text_markup_util_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_text_markup_util_text_to_markup_delegate( [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_text_markup_util_text_to_markup_api_delegate( [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_util_text_to_markup_api_delegate> efl_text_markup_util_text_to_markup_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_util_text_to_markup_api_delegate>(_Module, "efl_text_markup_util_text_to_markup");
+    private static  System.String text_to_markup(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_markup_util_text_to_markup was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = TextMarkupUtil.TextToMarkup( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_markup_util_text_to_markup_ptr.Value.Delegate( text);
+      }
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_text_markup_util_markup_to_text_delegate( [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_text_markup_util_markup_to_text_api_delegate( [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_util_markup_to_text_api_delegate> efl_text_markup_util_markup_to_text_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_util_markup_to_text_api_delegate>(_Module, "efl_text_markup_util_markup_to_text");
+    private static  System.String markup_to_text(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_markup_util_markup_to_text was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = TextMarkupUtil.MarkupToText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_text_markup_util_markup_to_text_ptr.Value.Delegate( text);
+      }
+   }
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_style.eo.cs b/internals/src/EflSharp/EflSharp/efl_text_style.eo.cs
new file mode 100755 (executable)
index 0000000..2df9443
--- /dev/null
@@ -0,0 +1,2180 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Style to apply to the text
+/// A style can be coloring, effects, underline, strikethrough etc.
+/// 1.20</summary>
+[TextStyleNativeInherit]
+public interface TextStyle : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Color of text, excluding style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetNormalColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of text, excluding style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetNormalColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Enable or disable backing type
+/// 1.20</summary>
+/// <returns>Backing type
+/// 1.20</returns>
+Efl.TextStyleBackingType GetBackingType();
+   /// <summary>Enable or disable backing type
+/// 1.20</summary>
+/// <param name="type">Backing type
+/// 1.20</param>
+/// <returns></returns>
+ void SetBackingType( Efl.TextStyleBackingType type);
+   /// <summary>Backing color
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetBackingColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Backing color
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetBackingColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Sets an underline style on the text
+/// 1.20</summary>
+/// <returns>Underline type
+/// 1.20</returns>
+Efl.TextStyleUnderlineType GetUnderlineType();
+   /// <summary>Sets an underline style on the text
+/// 1.20</summary>
+/// <param name="type">Underline type
+/// 1.20</param>
+/// <returns></returns>
+ void SetUnderlineType( Efl.TextStyleUnderlineType type);
+   /// <summary>Color of normal underline style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetUnderlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of normal underline style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetUnderlineColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Height of underline style
+/// 1.20</summary>
+/// <returns>Height
+/// 1.20</returns>
+double GetUnderlineHeight();
+   /// <summary>Height of underline style
+/// 1.20</summary>
+/// <param name="height">Height
+/// 1.20</param>
+/// <returns></returns>
+ void SetUnderlineHeight( double height);
+   /// <summary>Color of dashed underline style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetUnderlineDashedColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of dashed underline style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetUnderlineDashedColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Width of dashed underline style
+/// 1.20</summary>
+/// <returns>Width
+/// 1.20</returns>
+ int GetUnderlineDashedWidth();
+   /// <summary>Width of dashed underline style
+/// 1.20</summary>
+/// <param name="width">Width
+/// 1.20</param>
+/// <returns></returns>
+ void SetUnderlineDashedWidth(  int width);
+   /// <summary>Gap of dashed underline style
+/// 1.20</summary>
+/// <returns>Gap
+/// 1.20</returns>
+ int GetUnderlineDashedGap();
+   /// <summary>Gap of dashed underline style
+/// 1.20</summary>
+/// <param name="gap">Gap
+/// 1.20</param>
+/// <returns></returns>
+ void SetUnderlineDashedGap(  int gap);
+   /// <summary>Color of underline2 style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetUnderline2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of underline2 style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetUnderline2Color(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Type of strikethrough style
+/// 1.20</summary>
+/// <returns>Strikethrough type
+/// 1.20</returns>
+Efl.TextStyleStrikethroughType GetStrikethroughType();
+   /// <summary>Type of strikethrough style
+/// 1.20</summary>
+/// <param name="type">Strikethrough type
+/// 1.20</param>
+/// <returns></returns>
+ void SetStrikethroughType( Efl.TextStyleStrikethroughType type);
+   /// <summary>Color of strikethrough_style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetStrikethroughColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of strikethrough_style
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetStrikethroughColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Type of effect used for the displayed text
+/// 1.20</summary>
+/// <returns>Effect type
+/// 1.20</returns>
+Efl.TextStyleEffectType GetEffectType();
+   /// <summary>Type of effect used for the displayed text
+/// 1.20</summary>
+/// <param name="type">Effect type
+/// 1.20</param>
+/// <returns></returns>
+ void SetEffectType( Efl.TextStyleEffectType type);
+   /// <summary>Color of outline effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetOutlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of outline effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetOutlineColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Direction of shadow effect
+/// 1.20</summary>
+/// <returns>Shadow direction
+/// 1.20</returns>
+Efl.TextStyleShadowDirection GetShadowDirection();
+   /// <summary>Direction of shadow effect
+/// 1.20</summary>
+/// <param name="type">Shadow direction
+/// 1.20</param>
+/// <returns></returns>
+ void SetShadowDirection( Efl.TextStyleShadowDirection type);
+   /// <summary>Color of shadow effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetShadowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of shadow effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetShadowColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Color of glow effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetGlowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Color of glow effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetGlowColor(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Second color of the glow effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void GetGlow2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a);
+   /// <summary>Second color of the glow effect
+/// 1.20</summary>
+/// <param name="r">Red component
+/// 1.20</param>
+/// <param name="g">Green component
+/// 1.20</param>
+/// <param name="b">Blue component
+/// 1.20</param>
+/// <param name="a">Alpha component
+/// 1.20</param>
+/// <returns></returns>
+ void SetGlow2Color(  byte r,   byte g,   byte b,   byte a);
+   /// <summary>Program that applies a special filter
+/// See <see cref="Efl.Gfx.Filter"/>.
+/// 1.20</summary>
+/// <returns>Filter code
+/// 1.20</returns>
+ System.String GetGfxFilter();
+   /// <summary>Program that applies a special filter
+/// See <see cref="Efl.Gfx.Filter"/>.
+/// 1.20</summary>
+/// <param name="code">Filter code
+/// 1.20</param>
+/// <returns></returns>
+ void SetGfxFilter(  System.String code);
+                                                                                                                     /// <summary>Enable or disable backing type
+/// 1.20</summary>
+/// <value>Backing type
+/// 1.20</value>
+   Efl.TextStyleBackingType BackingType {
+      get ;
+      set ;
+   }
+   /// <summary>Sets an underline style on the text
+/// 1.20</summary>
+/// <value>Underline type
+/// 1.20</value>
+   Efl.TextStyleUnderlineType UnderlineType {
+      get ;
+      set ;
+   }
+   /// <summary>Height of underline style
+/// 1.20</summary>
+/// <value>Height
+/// 1.20</value>
+   double UnderlineHeight {
+      get ;
+      set ;
+   }
+   /// <summary>Width of dashed underline style
+/// 1.20</summary>
+/// <value>Width
+/// 1.20</value>
+    int UnderlineDashedWidth {
+      get ;
+      set ;
+   }
+   /// <summary>Gap of dashed underline style
+/// 1.20</summary>
+/// <value>Gap
+/// 1.20</value>
+    int UnderlineDashedGap {
+      get ;
+      set ;
+   }
+   /// <summary>Type of strikethrough style
+/// 1.20</summary>
+/// <value>Strikethrough type
+/// 1.20</value>
+   Efl.TextStyleStrikethroughType StrikethroughType {
+      get ;
+      set ;
+   }
+   /// <summary>Type of effect used for the displayed text
+/// 1.20</summary>
+/// <value>Effect type
+/// 1.20</value>
+   Efl.TextStyleEffectType EffectType {
+      get ;
+      set ;
+   }
+   /// <summary>Direction of shadow effect
+/// 1.20</summary>
+/// <value>Shadow direction
+/// 1.20</value>
+   Efl.TextStyleShadowDirection ShadowDirection {
+      get ;
+      set ;
+   }
+   /// <summary>Program that applies a special filter
+/// See <see cref="Efl.Gfx.Filter"/>.
+/// 1.20</summary>
+/// <value>Filter code
+/// 1.20</value>
+    System.String GfxFilter {
+      get ;
+      set ;
+   }
+}
+/// <summary>Style to apply to the text
+/// A style can be coloring, effects, underline, strikethrough etc.
+/// 1.20</summary>
+sealed public class TextStyleConcrete : 
+
+TextStyle
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextStyleConcrete))
+            return Efl.TextStyleNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_text_style_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextStyleConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~TextStyleConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static TextStyleConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextStyleConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetNormalColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetNormalColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <returns>Backing type
+   /// 1.20</returns>
+   public Efl.TextStyleBackingType GetBackingType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_backing_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <param name="type">Backing type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetBackingType( Efl.TextStyleBackingType type) {
+                         Efl.TextStyleNativeInherit.efl_text_backing_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetBackingColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetBackingColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <returns>Underline type
+   /// 1.20</returns>
+   public Efl.TextStyleUnderlineType GetUnderlineType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <param name="type">Underline type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineType( Efl.TextStyleUnderlineType type) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetUnderlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <returns>Height
+   /// 1.20</returns>
+   public double GetUnderlineHeight() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_height_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <param name="height">Height
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineHeight( double height) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_height_set_ptr.Value.Delegate(this.NativeHandle, height);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetUnderlineDashedColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineDashedColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Width
+   /// 1.20</returns>
+   public  int GetUnderlineDashedWidth() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <param name="width">Width
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineDashedWidth(  int width) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_set_ptr.Value.Delegate(this.NativeHandle, width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Gap
+   /// 1.20</returns>
+   public  int GetUnderlineDashedGap() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <param name="gap">Gap
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderlineDashedGap(  int gap) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_set_ptr.Value.Delegate(this.NativeHandle, gap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetUnderline2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetUnderline2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <returns>Strikethrough type
+   /// 1.20</returns>
+   public Efl.TextStyleStrikethroughType GetStrikethroughType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_strikethrough_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <param name="type">Strikethrough type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetStrikethroughType( Efl.TextStyleStrikethroughType type) {
+                         Efl.TextStyleNativeInherit.efl_text_strikethrough_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetStrikethroughColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetStrikethroughColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <returns>Effect type
+   /// 1.20</returns>
+   public Efl.TextStyleEffectType GetEffectType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_effect_type_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <param name="type">Effect type
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetEffectType( Efl.TextStyleEffectType type) {
+                         Efl.TextStyleNativeInherit.efl_text_effect_type_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetOutlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetOutlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <returns>Shadow direction
+   /// 1.20</returns>
+   public Efl.TextStyleShadowDirection GetShadowDirection() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_shadow_direction_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <param name="type">Shadow direction
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetShadowDirection( Efl.TextStyleShadowDirection type) {
+                         Efl.TextStyleNativeInherit.efl_text_shadow_direction_set_ptr.Value.Delegate(this.NativeHandle, type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetShadowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetShadowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetGlowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetGlowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void GetGlow2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_get_ptr.Value.Delegate(this.NativeHandle, out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetGlow2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_set_ptr.Value.Delegate(this.NativeHandle, r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <returns>Filter code
+   /// 1.20</returns>
+   public  System.String GetGfxFilter() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_gfx_filter_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <param name="code">Filter code
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetGfxFilter(  System.String code) {
+                         Efl.TextStyleNativeInherit.efl_text_gfx_filter_set_ptr.Value.Delegate(this.NativeHandle, code);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Enable or disable backing type
+/// 1.20</summary>
+/// <value>Backing type
+/// 1.20</value>
+   public Efl.TextStyleBackingType BackingType {
+      get { return GetBackingType(); }
+      set { SetBackingType( value); }
+   }
+   /// <summary>Sets an underline style on the text
+/// 1.20</summary>
+/// <value>Underline type
+/// 1.20</value>
+   public Efl.TextStyleUnderlineType UnderlineType {
+      get { return GetUnderlineType(); }
+      set { SetUnderlineType( value); }
+   }
+   /// <summary>Height of underline style
+/// 1.20</summary>
+/// <value>Height
+/// 1.20</value>
+   public double UnderlineHeight {
+      get { return GetUnderlineHeight(); }
+      set { SetUnderlineHeight( value); }
+   }
+   /// <summary>Width of dashed underline style
+/// 1.20</summary>
+/// <value>Width
+/// 1.20</value>
+   public  int UnderlineDashedWidth {
+      get { return GetUnderlineDashedWidth(); }
+      set { SetUnderlineDashedWidth( value); }
+   }
+   /// <summary>Gap of dashed underline style
+/// 1.20</summary>
+/// <value>Gap
+/// 1.20</value>
+   public  int UnderlineDashedGap {
+      get { return GetUnderlineDashedGap(); }
+      set { SetUnderlineDashedGap( value); }
+   }
+   /// <summary>Type of strikethrough style
+/// 1.20</summary>
+/// <value>Strikethrough type
+/// 1.20</value>
+   public Efl.TextStyleStrikethroughType StrikethroughType {
+      get { return GetStrikethroughType(); }
+      set { SetStrikethroughType( value); }
+   }
+   /// <summary>Type of effect used for the displayed text
+/// 1.20</summary>
+/// <value>Effect type
+/// 1.20</value>
+   public Efl.TextStyleEffectType EffectType {
+      get { return GetEffectType(); }
+      set { SetEffectType( value); }
+   }
+   /// <summary>Direction of shadow effect
+/// 1.20</summary>
+/// <value>Shadow direction
+/// 1.20</value>
+   public Efl.TextStyleShadowDirection ShadowDirection {
+      get { return GetShadowDirection(); }
+      set { SetShadowDirection( value); }
+   }
+   /// <summary>Program that applies a special filter
+/// See <see cref="Efl.Gfx.Filter"/>.
+/// 1.20</summary>
+/// <value>Filter code
+/// 1.20</value>
+   public  System.String GfxFilter {
+      get { return GetGfxFilter(); }
+      set { SetGfxFilter( value); }
+   }
+}
+public class TextStyleNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_normal_color_get_static_delegate == null)
+      efl_text_normal_color_get_static_delegate = new efl_text_normal_color_get_delegate(normal_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_get_static_delegate)});
+      if (efl_text_normal_color_set_static_delegate == null)
+      efl_text_normal_color_set_static_delegate = new efl_text_normal_color_set_delegate(normal_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_set_static_delegate)});
+      if (efl_text_backing_type_get_static_delegate == null)
+      efl_text_backing_type_get_static_delegate = new efl_text_backing_type_get_delegate(backing_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_get_static_delegate)});
+      if (efl_text_backing_type_set_static_delegate == null)
+      efl_text_backing_type_set_static_delegate = new efl_text_backing_type_set_delegate(backing_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_set_static_delegate)});
+      if (efl_text_backing_color_get_static_delegate == null)
+      efl_text_backing_color_get_static_delegate = new efl_text_backing_color_get_delegate(backing_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_get_static_delegate)});
+      if (efl_text_backing_color_set_static_delegate == null)
+      efl_text_backing_color_set_static_delegate = new efl_text_backing_color_set_delegate(backing_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_set_static_delegate)});
+      if (efl_text_underline_type_get_static_delegate == null)
+      efl_text_underline_type_get_static_delegate = new efl_text_underline_type_get_delegate(underline_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_get_static_delegate)});
+      if (efl_text_underline_type_set_static_delegate == null)
+      efl_text_underline_type_set_static_delegate = new efl_text_underline_type_set_delegate(underline_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_set_static_delegate)});
+      if (efl_text_underline_color_get_static_delegate == null)
+      efl_text_underline_color_get_static_delegate = new efl_text_underline_color_get_delegate(underline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_get_static_delegate)});
+      if (efl_text_underline_color_set_static_delegate == null)
+      efl_text_underline_color_set_static_delegate = new efl_text_underline_color_set_delegate(underline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_set_static_delegate)});
+      if (efl_text_underline_height_get_static_delegate == null)
+      efl_text_underline_height_get_static_delegate = new efl_text_underline_height_get_delegate(underline_height_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_get_static_delegate)});
+      if (efl_text_underline_height_set_static_delegate == null)
+      efl_text_underline_height_set_static_delegate = new efl_text_underline_height_set_delegate(underline_height_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_set_static_delegate)});
+      if (efl_text_underline_dashed_color_get_static_delegate == null)
+      efl_text_underline_dashed_color_get_static_delegate = new efl_text_underline_dashed_color_get_delegate(underline_dashed_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_get_static_delegate)});
+      if (efl_text_underline_dashed_color_set_static_delegate == null)
+      efl_text_underline_dashed_color_set_static_delegate = new efl_text_underline_dashed_color_set_delegate(underline_dashed_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_set_static_delegate)});
+      if (efl_text_underline_dashed_width_get_static_delegate == null)
+      efl_text_underline_dashed_width_get_static_delegate = new efl_text_underline_dashed_width_get_delegate(underline_dashed_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_get_static_delegate)});
+      if (efl_text_underline_dashed_width_set_static_delegate == null)
+      efl_text_underline_dashed_width_set_static_delegate = new efl_text_underline_dashed_width_set_delegate(underline_dashed_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_set_static_delegate)});
+      if (efl_text_underline_dashed_gap_get_static_delegate == null)
+      efl_text_underline_dashed_gap_get_static_delegate = new efl_text_underline_dashed_gap_get_delegate(underline_dashed_gap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_get_static_delegate)});
+      if (efl_text_underline_dashed_gap_set_static_delegate == null)
+      efl_text_underline_dashed_gap_set_static_delegate = new efl_text_underline_dashed_gap_set_delegate(underline_dashed_gap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_set_static_delegate)});
+      if (efl_text_underline2_color_get_static_delegate == null)
+      efl_text_underline2_color_get_static_delegate = new efl_text_underline2_color_get_delegate(underline2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_get_static_delegate)});
+      if (efl_text_underline2_color_set_static_delegate == null)
+      efl_text_underline2_color_set_static_delegate = new efl_text_underline2_color_set_delegate(underline2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_set_static_delegate)});
+      if (efl_text_strikethrough_type_get_static_delegate == null)
+      efl_text_strikethrough_type_get_static_delegate = new efl_text_strikethrough_type_get_delegate(strikethrough_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_get_static_delegate)});
+      if (efl_text_strikethrough_type_set_static_delegate == null)
+      efl_text_strikethrough_type_set_static_delegate = new efl_text_strikethrough_type_set_delegate(strikethrough_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_set_static_delegate)});
+      if (efl_text_strikethrough_color_get_static_delegate == null)
+      efl_text_strikethrough_color_get_static_delegate = new efl_text_strikethrough_color_get_delegate(strikethrough_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_get_static_delegate)});
+      if (efl_text_strikethrough_color_set_static_delegate == null)
+      efl_text_strikethrough_color_set_static_delegate = new efl_text_strikethrough_color_set_delegate(strikethrough_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_set_static_delegate)});
+      if (efl_text_effect_type_get_static_delegate == null)
+      efl_text_effect_type_get_static_delegate = new efl_text_effect_type_get_delegate(effect_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_get_static_delegate)});
+      if (efl_text_effect_type_set_static_delegate == null)
+      efl_text_effect_type_set_static_delegate = new efl_text_effect_type_set_delegate(effect_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_set_static_delegate)});
+      if (efl_text_outline_color_get_static_delegate == null)
+      efl_text_outline_color_get_static_delegate = new efl_text_outline_color_get_delegate(outline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_get_static_delegate)});
+      if (efl_text_outline_color_set_static_delegate == null)
+      efl_text_outline_color_set_static_delegate = new efl_text_outline_color_set_delegate(outline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_set_static_delegate)});
+      if (efl_text_shadow_direction_get_static_delegate == null)
+      efl_text_shadow_direction_get_static_delegate = new efl_text_shadow_direction_get_delegate(shadow_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_get_static_delegate)});
+      if (efl_text_shadow_direction_set_static_delegate == null)
+      efl_text_shadow_direction_set_static_delegate = new efl_text_shadow_direction_set_delegate(shadow_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_set_static_delegate)});
+      if (efl_text_shadow_color_get_static_delegate == null)
+      efl_text_shadow_color_get_static_delegate = new efl_text_shadow_color_get_delegate(shadow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_get_static_delegate)});
+      if (efl_text_shadow_color_set_static_delegate == null)
+      efl_text_shadow_color_set_static_delegate = new efl_text_shadow_color_set_delegate(shadow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_set_static_delegate)});
+      if (efl_text_glow_color_get_static_delegate == null)
+      efl_text_glow_color_get_static_delegate = new efl_text_glow_color_get_delegate(glow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_get_static_delegate)});
+      if (efl_text_glow_color_set_static_delegate == null)
+      efl_text_glow_color_set_static_delegate = new efl_text_glow_color_set_delegate(glow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_set_static_delegate)});
+      if (efl_text_glow2_color_get_static_delegate == null)
+      efl_text_glow2_color_get_static_delegate = new efl_text_glow2_color_get_delegate(glow2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_get_static_delegate)});
+      if (efl_text_glow2_color_set_static_delegate == null)
+      efl_text_glow2_color_set_static_delegate = new efl_text_glow2_color_set_delegate(glow2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_set_static_delegate)});
+      if (efl_text_gfx_filter_get_static_delegate == null)
+      efl_text_gfx_filter_get_static_delegate = new efl_text_gfx_filter_get_delegate(gfx_filter_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_get_static_delegate)});
+      if (efl_text_gfx_filter_set_static_delegate == null)
+      efl_text_gfx_filter_set_static_delegate = new efl_text_gfx_filter_set_delegate(gfx_filter_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.TextStyleConcrete.efl_text_style_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.TextStyleConcrete.efl_text_style_interface_get();
+   }
+
+
+    private delegate  void efl_text_normal_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_normal_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate> efl_text_normal_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate>(_Module, "efl_text_normal_color_get");
+    private static  void normal_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetNormalColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_normal_color_get_delegate efl_text_normal_color_get_static_delegate;
+
+
+    private delegate  void efl_text_normal_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_normal_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate> efl_text_normal_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate>(_Module, "efl_text_normal_color_set");
+    private static  void normal_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetNormalColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_normal_color_set_delegate efl_text_normal_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleBackingType efl_text_backing_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleBackingType efl_text_backing_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate> efl_text_backing_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate>(_Module, "efl_text_backing_type_get");
+    private static Efl.TextStyleBackingType backing_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleBackingType _ret_var = default(Efl.TextStyleBackingType);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetBackingType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_backing_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_backing_type_get_delegate efl_text_backing_type_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleBackingType type);
+
+
+    public delegate  void efl_text_backing_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleBackingType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate> efl_text_backing_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate>(_Module, "efl_text_backing_type_set");
+    private static  void backing_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleBackingType type)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetBackingType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_backing_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_backing_type_set_delegate efl_text_backing_type_set_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_backing_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate> efl_text_backing_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate>(_Module, "efl_text_backing_color_get");
+    private static  void backing_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetBackingColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_backing_color_get_delegate efl_text_backing_color_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_backing_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate> efl_text_backing_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate>(_Module, "efl_text_backing_color_set");
+    private static  void backing_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetBackingColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_backing_color_set_delegate efl_text_backing_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate> efl_text_underline_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate>(_Module, "efl_text_underline_type_get");
+    private static Efl.TextStyleUnderlineType underline_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleUnderlineType _ret_var = default(Efl.TextStyleUnderlineType);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetUnderlineType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_type_get_delegate efl_text_underline_type_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleUnderlineType type);
+
+
+    public delegate  void efl_text_underline_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleUnderlineType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate> efl_text_underline_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate>(_Module, "efl_text_underline_type_set");
+    private static  void underline_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleUnderlineType type)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetUnderlineType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_underline_type_set_delegate efl_text_underline_type_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate> efl_text_underline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate>(_Module, "efl_text_underline_color_get");
+    private static  void underline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetUnderlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_color_get_delegate efl_text_underline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate> efl_text_underline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate>(_Module, "efl_text_underline_color_set");
+    private static  void underline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetUnderlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_color_set_delegate efl_text_underline_color_set_static_delegate;
+
+
+    private delegate double efl_text_underline_height_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_underline_height_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate> efl_text_underline_height_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate>(_Module, "efl_text_underline_height_get");
+    private static double underline_height_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetUnderlineHeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_height_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_height_get_delegate efl_text_underline_height_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_height_set_delegate(System.IntPtr obj, System.IntPtr pd,   double height);
+
+
+    public delegate  void efl_text_underline_height_set_api_delegate(System.IntPtr obj,   double height);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate> efl_text_underline_height_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate>(_Module, "efl_text_underline_height_set");
+    private static  void underline_height_set(System.IntPtr obj, System.IntPtr pd,  double height)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetUnderlineHeight( height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_height_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  height);
+      }
+   }
+   private static efl_text_underline_height_set_delegate efl_text_underline_height_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate> efl_text_underline_dashed_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate>(_Module, "efl_text_underline_dashed_color_get");
+    private static  void underline_dashed_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetUnderlineDashedColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_dashed_color_get_delegate efl_text_underline_dashed_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate> efl_text_underline_dashed_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate>(_Module, "efl_text_underline_dashed_color_set");
+    private static  void underline_dashed_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetUnderlineDashedColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_dashed_color_set_delegate efl_text_underline_dashed_color_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate> efl_text_underline_dashed_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate>(_Module, "efl_text_underline_dashed_width_get");
+    private static  int underline_dashed_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetUnderlineDashedWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_width_get_delegate efl_text_underline_dashed_width_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_width_set_delegate(System.IntPtr obj, System.IntPtr pd,    int width);
+
+
+    public delegate  void efl_text_underline_dashed_width_set_api_delegate(System.IntPtr obj,    int width);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate> efl_text_underline_dashed_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate>(_Module, "efl_text_underline_dashed_width_set");
+    private static  void underline_dashed_width_set(System.IntPtr obj, System.IntPtr pd,   int width)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetUnderlineDashedWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_underline_dashed_width_set_delegate efl_text_underline_dashed_width_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_gap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_gap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate> efl_text_underline_dashed_gap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate>(_Module, "efl_text_underline_dashed_gap_get");
+    private static  int underline_dashed_gap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetUnderlineDashedGap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_gap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_gap_get_delegate efl_text_underline_dashed_gap_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_gap_set_delegate(System.IntPtr obj, System.IntPtr pd,    int gap);
+
+
+    public delegate  void efl_text_underline_dashed_gap_set_api_delegate(System.IntPtr obj,    int gap);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate> efl_text_underline_dashed_gap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate>(_Module, "efl_text_underline_dashed_gap_set");
+    private static  void underline_dashed_gap_set(System.IntPtr obj, System.IntPtr pd,   int gap)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetUnderlineDashedGap( gap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_gap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gap);
+      }
+   }
+   private static efl_text_underline_dashed_gap_set_delegate efl_text_underline_dashed_gap_set_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate> efl_text_underline2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate>(_Module, "efl_text_underline2_color_get");
+    private static  void underline2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetUnderline2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline2_color_get_delegate efl_text_underline2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate> efl_text_underline2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate>(_Module, "efl_text_underline2_color_set");
+    private static  void underline2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetUnderline2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline2_color_set_delegate efl_text_underline2_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate> efl_text_strikethrough_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate>(_Module, "efl_text_strikethrough_type_get");
+    private static Efl.TextStyleStrikethroughType strikethrough_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleStrikethroughType _ret_var = default(Efl.TextStyleStrikethroughType);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetStrikethroughType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_strikethrough_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_strikethrough_type_get_delegate efl_text_strikethrough_type_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleStrikethroughType type);
+
+
+    public delegate  void efl_text_strikethrough_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleStrikethroughType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate> efl_text_strikethrough_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate>(_Module, "efl_text_strikethrough_type_set");
+    private static  void strikethrough_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleStrikethroughType type)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetStrikethroughType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_strikethrough_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_strikethrough_type_set_delegate efl_text_strikethrough_type_set_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate> efl_text_strikethrough_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate>(_Module, "efl_text_strikethrough_color_get");
+    private static  void strikethrough_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetStrikethroughColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_strikethrough_color_get_delegate efl_text_strikethrough_color_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate> efl_text_strikethrough_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate>(_Module, "efl_text_strikethrough_color_set");
+    private static  void strikethrough_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetStrikethroughColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_strikethrough_color_set_delegate efl_text_strikethrough_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleEffectType efl_text_effect_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleEffectType efl_text_effect_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate> efl_text_effect_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate>(_Module, "efl_text_effect_type_get");
+    private static Efl.TextStyleEffectType effect_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleEffectType _ret_var = default(Efl.TextStyleEffectType);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetEffectType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_effect_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_effect_type_get_delegate efl_text_effect_type_get_static_delegate;
+
+
+    private delegate  void efl_text_effect_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleEffectType type);
+
+
+    public delegate  void efl_text_effect_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleEffectType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate> efl_text_effect_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate>(_Module, "efl_text_effect_type_set");
+    private static  void effect_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleEffectType type)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetEffectType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_effect_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_effect_type_set_delegate efl_text_effect_type_set_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_outline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate> efl_text_outline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate>(_Module, "efl_text_outline_color_get");
+    private static  void outline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetOutlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_outline_color_get_delegate efl_text_outline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_outline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate> efl_text_outline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate>(_Module, "efl_text_outline_color_set");
+    private static  void outline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetOutlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_outline_color_set_delegate efl_text_outline_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate> efl_text_shadow_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate>(_Module, "efl_text_shadow_direction_get");
+    private static Efl.TextStyleShadowDirection shadow_direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleShadowDirection _ret_var = default(Efl.TextStyleShadowDirection);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetShadowDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_shadow_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_shadow_direction_get_delegate efl_text_shadow_direction_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleShadowDirection type);
+
+
+    public delegate  void efl_text_shadow_direction_set_api_delegate(System.IntPtr obj,   Efl.TextStyleShadowDirection type);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate> efl_text_shadow_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate>(_Module, "efl_text_shadow_direction_set");
+    private static  void shadow_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleShadowDirection type)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetShadowDirection( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_shadow_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_shadow_direction_set_delegate efl_text_shadow_direction_set_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_shadow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate> efl_text_shadow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate>(_Module, "efl_text_shadow_color_get");
+    private static  void shadow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetShadowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_shadow_color_get_delegate efl_text_shadow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_shadow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate> efl_text_shadow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate>(_Module, "efl_text_shadow_color_set");
+    private static  void shadow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetShadowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_shadow_color_set_delegate efl_text_shadow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate> efl_text_glow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate>(_Module, "efl_text_glow_color_get");
+    private static  void glow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetGlowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow_color_get_delegate efl_text_glow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate> efl_text_glow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate>(_Module, "efl_text_glow_color_set");
+    private static  void glow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetGlowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow_color_set_delegate efl_text_glow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate> efl_text_glow2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate>(_Module, "efl_text_glow2_color_get");
+    private static  void glow2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((TextStyle)wrapper).GetGlow2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow2_color_get_delegate efl_text_glow2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate> efl_text_glow2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate>(_Module, "efl_text_glow2_color_set");
+    private static  void glow2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((TextStyle)wrapper).SetGlow2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow2_color_set_delegate efl_text_glow2_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_gfx_filter_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_gfx_filter_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate> efl_text_gfx_filter_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate>(_Module, "efl_text_gfx_filter_get");
+    private static  System.String gfx_filter_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextStyle)wrapper).GetGfxFilter();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_gfx_filter_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_gfx_filter_get_delegate efl_text_gfx_filter_get_static_delegate;
+
+
+    private delegate  void efl_text_gfx_filter_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+
+
+    public delegate  void efl_text_gfx_filter_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate> efl_text_gfx_filter_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate>(_Module, "efl_text_gfx_filter_set");
+    private static  void gfx_filter_set(System.IntPtr obj, System.IntPtr pd,   System.String code)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextStyle)wrapper).SetGfxFilter( code);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_gfx_filter_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code);
+      }
+   }
+   private static efl_text_gfx_filter_set_delegate efl_text_gfx_filter_set_static_delegate;
+}
+} 
+namespace Efl { 
+/// <summary>Whether to apply backing style to the displayed text or not</summary>
+public enum TextStyleBackingType
+{
+/// <summary>Do not use backing</summary>
+Disabled = 0,
+/// <summary>Use backing style</summary>
+Enabled = 1,
+}
+} 
+namespace Efl { 
+/// <summary>Whether to apply strikethrough style to the displayed text or not</summary>
+public enum TextStyleStrikethroughType
+{
+/// <summary>Do not use strikethrough</summary>
+Disabled = 0,
+/// <summary>Use strikethrough style</summary>
+Enabled = 1,
+}
+} 
+namespace Efl { 
+/// <summary>Effect to apply to the displayed text</summary>
+public enum TextStyleEffectType
+{
+/// <summary>No effect</summary>
+None = 0,
+/// <summary>Shadow effect</summary>
+Shadow = 1,
+/// <summary>Far shadow effect</summary>
+FarShadow = 2,
+/// <summary>Soft shadow effect</summary>
+SoftShadow = 3,
+/// <summary>Far and soft shadow effect</summary>
+FarSoftShadow = 4,
+/// <summary>Glow effect</summary>
+Glow = 5,
+/// <summary>Outline effect</summary>
+Outline = 6,
+/// <summary>Soft outline effect</summary>
+SoftOutline = 7,
+/// <summary>Outline shadow effect</summary>
+OutlineShadow = 8,
+/// <summary>Outline soft shadow effect</summary>
+OutlineSoftShadow = 9,
+}
+} 
+namespace Efl { 
+/// <summary>Direction of the shadow style, if used</summary>
+public enum TextStyleShadowDirection
+{
+/// <summary>Shadow towards bottom right</summary>
+BottomRight = 0,
+/// <summary>Shadow towards botom</summary>
+Bottom = 1,
+/// <summary>Shadow towards bottom left</summary>
+BottomLeft = 2,
+/// <summary>Shadow towards left</summary>
+Left = 3,
+/// <summary>Shadow towards top left</summary>
+TopLeft = 4,
+/// <summary>Shadow towards top</summary>
+Top = 5,
+/// <summary>Shadow towards top right</summary>
+TopRight = 6,
+/// <summary>Shadow towards right</summary>
+Right = 7,
+}
+} 
+namespace Efl { 
+/// <summary>Underline type of the displayed text</summary>
+public enum TextStyleUnderlineType
+{
+/// <summary>Text without underline</summary>
+Off = 0,
+/// <summary>Underline enabled</summary>
+On = 1,
+/// <summary>Underlined with a signle line</summary>
+Single = 2,
+/// <summary>Underlined with a double line</summary>
+Double = 3,
+/// <summary>Underlined with a dashed line</summary>
+Dashed = 4,
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_text_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_text_types.eot.cs
new file mode 100755 (executable)
index 0000000..480cd8f
--- /dev/null
@@ -0,0 +1,116 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>Bidirectionaltext type</summary>
+public enum TextBidirectionalType
+{
+/// <summary>Natural text type, same as neutral</summary>
+Natural = 0,
+/// <summary>Neutral text type, same as natural</summary>
+Neutral = 0,
+/// <summary>Left to right text type</summary>
+Ltr = 1,
+/// <summary>Right to left text type</summary>
+Rtl = 2,
+/// <summary>Inherit text type</summary>
+Inherit = 3,
+/// <summary>@internal EVAS_BIDI_DIRECTION_ANY_RTL is not made for public. It should be opened to public when it is accepted to EFL upstream.</summary>
+AnyRtl = 4,
+}
+} 
+namespace Efl { namespace Ui { 
+/// <summary>This structure includes all the information about content changes.
+/// It&apos;s meant to be used to implement undo/redo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextChangeInfo
+{
+   /// <summary>The content added/removed</summary>
+   public  System.String Content;
+   /// <summary>The position where it was added/removed</summary>
+   public  uint Position;
+   /// <summary>The length of content in characters (not bytes, actual unicode characters)</summary>
+   public  uint Length;
+   /// <summary><c>true</c> if the content was inserted, <c>false</c> if removei</summary>
+   public bool Insert;
+   /// <summary><c>true</c> if can be merged with the previous one. Used for example with insertion when something is already selected</summary>
+   public bool Merge;
+   ///<summary>Constructor for TextChangeInfo.</summary>
+   public TextChangeInfo(
+       System.String Content=default( System.String),
+       uint Position=default( uint),
+       uint Length=default( uint),
+      bool Insert=default(bool),
+      bool Merge=default(bool)   )
+   {
+      this.Content = Content;
+      this.Position = Position;
+      this.Length = Length;
+      this.Insert = Insert;
+      this.Merge = Merge;
+   }
+public static implicit operator TextChangeInfo(IntPtr ptr)
+   {
+      var tmp = (TextChangeInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(TextChangeInfo_StructInternal));
+      return TextChangeInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct TextChangeInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TextChangeInfo_StructInternal
+{
+///<summary>Internal wrapper for field Content</summary>
+public System.IntPtr Content;
+   
+   public  uint Position;
+   
+   public  uint Length;
+///<summary>Internal wrapper for field Insert</summary>
+public System.Byte Insert;
+///<summary>Internal wrapper for field Merge</summary>
+public System.Byte Merge;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator TextChangeInfo(TextChangeInfo_StructInternal struct_)
+   {
+      return TextChangeInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator TextChangeInfo_StructInternal(TextChangeInfo struct_)
+   {
+      return TextChangeInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct TextChangeInfo</summary>
+public static class TextChangeInfo_StructConversion
+{
+   internal static TextChangeInfo_StructInternal ToInternal(TextChangeInfo _external_struct)
+   {
+      var _internal_struct = new TextChangeInfo_StructInternal();
+
+      _internal_struct.Content = Eina.MemoryNative.StrDup(_external_struct.Content);
+      _internal_struct.Position = _external_struct.Position;
+      _internal_struct.Length = _external_struct.Length;
+      _internal_struct.Insert = _external_struct.Insert ? (byte)1 : (byte)0;
+      _internal_struct.Merge = _external_struct.Merge ? (byte)1 : (byte)0;
+
+      return _internal_struct;
+   }
+
+   internal static TextChangeInfo ToManaged(TextChangeInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new TextChangeInfo();
+
+      _external_struct.Content = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Content);
+      _external_struct.Position = _internal_struct.Position;
+      _external_struct.Length = _internal_struct.Length;
+      _external_struct.Insert = _internal_struct.Insert != 0;
+      _external_struct.Merge = _internal_struct.Merge != 0;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_thread.eo.cs b/internals/src/EflSharp/EflSharp/efl_thread.eo.cs
new file mode 100755 (executable)
index 0000000..c89e99b
--- /dev/null
@@ -0,0 +1,1274 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary></summary>
+[ThreadNativeInherit]
+public class Thread : Efl.Task, Efl.Eo.IWrapper,Efl.ThreadIO,Efl.Core.CommandLine,Efl.Io.Closer,Efl.Io.Reader,Efl.Io.Writer
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.ThreadNativeInherit nativeInherit = new Efl.ThreadNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Thread))
+            return Efl.ThreadNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_thread_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Thread(Efl.Object parent= null
+         ) :
+      base(efl_thread_class_get(), typeof(Thread), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Thread(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Thread(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Thread static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Thread(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ClosedEvtKey = new object();
+   /// <summary>Notifies closed, when property is marked as true
+   /// 1.19</summary>
+   public event EventHandler ClosedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClosedEvt_delegate)) {
+               eventHandlers.AddHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_CLOSER_EVENT_CLOSED";
+            if (remove_cpp_event_handler(key, this.evt_ClosedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClosedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClosedEvt.</summary>
+   public void On_ClosedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClosedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClosedEvt_delegate;
+   private void on_ClosedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClosedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_readChangedEvtKey = new object();
+   /// <summary>Notifies can_read property changed.
+   /// If <see cref="Efl.Io.Reader.CanRead"/> is <c>true</c> there is data to <see cref="Efl.Io.Reader.Read"/> without blocking/error. If <see cref="Efl.Io.Reader.CanRead"/> is <c>false</c>, <see cref="Efl.Io.Reader.Read"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Reader.Read"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> Can_readChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_readChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_CAN_READ_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_readChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_readChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_readChangedEvt.</summary>
+   public void On_Can_readChangedEvt(Efl.Io.ReaderCan_readChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.ReaderCan_readChangedEvt_Args>)eventHandlers[Can_readChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_readChangedEvt_delegate;
+   private void on_Can_readChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.ReaderCan_readChangedEvt_Args args = new Efl.Io.ReaderCan_readChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_readChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EosEvtKey = new object();
+   /// <summary>Notifies end of stream, when property is marked as true.
+   /// If this is used alongside with an <see cref="Efl.Io.Closer"/>, then it should be emitted before that call.
+   /// 
+   /// It should be emitted only once for an object unless it implements <see cref="Efl.Io.Positioner.Seek"/>.
+   /// 
+   /// The property <see cref="Efl.Io.Reader.CanRead"/> should change to <c>false</c> before this event is dispatched.
+   /// 1.19</summary>
+   public event EventHandler EosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EosEvt_delegate)) {
+               eventHandlers.AddHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_READER_EVENT_EOS";
+            if (remove_cpp_event_handler(key, this.evt_EosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EosEvt.</summary>
+   public void On_EosEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EosEvt_delegate;
+   private void on_EosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Can_writeChangedEvtKey = new object();
+   /// <summary>Notifies can_write property changed.
+   /// If <see cref="Efl.Io.Writer.CanWrite"/> is <c>true</c> there is data to <see cref="Efl.Io.Writer.Write"/> without blocking/error. If <see cref="Efl.Io.Writer.CanWrite"/> is <c>false</c>, <see cref="Efl.Io.Writer.Write"/> would either block or fail.
+   /// 
+   /// Note that usually this event is dispatched from inside <see cref="Efl.Io.Writer.Write"/>, thus before it returns.
+   /// 1.19</summary>
+   public event EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> Can_writeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Can_writeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_IO_WRITER_EVENT_CAN_WRITE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Can_writeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Can_writeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Can_writeChangedEvt.</summary>
+   public void On_Can_writeChangedEvt(Efl.Io.WriterCan_writeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Io.WriterCan_writeChangedEvt_Args>)eventHandlers[Can_writeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Can_writeChangedEvt_delegate;
+   private void on_Can_writeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Io.WriterCan_writeChangedEvt_Args args = new Efl.Io.WriterCan_writeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Can_writeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ClosedEvt_delegate = new Efl.EventCb(on_ClosedEvt_NativeCallback);
+      evt_Can_readChangedEvt_delegate = new Efl.EventCb(on_Can_readChangedEvt_NativeCallback);
+      evt_EosEvt_delegate = new Efl.EventCb(on_EosEvt_NativeCallback);
+      evt_Can_writeChangedEvt_delegate = new Efl.EventCb(on_Can_writeChangedEvt_NativeCallback);
+   }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   virtual public  System.IntPtr GetIndata() {
+       var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_indata_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="data">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetIndata(  System.IntPtr data) {
+                         Efl.ThreadIONativeInherit.efl_threadio_indata_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   virtual public  System.IntPtr GetOutdata() {
+       var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_outdata_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="data">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void SetOutdata(  System.IntPtr data) {
+                         Efl.ThreadIONativeInherit.efl_threadio_outdata_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="func">No description supplied.</param>
+   /// <returns></returns>
+   virtual public  void Call( EFlThreadIOCall func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.ThreadIONativeInherit.efl_threadio_call_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), EFlThreadIOCallWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="func">No description supplied.</param>
+   /// <returns>No description supplied.</returns>
+   virtual public  System.IntPtr CallSync( EFlThreadIOCallSync func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_call_sync_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), EFlThreadIOCallSyncWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+   /// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+   /// 
+   /// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+   /// 
+   /// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+   /// 
+   /// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+   /// <returns></returns>
+   virtual public  System.String GetCommand() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Use an array to fill this object
+   /// Every element of a string is a argument.</summary>
+   /// <param name="array">An array where every array field is an argument</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandArray( Eina.Array< System.String> array) {
+       var _in_array = array.Handle;
+array.Own = false;
+array.OwnContent = false;
+                  var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_array_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_array);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Use a string to fill this object
+   /// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+   /// <param name="str">A command in form of a string</param>
+   /// <returns>On success <c>true</c>, <c>false</c> otherwise</returns>
+   virtual public bool SetCommandString(  System.String str) {
+                         var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), str);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the accessor which enables access to each argument that got passed to this object.</summary>
+   /// <returns></returns>
+   virtual public Eina.Accessor< System.String> CommandAccess() {
+       var _ret_var = Efl.Core.CommandLineNativeInherit.efl_core_command_line_command_access_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Accessor< System.String>(_ret_var, false, false);
+ }
+   /// <summary>If true will notify object was closed.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if closed, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetClosed() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_closed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close resources on exec() calls.
+   /// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnExec() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c>, will close on exec() call.
+   /// 1.19</summary>
+   /// <param name="close_on_exec"><c>true</c> if close on exec(), <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns><c>true</c> if could set, <c>false</c> if not supported or failed.
+   /// 1.19</returns>
+   virtual public bool SetCloseOnExec( bool close_on_exec) {
+                         var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_exec_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_exec);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCloseOnInvalidate() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If true will automatically close() on object invalidate.
+   /// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+   /// 1.19</summary>
+   /// <param name="close_on_invalidate"><c>true</c> if close on invalidate, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCloseOnInvalidate( bool close_on_invalidate) {
+                         Efl.Io.CloserNativeInherit.efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), close_on_invalidate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Closes the Input/Output object.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as close(2) libc function.
+   /// 1.19</summary>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Close() {
+       var _ret_var = Efl.Io.CloserNativeInherit.efl_io_closer_close_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanRead() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_read"><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanRead( bool can_read) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_can_read_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_read);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetEos() {
+       var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_eos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify end of stream.
+   /// 1.19</summary>
+   /// <param name="is_eos"><c>true</c> if end of stream, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetEos( bool is_eos) {
+                         Efl.Io.ReaderNativeInherit.efl_io_reader_eos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_eos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Reads data into a pre-allocated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is to be defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as read(2) libc function.
+   /// 1.19</summary>
+   /// <param name="rw_slice">Provides a pre-allocated memory to be filled up to rw_slice.len. It will be populated and the length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Read( ref Eina.RwSlice rw_slice) {
+                         var _ret_var = Efl.Io.ReaderNativeInherit.efl_io_reader_read_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref rw_slice);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <returns><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</returns>
+   virtual public bool GetCanWrite() {
+       var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_can_write_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+   /// 1.19</summary>
+   /// <param name="can_write"><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+   /// 1.19</param>
+   /// <returns></returns>
+   virtual public  void SetCanWrite( bool can_write) {
+                         Efl.Io.WriterNativeInherit.efl_io_writer_can_write_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_write);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Writes data from a pre-populated buffer.
+   /// This operation will be executed immediately and may or may not block the caller thread for some time. The details of blocking behavior is defined by the implementation and may be subject to other parameters such as non-blocking flags, maximum timeout or even retry attempts.
+   /// 
+   /// You can understand this method as write(2) libc function.
+   /// 1.19</summary>
+   /// <param name="slice">Provides a pre-populated memory to be used up to slice.len. The returned slice will be adapted as length will be set to the actually used amount of bytes, which can be smaller than the request.
+   /// 1.19</param>
+   /// <param name="remaining">Convenience to output the remaining parts of slice that was not written. If the full slice was written, this will be a slice of zero-length.
+   /// 1.19</param>
+   /// <returns>0 on succeed, a mapping of errno otherwise
+   /// 1.19</returns>
+   virtual public  Eina.Error Write( ref Eina.Slice slice,  ref Eina.Slice remaining) {
+                                           var _ret_var = Efl.Io.WriterNativeInherit.efl_io_writer_write_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref slice,  ref remaining);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public  System.IntPtr Indata {
+      get { return GetIndata(); }
+      set { SetIndata( value); }
+   }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public  System.IntPtr Outdata {
+      get { return GetOutdata(); }
+      set { SetOutdata( value); }
+   }
+   /// <summary>A commandline that encodes arguments in a command string. This command is unix shell-style, thus whitespace separates arguments unless escaped. Also a semi-colon &apos;;&apos;, ampersand &apos;&amp;&apos;, pipe/bar &apos;|&apos;, hash &apos;#&apos;, bracket, square brace, brace character (&apos;(&apos;, &apos;)&apos;, &apos;[&apos;, &apos;]&apos;, &apos;{&apos;, &apos;}&apos;), exclamation mark &apos;!&apos;,  backquote &apos;`&apos;, greator or less than (&apos;&gt;&apos; &apos;&lt;&apos;) character unless escaped or in quotes would cause args_count/value to not be generated properly, because it would force complex shell interpretation which will not be supported in evaluating the arg_count/value information, but the final shell may interpret this if this is executed via a command-line shell. To not be a complex shell command, it should be simple with paths, options and variable expansions, but nothing more complex involving the above unescaped characters.
+/// &quot;cat -option /path/file&quot; &quot;cat &apos;quoted argument&apos;&quot; &quot;cat ~/path/escaped argument&quot; &quot;/bin/cat escaped argument <c>VARIABLE</c>&quot; etc.
+/// 
+/// It should not try and use &quot;complex shell features&quot; if you want the arg_count and arg_value set to be correct after setting the command string. For example none of:
+/// 
+/// &quot;VAR=x /bin/command &amp;&amp; /bin/othercommand &gt;&amp; /dev/null&quot; &quot;VAR=x /bin/command `/bin/othercommand` | /bin/cmd2 &amp;&amp; cmd3 &amp;&quot; etc.
+/// 
+/// If you set the command the arg_count/value property contents can change and be completely re-evaluated by parsing the command string into an argument array set along with interpreting escapes back into individual argument strings.</summary>
+/// <value></value>
+   public  System.String Command {
+      get { return GetCommand(); }
+   }
+   /// <summary>Use an array to fill this object
+/// Every element of a string is a argument.</summary>
+/// <value>An array where every array field is an argument</value>
+   public Eina.Array< System.String> CommandArray {
+      set { SetCommandArray( value); }
+   }
+   /// <summary>Use a string to fill this object
+/// The string will be split at every unescaped &apos; &apos;, every resulting substring will be a new argument to the command line.</summary>
+/// <value>A command in form of a string</value>
+   public  System.String CommandString {
+      set { SetCommandString( value); }
+   }
+   /// <summary>If true will notify object was closed.
+/// 1.19</summary>
+/// <value><c>true</c> if closed, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Closed {
+      get { return GetClosed(); }
+   }
+   /// <summary>If true will automatically close resources on exec() calls.
+/// When using file descriptors this should set FD_CLOEXEC so they are not inherited by the processes (children or self) doing exec().
+/// 1.19</summary>
+/// <value><c>true</c> if close on exec(), <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnExec {
+      get { return GetCloseOnExec(); }
+      set { SetCloseOnExec( value); }
+   }
+   /// <summary>If true will automatically close() on object invalidate.
+/// If the object was disconnected from its parent (including the main loop) without close, this property will state whenever it should be closed or not.
+/// 1.19</summary>
+/// <value><c>true</c> if close on invalidate, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CloseOnInvalidate {
+      get { return GetCloseOnInvalidate(); }
+      set { SetCloseOnInvalidate( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Reader.Read"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be read without blocking or failing, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanRead {
+      get { return GetCanRead(); }
+      set { SetCanRead( value); }
+   }
+   /// <summary>If <c>true</c> will notify end of stream.
+/// 1.19</summary>
+/// <value><c>true</c> if end of stream, <c>false</c> otherwise
+/// 1.19</value>
+   public bool Eos {
+      get { return GetEos(); }
+      set { SetEos( value); }
+   }
+   /// <summary>If <c>true</c> will notify <see cref="Efl.Io.Writer.Write"/> can be called without blocking or failing.
+/// 1.19</summary>
+/// <value><c>true</c> if it can be written without blocking or failure, <c>false</c> otherwise
+/// 1.19</value>
+   public bool CanWrite {
+      get { return GetCanWrite(); }
+      set { SetCanWrite( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Thread.efl_thread_class_get();
+   }
+}
+public class ThreadNativeInherit : Efl.TaskNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_threadio_indata_get_static_delegate == null)
+      efl_threadio_indata_get_static_delegate = new efl_threadio_indata_get_delegate(indata_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_indata_get"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_indata_get_static_delegate)});
+      if (efl_threadio_indata_set_static_delegate == null)
+      efl_threadio_indata_set_static_delegate = new efl_threadio_indata_set_delegate(indata_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_indata_set"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_indata_set_static_delegate)});
+      if (efl_threadio_outdata_get_static_delegate == null)
+      efl_threadio_outdata_get_static_delegate = new efl_threadio_outdata_get_delegate(outdata_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_outdata_get"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_outdata_get_static_delegate)});
+      if (efl_threadio_outdata_set_static_delegate == null)
+      efl_threadio_outdata_set_static_delegate = new efl_threadio_outdata_set_delegate(outdata_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_outdata_set"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_outdata_set_static_delegate)});
+      if (efl_threadio_call_static_delegate == null)
+      efl_threadio_call_static_delegate = new efl_threadio_call_delegate(call);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_call"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_call_static_delegate)});
+      if (efl_threadio_call_sync_static_delegate == null)
+      efl_threadio_call_sync_static_delegate = new efl_threadio_call_sync_delegate(call_sync);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_call_sync"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_call_sync_static_delegate)});
+      if (efl_core_command_line_command_get_static_delegate == null)
+      efl_core_command_line_command_get_static_delegate = new efl_core_command_line_command_get_delegate(command_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_get"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_get_static_delegate)});
+      if (efl_core_command_line_command_array_set_static_delegate == null)
+      efl_core_command_line_command_array_set_static_delegate = new efl_core_command_line_command_array_set_delegate(command_array_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_array_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_array_set_static_delegate)});
+      if (efl_core_command_line_command_string_set_static_delegate == null)
+      efl_core_command_line_command_string_set_static_delegate = new efl_core_command_line_command_string_set_delegate(command_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_string_set_static_delegate)});
+      if (efl_core_command_line_command_access_static_delegate == null)
+      efl_core_command_line_command_access_static_delegate = new efl_core_command_line_command_access_delegate(command_access);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_core_command_line_command_access"), func = Marshal.GetFunctionPointerForDelegate(efl_core_command_line_command_access_static_delegate)});
+      if (efl_io_closer_closed_get_static_delegate == null)
+      efl_io_closer_closed_get_static_delegate = new efl_io_closer_closed_get_delegate(closed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_closed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_closed_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_get_static_delegate == null)
+      efl_io_closer_close_on_exec_get_static_delegate = new efl_io_closer_close_on_exec_get_delegate(close_on_exec_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_get_static_delegate)});
+      if (efl_io_closer_close_on_exec_set_static_delegate == null)
+      efl_io_closer_close_on_exec_set_static_delegate = new efl_io_closer_close_on_exec_set_delegate(close_on_exec_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_exec_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_exec_set_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_get_static_delegate == null)
+      efl_io_closer_close_on_invalidate_get_static_delegate = new efl_io_closer_close_on_invalidate_get_delegate(close_on_invalidate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_get_static_delegate)});
+      if (efl_io_closer_close_on_invalidate_set_static_delegate == null)
+      efl_io_closer_close_on_invalidate_set_static_delegate = new efl_io_closer_close_on_invalidate_set_delegate(close_on_invalidate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close_on_invalidate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_on_invalidate_set_static_delegate)});
+      if (efl_io_closer_close_static_delegate == null)
+      efl_io_closer_close_static_delegate = new efl_io_closer_close_delegate(close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_closer_close"), func = Marshal.GetFunctionPointerForDelegate(efl_io_closer_close_static_delegate)});
+      if (efl_io_reader_can_read_get_static_delegate == null)
+      efl_io_reader_can_read_get_static_delegate = new efl_io_reader_can_read_get_delegate(can_read_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_get_static_delegate)});
+      if (efl_io_reader_can_read_set_static_delegate == null)
+      efl_io_reader_can_read_set_static_delegate = new efl_io_reader_can_read_set_delegate(can_read_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_can_read_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_can_read_set_static_delegate)});
+      if (efl_io_reader_eos_get_static_delegate == null)
+      efl_io_reader_eos_get_static_delegate = new efl_io_reader_eos_get_delegate(eos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_get_static_delegate)});
+      if (efl_io_reader_eos_set_static_delegate == null)
+      efl_io_reader_eos_set_static_delegate = new efl_io_reader_eos_set_delegate(eos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_eos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_eos_set_static_delegate)});
+      if (efl_io_reader_read_static_delegate == null)
+      efl_io_reader_read_static_delegate = new efl_io_reader_read_delegate(read);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_reader_read"), func = Marshal.GetFunctionPointerForDelegate(efl_io_reader_read_static_delegate)});
+      if (efl_io_writer_can_write_get_static_delegate == null)
+      efl_io_writer_can_write_get_static_delegate = new efl_io_writer_can_write_get_delegate(can_write_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_get"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_get_static_delegate)});
+      if (efl_io_writer_can_write_set_static_delegate == null)
+      efl_io_writer_can_write_set_static_delegate = new efl_io_writer_can_write_set_delegate(can_write_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_can_write_set"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_can_write_set_static_delegate)});
+      if (efl_io_writer_write_static_delegate == null)
+      efl_io_writer_write_static_delegate = new efl_io_writer_write_delegate(write);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_io_writer_write"), func = Marshal.GetFunctionPointerForDelegate(efl_io_writer_write_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Thread.efl_thread_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Thread.efl_thread_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_threadio_indata_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_threadio_indata_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_indata_get_api_delegate> efl_threadio_indata_get_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_indata_get_api_delegate>(_Module, "efl_threadio_indata_get");
+    private static  System.IntPtr indata_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_threadio_indata_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Thread)wrapper).GetIndata();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_threadio_indata_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_threadio_indata_get_delegate efl_threadio_indata_get_static_delegate;
+
+
+    private delegate  void efl_threadio_indata_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data);
+
+
+    public delegate  void efl_threadio_indata_set_api_delegate(System.IntPtr obj,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_indata_set_api_delegate> efl_threadio_indata_set_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_indata_set_api_delegate>(_Module, "efl_threadio_indata_set");
+    private static  void indata_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_threadio_indata_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Thread)wrapper).SetIndata( data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_indata_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data);
+      }
+   }
+   private static efl_threadio_indata_set_delegate efl_threadio_indata_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_threadio_outdata_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_threadio_outdata_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_outdata_get_api_delegate> efl_threadio_outdata_get_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_outdata_get_api_delegate>(_Module, "efl_threadio_outdata_get");
+    private static  System.IntPtr outdata_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_threadio_outdata_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Thread)wrapper).GetOutdata();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_threadio_outdata_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_threadio_outdata_get_delegate efl_threadio_outdata_get_static_delegate;
+
+
+    private delegate  void efl_threadio_outdata_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data);
+
+
+    public delegate  void efl_threadio_outdata_set_api_delegate(System.IntPtr obj,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_outdata_set_api_delegate> efl_threadio_outdata_set_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_outdata_set_api_delegate>(_Module, "efl_threadio_outdata_set");
+    private static  void outdata_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_threadio_outdata_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Thread)wrapper).SetOutdata( data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_outdata_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data);
+      }
+   }
+   private static efl_threadio_outdata_set_delegate efl_threadio_outdata_set_static_delegate;
+
+
+    private delegate  void efl_threadio_call_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_threadio_call_api_delegate(System.IntPtr obj,  IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_call_api_delegate> efl_threadio_call_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_call_api_delegate>(_Module, "efl_threadio_call");
+    private static  void call(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_threadio_call was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              EFlThreadIOCallWrapper func_wrapper = new EFlThreadIOCallWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((Thread)wrapper).Call( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_call_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_threadio_call_delegate efl_threadio_call_static_delegate;
+
+
+    private delegate  System.IntPtr efl_threadio_call_sync_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  System.IntPtr efl_threadio_call_sync_api_delegate(System.IntPtr obj,  IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_call_sync_api_delegate> efl_threadio_call_sync_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_call_sync_api_delegate>(_Module, "efl_threadio_call_sync");
+    private static  System.IntPtr call_sync(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_threadio_call_sync was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              EFlThreadIOCallSyncWrapper func_wrapper = new EFlThreadIOCallSyncWrapper(func, func_data, func_free_cb);
+          System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Thread)wrapper).CallSync( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_threadio_call_sync_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_threadio_call_sync_delegate efl_threadio_call_sync_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_core_command_line_command_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_core_command_line_command_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate> efl_core_command_line_command_get_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_get_api_delegate>(_Module, "efl_core_command_line_command_get");
+    private static  System.String command_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Thread)wrapper).GetCommand();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_core_command_line_command_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_get_delegate efl_core_command_line_command_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_array_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr array);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_array_set_api_delegate(System.IntPtr obj,    System.IntPtr array);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate> efl_core_command_line_command_array_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_array_set_api_delegate>(_Module, "efl_core_command_line_command_array_set");
+    private static bool command_array_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr array)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_array_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_array = new Eina.Array< System.String>(array, true, true);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).SetCommandArray( _in_array);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_array_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  array);
+      }
+   }
+   private static efl_core_command_line_command_array_set_delegate efl_core_command_line_command_array_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_core_command_line_command_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_core_command_line_command_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String str);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate> efl_core_command_line_command_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_string_set_api_delegate>(_Module, "efl_core_command_line_command_string_set");
+    private static bool command_string_set(System.IntPtr obj, System.IntPtr pd,   System.String str)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).SetCommandString( str);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_core_command_line_command_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  str);
+      }
+   }
+   private static efl_core_command_line_command_string_set_delegate efl_core_command_line_command_string_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_core_command_line_command_access_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_core_command_line_command_access_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate> efl_core_command_line_command_access_ptr = new Efl.Eo.FunctionWrapper<efl_core_command_line_command_access_api_delegate>(_Module, "efl_core_command_line_command_access");
+    private static  System.IntPtr command_access(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_core_command_line_command_access was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Accessor< System.String> _ret_var = default(Eina.Accessor< System.String>);
+         try {
+            _ret_var = ((Thread)wrapper).CommandAccess();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_core_command_line_command_access_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_core_command_line_command_access_delegate efl_core_command_line_command_access_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_closed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_closed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate> efl_io_closer_closed_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_closed_get_api_delegate>(_Module, "efl_io_closer_closed_get");
+    private static bool closed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_closed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).GetClosed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_closed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_closed_get_delegate efl_io_closer_closed_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate> efl_io_closer_close_on_exec_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_get_api_delegate>(_Module, "efl_io_closer_close_on_exec_get");
+    private static bool close_on_exec_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).GetCloseOnExec();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_exec_get_delegate efl_io_closer_close_on_exec_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_exec_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_exec_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_exec);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate> efl_io_closer_close_on_exec_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_exec_set_api_delegate>(_Module, "efl_io_closer_close_on_exec_set");
+    private static bool close_on_exec_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_exec)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_exec_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).SetCloseOnExec( close_on_exec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_closer_close_on_exec_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_exec);
+      }
+   }
+   private static efl_io_closer_close_on_exec_set_delegate efl_io_closer_close_on_exec_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_closer_close_on_invalidate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_closer_close_on_invalidate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate> efl_io_closer_close_on_invalidate_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_get_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_get");
+    private static bool close_on_invalidate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).GetCloseOnInvalidate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_on_invalidate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_get_delegate efl_io_closer_close_on_invalidate_get_static_delegate;
+
+
+    private delegate  void efl_io_closer_close_on_invalidate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+
+
+    public delegate  void efl_io_closer_close_on_invalidate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool close_on_invalidate);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate> efl_io_closer_close_on_invalidate_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_on_invalidate_set_api_delegate>(_Module, "efl_io_closer_close_on_invalidate_set");
+    private static  void close_on_invalidate_set(System.IntPtr obj, System.IntPtr pd,  bool close_on_invalidate)
+   {
+      Eina.Log.Debug("function efl_io_closer_close_on_invalidate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Thread)wrapper).SetCloseOnInvalidate( close_on_invalidate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_closer_close_on_invalidate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  close_on_invalidate);
+      }
+   }
+   private static efl_io_closer_close_on_invalidate_set_delegate efl_io_closer_close_on_invalidate_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_closer_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_io_closer_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate> efl_io_closer_close_ptr = new Efl.Eo.FunctionWrapper<efl_io_closer_close_api_delegate>(_Module, "efl_io_closer_close");
+    private static  Eina.Error close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_closer_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Thread)wrapper).Close();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_closer_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_closer_close_delegate efl_io_closer_close_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_can_read_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_can_read_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate> efl_io_reader_can_read_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_get_api_delegate>(_Module, "efl_io_reader_can_read_get");
+    private static bool can_read_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).GetCanRead();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_can_read_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_can_read_get_delegate efl_io_reader_can_read_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_can_read_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+
+
+    public delegate  void efl_io_reader_can_read_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_read);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate> efl_io_reader_can_read_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_can_read_set_api_delegate>(_Module, "efl_io_reader_can_read_set");
+    private static  void can_read_set(System.IntPtr obj, System.IntPtr pd,  bool can_read)
+   {
+      Eina.Log.Debug("function efl_io_reader_can_read_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Thread)wrapper).SetCanRead( can_read);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_can_read_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_read);
+      }
+   }
+   private static efl_io_reader_can_read_set_delegate efl_io_reader_can_read_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_reader_eos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_reader_eos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate> efl_io_reader_eos_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_get_api_delegate>(_Module, "efl_io_reader_eos_get");
+    private static bool eos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).GetEos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_reader_eos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_reader_eos_get_delegate efl_io_reader_eos_get_static_delegate;
+
+
+    private delegate  void efl_io_reader_eos_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+
+
+    public delegate  void efl_io_reader_eos_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_eos);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate> efl_io_reader_eos_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_eos_set_api_delegate>(_Module, "efl_io_reader_eos_set");
+    private static  void eos_set(System.IntPtr obj, System.IntPtr pd,  bool is_eos)
+   {
+      Eina.Log.Debug("function efl_io_reader_eos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Thread)wrapper).SetEos( is_eos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_reader_eos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_eos);
+      }
+   }
+   private static efl_io_reader_eos_set_delegate efl_io_reader_eos_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_reader_read_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.RwSlice rw_slice);
+
+
+    public delegate  Eina.Error efl_io_reader_read_api_delegate(System.IntPtr obj,   ref Eina.RwSlice rw_slice);
+    public static Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate> efl_io_reader_read_ptr = new Efl.Eo.FunctionWrapper<efl_io_reader_read_api_delegate>(_Module, "efl_io_reader_read");
+    private static  Eina.Error read(System.IntPtr obj, System.IntPtr pd,  ref Eina.RwSlice rw_slice)
+   {
+      Eina.Log.Debug("function efl_io_reader_read was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Thread)wrapper).Read( ref rw_slice);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_io_reader_read_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref rw_slice);
+      }
+   }
+   private static efl_io_reader_read_delegate efl_io_reader_read_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_io_writer_can_write_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_io_writer_can_write_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate> efl_io_writer_can_write_get_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_get_api_delegate>(_Module, "efl_io_writer_can_write_get");
+    private static bool can_write_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Thread)wrapper).GetCanWrite();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_io_writer_can_write_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_io_writer_can_write_get_delegate efl_io_writer_can_write_get_static_delegate;
+
+
+    private delegate  void efl_io_writer_can_write_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+
+
+    public delegate  void efl_io_writer_can_write_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_write);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate> efl_io_writer_can_write_set_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_can_write_set_api_delegate>(_Module, "efl_io_writer_can_write_set");
+    private static  void can_write_set(System.IntPtr obj, System.IntPtr pd,  bool can_write)
+   {
+      Eina.Log.Debug("function efl_io_writer_can_write_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Thread)wrapper).SetCanWrite( can_write);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_io_writer_can_write_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_write);
+      }
+   }
+   private static efl_io_writer_can_write_set_delegate efl_io_writer_can_write_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_io_writer_write_delegate(System.IntPtr obj, System.IntPtr pd,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+
+
+    public delegate  Eina.Error efl_io_writer_write_api_delegate(System.IntPtr obj,   ref Eina.Slice slice,   ref Eina.Slice remaining);
+    public static Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate> efl_io_writer_write_ptr = new Efl.Eo.FunctionWrapper<efl_io_writer_write_api_delegate>(_Module, "efl_io_writer_write");
+    private static  Eina.Error write(System.IntPtr obj, System.IntPtr pd,  ref Eina.Slice slice,  ref Eina.Slice remaining)
+   {
+      Eina.Log.Debug("function efl_io_writer_write was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 remaining = default(Eina.Slice);                      Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Thread)wrapper).Write( ref slice,  ref remaining);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_io_writer_write_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref slice,  ref remaining);
+      }
+   }
+   private static efl_io_writer_write_delegate efl_io_writer_write_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_threadio.eo.cs b/internals/src/EflSharp/EflSharp/efl_threadio.eo.cs
new file mode 100755 (executable)
index 0000000..85b51e2
--- /dev/null
@@ -0,0 +1,466 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+
+/// <summary></summary>
+/// <param name="kw_event">No description supplied.</param>
+/// <returns></returns>
+public delegate  void EFlThreadIOCall( ref Efl.Event kw_event);
+public delegate  void EFlThreadIOCallInternal(IntPtr data,   ref Efl.Event_StructInternal kw_event);
+internal class EFlThreadIOCallWrapper
+{
+
+   private EFlThreadIOCallInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal EFlThreadIOCallWrapper (EFlThreadIOCallInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~EFlThreadIOCallWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  void ManagedCb( ref Efl.Event kw_event)
+   {
+      var _in_kw_event = Efl.Event_StructConversion.ToInternal(kw_event);
+                  _cb(_cb_data,  ref _in_kw_event);
+      Eina.Error.RaiseIfUnhandledException();
+            kw_event = Efl.Event_StructConversion.ToManaged(_in_kw_event);
+         }
+
+      internal static  void Cb(IntPtr cb_data,   ref Efl.Event_StructInternal kw_event)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      EFlThreadIOCall cb = (EFlThreadIOCall)handle.Target;
+      var _in_kw_event = Efl.Event_StructConversion.ToManaged(kw_event);
+                     
+      try {
+         cb( ref _in_kw_event);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+            kw_event = Efl.Event_StructConversion.ToInternal(_in_kw_event);
+         }
+}
+
+
+/// <summary></summary>
+/// <param name="kw_event">No description supplied.</param>
+/// <returns></returns>
+public delegate  System.IntPtr EFlThreadIOCallSync( ref Efl.Event kw_event);
+public delegate  System.IntPtr EFlThreadIOCallSyncInternal(IntPtr data,   ref Efl.Event_StructInternal kw_event);
+internal class EFlThreadIOCallSyncWrapper
+{
+
+   private EFlThreadIOCallSyncInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal EFlThreadIOCallSyncWrapper (EFlThreadIOCallSyncInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~EFlThreadIOCallSyncWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  System.IntPtr ManagedCb( ref Efl.Event kw_event)
+   {
+      var _in_kw_event = Efl.Event_StructConversion.ToInternal(kw_event);
+                  var _ret_var = _cb(_cb_data,  ref _in_kw_event);
+      Eina.Error.RaiseIfUnhandledException();
+            kw_event = Efl.Event_StructConversion.ToManaged(_in_kw_event);
+      return _ret_var;
+   }
+
+      internal static  System.IntPtr Cb(IntPtr cb_data,   ref Efl.Event_StructInternal kw_event)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      EFlThreadIOCallSync cb = (EFlThreadIOCallSync)handle.Target;
+      var _in_kw_event = Efl.Event_StructConversion.ToManaged(kw_event);
+                      System.IntPtr _ret_var = default( System.IntPtr);
+      try {
+         _ret_var = cb( ref _in_kw_event);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+            kw_event = Efl.Event_StructConversion.ToInternal(_in_kw_event);
+      return _ret_var;
+   }
+}
+
+namespace Efl { 
+/// <summary>No description supplied.</summary>
+[ThreadIONativeInherit]
+public interface ThreadIO : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary></summary>
+/// <returns>No description supplied.</returns>
+ System.IntPtr GetIndata();
+   /// <summary></summary>
+/// <param name="data">No description supplied.</param>
+/// <returns></returns>
+ void SetIndata(  System.IntPtr data);
+   /// <summary></summary>
+/// <returns>No description supplied.</returns>
+ System.IntPtr GetOutdata();
+   /// <summary></summary>
+/// <param name="data">No description supplied.</param>
+/// <returns></returns>
+ void SetOutdata(  System.IntPtr data);
+   /// <summary></summary>
+/// <param name="func">No description supplied.</param>
+/// <returns></returns>
+ void Call( EFlThreadIOCall func);
+   /// <summary></summary>
+/// <param name="func">No description supplied.</param>
+/// <returns>No description supplied.</returns>
+ System.IntPtr CallSync( EFlThreadIOCallSync func);
+                     /// <summary></summary>
+/// <value>No description supplied.</value>
+    System.IntPtr Indata {
+      get ;
+      set ;
+   }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+    System.IntPtr Outdata {
+      get ;
+      set ;
+   }
+}
+/// <summary>No description supplied.</summary>
+sealed public class ThreadIOConcrete : 
+
+ThreadIO
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ThreadIOConcrete))
+            return Efl.ThreadIONativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_threadio_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ThreadIOConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ThreadIOConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ThreadIOConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ThreadIOConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   public  System.IntPtr GetIndata() {
+       var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_indata_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="data">No description supplied.</param>
+   /// <returns></returns>
+   public  void SetIndata(  System.IntPtr data) {
+                         Efl.ThreadIONativeInherit.efl_threadio_indata_set_ptr.Value.Delegate(this.NativeHandle, data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <returns>No description supplied.</returns>
+   public  System.IntPtr GetOutdata() {
+       var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_outdata_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="data">No description supplied.</param>
+   /// <returns></returns>
+   public  void SetOutdata(  System.IntPtr data) {
+                         Efl.ThreadIONativeInherit.efl_threadio_outdata_set_ptr.Value.Delegate(this.NativeHandle, data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="func">No description supplied.</param>
+   /// <returns></returns>
+   public  void Call( EFlThreadIOCall func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.ThreadIONativeInherit.efl_threadio_call_ptr.Value.Delegate(this.NativeHandle,GCHandle.ToIntPtr(func_handle), EFlThreadIOCallWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="func">No description supplied.</param>
+   /// <returns>No description supplied.</returns>
+   public  System.IntPtr CallSync( EFlThreadIOCallSync func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.ThreadIONativeInherit.efl_threadio_call_sync_ptr.Value.Delegate(this.NativeHandle,GCHandle.ToIntPtr(func_handle), EFlThreadIOCallSyncWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public  System.IntPtr Indata {
+      get { return GetIndata(); }
+      set { SetIndata( value); }
+   }
+   /// <summary></summary>
+/// <value>No description supplied.</value>
+   public  System.IntPtr Outdata {
+      get { return GetOutdata(); }
+      set { SetOutdata( value); }
+   }
+}
+public class ThreadIONativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_threadio_indata_get_static_delegate == null)
+      efl_threadio_indata_get_static_delegate = new efl_threadio_indata_get_delegate(indata_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_indata_get"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_indata_get_static_delegate)});
+      if (efl_threadio_indata_set_static_delegate == null)
+      efl_threadio_indata_set_static_delegate = new efl_threadio_indata_set_delegate(indata_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_indata_set"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_indata_set_static_delegate)});
+      if (efl_threadio_outdata_get_static_delegate == null)
+      efl_threadio_outdata_get_static_delegate = new efl_threadio_outdata_get_delegate(outdata_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_outdata_get"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_outdata_get_static_delegate)});
+      if (efl_threadio_outdata_set_static_delegate == null)
+      efl_threadio_outdata_set_static_delegate = new efl_threadio_outdata_set_delegate(outdata_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_outdata_set"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_outdata_set_static_delegate)});
+      if (efl_threadio_call_static_delegate == null)
+      efl_threadio_call_static_delegate = new efl_threadio_call_delegate(call);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_call"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_call_static_delegate)});
+      if (efl_threadio_call_sync_static_delegate == null)
+      efl_threadio_call_sync_static_delegate = new efl_threadio_call_sync_delegate(call_sync);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_threadio_call_sync"), func = Marshal.GetFunctionPointerForDelegate(efl_threadio_call_sync_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ThreadIOConcrete.efl_threadio_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.ThreadIOConcrete.efl_threadio_mixin_get();
+   }
+
+
+    private delegate  System.IntPtr efl_threadio_indata_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_threadio_indata_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_indata_get_api_delegate> efl_threadio_indata_get_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_indata_get_api_delegate>(_Module, "efl_threadio_indata_get");
+    private static  System.IntPtr indata_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_threadio_indata_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((ThreadIOConcrete)wrapper).GetIndata();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_threadio_indata_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_threadio_indata_get_delegate efl_threadio_indata_get_static_delegate;
+
+
+    private delegate  void efl_threadio_indata_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data);
+
+
+    public delegate  void efl_threadio_indata_set_api_delegate(System.IntPtr obj,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_indata_set_api_delegate> efl_threadio_indata_set_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_indata_set_api_delegate>(_Module, "efl_threadio_indata_set");
+    private static  void indata_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_threadio_indata_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ThreadIOConcrete)wrapper).SetIndata( data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_indata_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data);
+      }
+   }
+   private static efl_threadio_indata_set_delegate efl_threadio_indata_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_threadio_outdata_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_threadio_outdata_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_outdata_get_api_delegate> efl_threadio_outdata_get_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_outdata_get_api_delegate>(_Module, "efl_threadio_outdata_get");
+    private static  System.IntPtr outdata_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_threadio_outdata_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((ThreadIOConcrete)wrapper).GetOutdata();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_threadio_outdata_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_threadio_outdata_get_delegate efl_threadio_outdata_get_static_delegate;
+
+
+    private delegate  void efl_threadio_outdata_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data);
+
+
+    public delegate  void efl_threadio_outdata_set_api_delegate(System.IntPtr obj,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_outdata_set_api_delegate> efl_threadio_outdata_set_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_outdata_set_api_delegate>(_Module, "efl_threadio_outdata_set");
+    private static  void outdata_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_threadio_outdata_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ThreadIOConcrete)wrapper).SetOutdata( data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_outdata_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data);
+      }
+   }
+   private static efl_threadio_outdata_set_delegate efl_threadio_outdata_set_static_delegate;
+
+
+    private delegate  void efl_threadio_call_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_threadio_call_api_delegate(System.IntPtr obj,  IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_call_api_delegate> efl_threadio_call_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_call_api_delegate>(_Module, "efl_threadio_call");
+    private static  void call(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, EFlThreadIOCallInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_threadio_call was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              EFlThreadIOCallWrapper func_wrapper = new EFlThreadIOCallWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((ThreadIOConcrete)wrapper).Call( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_threadio_call_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_threadio_call_delegate efl_threadio_call_static_delegate;
+
+
+    private delegate  System.IntPtr efl_threadio_call_sync_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  System.IntPtr efl_threadio_call_sync_api_delegate(System.IntPtr obj,  IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_threadio_call_sync_api_delegate> efl_threadio_call_sync_ptr = new Efl.Eo.FunctionWrapper<efl_threadio_call_sync_api_delegate>(_Module, "efl_threadio_call_sync");
+    private static  System.IntPtr call_sync(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, EFlThreadIOCallSyncInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_threadio_call_sync was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              EFlThreadIOCallSyncWrapper func_wrapper = new EFlThreadIOCallSyncWrapper(func, func_data, func_free_cb);
+          System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((ThreadIOConcrete)wrapper).CallSync( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_threadio_call_sync_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_threadio_call_sync_delegate efl_threadio_call_sync_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_types.eot.cs
new file mode 100755 (executable)
index 0000000..fe0c7dc
--- /dev/null
@@ -0,0 +1,231 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { 
+/// <summary>This type is a alias for struct tm. It is intended to be a standard way to reference it in .eo files.
+/// 1.18</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Time
+{
+   /// <summary>Seconds.       [0-60] (1 leap second)</summary>
+   public  int Tm_sec;
+   /// <summary>Minutes.       [0-59]</summary>
+   public  int Tm_min;
+   /// <summary>Hours. [0-23]</summary>
+   public  int Tm_hour;
+   /// <summary>Day.           [1-31]</summary>
+   public  int Tm_mday;
+   /// <summary>Month. [0-11]</summary>
+   public  int Tm_mon;
+   /// <summary>Year   - 1900.</summary>
+   public  int Tm_year;
+   /// <summary>Day of week.   [0-6]</summary>
+   public  int Tm_wday;
+   /// <summary>Days in year.[0-365]</summary>
+   public  int Tm_yday;
+   /// <summary>DST. [-1/0/1]</summary>
+   public  int Tm_isdst;
+   ///<summary>Constructor for Time.</summary>
+   public Time(
+       int Tm_sec=default( int),
+       int Tm_min=default( int),
+       int Tm_hour=default( int),
+       int Tm_mday=default( int),
+       int Tm_mon=default( int),
+       int Tm_year=default( int),
+       int Tm_wday=default( int),
+       int Tm_yday=default( int),
+       int Tm_isdst=default( int)   )
+   {
+      this.Tm_sec = Tm_sec;
+      this.Tm_min = Tm_min;
+      this.Tm_hour = Tm_hour;
+      this.Tm_mday = Tm_mday;
+      this.Tm_mon = Tm_mon;
+      this.Tm_year = Tm_year;
+      this.Tm_wday = Tm_wday;
+      this.Tm_yday = Tm_yday;
+      this.Tm_isdst = Tm_isdst;
+   }
+public static implicit operator Time(IntPtr ptr)
+   {
+      var tmp = (Time_StructInternal)Marshal.PtrToStructure(ptr, typeof(Time_StructInternal));
+      return Time_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Time.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Time_StructInternal
+{
+   
+   public  int Tm_sec;
+   
+   public  int Tm_min;
+   
+   public  int Tm_hour;
+   
+   public  int Tm_mday;
+   
+   public  int Tm_mon;
+   
+   public  int Tm_year;
+   
+   public  int Tm_wday;
+   
+   public  int Tm_yday;
+   
+   public  int Tm_isdst;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Time(Time_StructInternal struct_)
+   {
+      return Time_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Time_StructInternal(Time struct_)
+   {
+      return Time_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Time</summary>
+public static class Time_StructConversion
+{
+   internal static Time_StructInternal ToInternal(Time _external_struct)
+   {
+      var _internal_struct = new Time_StructInternal();
+
+      _internal_struct.Tm_sec = _external_struct.Tm_sec;
+      _internal_struct.Tm_min = _external_struct.Tm_min;
+      _internal_struct.Tm_hour = _external_struct.Tm_hour;
+      _internal_struct.Tm_mday = _external_struct.Tm_mday;
+      _internal_struct.Tm_mon = _external_struct.Tm_mon;
+      _internal_struct.Tm_year = _external_struct.Tm_year;
+      _internal_struct.Tm_wday = _external_struct.Tm_wday;
+      _internal_struct.Tm_yday = _external_struct.Tm_yday;
+      _internal_struct.Tm_isdst = _external_struct.Tm_isdst;
+
+      return _internal_struct;
+   }
+
+   internal static Time ToManaged(Time_StructInternal _internal_struct)
+   {
+      var _external_struct = new Time();
+
+      _external_struct.Tm_sec = _internal_struct.Tm_sec;
+      _external_struct.Tm_min = _internal_struct.Tm_min;
+      _external_struct.Tm_hour = _internal_struct.Tm_hour;
+      _external_struct.Tm_mday = _internal_struct.Tm_mday;
+      _external_struct.Tm_mon = _internal_struct.Tm_mon;
+      _external_struct.Tm_year = _internal_struct.Tm_year;
+      _external_struct.Tm_wday = _internal_struct.Tm_wday;
+      _external_struct.Tm_yday = _internal_struct.Tm_yday;
+      _external_struct.Tm_isdst = _internal_struct.Tm_isdst;
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Efl { 
+/// <summary>This type describes the version of EFL with an optional variant.
+/// This may be used to query the current running version of EFL. Or it can be passed by applications at startup time to inform EFL of the version a certain application was built for.
+/// 1.18</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Version
+{
+   /// <summary>Major component of the version (&gt;= 1).</summary>
+   public  int Major;
+   /// <summary>Minor component of the version (&gt;= 0).</summary>
+   public  int Minor;
+   /// <summary>Micro component of the version (&gt;= 0).</summary>
+   public  int Micro;
+   /// <summary>Revision component of the version (&gt;= 0).</summary>
+   public  int Revision;
+   /// <summary>Special version string for this build of EFL, <c>null</c> for vanilla (upstream) EFL. Contains <c>EFL_VERSION_FLAVOR</c>.</summary>
+   public  System.String Flavor;
+   /// <summary>Contains <c>EFL_BUILD_ID</c>.</summary>
+   public  System.String Build_id;
+   ///<summary>Constructor for Version.</summary>
+   public Version(
+       int Major=default( int),
+       int Minor=default( int),
+       int Micro=default( int),
+       int Revision=default( int),
+       System.String Flavor=default( System.String),
+       System.String Build_id=default( System.String)   )
+   {
+      this.Major = Major;
+      this.Minor = Minor;
+      this.Micro = Micro;
+      this.Revision = Revision;
+      this.Flavor = Flavor;
+      this.Build_id = Build_id;
+   }
+public static implicit operator Version(IntPtr ptr)
+   {
+      var tmp = (Version_StructInternal)Marshal.PtrToStructure(ptr, typeof(Version_StructInternal));
+      return Version_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Version.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Version_StructInternal
+{
+   
+   public  int Major;
+   
+   public  int Minor;
+   
+   public  int Micro;
+   
+   public  int Revision;
+///<summary>Internal wrapper for field Flavor</summary>
+public System.IntPtr Flavor;
+///<summary>Internal wrapper for field Build_id</summary>
+public System.IntPtr Build_id;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Version(Version_StructInternal struct_)
+   {
+      return Version_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Version_StructInternal(Version struct_)
+   {
+      return Version_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Version</summary>
+public static class Version_StructConversion
+{
+   internal static Version_StructInternal ToInternal(Version _external_struct)
+   {
+      var _internal_struct = new Version_StructInternal();
+
+      _internal_struct.Major = _external_struct.Major;
+      _internal_struct.Minor = _external_struct.Minor;
+      _internal_struct.Micro = _external_struct.Micro;
+      _internal_struct.Revision = _external_struct.Revision;
+      _internal_struct.Flavor = Eina.MemoryNative.StrDup(_external_struct.Flavor);
+      _internal_struct.Build_id = Eina.MemoryNative.StrDup(_external_struct.Build_id);
+
+      return _internal_struct;
+   }
+
+   internal static Version ToManaged(Version_StructInternal _internal_struct)
+   {
+      var _external_struct = new Version();
+
+      _external_struct.Major = _internal_struct.Major;
+      _external_struct.Minor = _internal_struct.Minor;
+      _external_struct.Micro = _internal_struct.Micro;
+      _external_struct.Revision = _internal_struct.Revision;
+      _external_struct.Flavor = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Flavor);
+      _external_struct.Build_id = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Build_id);
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui.eot.cs b/internals/src/EflSharp/EflSharp/efl_ui.eot.cs
new file mode 100755 (executable)
index 0000000..29e54a2
--- /dev/null
@@ -0,0 +1,121 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Return error code when setting the style on a widget.</summary>
+public enum ThemeApplyResult
+{
+/// <summary>Failed to apply theme. The widget may become unusable.</summary>
+Fail = 0,
+/// <summary>Successfully applied the default style. The widget may look different from the rest of the UI if a custom theme is in use, but it should be usable.</summary>
+Default = 1,
+/// <summary>Successfully applied the requested style from the current theme.</summary>
+Success = 3,
+}
+} } 
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Focus directions.</summary>
+public enum Direction
+{
+/// <summary>previous direction</summary>
+Previous = 0,
+/// <summary>next direction</summary>
+Next = 1,
+/// <summary>up direction</summary>
+Up = 2,
+/// <summary>down direction</summary>
+Down = 3,
+/// <summary>right direction</summary>
+Right = 4,
+/// <summary>left direction</summary>
+Left = 5,
+/// <summary>last direction</summary>
+Last = 6,
+}
+} } } 
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Focus Movement Policy.
+/// 1.10</summary>
+public enum MovePolicy
+{
+/// <summary>Move focus by mouse click or touch. Elementary focus is set on mouse click and this is checked at mouse up time. (default)</summary>
+Click = 0,
+/// <summary>Move focus by mouse in. Elementary focus is set on mouse move when the mouse pointer is moved into an object.</summary>
+In = 1,
+/// <summary>Move focus by key. Elementary focus is set on key input like Left, Right, Up, Down, Tab, or Shift+Tab.</summary>
+KeyOnly = 2,
+}
+} } } 
+namespace Efl { namespace Ui { 
+/// <summary>Slider&apos;s indicator visibility mode.
+/// 1.13</summary>
+public enum SliderIndicatorVisibleMode
+{
+/// <summary>show indicator on mouse down or change in slider value</summary>
+OnDrag = 0,
+/// <summary>Always show the indicator.</summary>
+Always = 1,
+/// <summary>Show the indicator on focus</summary>
+OnFocus = 2,
+/// <summary>Never show the indicator</summary>
+None = 3,
+}
+} } 
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Focus Autoscroll Mode
+/// 1.10</summary>
+public enum AutoscrollMode
+{
+/// <summary>Directly show the focused region or item automatically.</summary>
+Show = 0,
+/// <summary>Do not show the focused region or item automatically.</summary>
+None = 1,
+/// <summary>Bring in the focused region or item automatically which might invole the scrolling.</summary>
+BringIn = 2,
+}
+} } } 
+namespace Efl { namespace Ui { 
+/// <summary>Software cursor mode.
+/// 1.7</summary>
+public enum SoftcursorMode
+{
+/// <summary>Auto-detect if a software cursor should be used (default).</summary>
+Auto = 0,
+/// <summary>Always use a softcursor.</summary>
+On = 1,
+/// <summary>Never use a softcursor.</summary>
+Off = 2,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Accessibility</summary>
+public enum Activate
+{
+/// <summary>Activate default</summary>
+Default = 0,
+/// <summary>Activate up</summary>
+Up = 1,
+/// <summary>Activate down</summary>
+Down = 2,
+/// <summary>Activate right</summary>
+Right = 3,
+/// <summary>Activate left</summary>
+Left = 4,
+/// <summary>Activate back</summary>
+Back = 5,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Widget orientation mode, or how the theme handles screen orientation.
+/// Note: Support for this feature is highly dependent on the theme in use. At the time of writing, the default theme for EFL does not implement support for orientation modes.</summary>
+public enum WidgetOrientationMode
+{
+/// <summary>Default or automatic mode: if the widget&apos;s theme supports orientation, it will be handled automatically.</summary>
+Default = 0,
+/// <summary>No signal is sent to the widget&apos;s theme. Widget&apos;s theme will not change according to the window or screen orientation.</summary>
+Disabled = 1,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_alert_popup.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_alert_popup.eo.cs
new file mode 100755 (executable)
index 0000000..651fbbc
--- /dev/null
@@ -0,0 +1,252 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.AlertPopup.ButtonClickedEvt"/>.</summary>
+public class AlertPopupButtonClickedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.AlertPopupButtonClickedEvent arg { get; set; }
+}
+/// <summary>EFL UI Alert Popup class</summary>
+[AlertPopupNativeInherit]
+public class AlertPopup : Efl.Ui.Popup, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.AlertPopupNativeInherit nativeInherit = new Efl.Ui.AlertPopupNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AlertPopup))
+            return Efl.Ui.AlertPopupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_alert_popup_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public AlertPopup(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_alert_popup_class_get(), typeof(AlertPopup), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AlertPopup(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AlertPopup(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AlertPopup static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AlertPopup(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ButtonClickedEvtKey = new object();
+   /// <summary>Called when alert popup was clicked</summary>
+   public event EventHandler<Efl.Ui.AlertPopupButtonClickedEvt_Args> ButtonClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_ALERT_POPUP_EVENT_BUTTON_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ButtonClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ButtonClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_ALERT_POPUP_EVENT_BUTTON_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ButtonClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ButtonClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ButtonClickedEvt.</summary>
+   public void On_ButtonClickedEvt(Efl.Ui.AlertPopupButtonClickedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.AlertPopupButtonClickedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.AlertPopupButtonClickedEvt_Args>)eventHandlers[ButtonClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ButtonClickedEvt_delegate;
+   private void on_ButtonClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.AlertPopupButtonClickedEvt_Args args = new Efl.Ui.AlertPopupButtonClickedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ButtonClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ButtonClickedEvt_delegate = new Efl.EventCb(on_ButtonClickedEvt_NativeCallback);
+   }
+   /// <summary>Set popup buttons.</summary>
+   /// <param name="type">Alert popup button type</param>
+   /// <param name="text">Alert string on button</param>
+   /// <param name="icon">Alert icon on button</param>
+   /// <returns></returns>
+   virtual public  void SetButton( Efl.Ui.AlertPopupButton type,   System.String text,  Efl.Object icon) {
+                                                             Efl.Ui.AlertPopupNativeInherit.efl_ui_alert_popup_button_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  text,  icon);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.AlertPopup.efl_ui_alert_popup_class_get();
+   }
+}
+public class AlertPopupNativeInherit : Efl.Ui.PopupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_alert_popup_button_set_static_delegate == null)
+      efl_ui_alert_popup_button_set_static_delegate = new efl_ui_alert_popup_button_set_delegate(button_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_alert_popup_button_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_alert_popup_button_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.AlertPopup.efl_ui_alert_popup_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.AlertPopup.efl_ui_alert_popup_class_get();
+   }
+
+
+    private delegate  void efl_ui_alert_popup_button_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.AlertPopupButton type,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object icon);
+
+
+    public delegate  void efl_ui_alert_popup_button_set_api_delegate(System.IntPtr obj,   Efl.Ui.AlertPopupButton type,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object icon);
+    public static Efl.Eo.FunctionWrapper<efl_ui_alert_popup_button_set_api_delegate> efl_ui_alert_popup_button_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_alert_popup_button_set_api_delegate>(_Module, "efl_ui_alert_popup_button_set");
+    private static  void button_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.AlertPopupButton type,   System.String text,  Efl.Object icon)
+   {
+      Eina.Log.Debug("function efl_ui_alert_popup_button_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((AlertPopup)wrapper).SetButton( type,  text,  icon);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_alert_popup_button_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  text,  icon);
+      }
+   }
+   private static efl_ui_alert_popup_button_set_delegate efl_ui_alert_popup_button_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Defines the type of the alert button.</summary>
+public enum AlertPopupButton
+{
+/// <summary>Button having positive meaning. e.g. &quot;Yes&quot;</summary>
+Positive = 0,
+/// <summary>Button having negative meaning. e.g. &quot;No&quot;</summary>
+Negative = 1,
+/// <summary>Button having user-defined meaning. e.g. &quot;Cancel&quot;</summary>
+User = 2,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Information of clicked event</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct AlertPopupButtonClickedEvent
+{
+   /// <summary>Clicked button type</summary>
+   public Efl.Ui.AlertPopupButton Button_type;
+   ///<summary>Constructor for AlertPopupButtonClickedEvent.</summary>
+   public AlertPopupButtonClickedEvent(
+      Efl.Ui.AlertPopupButton Button_type=default(Efl.Ui.AlertPopupButton)   )
+   {
+      this.Button_type = Button_type;
+   }
+public static implicit operator AlertPopupButtonClickedEvent(IntPtr ptr)
+   {
+      var tmp = (AlertPopupButtonClickedEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(AlertPopupButtonClickedEvent_StructInternal));
+      return AlertPopupButtonClickedEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct AlertPopupButtonClickedEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct AlertPopupButtonClickedEvent_StructInternal
+{
+   
+   public Efl.Ui.AlertPopupButton Button_type;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator AlertPopupButtonClickedEvent(AlertPopupButtonClickedEvent_StructInternal struct_)
+   {
+      return AlertPopupButtonClickedEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator AlertPopupButtonClickedEvent_StructInternal(AlertPopupButtonClickedEvent struct_)
+   {
+      return AlertPopupButtonClickedEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct AlertPopupButtonClickedEvent</summary>
+public static class AlertPopupButtonClickedEvent_StructConversion
+{
+   internal static AlertPopupButtonClickedEvent_StructInternal ToInternal(AlertPopupButtonClickedEvent _external_struct)
+   {
+      var _internal_struct = new AlertPopupButtonClickedEvent_StructInternal();
+
+      _internal_struct.Button_type = _external_struct.Button_type;
+
+      return _internal_struct;
+   }
+
+   internal static AlertPopupButtonClickedEvent ToManaged(AlertPopupButtonClickedEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new AlertPopupButtonClickedEvent();
+
+      _external_struct.Button_type = _internal_struct.Button_type;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_alert_popup_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_alert_popup_part.eo.cs
new file mode 100755 (executable)
index 0000000..772b94a
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Alert Popup internal part class</summary>
+[AlertPopupPartNativeInherit]
+public class AlertPopupPart : Efl.Ui.LayoutPartText, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.AlertPopupPartNativeInherit nativeInherit = new Efl.Ui.AlertPopupPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AlertPopupPart))
+            return Efl.Ui.AlertPopupPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_alert_popup_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public AlertPopupPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_alert_popup_part_class_get(), typeof(AlertPopupPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AlertPopupPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AlertPopupPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AlertPopupPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AlertPopupPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.AlertPopupPart.efl_ui_alert_popup_part_class_get();
+   }
+}
+public class AlertPopupPartNativeInherit : Efl.Ui.LayoutPartTextNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.AlertPopupPart.efl_ui_alert_popup_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.AlertPopupPart.efl_ui_alert_popup_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_anchor_popup.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_anchor_popup.eo.cs
new file mode 100755 (executable)
index 0000000..a6cb028
--- /dev/null
@@ -0,0 +1,245 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>EFL UI Anchor Popup class</summary>
+[AnchorPopupNativeInherit]
+public class AnchorPopup : Efl.Ui.Popup, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.AnchorPopupNativeInherit nativeInherit = new Efl.Ui.AnchorPopupNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AnchorPopup))
+            return Efl.Ui.AnchorPopupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_anchor_popup_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public AnchorPopup(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_anchor_popup_class_get(), typeof(AnchorPopup), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AnchorPopup(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected AnchorPopup(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static AnchorPopup static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AnchorPopup(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Returns the anchor object which the popup is following.</summary>
+   /// <returns>The object which popup is following.</returns>
+   virtual public Efl.Canvas.Object GetAnchor() {
+       var _ret_var = Efl.Ui.AnchorPopupNativeInherit.efl_ui_anchor_popup_anchor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set anchor popup to follow an anchor object. If anchor object is moved or parent window is resized, the anchor popup moves to the new position. If anchor object is set to NULL, the anchor popup stops following the anchor object. When the popup is moved by using gfx_position_set, anchor is set NULL.</summary>
+   /// <param name="anchor">The object which popup is following.</param>
+   /// <returns></returns>
+   virtual public  void SetAnchor( Efl.Canvas.Object anchor) {
+                         Efl.Ui.AnchorPopupNativeInherit.efl_ui_anchor_popup_anchor_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), anchor);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the align priority of a popup.</summary>
+   /// <param name="first">First align priority</param>
+   /// <param name="second">Second align priority</param>
+   /// <param name="third">Third align priority</param>
+   /// <param name="fourth">Fourth align priority</param>
+   /// <param name="fifth">Fifth align priority</param>
+   /// <returns></returns>
+   virtual public  void GetAlignPriority( out Efl.Ui.PopupAlign first,  out Efl.Ui.PopupAlign second,  out Efl.Ui.PopupAlign third,  out Efl.Ui.PopupAlign fourth,  out Efl.Ui.PopupAlign fifth) {
+                                                                                                 Efl.Ui.AnchorPopupNativeInherit.efl_ui_anchor_popup_align_priority_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out first,  out second,  out third,  out fourth,  out fifth);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Set the align priority of a popup.</summary>
+   /// <param name="first">First align priority</param>
+   /// <param name="second">Second align priority</param>
+   /// <param name="third">Third align priority</param>
+   /// <param name="fourth">Fourth align priority</param>
+   /// <param name="fifth">Fifth align priority</param>
+   /// <returns></returns>
+   virtual public  void SetAlignPriority( Efl.Ui.PopupAlign first,  Efl.Ui.PopupAlign second,  Efl.Ui.PopupAlign third,  Efl.Ui.PopupAlign fourth,  Efl.Ui.PopupAlign fifth) {
+                                                                                                 Efl.Ui.AnchorPopupNativeInherit.efl_ui_anchor_popup_align_priority_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), first,  second,  third,  fourth,  fifth);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Returns the anchor object which the popup is following.</summary>
+/// <value>The object which popup is following.</value>
+   public Efl.Canvas.Object Anchor {
+      get { return GetAnchor(); }
+      set { SetAnchor( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.AnchorPopup.efl_ui_anchor_popup_class_get();
+   }
+}
+public class AnchorPopupNativeInherit : Efl.Ui.PopupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_anchor_popup_anchor_get_static_delegate == null)
+      efl_ui_anchor_popup_anchor_get_static_delegate = new efl_ui_anchor_popup_anchor_get_delegate(anchor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_anchor_popup_anchor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_anchor_popup_anchor_get_static_delegate)});
+      if (efl_ui_anchor_popup_anchor_set_static_delegate == null)
+      efl_ui_anchor_popup_anchor_set_static_delegate = new efl_ui_anchor_popup_anchor_set_delegate(anchor_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_anchor_popup_anchor_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_anchor_popup_anchor_set_static_delegate)});
+      if (efl_ui_anchor_popup_align_priority_get_static_delegate == null)
+      efl_ui_anchor_popup_align_priority_get_static_delegate = new efl_ui_anchor_popup_align_priority_get_delegate(align_priority_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_anchor_popup_align_priority_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_anchor_popup_align_priority_get_static_delegate)});
+      if (efl_ui_anchor_popup_align_priority_set_static_delegate == null)
+      efl_ui_anchor_popup_align_priority_set_static_delegate = new efl_ui_anchor_popup_align_priority_set_delegate(align_priority_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_anchor_popup_align_priority_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_anchor_popup_align_priority_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.AnchorPopup.efl_ui_anchor_popup_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.AnchorPopup.efl_ui_anchor_popup_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_anchor_popup_anchor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_anchor_popup_anchor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_anchor_get_api_delegate> efl_ui_anchor_popup_anchor_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_anchor_get_api_delegate>(_Module, "efl_ui_anchor_popup_anchor_get");
+    private static Efl.Canvas.Object anchor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_anchor_popup_anchor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((AnchorPopup)wrapper).GetAnchor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_anchor_popup_anchor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_anchor_popup_anchor_get_delegate efl_ui_anchor_popup_anchor_get_static_delegate;
+
+
+    private delegate  void efl_ui_anchor_popup_anchor_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object anchor);
+
+
+    public delegate  void efl_ui_anchor_popup_anchor_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object anchor);
+    public static Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_anchor_set_api_delegate> efl_ui_anchor_popup_anchor_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_anchor_set_api_delegate>(_Module, "efl_ui_anchor_popup_anchor_set");
+    private static  void anchor_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object anchor)
+   {
+      Eina.Log.Debug("function efl_ui_anchor_popup_anchor_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((AnchorPopup)wrapper).SetAnchor( anchor);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_anchor_popup_anchor_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  anchor);
+      }
+   }
+   private static efl_ui_anchor_popup_anchor_set_delegate efl_ui_anchor_popup_anchor_set_static_delegate;
+
+
+    private delegate  void efl_ui_anchor_popup_align_priority_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.PopupAlign first,   out Efl.Ui.PopupAlign second,   out Efl.Ui.PopupAlign third,   out Efl.Ui.PopupAlign fourth,   out Efl.Ui.PopupAlign fifth);
+
+
+    public delegate  void efl_ui_anchor_popup_align_priority_get_api_delegate(System.IntPtr obj,   out Efl.Ui.PopupAlign first,   out Efl.Ui.PopupAlign second,   out Efl.Ui.PopupAlign third,   out Efl.Ui.PopupAlign fourth,   out Efl.Ui.PopupAlign fifth);
+    public static Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_align_priority_get_api_delegate> efl_ui_anchor_popup_align_priority_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_align_priority_get_api_delegate>(_Module, "efl_ui_anchor_popup_align_priority_get");
+    private static  void align_priority_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.PopupAlign first,  out Efl.Ui.PopupAlign second,  out Efl.Ui.PopupAlign third,  out Efl.Ui.PopupAlign fourth,  out Efl.Ui.PopupAlign fifth)
+   {
+      Eina.Log.Debug("function efl_ui_anchor_popup_align_priority_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                             first = default(Efl.Ui.PopupAlign);      second = default(Efl.Ui.PopupAlign);      third = default(Efl.Ui.PopupAlign);      fourth = default(Efl.Ui.PopupAlign);      fifth = default(Efl.Ui.PopupAlign);                                       
+         try {
+            ((AnchorPopup)wrapper).GetAlignPriority( out first,  out second,  out third,  out fourth,  out fifth);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_ui_anchor_popup_align_priority_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out first,  out second,  out third,  out fourth,  out fifth);
+      }
+   }
+   private static efl_ui_anchor_popup_align_priority_get_delegate efl_ui_anchor_popup_align_priority_get_static_delegate;
+
+
+    private delegate  void efl_ui_anchor_popup_align_priority_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.PopupAlign first,   Efl.Ui.PopupAlign second,   Efl.Ui.PopupAlign third,   Efl.Ui.PopupAlign fourth,   Efl.Ui.PopupAlign fifth);
+
+
+    public delegate  void efl_ui_anchor_popup_align_priority_set_api_delegate(System.IntPtr obj,   Efl.Ui.PopupAlign first,   Efl.Ui.PopupAlign second,   Efl.Ui.PopupAlign third,   Efl.Ui.PopupAlign fourth,   Efl.Ui.PopupAlign fifth);
+    public static Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_align_priority_set_api_delegate> efl_ui_anchor_popup_align_priority_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_anchor_popup_align_priority_set_api_delegate>(_Module, "efl_ui_anchor_popup_align_priority_set");
+    private static  void align_priority_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.PopupAlign first,  Efl.Ui.PopupAlign second,  Efl.Ui.PopupAlign third,  Efl.Ui.PopupAlign fourth,  Efl.Ui.PopupAlign fifth)
+   {
+      Eina.Log.Debug("function efl_ui_anchor_popup_align_priority_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((AnchorPopup)wrapper).SetAlignPriority( first,  second,  third,  fourth,  fifth);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_ui_anchor_popup_align_priority_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  first,  second,  third,  fourth,  fifth);
+      }
+   }
+   private static efl_ui_anchor_popup_align_priority_set_delegate efl_ui_anchor_popup_align_priority_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_autorepeat.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_autorepeat.eo.cs
new file mode 100755 (executable)
index 0000000..b4a64fb
--- /dev/null
@@ -0,0 +1,472 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI autorepeat interface</summary>
+[AutorepeatNativeInherit]
+public interface Autorepeat : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The initial timeout before the autorepeat event is generated
+/// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <returns>Timeout in seconds</returns>
+double GetAutorepeatInitialTimeout();
+   /// <summary>The initial timeout before the autorepeat event is generated
+/// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <param name="t">Timeout in seconds</param>
+/// <returns></returns>
+ void SetAutorepeatInitialTimeout( double t);
+   /// <summary>The interval between each generated autorepeat event
+/// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+/// <returns>Interval in seconds</returns>
+double GetAutorepeatGapTimeout();
+   /// <summary>The interval between each generated autorepeat event
+/// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+/// <param name="t">Interval in seconds</param>
+/// <returns></returns>
+ void SetAutorepeatGapTimeout( double t);
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+/// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+/// 
+/// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <returns>A bool to turn on/off the event</returns>
+bool GetAutorepeatEnabled();
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+/// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+/// 
+/// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <param name="on">A bool to turn on/off the event</param>
+/// <returns></returns>
+ void SetAutorepeatEnabled( bool on);
+   /// <summary>Whether the button supports autorepeat.</summary>
+/// <returns><c>true</c> if autorepeat is supported, <c>false</c> otherwise</returns>
+bool GetAutorepeatSupported();
+                        /// <summary>The initial timeout before the autorepeat event is generated
+/// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <value>Timeout in seconds</value>
+   double AutorepeatInitialTimeout {
+      get ;
+      set ;
+   }
+   /// <summary>The interval between each generated autorepeat event
+/// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+/// <value>Interval in seconds</value>
+   double AutorepeatGapTimeout {
+      get ;
+      set ;
+   }
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+/// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+/// 
+/// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <value>A bool to turn on/off the event</value>
+   bool AutorepeatEnabled {
+      get ;
+      set ;
+   }
+   /// <summary>Whether the button supports autorepeat.</summary>
+/// <value><c>true</c> if autorepeat is supported, <c>false</c> otherwise</value>
+   bool AutorepeatSupported {
+      get ;
+   }
+}
+/// <summary>Efl UI autorepeat interface</summary>
+sealed public class AutorepeatConcrete : 
+
+Autorepeat
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (AutorepeatConcrete))
+            return Efl.Ui.AutorepeatNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_autorepeat_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public AutorepeatConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~AutorepeatConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static AutorepeatConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new AutorepeatConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The initial timeout before the autorepeat event is generated
+   /// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <returns>Timeout in seconds</returns>
+   public double GetAutorepeatInitialTimeout() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_initial_timeout_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The initial timeout before the autorepeat event is generated
+   /// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <param name="t">Timeout in seconds</param>
+   /// <returns></returns>
+   public  void SetAutorepeatInitialTimeout( double t) {
+                         Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_initial_timeout_set_ptr.Value.Delegate(this.NativeHandle, t);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The interval between each generated autorepeat event
+   /// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+   /// <returns>Interval in seconds</returns>
+   public double GetAutorepeatGapTimeout() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_gap_timeout_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The interval between each generated autorepeat event
+   /// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+   /// <param name="t">Interval in seconds</param>
+   /// <returns></returns>
+   public  void SetAutorepeatGapTimeout( double t) {
+                         Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_gap_timeout_set_ptr.Value.Delegate(this.NativeHandle, t);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+   /// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+   /// 
+   /// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <returns>A bool to turn on/off the event</returns>
+   public bool GetAutorepeatEnabled() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_enabled_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+   /// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+   /// 
+   /// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <param name="on">A bool to turn on/off the event</param>
+   /// <returns></returns>
+   public  void SetAutorepeatEnabled( bool on) {
+                         Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_enabled_set_ptr.Value.Delegate(this.NativeHandle, on);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether the button supports autorepeat.</summary>
+   /// <returns><c>true</c> if autorepeat is supported, <c>false</c> otherwise</returns>
+   public bool GetAutorepeatSupported() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_supported_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The initial timeout before the autorepeat event is generated
+/// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <value>Timeout in seconds</value>
+   public double AutorepeatInitialTimeout {
+      get { return GetAutorepeatInitialTimeout(); }
+      set { SetAutorepeatInitialTimeout( value); }
+   }
+   /// <summary>The interval between each generated autorepeat event
+/// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+/// <value>Interval in seconds</value>
+   public double AutorepeatGapTimeout {
+      get { return GetAutorepeatGapTimeout(); }
+      set { SetAutorepeatGapTimeout( value); }
+   }
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+/// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+/// 
+/// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <value>A bool to turn on/off the event</value>
+   public bool AutorepeatEnabled {
+      get { return GetAutorepeatEnabled(); }
+      set { SetAutorepeatEnabled( value); }
+   }
+   /// <summary>Whether the button supports autorepeat.</summary>
+/// <value><c>true</c> if autorepeat is supported, <c>false</c> otherwise</value>
+   public bool AutorepeatSupported {
+      get { return GetAutorepeatSupported(); }
+   }
+}
+public class AutorepeatNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_autorepeat_initial_timeout_get_static_delegate == null)
+      efl_ui_autorepeat_initial_timeout_get_static_delegate = new efl_ui_autorepeat_initial_timeout_get_delegate(autorepeat_initial_timeout_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_initial_timeout_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_initial_timeout_get_static_delegate)});
+      if (efl_ui_autorepeat_initial_timeout_set_static_delegate == null)
+      efl_ui_autorepeat_initial_timeout_set_static_delegate = new efl_ui_autorepeat_initial_timeout_set_delegate(autorepeat_initial_timeout_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_initial_timeout_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_initial_timeout_set_static_delegate)});
+      if (efl_ui_autorepeat_gap_timeout_get_static_delegate == null)
+      efl_ui_autorepeat_gap_timeout_get_static_delegate = new efl_ui_autorepeat_gap_timeout_get_delegate(autorepeat_gap_timeout_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_gap_timeout_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_gap_timeout_get_static_delegate)});
+      if (efl_ui_autorepeat_gap_timeout_set_static_delegate == null)
+      efl_ui_autorepeat_gap_timeout_set_static_delegate = new efl_ui_autorepeat_gap_timeout_set_delegate(autorepeat_gap_timeout_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_gap_timeout_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_gap_timeout_set_static_delegate)});
+      if (efl_ui_autorepeat_enabled_get_static_delegate == null)
+      efl_ui_autorepeat_enabled_get_static_delegate = new efl_ui_autorepeat_enabled_get_delegate(autorepeat_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_enabled_get_static_delegate)});
+      if (efl_ui_autorepeat_enabled_set_static_delegate == null)
+      efl_ui_autorepeat_enabled_set_static_delegate = new efl_ui_autorepeat_enabled_set_delegate(autorepeat_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_enabled_set_static_delegate)});
+      if (efl_ui_autorepeat_supported_get_static_delegate == null)
+      efl_ui_autorepeat_supported_get_static_delegate = new efl_ui_autorepeat_supported_get_delegate(autorepeat_supported_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_supported_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_supported_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.AutorepeatConcrete.efl_ui_autorepeat_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.AutorepeatConcrete.efl_ui_autorepeat_interface_get();
+   }
+
+
+    private delegate double efl_ui_autorepeat_initial_timeout_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_autorepeat_initial_timeout_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_get_api_delegate> efl_ui_autorepeat_initial_timeout_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_get_api_delegate>(_Module, "efl_ui_autorepeat_initial_timeout_get");
+    private static double autorepeat_initial_timeout_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_initial_timeout_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Autorepeat)wrapper).GetAutorepeatInitialTimeout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_initial_timeout_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_initial_timeout_get_delegate efl_ui_autorepeat_initial_timeout_get_static_delegate;
+
+
+    private delegate  void efl_ui_autorepeat_initial_timeout_set_delegate(System.IntPtr obj, System.IntPtr pd,   double t);
+
+
+    public delegate  void efl_ui_autorepeat_initial_timeout_set_api_delegate(System.IntPtr obj,   double t);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_set_api_delegate> efl_ui_autorepeat_initial_timeout_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_set_api_delegate>(_Module, "efl_ui_autorepeat_initial_timeout_set");
+    private static  void autorepeat_initial_timeout_set(System.IntPtr obj, System.IntPtr pd,  double t)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_initial_timeout_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Autorepeat)wrapper).SetAutorepeatInitialTimeout( t);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_autorepeat_initial_timeout_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  t);
+      }
+   }
+   private static efl_ui_autorepeat_initial_timeout_set_delegate efl_ui_autorepeat_initial_timeout_set_static_delegate;
+
+
+    private delegate double efl_ui_autorepeat_gap_timeout_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_autorepeat_gap_timeout_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_get_api_delegate> efl_ui_autorepeat_gap_timeout_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_get_api_delegate>(_Module, "efl_ui_autorepeat_gap_timeout_get");
+    private static double autorepeat_gap_timeout_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_gap_timeout_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Autorepeat)wrapper).GetAutorepeatGapTimeout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_gap_timeout_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_gap_timeout_get_delegate efl_ui_autorepeat_gap_timeout_get_static_delegate;
+
+
+    private delegate  void efl_ui_autorepeat_gap_timeout_set_delegate(System.IntPtr obj, System.IntPtr pd,   double t);
+
+
+    public delegate  void efl_ui_autorepeat_gap_timeout_set_api_delegate(System.IntPtr obj,   double t);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_set_api_delegate> efl_ui_autorepeat_gap_timeout_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_set_api_delegate>(_Module, "efl_ui_autorepeat_gap_timeout_set");
+    private static  void autorepeat_gap_timeout_set(System.IntPtr obj, System.IntPtr pd,  double t)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_gap_timeout_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Autorepeat)wrapper).SetAutorepeatGapTimeout( t);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_autorepeat_gap_timeout_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  t);
+      }
+   }
+   private static efl_ui_autorepeat_gap_timeout_set_delegate efl_ui_autorepeat_gap_timeout_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_autorepeat_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_autorepeat_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_get_api_delegate> efl_ui_autorepeat_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_get_api_delegate>(_Module, "efl_ui_autorepeat_enabled_get");
+    private static bool autorepeat_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Autorepeat)wrapper).GetAutorepeatEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_enabled_get_delegate efl_ui_autorepeat_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_autorepeat_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool on);
+
+
+    public delegate  void efl_ui_autorepeat_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool on);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_set_api_delegate> efl_ui_autorepeat_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_set_api_delegate>(_Module, "efl_ui_autorepeat_enabled_set");
+    private static  void autorepeat_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool on)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Autorepeat)wrapper).SetAutorepeatEnabled( on);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_autorepeat_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  on);
+      }
+   }
+   private static efl_ui_autorepeat_enabled_set_delegate efl_ui_autorepeat_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_autorepeat_supported_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_autorepeat_supported_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_supported_get_api_delegate> efl_ui_autorepeat_supported_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_supported_get_api_delegate>(_Module, "efl_ui_autorepeat_supported_get");
+    private static bool autorepeat_supported_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_supported_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Autorepeat)wrapper).GetAutorepeatSupported();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_supported_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_supported_get_delegate efl_ui_autorepeat_supported_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_bg.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_bg.eo.cs
new file mode 100755 (executable)
index 0000000..dc00c6a
--- /dev/null
@@ -0,0 +1,1969 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>The bg (background) widget is used for setting (solid) background decorations for a window (unless it has transparency enabled) or for any container object. It works just like an image, but has some properties useful for backgrounds, such as setting it to tiled, centered, scaled or stretched.</summary>
+[BgNativeInherit]
+public class Bg : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.File,Efl.Gfx.Image,Efl.Gfx.ImageLoadController
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.BgNativeInherit nativeInherit = new Efl.Ui.BgNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Bg))
+            return Efl.Ui.BgNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_bg_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Bg(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_bg_class_get(), typeof(Bg), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Bg(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Bg(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Bg static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Bg(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PreloadEvtKey = new object();
+   /// <summary>Image data has been preloaded.</summary>
+   public event EventHandler PreloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PreloadEvt_delegate)) {
+               eventHandlers.AddHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (remove_cpp_event_handler(key, this.evt_PreloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PreloadEvt.</summary>
+   public void On_PreloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PreloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PreloadEvt_delegate;
+   private void on_PreloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PreloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ResizeEvtKey = new object();
+   /// <summary>Image was resized (its pixel data).</summary>
+   public event EventHandler ResizeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ResizeEvt_delegate)) {
+               eventHandlers.AddHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (remove_cpp_event_handler(key, this.evt_ResizeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ResizeEvt.</summary>
+   public void On_ResizeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ResizeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ResizeEvt_delegate;
+   private void on_ResizeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ResizeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnloadEvtKey = new object();
+   /// <summary>Image data has been unloaded (by some mechanism in EFL that threw out the original image data).</summary>
+   public event EventHandler UnloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnloadEvt_delegate)) {
+               eventHandlers.AddHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (remove_cpp_event_handler(key, this.evt_UnloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnloadEvt.</summary>
+   public void On_UnloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnloadEvt_delegate;
+   private void on_UnloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadDoneEvtKey = new object();
+   /// <summary>Called when he image was loaded</summary>
+   public event EventHandler LoadDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadDoneEvt_delegate)) {
+               eventHandlers.AddHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (remove_cpp_event_handler(key, this.evt_LoadDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadDoneEvt.</summary>
+   public void On_LoadDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadDoneEvt_delegate;
+   private void on_LoadDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadErrorEvtKey = new object();
+   /// <summary>Called when an error happened during image loading</summary>
+   public event EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> LoadErrorEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadErrorEvt_delegate)) {
+               eventHandlers.AddHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (remove_cpp_event_handler(key, this.evt_LoadErrorEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadErrorEvt.</summary>
+   public void On_LoadErrorEvt(Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args>)eventHandlers[LoadErrorEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadErrorEvt_delegate;
+   private void on_LoadErrorEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args args = new Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args();
+      args.arg = default(Efl.Gfx.ImageLoadError);
+      try {
+         On_LoadErrorEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PreloadEvt_delegate = new Efl.EventCb(on_PreloadEvt_NativeCallback);
+      evt_ResizeEvt_delegate = new Efl.EventCb(on_ResizeEvt_NativeCallback);
+      evt_UnloadEvt_delegate = new Efl.EventCb(on_UnloadEvt_NativeCallback);
+      evt_LoadDoneEvt_delegate = new Efl.EventCb(on_LoadDoneEvt_NativeCallback);
+      evt_LoadErrorEvt_delegate = new Efl.EventCb(on_LoadErrorEvt_NativeCallback);
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <returns>Whether to use smooth scale or not.</returns>
+   virtual public bool GetSmoothScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <param name="smooth_scale">Whether to use smooth scale or not.</param>
+   /// <returns></returns>
+   virtual public  void SetSmoothScale( bool smooth_scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), smooth_scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <returns>Image scale type</returns>
+   virtual public Efl.Gfx.ImageScaleType GetScaleType() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <param name="scale_type">Image scale type</param>
+   /// <returns></returns>
+   virtual public  void SetScaleType( Efl.Gfx.ImageScaleType scale_type) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale_type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns 1.0 if not applicable (eg. height = 0).</summary>
+   /// <returns>The image&apos;s ratio.</returns>
+   virtual public double GetRatio() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_ratio_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void GetBorder( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void SetBorder(  int l,   int r,   int t,   int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l,  r,  t,  b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <returns>The scale factor.</returns>
+   virtual public double GetBorderScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <param name="scale">The scale factor.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderScale( double scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <returns>Fill mode of the center region.</returns>
+   virtual public Efl.Gfx.BorderFillMode GetBorderCenterFill() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <param name="fill">Fill mode of the center region.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderCenterFill( Efl.Gfx.BorderFillMode fill) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fill);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This represents the size of the original image in pixels.
+   /// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+   /// 
+   /// This is a read-only property, and may return 0x0.
+   /// 1.20</summary>
+   /// <returns>The size in pixels.</returns>
+   virtual public Eina.Size2D GetImageSize() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+   /// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+   /// <returns>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></returns>
+   virtual public Efl.Gfx.ImageContentHint GetContentHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the content hint setting of a given image object of the canvas.
+   /// This function sets the content hint value of the given image of the canvas. For example, if you&apos;re on the GL engine and your driver implementation supports it, setting this hint to #EVAS_IMAGE_CONTENT_HINT_DYNAMIC will make it need zero copies at texture upload time, which is an &quot;expensive&quot; operation.</summary>
+   /// <param name="hint">Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetContentHint( Efl.Gfx.ImageContentHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+   /// This function returns the scale hint value of the given image object of the canvas.</summary>
+   /// <returns>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></returns>
+   virtual public Efl.Gfx.ImageScaleHint GetScaleHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the scale hint of a given image of the canvas.
+   /// This function sets the scale hint value of the given image object in the canvas, which will affect how Evas is to cache scaled versions of its original source image.</summary>
+   /// <param name="hint">Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetScaleHint( Efl.Gfx.ImageScaleHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+   /// <returns>The load error code.</returns>
+   virtual public Efl.Gfx.ImageLoadError GetImageLoadError() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_load_error_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Returns the requested load size.</summary>
+   /// <returns>The image load size.</returns>
+   virtual public Eina.Size2D GetLoadSize() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Requests the canvas to load the image at the given size.
+   /// EFL will try to load an image of the requested size but does not guarantee an exact match between the request and the loaded image dimensions.</summary>
+   /// <param name="size">The image load size.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+   /// This function returns the DPI resolution of the given canvas image.</summary>
+   /// <returns>The DPI resolution.</returns>
+   virtual public double GetLoadDpi() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the DPI resolution of an image object&apos;s source image.
+   /// This function sets the DPI resolution of a given loaded canvas image. Most useful for the SVG image loader.</summary>
+   /// <param name="dpi">The DPI resolution.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadDpi( double dpi) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dpi);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+   /// 1.2</summary>
+   /// <returns><c>true</c> if region load of the image is supported, <c>false</c> otherwise</returns>
+   virtual public bool GetLoadRegionSupport() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+   /// <returns>A region of the image.</returns>
+   virtual public Eina.Rect GetLoadRegion() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Inform a given image object to load a selective region of its source image.
+   /// This function is useful when one is not showing all of an image&apos;s area on its image object.
+   /// 
+   /// Note: The image loader for the image format in question has to support selective region loading in order for this function to work.</summary>
+   /// <param name="region">A region of the image.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadRegion( Eina.Rect region) {
+       var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <returns><c>true</c> means that it should honor the orientation information.</returns>
+   virtual public bool GetLoadOrientation() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <param name="enable"><c>true</c> means that it should honor the orientation information.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadOrientation( bool enable) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The scale down factor is a divider on the original image size.
+   /// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+   /// 
+   /// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+   /// 
+   /// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+   /// <returns>The scale down dividing factor.</returns>
+   virtual public  int GetLoadScaleDown() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Requests the image loader to scale down by <c>div</c> times. Call this before starting the actual image load.</summary>
+   /// <param name="div">The scale down dividing factor.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadScaleDown(  int div) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), div);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+   /// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+   /// <returns>Will be true if header is to be skipped.</returns>
+   virtual public bool GetLoadSkipHeader() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the skip header state for susbsequent loads of a file.</summary>
+   /// <param name="skip">Will be true if header is to be skipped.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadSkipHeader( bool skip) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), skip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Begin preloading an image object&apos;s image data in the background.
+   /// Once the background task is complete the event <c>load</c>,done will be emitted.</summary>
+   /// <returns></returns>
+   virtual public  void LoadAsyncStart() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Cancel preloading an image object&apos;s image data in the background.
+   /// The object should be left in a state where it has no image data. If cancel is called too late, the image will be kept in memory.</summary>
+   /// <returns></returns>
+   virtual public  void LoadAsyncCancel() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <value>Whether to use smooth scale or not.</value>
+   public bool SmoothScale {
+      get { return GetSmoothScale(); }
+      set { SetSmoothScale( value); }
+   }
+   /// <summary>Control how the image is scaled.</summary>
+/// <value>Image scale type</value>
+   public Efl.Gfx.ImageScaleType ScaleType {
+      get { return GetScaleType(); }
+      set { SetScaleType( value); }
+   }
+   /// <summary>The native width/height ratio of the image.</summary>
+/// <value>The image&apos;s ratio.</value>
+   public double Ratio {
+      get { return GetRatio(); }
+   }
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <value>The scale factor.</value>
+   public double BorderScale {
+      get { return GetBorderScale(); }
+      set { SetBorderScale( value); }
+   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <value>Fill mode of the center region.</value>
+   public Efl.Gfx.BorderFillMode BorderCenterFill {
+      get { return GetBorderCenterFill(); }
+      set { SetBorderCenterFill( value); }
+   }
+   /// <summary>This represents the size of the original image in pixels.
+/// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+/// 
+/// This is a read-only property, and may return 0x0.
+/// 1.20</summary>
+/// <value>The size in pixels.</value>
+   public Eina.Size2D ImageSize {
+      get { return GetImageSize(); }
+   }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+/// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+/// <value>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></value>
+   public Efl.Gfx.ImageContentHint ContentHint {
+      get { return GetContentHint(); }
+      set { SetContentHint( value); }
+   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+/// This function returns the scale hint value of the given image object of the canvas.</summary>
+/// <value>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></value>
+   public Efl.Gfx.ImageScaleHint ScaleHint {
+      get { return GetScaleHint(); }
+      set { SetScaleHint( value); }
+   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <value>The load error code.</value>
+   public Efl.Gfx.ImageLoadError ImageLoadError {
+      get { return GetImageLoadError(); }
+   }
+   /// <summary>The load size of an image.
+/// The image will be loaded into memory as if it was the specified size instead of its original size. This can save a lot of memory and is important for scalable types like svg.
+/// 
+/// By default, the load size is not specified, so it is 0x0.</summary>
+/// <value>The image load size.</value>
+   public Eina.Size2D LoadSize {
+      get { return GetLoadSize(); }
+      set { SetLoadSize( value); }
+   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+/// This function returns the DPI resolution of the given canvas image.</summary>
+/// <value>The DPI resolution.</value>
+   public double LoadDpi {
+      get { return GetLoadDpi(); }
+      set { SetLoadDpi( value); }
+   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+/// 1.2</summary>
+/// <value><c>true</c> if region load of the image is supported, <c>false</c> otherwise</value>
+   public bool LoadRegionSupport {
+      get { return GetLoadRegionSupport(); }
+   }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+/// <value>A region of the image.</value>
+   public Eina.Rect LoadRegion {
+      get { return GetLoadRegion(); }
+      set { SetLoadRegion( value); }
+   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+/// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+/// 1.1</summary>
+/// <value><c>true</c> means that it should honor the orientation information.</value>
+   public bool LoadOrientation {
+      get { return GetLoadOrientation(); }
+      set { SetLoadOrientation( value); }
+   }
+   /// <summary>The scale down factor is a divider on the original image size.
+/// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+/// 
+/// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+/// 
+/// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+/// <value>The scale down dividing factor.</value>
+   public  int LoadScaleDown {
+      get { return GetLoadScaleDown(); }
+      set { SetLoadScaleDown( value); }
+   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+/// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+/// <value>Will be true if header is to be skipped.</value>
+   public bool LoadSkipHeader {
+      get { return GetLoadSkipHeader(); }
+      set { SetLoadSkipHeader( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Bg.efl_ui_bg_class_get();
+   }
+}
+public class BgNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_gfx_image_smooth_scale_get_static_delegate == null)
+      efl_gfx_image_smooth_scale_get_static_delegate = new efl_gfx_image_smooth_scale_get_delegate(smooth_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_get_static_delegate)});
+      if (efl_gfx_image_smooth_scale_set_static_delegate == null)
+      efl_gfx_image_smooth_scale_set_static_delegate = new efl_gfx_image_smooth_scale_set_delegate(smooth_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_set_static_delegate)});
+      if (efl_gfx_image_scale_type_get_static_delegate == null)
+      efl_gfx_image_scale_type_get_static_delegate = new efl_gfx_image_scale_type_get_delegate(scale_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_get_static_delegate)});
+      if (efl_gfx_image_scale_type_set_static_delegate == null)
+      efl_gfx_image_scale_type_set_static_delegate = new efl_gfx_image_scale_type_set_delegate(scale_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_set_static_delegate)});
+      if (efl_gfx_image_ratio_get_static_delegate == null)
+      efl_gfx_image_ratio_get_static_delegate = new efl_gfx_image_ratio_get_delegate(ratio_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_ratio_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_ratio_get_static_delegate)});
+      if (efl_gfx_image_border_get_static_delegate == null)
+      efl_gfx_image_border_get_static_delegate = new efl_gfx_image_border_get_delegate(border_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_get_static_delegate)});
+      if (efl_gfx_image_border_set_static_delegate == null)
+      efl_gfx_image_border_set_static_delegate = new efl_gfx_image_border_set_delegate(border_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_set_static_delegate)});
+      if (efl_gfx_image_border_scale_get_static_delegate == null)
+      efl_gfx_image_border_scale_get_static_delegate = new efl_gfx_image_border_scale_get_delegate(border_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_get_static_delegate)});
+      if (efl_gfx_image_border_scale_set_static_delegate == null)
+      efl_gfx_image_border_scale_set_static_delegate = new efl_gfx_image_border_scale_set_delegate(border_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_set_static_delegate)});
+      if (efl_gfx_image_border_center_fill_get_static_delegate == null)
+      efl_gfx_image_border_center_fill_get_static_delegate = new efl_gfx_image_border_center_fill_get_delegate(border_center_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_get_static_delegate)});
+      if (efl_gfx_image_border_center_fill_set_static_delegate == null)
+      efl_gfx_image_border_center_fill_set_static_delegate = new efl_gfx_image_border_center_fill_set_delegate(border_center_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_set_static_delegate)});
+      if (efl_gfx_image_size_get_static_delegate == null)
+      efl_gfx_image_size_get_static_delegate = new efl_gfx_image_size_get_delegate(image_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_size_get_static_delegate)});
+      if (efl_gfx_image_content_hint_get_static_delegate == null)
+      efl_gfx_image_content_hint_get_static_delegate = new efl_gfx_image_content_hint_get_delegate(content_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_get_static_delegate)});
+      if (efl_gfx_image_content_hint_set_static_delegate == null)
+      efl_gfx_image_content_hint_set_static_delegate = new efl_gfx_image_content_hint_set_delegate(content_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_set_static_delegate)});
+      if (efl_gfx_image_scale_hint_get_static_delegate == null)
+      efl_gfx_image_scale_hint_get_static_delegate = new efl_gfx_image_scale_hint_get_delegate(scale_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_get_static_delegate)});
+      if (efl_gfx_image_scale_hint_set_static_delegate == null)
+      efl_gfx_image_scale_hint_set_static_delegate = new efl_gfx_image_scale_hint_set_delegate(scale_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_set_static_delegate)});
+      if (efl_gfx_image_load_error_get_static_delegate == null)
+      efl_gfx_image_load_error_get_static_delegate = new efl_gfx_image_load_error_get_delegate(image_load_error_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_error_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_error_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_size_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_get_static_delegate = new efl_gfx_image_load_controller_load_size_get_delegate(load_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_size_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_set_static_delegate = new efl_gfx_image_load_controller_load_size_set_delegate(load_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_get_static_delegate = new efl_gfx_image_load_controller_load_dpi_get_delegate(load_dpi_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_set_static_delegate = new efl_gfx_image_load_controller_load_dpi_set_delegate(load_dpi_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_support_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_support_get_static_delegate = new efl_gfx_image_load_controller_load_region_support_get_delegate(load_region_support_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_support_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_support_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_get_static_delegate = new efl_gfx_image_load_controller_load_region_get_delegate(load_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_set_static_delegate = new efl_gfx_image_load_controller_load_region_set_delegate(load_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_get_static_delegate = new efl_gfx_image_load_controller_load_orientation_get_delegate(load_orientation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_set_static_delegate = new efl_gfx_image_load_controller_load_orientation_set_delegate(load_orientation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_get_static_delegate = new efl_gfx_image_load_controller_load_scale_down_get_delegate(load_scale_down_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_set_static_delegate = new efl_gfx_image_load_controller_load_scale_down_set_delegate(load_scale_down_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_get_static_delegate = new efl_gfx_image_load_controller_load_skip_header_get_delegate(load_skip_header_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_set_static_delegate = new efl_gfx_image_load_controller_load_skip_header_set_delegate(load_skip_header_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_start_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_start_static_delegate = new efl_gfx_image_load_controller_load_async_start_delegate(load_async_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_start"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_start_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_cancel_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_cancel_static_delegate = new efl_gfx_image_load_controller_load_async_cancel_delegate(load_async_cancel);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_cancel"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_cancel_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Bg.efl_ui_bg_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Bg.efl_ui_bg_class_get();
+   }
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((Bg)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Bg)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Bg)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Bg)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Bg)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Bg)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Bg)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_smooth_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_smooth_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate> efl_gfx_image_smooth_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate>(_Module, "efl_gfx_image_smooth_scale_get");
+    private static bool smooth_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Bg)wrapper).GetSmoothScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_smooth_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_smooth_scale_get_delegate efl_gfx_image_smooth_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_smooth_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+
+
+    public delegate  void efl_gfx_image_smooth_scale_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate> efl_gfx_image_smooth_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate>(_Module, "efl_gfx_image_smooth_scale_set");
+    private static  void smooth_scale_set(System.IntPtr obj, System.IntPtr pd,  bool smooth_scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetSmoothScale( smooth_scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_smooth_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  smooth_scale);
+      }
+   }
+   private static efl_gfx_image_smooth_scale_set_delegate efl_gfx_image_smooth_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate> efl_gfx_image_scale_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate>(_Module, "efl_gfx_image_scale_type_get");
+    private static Efl.Gfx.ImageScaleType scale_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleType _ret_var = default(Efl.Gfx.ImageScaleType);
+         try {
+            _ret_var = ((Bg)wrapper).GetScaleType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_type_get_delegate efl_gfx_image_scale_type_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleType scale_type);
+
+
+    public delegate  void efl_gfx_image_scale_type_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleType scale_type);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate> efl_gfx_image_scale_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate>(_Module, "efl_gfx_image_scale_type_set");
+    private static  void scale_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleType scale_type)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetScaleType( scale_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale_type);
+      }
+   }
+   private static efl_gfx_image_scale_type_set_delegate efl_gfx_image_scale_type_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_ratio_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_ratio_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate> efl_gfx_image_ratio_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate>(_Module, "efl_gfx_image_ratio_get");
+    private static double ratio_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_ratio_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Bg)wrapper).GetRatio();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_ratio_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_ratio_get_delegate efl_gfx_image_ratio_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_image_border_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate> efl_gfx_image_border_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate>(_Module, "efl_gfx_image_border_get");
+    private static  void border_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((Bg)wrapper).GetBorder( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_image_border_get_delegate efl_gfx_image_border_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_set_delegate(System.IntPtr obj, System.IntPtr pd,    int l,    int r,    int t,    int b);
+
+
+    public delegate  void efl_gfx_image_border_set_api_delegate(System.IntPtr obj,    int l,    int r,    int t,    int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate> efl_gfx_image_border_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate>(_Module, "efl_gfx_image_border_set");
+    private static  void border_set(System.IntPtr obj, System.IntPtr pd,   int l,   int r,   int t,   int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Bg)wrapper).SetBorder( l,  r,  t,  b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l,  r,  t,  b);
+      }
+   }
+   private static efl_gfx_image_border_set_delegate efl_gfx_image_border_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_border_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_border_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate> efl_gfx_image_border_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate>(_Module, "efl_gfx_image_border_scale_get");
+    private static double border_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Bg)wrapper).GetBorderScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_scale_get_delegate efl_gfx_image_border_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_image_border_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate> efl_gfx_image_border_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate>(_Module, "efl_gfx_image_border_scale_set");
+    private static  void border_scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetBorderScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_image_border_scale_set_delegate efl_gfx_image_border_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate> efl_gfx_image_border_center_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate>(_Module, "efl_gfx_image_border_center_fill_get");
+    private static Efl.Gfx.BorderFillMode border_center_fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.BorderFillMode _ret_var = default(Efl.Gfx.BorderFillMode);
+         try {
+            _ret_var = ((Bg)wrapper).GetBorderCenterFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_center_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_center_fill_get_delegate efl_gfx_image_border_center_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_center_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.BorderFillMode fill);
+
+
+    public delegate  void efl_gfx_image_border_center_fill_set_api_delegate(System.IntPtr obj,   Efl.Gfx.BorderFillMode fill);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate> efl_gfx_image_border_center_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate>(_Module, "efl_gfx_image_border_center_fill_set");
+    private static  void border_center_fill_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.BorderFillMode fill)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetBorderCenterFill( fill);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_center_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill);
+      }
+   }
+   private static efl_gfx_image_border_center_fill_set_delegate efl_gfx_image_border_center_fill_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate> efl_gfx_image_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate>(_Module, "efl_gfx_image_size_get");
+    private static Eina.Size2D_StructInternal image_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Bg)wrapper).GetImageSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_size_get_delegate efl_gfx_image_size_get_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate> efl_gfx_image_content_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate>(_Module, "efl_gfx_image_content_hint_get");
+    private static Efl.Gfx.ImageContentHint content_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageContentHint _ret_var = default(Efl.Gfx.ImageContentHint);
+         try {
+            _ret_var = ((Bg)wrapper).GetContentHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_content_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_content_hint_get_delegate efl_gfx_image_content_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_content_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageContentHint hint);
+
+
+    public delegate  void efl_gfx_image_content_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageContentHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate> efl_gfx_image_content_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate>(_Module, "efl_gfx_image_content_hint_set");
+    private static  void content_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageContentHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetContentHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_content_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_content_hint_set_delegate efl_gfx_image_content_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate> efl_gfx_image_scale_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate>(_Module, "efl_gfx_image_scale_hint_get");
+    private static Efl.Gfx.ImageScaleHint scale_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleHint _ret_var = default(Efl.Gfx.ImageScaleHint);
+         try {
+            _ret_var = ((Bg)wrapper).GetScaleHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_hint_get_delegate efl_gfx_image_scale_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleHint hint);
+
+
+    public delegate  void efl_gfx_image_scale_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate> efl_gfx_image_scale_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate>(_Module, "efl_gfx_image_scale_hint_set");
+    private static  void scale_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetScaleHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_scale_hint_set_delegate efl_gfx_image_scale_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate> efl_gfx_image_load_error_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate>(_Module, "efl_gfx_image_load_error_get");
+    private static Efl.Gfx.ImageLoadError image_load_error_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_error_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageLoadError _ret_var = default(Efl.Gfx.ImageLoadError);
+         try {
+            _ret_var = ((Bg)wrapper).GetImageLoadError();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_error_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_error_get_delegate efl_gfx_image_load_error_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate> efl_gfx_image_load_controller_load_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_get");
+    private static Eina.Size2D_StructInternal load_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoadSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_get_delegate efl_gfx_image_load_controller_load_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate> efl_gfx_image_load_controller_load_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_set");
+    private static  void load_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Bg)wrapper).SetLoadSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_set_delegate efl_gfx_image_load_controller_load_size_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_load_controller_load_dpi_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_load_controller_load_dpi_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate> efl_gfx_image_load_controller_load_dpi_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_get");
+    private static double load_dpi_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoadDpi();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_get_delegate efl_gfx_image_load_controller_load_dpi_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_dpi_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dpi);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_dpi_set_api_delegate(System.IntPtr obj,   double dpi);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate> efl_gfx_image_load_controller_load_dpi_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_set");
+    private static  void load_dpi_set(System.IntPtr obj, System.IntPtr pd,  double dpi)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetLoadDpi( dpi);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dpi);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_set_delegate efl_gfx_image_load_controller_load_dpi_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_region_support_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_region_support_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate> efl_gfx_image_load_controller_load_region_support_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_support_get");
+    private static bool load_region_support_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_support_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoadRegionSupport();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_support_get_delegate efl_gfx_image_load_controller_load_region_support_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate> efl_gfx_image_load_controller_load_region_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_get");
+    private static Eina.Rect_StructInternal load_region_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoadRegion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_get_delegate efl_gfx_image_load_controller_load_region_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_region_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal region);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_region_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal region);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate> efl_gfx_image_load_controller_load_region_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_set");
+    private static  void load_region_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal region)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                     
+         try {
+            ((Bg)wrapper).SetLoadRegion( _in_region);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  region);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_set_delegate efl_gfx_image_load_controller_load_region_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_orientation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_orientation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate> efl_gfx_image_load_controller_load_orientation_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_get");
+    private static bool load_orientation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoadOrientation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_get_delegate efl_gfx_image_load_controller_load_orientation_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_orientation_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_orientation_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate> efl_gfx_image_load_controller_load_orientation_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_set");
+    private static  void load_orientation_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetLoadOrientation( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_set_delegate efl_gfx_image_load_controller_load_orientation_set_static_delegate;
+
+
+    private delegate  int efl_gfx_image_load_controller_load_scale_down_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_image_load_controller_load_scale_down_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate> efl_gfx_image_load_controller_load_scale_down_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_get");
+    private static  int load_scale_down_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoadScaleDown();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_get_delegate efl_gfx_image_load_controller_load_scale_down_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_scale_down_set_delegate(System.IntPtr obj, System.IntPtr pd,    int div);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_scale_down_set_api_delegate(System.IntPtr obj,    int div);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate> efl_gfx_image_load_controller_load_scale_down_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_set");
+    private static  void load_scale_down_set(System.IntPtr obj, System.IntPtr pd,   int div)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetLoadScaleDown( div);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  div);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_set_delegate efl_gfx_image_load_controller_load_scale_down_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_skip_header_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_skip_header_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate> efl_gfx_image_load_controller_load_skip_header_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_get");
+    private static bool load_skip_header_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Bg)wrapper).GetLoadSkipHeader();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_get_delegate efl_gfx_image_load_controller_load_skip_header_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_skip_header_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_skip_header_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate> efl_gfx_image_load_controller_load_skip_header_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_set");
+    private static  void load_skip_header_set(System.IntPtr obj, System.IntPtr pd,  bool skip)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Bg)wrapper).SetLoadSkipHeader( skip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  skip);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_set_delegate efl_gfx_image_load_controller_load_skip_header_set_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate> efl_gfx_image_load_controller_load_async_start_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_start");
+    private static  void load_async_start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Bg)wrapper).LoadAsyncStart();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_start_delegate efl_gfx_image_load_controller_load_async_start_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_cancel_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_cancel_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate> efl_gfx_image_load_controller_load_async_cancel_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_cancel");
+    private static  void load_async_cancel(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_cancel was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Bg)wrapper).LoadAsyncCancel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_cancel_delegate efl_gfx_image_load_controller_load_async_cancel_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_box.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_box.eo.cs
new file mode 100755 (executable)
index 0000000..9b98b39
--- /dev/null
@@ -0,0 +1,1130 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>The box widget.
+/// A box arranges objects in a linear fashion, governed by a layout function that defines the details of this arrangement.
+/// 
+/// By default, the box will use an internal function to set the layout to a single row, either vertical or horizontal. This layout is affected by a number of parameters. The values given by <see cref="Efl.Pack.GetPackPadding"/> and <see cref="Efl.Pack.GetPackAlign"/> and the hints set to each object in the box.
+/// 
+/// FIXME: THIS CLASS NEEDS GOOD UP TO DATE DOCUMENTATION. LEGACY BOX AND UI BOX BEHAVE SLIGHTLY DIFFERENTLY AND USE VASTLY DIFFERENT APIS.</summary>
+[BoxNativeInherit]
+public class Box : Efl.Ui.Widget, Efl.Eo.IWrapper,Efl.Container,Efl.Pack,Efl.PackLayout,Efl.PackLinear,Efl.Ui.Direction
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.BoxNativeInherit nativeInherit = new Efl.Ui.BoxNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Box))
+            return Efl.Ui.BoxNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_box_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Box(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_box_class_get(), typeof(Box), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Box(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Box(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Box static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Box(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LayoutUpdatedEvtKey = new object();
+   /// <summary>Sent after the layout was updated.</summary>
+   public event EventHandler LayoutUpdatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LayoutUpdatedEvt_delegate)) {
+               eventHandlers.AddHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (remove_cpp_event_handler(key, this.evt_LayoutUpdatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LayoutUpdatedEvt.</summary>
+   public void On_LayoutUpdatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LayoutUpdatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LayoutUpdatedEvt_delegate;
+   private void on_LayoutUpdatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LayoutUpdatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+      evt_LayoutUpdatedEvt_delegate = new Efl.EventCb(on_LayoutUpdatedEvt_NativeCallback);
+   }
+   /// <summary>Control homogeneous mode.
+   /// This will enable the homogeneous mode where children are of the same weight and of the same min size which is determined by maximum min size of children.</summary>
+   /// <returns><c>true</c> if the box is homogeneous, <c>false</c> otherwise</returns>
+   virtual public bool GetHomogeneous() {
+       var _ret_var = Efl.Ui.BoxNativeInherit.efl_ui_box_homogeneous_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control homogeneous mode.
+   /// This will enable the homogeneous mode where children are of the same weight and of the same min size which is determined by maximum min size of children.</summary>
+   /// <param name="homogeneous"><c>true</c> if the box is homogeneous, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetHomogeneous( bool homogeneous) {
+                         Efl.Ui.BoxNativeInherit.efl_ui_box_homogeneous_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), homogeneous);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Requests EFL to call the <see cref="Efl.PackLayout.UpdateLayout"/> method on this object.
+   /// This <see cref="Efl.PackLayout.UpdateLayout"/> may be called asynchronously.</summary>
+   /// <returns></returns>
+   virtual public  void LayoutRequest() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_request_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Implementation of this container&apos;s layout algorithm.
+   /// EFL will call this function whenever the contents of this container need to be re-layed out on the canvas.
+   /// 
+   /// This can be overriden to implement custom layout behaviours.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateLayout() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control homogeneous mode.
+/// This will enable the homogeneous mode where children are of the same weight and of the same min size which is determined by maximum min size of children.</summary>
+/// <value><c>true</c> if the box is homogeneous, <c>false</c> otherwise</value>
+   public bool Homogeneous {
+      get { return GetHomogeneous(); }
+      set { SetHomogeneous( value); }
+   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Box.efl_ui_box_class_get();
+   }
+}
+public class BoxNativeInherit : Efl.Ui.WidgetNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_box_homogeneous_get_static_delegate == null)
+      efl_ui_box_homogeneous_get_static_delegate = new efl_ui_box_homogeneous_get_delegate(homogeneous_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_box_homogeneous_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_box_homogeneous_get_static_delegate)});
+      if (efl_ui_box_homogeneous_set_static_delegate == null)
+      efl_ui_box_homogeneous_set_static_delegate = new efl_ui_box_homogeneous_set_delegate(homogeneous_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_box_homogeneous_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_box_homogeneous_set_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_layout_request_static_delegate == null)
+      efl_pack_layout_request_static_delegate = new efl_pack_layout_request_delegate(layout_request);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_request"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_request_static_delegate)});
+      if (efl_pack_layout_update_static_delegate == null)
+      efl_pack_layout_update_static_delegate = new efl_pack_layout_update_delegate(layout_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_update"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_update_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Box.efl_ui_box_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Box.efl_ui_box_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_box_homogeneous_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_box_homogeneous_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_box_homogeneous_get_api_delegate> efl_ui_box_homogeneous_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_box_homogeneous_get_api_delegate>(_Module, "efl_ui_box_homogeneous_get");
+    private static bool homogeneous_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_box_homogeneous_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).GetHomogeneous();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_box_homogeneous_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_box_homogeneous_get_delegate efl_ui_box_homogeneous_get_static_delegate;
+
+
+    private delegate  void efl_ui_box_homogeneous_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool homogeneous);
+
+
+    public delegate  void efl_ui_box_homogeneous_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool homogeneous);
+    public static Efl.Eo.FunctionWrapper<efl_ui_box_homogeneous_set_api_delegate> efl_ui_box_homogeneous_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_box_homogeneous_set_api_delegate>(_Module, "efl_ui_box_homogeneous_set");
+    private static  void homogeneous_set(System.IntPtr obj, System.IntPtr pd,  bool homogeneous)
+   {
+      Eina.Log.Debug("function efl_ui_box_homogeneous_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Box)wrapper).SetHomogeneous( homogeneous);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_box_homogeneous_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  homogeneous);
+      }
+   }
+   private static efl_ui_box_homogeneous_set_delegate efl_ui_box_homogeneous_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Box)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Box)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((Box)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Box)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((Box)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Box)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    private delegate  void efl_pack_layout_request_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_request_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate> efl_pack_layout_request_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate>(_Module, "efl_pack_layout_request");
+    private static  void layout_request(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_request was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Box)wrapper).LayoutRequest();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_request_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_request_delegate efl_pack_layout_request_static_delegate;
+
+
+    private delegate  void efl_pack_layout_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate> efl_pack_layout_update_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate>(_Module, "efl_pack_layout_update");
+    private static  void layout_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Box)wrapper).UpdateLayout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_update_delegate efl_pack_layout_update_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Box)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Box)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((Box)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Box)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((Box)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Box)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_box_flow.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_box_flow.eo.cs
new file mode 100755 (executable)
index 0000000..2544b78
--- /dev/null
@@ -0,0 +1,244 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>A custom layout engine for <see cref="Efl.Ui.Box"/>.</summary>
+[BoxFlowNativeInherit]
+public class BoxFlow : Efl.Ui.Box, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.BoxFlowNativeInherit nativeInherit = new Efl.Ui.BoxFlowNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (BoxFlow))
+            return Efl.Ui.BoxFlowNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_box_flow_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public BoxFlow(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_box_flow_class_get(), typeof(BoxFlow), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public BoxFlow(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected BoxFlow(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static BoxFlow static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new BoxFlow(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Box flow homogenous property</summary>
+   /// <returns><c>true</c> if the box flow layout is homogenous, <c>false</c> otherwise</returns>
+   virtual public bool GetBoxFlowHomogenous() {
+       var _ret_var = Efl.Ui.BoxFlowNativeInherit.efl_ui_box_flow_homogenous_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Box flow homogenous property</summary>
+   /// <param name="val"><c>true</c> if the box flow layout is homogenous, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetBoxFlowHomogenous( bool val) {
+                         Efl.Ui.BoxFlowNativeInherit.efl_ui_box_flow_homogenous_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Box flow maximum size property</summary>
+   /// <returns><c>true</c> if the box flow layout has the maximal size, <c>false</c> otherwise</returns>
+   virtual public bool GetBoxFlowMaxSize() {
+       var _ret_var = Efl.Ui.BoxFlowNativeInherit.efl_ui_box_flow_max_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Box flow maximum size property</summary>
+   /// <param name="val"><c>true</c> if the box flow layout has the maximal size, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetBoxFlowMaxSize( bool val) {
+                         Efl.Ui.BoxFlowNativeInherit.efl_ui_box_flow_max_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Box flow homogenous property</summary>
+/// <value><c>true</c> if the box flow layout is homogenous, <c>false</c> otherwise</value>
+   public bool BoxFlowHomogenous {
+      get { return GetBoxFlowHomogenous(); }
+      set { SetBoxFlowHomogenous( value); }
+   }
+   /// <summary>Box flow maximum size property</summary>
+/// <value><c>true</c> if the box flow layout has the maximal size, <c>false</c> otherwise</value>
+   public bool BoxFlowMaxSize {
+      get { return GetBoxFlowMaxSize(); }
+      set { SetBoxFlowMaxSize( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.BoxFlow.efl_ui_box_flow_class_get();
+   }
+}
+public class BoxFlowNativeInherit : Efl.Ui.BoxNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_box_flow_homogenous_get_static_delegate == null)
+      efl_ui_box_flow_homogenous_get_static_delegate = new efl_ui_box_flow_homogenous_get_delegate(box_flow_homogenous_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_box_flow_homogenous_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_box_flow_homogenous_get_static_delegate)});
+      if (efl_ui_box_flow_homogenous_set_static_delegate == null)
+      efl_ui_box_flow_homogenous_set_static_delegate = new efl_ui_box_flow_homogenous_set_delegate(box_flow_homogenous_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_box_flow_homogenous_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_box_flow_homogenous_set_static_delegate)});
+      if (efl_ui_box_flow_max_size_get_static_delegate == null)
+      efl_ui_box_flow_max_size_get_static_delegate = new efl_ui_box_flow_max_size_get_delegate(box_flow_max_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_box_flow_max_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_box_flow_max_size_get_static_delegate)});
+      if (efl_ui_box_flow_max_size_set_static_delegate == null)
+      efl_ui_box_flow_max_size_set_static_delegate = new efl_ui_box_flow_max_size_set_delegate(box_flow_max_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_box_flow_max_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_box_flow_max_size_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.BoxFlow.efl_ui_box_flow_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.BoxFlow.efl_ui_box_flow_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_box_flow_homogenous_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_box_flow_homogenous_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_box_flow_homogenous_get_api_delegate> efl_ui_box_flow_homogenous_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_box_flow_homogenous_get_api_delegate>(_Module, "efl_ui_box_flow_homogenous_get");
+    private static bool box_flow_homogenous_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_box_flow_homogenous_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((BoxFlow)wrapper).GetBoxFlowHomogenous();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_box_flow_homogenous_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_box_flow_homogenous_get_delegate efl_ui_box_flow_homogenous_get_static_delegate;
+
+
+    private delegate  void efl_ui_box_flow_homogenous_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_ui_box_flow_homogenous_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_box_flow_homogenous_set_api_delegate> efl_ui_box_flow_homogenous_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_box_flow_homogenous_set_api_delegate>(_Module, "efl_ui_box_flow_homogenous_set");
+    private static  void box_flow_homogenous_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_ui_box_flow_homogenous_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((BoxFlow)wrapper).SetBoxFlowHomogenous( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_box_flow_homogenous_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_box_flow_homogenous_set_delegate efl_ui_box_flow_homogenous_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_box_flow_max_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_box_flow_max_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_box_flow_max_size_get_api_delegate> efl_ui_box_flow_max_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_box_flow_max_size_get_api_delegate>(_Module, "efl_ui_box_flow_max_size_get");
+    private static bool box_flow_max_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_box_flow_max_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((BoxFlow)wrapper).GetBoxFlowMaxSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_box_flow_max_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_box_flow_max_size_get_delegate efl_ui_box_flow_max_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_box_flow_max_size_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool val);
+
+
+    public delegate  void efl_ui_box_flow_max_size_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_box_flow_max_size_set_api_delegate> efl_ui_box_flow_max_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_box_flow_max_size_set_api_delegate>(_Module, "efl_ui_box_flow_max_size_set");
+    private static  void box_flow_max_size_set(System.IntPtr obj, System.IntPtr pd,  bool val)
+   {
+      Eina.Log.Debug("function efl_ui_box_flow_max_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((BoxFlow)wrapper).SetBoxFlowMaxSize( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_box_flow_max_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_box_flow_max_size_set_delegate efl_ui_box_flow_max_size_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_box_stack.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_box_stack.eo.cs
new file mode 100755 (executable)
index 0000000..f42fc67
--- /dev/null
@@ -0,0 +1,95 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>A custom layout engine for <see cref="Efl.Ui.Box"/> that stacks items.
+/// Items will be stacked on top of each other (in the Z direction).</summary>
+[BoxStackNativeInherit]
+public class BoxStack : Efl.Ui.Box, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.BoxStackNativeInherit nativeInherit = new Efl.Ui.BoxStackNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (BoxStack))
+            return Efl.Ui.BoxStackNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_box_stack_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public BoxStack(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_box_stack_class_get(), typeof(BoxStack), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public BoxStack(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected BoxStack(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static BoxStack static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new BoxStack(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.BoxStack.efl_ui_box_stack_class_get();
+   }
+}
+public class BoxStackNativeInherit : Efl.Ui.BoxNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.BoxStack.efl_ui_box_stack_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.BoxStack.efl_ui_box_stack_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_button.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_button.eo.cs
new file mode 100755 (executable)
index 0000000..68acef4
--- /dev/null
@@ -0,0 +1,982 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Push-button widget
+/// Press it and run some function. It can contain a simple label and icon object and it also has an autorepeat feature.</summary>
+[ButtonNativeInherit]
+public class Button : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content,Efl.Text,Efl.Ui.Autorepeat,Efl.Ui.Clickable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ButtonNativeInherit nativeInherit = new Efl.Ui.ButtonNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Button))
+            return Efl.Ui.ButtonNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_button_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Button(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_button_class_get(), typeof(Button), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Button(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Button(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Button static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Button(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The initial timeout before the autorepeat event is generated
+   /// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <returns>Timeout in seconds</returns>
+   virtual public double GetAutorepeatInitialTimeout() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_initial_timeout_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The initial timeout before the autorepeat event is generated
+   /// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <param name="t">Timeout in seconds</param>
+   /// <returns></returns>
+   virtual public  void SetAutorepeatInitialTimeout( double t) {
+                         Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_initial_timeout_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), t);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The interval between each generated autorepeat event
+   /// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+   /// <returns>Interval in seconds</returns>
+   virtual public double GetAutorepeatGapTimeout() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_gap_timeout_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The interval between each generated autorepeat event
+   /// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+   /// 
+   /// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+   /// <param name="t">Interval in seconds</param>
+   /// <returns></returns>
+   virtual public  void SetAutorepeatGapTimeout( double t) {
+                         Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_gap_timeout_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), t);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+   /// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+   /// 
+   /// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <returns>A bool to turn on/off the event</returns>
+   virtual public bool GetAutorepeatEnabled() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+   /// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+   /// 
+   /// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+   /// <param name="on">A bool to turn on/off the event</param>
+   /// <returns></returns>
+   virtual public  void SetAutorepeatEnabled( bool on) {
+                         Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), on);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether the button supports autorepeat.</summary>
+   /// <returns><c>true</c> if autorepeat is supported, <c>false</c> otherwise</returns>
+   virtual public bool GetAutorepeatSupported() {
+       var _ret_var = Efl.Ui.AutorepeatNativeInherit.efl_ui_autorepeat_supported_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>The initial timeout before the autorepeat event is generated
+/// Sets the timeout, in seconds, since the button is pressed until the first <c>repeated</c> signal is emitted. If <c>t</c> is 0.0 or less, there won&apos;t be any delay and the event will be fired the moment the button is pressed.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatEnabled"/>, <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <value>Timeout in seconds</value>
+   public double AutorepeatInitialTimeout {
+      get { return GetAutorepeatInitialTimeout(); }
+      set { SetAutorepeatInitialTimeout( value); }
+   }
+   /// <summary>The interval between each generated autorepeat event
+/// After the first <c>repeated</c> event is fired, all subsequent ones will follow after a delay of <c>t</c> seconds for each.
+/// 
+/// See also <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>.</summary>
+/// <value>Interval in seconds</value>
+   public double AutorepeatGapTimeout {
+      get { return GetAutorepeatGapTimeout(); }
+      set { SetAutorepeatGapTimeout( value); }
+   }
+   /// <summary>Turn on/off the autorepeat event generated when the button is kept pressed
+/// When off, no autorepeat is performed and buttons emit a normal <c>clicked</c> signal when they are clicked.
+/// 
+/// When on, keeping a button pressed will continuously emit a <c>repeated</c> signal until the button is released. The time it takes until it starts emitting the signal is given by <see cref="Efl.Ui.Autorepeat.SetAutorepeatInitialTimeout"/>, and the time between each new emission by <see cref="Efl.Ui.Autorepeat.SetAutorepeatGapTimeout"/>.</summary>
+/// <value>A bool to turn on/off the event</value>
+   public bool AutorepeatEnabled {
+      get { return GetAutorepeatEnabled(); }
+      set { SetAutorepeatEnabled( value); }
+   }
+   /// <summary>Whether the button supports autorepeat.</summary>
+/// <value><c>true</c> if autorepeat is supported, <c>false</c> otherwise</value>
+   public bool AutorepeatSupported {
+      get { return GetAutorepeatSupported(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Button.efl_ui_button_class_get();
+   }
+}
+public class ButtonNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_ui_autorepeat_initial_timeout_get_static_delegate == null)
+      efl_ui_autorepeat_initial_timeout_get_static_delegate = new efl_ui_autorepeat_initial_timeout_get_delegate(autorepeat_initial_timeout_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_initial_timeout_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_initial_timeout_get_static_delegate)});
+      if (efl_ui_autorepeat_initial_timeout_set_static_delegate == null)
+      efl_ui_autorepeat_initial_timeout_set_static_delegate = new efl_ui_autorepeat_initial_timeout_set_delegate(autorepeat_initial_timeout_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_initial_timeout_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_initial_timeout_set_static_delegate)});
+      if (efl_ui_autorepeat_gap_timeout_get_static_delegate == null)
+      efl_ui_autorepeat_gap_timeout_get_static_delegate = new efl_ui_autorepeat_gap_timeout_get_delegate(autorepeat_gap_timeout_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_gap_timeout_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_gap_timeout_get_static_delegate)});
+      if (efl_ui_autorepeat_gap_timeout_set_static_delegate == null)
+      efl_ui_autorepeat_gap_timeout_set_static_delegate = new efl_ui_autorepeat_gap_timeout_set_delegate(autorepeat_gap_timeout_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_gap_timeout_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_gap_timeout_set_static_delegate)});
+      if (efl_ui_autorepeat_enabled_get_static_delegate == null)
+      efl_ui_autorepeat_enabled_get_static_delegate = new efl_ui_autorepeat_enabled_get_delegate(autorepeat_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_enabled_get_static_delegate)});
+      if (efl_ui_autorepeat_enabled_set_static_delegate == null)
+      efl_ui_autorepeat_enabled_set_static_delegate = new efl_ui_autorepeat_enabled_set_delegate(autorepeat_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_enabled_set_static_delegate)});
+      if (efl_ui_autorepeat_supported_get_static_delegate == null)
+      efl_ui_autorepeat_supported_get_static_delegate = new efl_ui_autorepeat_supported_get_delegate(autorepeat_supported_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_autorepeat_supported_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_autorepeat_supported_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Button.efl_ui_button_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Button.efl_ui_button_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Button)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Button)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Button)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Button)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Button)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    private delegate double efl_ui_autorepeat_initial_timeout_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_autorepeat_initial_timeout_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_get_api_delegate> efl_ui_autorepeat_initial_timeout_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_get_api_delegate>(_Module, "efl_ui_autorepeat_initial_timeout_get");
+    private static double autorepeat_initial_timeout_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_initial_timeout_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Button)wrapper).GetAutorepeatInitialTimeout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_initial_timeout_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_initial_timeout_get_delegate efl_ui_autorepeat_initial_timeout_get_static_delegate;
+
+
+    private delegate  void efl_ui_autorepeat_initial_timeout_set_delegate(System.IntPtr obj, System.IntPtr pd,   double t);
+
+
+    public delegate  void efl_ui_autorepeat_initial_timeout_set_api_delegate(System.IntPtr obj,   double t);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_set_api_delegate> efl_ui_autorepeat_initial_timeout_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_initial_timeout_set_api_delegate>(_Module, "efl_ui_autorepeat_initial_timeout_set");
+    private static  void autorepeat_initial_timeout_set(System.IntPtr obj, System.IntPtr pd,  double t)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_initial_timeout_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Button)wrapper).SetAutorepeatInitialTimeout( t);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_autorepeat_initial_timeout_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  t);
+      }
+   }
+   private static efl_ui_autorepeat_initial_timeout_set_delegate efl_ui_autorepeat_initial_timeout_set_static_delegate;
+
+
+    private delegate double efl_ui_autorepeat_gap_timeout_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_autorepeat_gap_timeout_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_get_api_delegate> efl_ui_autorepeat_gap_timeout_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_get_api_delegate>(_Module, "efl_ui_autorepeat_gap_timeout_get");
+    private static double autorepeat_gap_timeout_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_gap_timeout_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Button)wrapper).GetAutorepeatGapTimeout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_gap_timeout_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_gap_timeout_get_delegate efl_ui_autorepeat_gap_timeout_get_static_delegate;
+
+
+    private delegate  void efl_ui_autorepeat_gap_timeout_set_delegate(System.IntPtr obj, System.IntPtr pd,   double t);
+
+
+    public delegate  void efl_ui_autorepeat_gap_timeout_set_api_delegate(System.IntPtr obj,   double t);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_set_api_delegate> efl_ui_autorepeat_gap_timeout_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_gap_timeout_set_api_delegate>(_Module, "efl_ui_autorepeat_gap_timeout_set");
+    private static  void autorepeat_gap_timeout_set(System.IntPtr obj, System.IntPtr pd,  double t)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_gap_timeout_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Button)wrapper).SetAutorepeatGapTimeout( t);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_autorepeat_gap_timeout_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  t);
+      }
+   }
+   private static efl_ui_autorepeat_gap_timeout_set_delegate efl_ui_autorepeat_gap_timeout_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_autorepeat_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_autorepeat_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_get_api_delegate> efl_ui_autorepeat_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_get_api_delegate>(_Module, "efl_ui_autorepeat_enabled_get");
+    private static bool autorepeat_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Button)wrapper).GetAutorepeatEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_enabled_get_delegate efl_ui_autorepeat_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_autorepeat_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool on);
+
+
+    public delegate  void efl_ui_autorepeat_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool on);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_set_api_delegate> efl_ui_autorepeat_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_enabled_set_api_delegate>(_Module, "efl_ui_autorepeat_enabled_set");
+    private static  void autorepeat_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool on)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Button)wrapper).SetAutorepeatEnabled( on);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_autorepeat_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  on);
+      }
+   }
+   private static efl_ui_autorepeat_enabled_set_delegate efl_ui_autorepeat_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_autorepeat_supported_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_autorepeat_supported_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_autorepeat_supported_get_api_delegate> efl_ui_autorepeat_supported_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_autorepeat_supported_get_api_delegate>(_Module, "efl_ui_autorepeat_supported_get");
+    private static bool autorepeat_supported_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_autorepeat_supported_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Button)wrapper).GetAutorepeatSupported();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_autorepeat_supported_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_autorepeat_supported_get_delegate efl_ui_autorepeat_supported_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_button_legacy_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_button_legacy_part.eo.cs
new file mode 100755 (executable)
index 0000000..c3341d1
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary button internal part class</summary>
+[ButtonLegacyPartNativeInherit]
+public class ButtonLegacyPart : Efl.Ui.LayoutPartContent, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ButtonLegacyPartNativeInherit nativeInherit = new Efl.Ui.ButtonLegacyPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ButtonLegacyPart))
+            return Efl.Ui.ButtonLegacyPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_button_legacy_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ButtonLegacyPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_button_legacy_part_class_get(), typeof(ButtonLegacyPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ButtonLegacyPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ButtonLegacyPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ButtonLegacyPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ButtonLegacyPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ButtonLegacyPart.efl_ui_button_legacy_part_class_get();
+   }
+}
+public class ButtonLegacyPartNativeInherit : Efl.Ui.LayoutPartContentNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ButtonLegacyPart.efl_ui_button_legacy_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ButtonLegacyPart.efl_ui_button_legacy_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_caching_factory.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_caching_factory.eo.cs
new file mode 100755 (executable)
index 0000000..e634a48
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl Ui Factory that provides object caching.
+/// This factory handles caching of one type of object that must be an <see cref="Efl.Gfx.Entity"/> with an <see cref="Efl.Ui.View"/> interface defined. This factory will rely on its parent class <see cref="Efl.Ui.WidgetFactory"/> for creating the subset of class that match <see cref="Efl.Ui.Widget"/> interface. The factory will automatically empties the cache when the application goes into pause.
+/// 
+/// Creating objects is costly and time consuming, keeping a few on hand for when you next will need them helps a lot. This is what this factory caching infrastructure provides. It will create the object from the class defined on it and set the parent and the model as needed for all created items. The View has to release the Item using the release function of the Factory interface for all of this to work properly.
+/// 
+/// The cache might decide to flush itself when the application event pause is triggered.</summary>
+[CachingFactoryNativeInherit]
+public class CachingFactory : Efl.Ui.WidgetFactory, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.CachingFactoryNativeInherit nativeInherit = new Efl.Ui.CachingFactoryNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CachingFactory))
+            return Efl.Ui.CachingFactoryNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_caching_factory_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="itemClass">Define the class of the item returned by this factory. See <see cref="Efl.Ui.WidgetFactory.SetItemClass"/></param>
+   public CachingFactory(Efl.Object parent
+         , Type itemClass = null) :
+      base(efl_ui_caching_factory_class_get(), typeof(CachingFactory), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(itemClass))
+         SetItemClass(Efl.Eo.Globals.GetParamHelper(itemClass));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CachingFactory(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected CachingFactory(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static CachingFactory static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CachingFactory(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Define the maxium size in Bytes that all the object waiting on standby in the cache take. They must provide the <see cref="Efl.Cached.Item"/> interface for an accurate accounting.</summary>
+   /// <returns>When set to zero, there is no limit on the amount of memory the cache will use.</returns>
+   virtual public  uint GetMemoryLimit() {
+       var _ret_var = Efl.Ui.CachingFactoryNativeInherit.efl_ui_caching_factory_memory_limit_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Define the maxium size in Bytes that all the object waiting on standby in the cache take. They must provide the <see cref="Efl.Cached.Item"/> interface for an accurate accounting.</summary>
+   /// <param name="limit">When set to zero, there is no limit on the amount of memory the cache will use.</param>
+   /// <returns></returns>
+   virtual public  void SetMemoryLimit(  uint limit) {
+                         Efl.Ui.CachingFactoryNativeInherit.efl_ui_caching_factory_memory_limit_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), limit);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Define how many maximum number of items are waiting on standby in the cache.</summary>
+   /// <returns>When set to zero, there is no limit to the amount of items stored in the cache.</returns>
+   virtual public  uint GetItemsLimit() {
+       var _ret_var = Efl.Ui.CachingFactoryNativeInherit.efl_ui_caching_factory_items_limit_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Define how many maximum number of items are waiting on standby in the cache.</summary>
+   /// <param name="limit">When set to zero, there is no limit to the amount of items stored in the cache.</param>
+   /// <returns></returns>
+   virtual public  void SetItemsLimit(  uint limit) {
+                         Efl.Ui.CachingFactoryNativeInherit.efl_ui_caching_factory_items_limit_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), limit);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Define the maxium size in Bytes that all the object waiting on standby in the cache take. They must provide the <see cref="Efl.Cached.Item"/> interface for an accurate accounting.</summary>
+/// <value>When set to zero, there is no limit on the amount of memory the cache will use.</value>
+   public  uint MemoryLimit {
+      get { return GetMemoryLimit(); }
+      set { SetMemoryLimit( value); }
+   }
+   /// <summary>Define how many maximum number of items are waiting on standby in the cache.</summary>
+/// <value>When set to zero, there is no limit to the amount of items stored in the cache.</value>
+   public  uint ItemsLimit {
+      get { return GetItemsLimit(); }
+      set { SetItemsLimit( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.CachingFactory.efl_ui_caching_factory_class_get();
+   }
+}
+public class CachingFactoryNativeInherit : Efl.Ui.WidgetFactoryNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_caching_factory_memory_limit_get_static_delegate == null)
+      efl_ui_caching_factory_memory_limit_get_static_delegate = new efl_ui_caching_factory_memory_limit_get_delegate(memory_limit_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_caching_factory_memory_limit_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_caching_factory_memory_limit_get_static_delegate)});
+      if (efl_ui_caching_factory_memory_limit_set_static_delegate == null)
+      efl_ui_caching_factory_memory_limit_set_static_delegate = new efl_ui_caching_factory_memory_limit_set_delegate(memory_limit_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_caching_factory_memory_limit_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_caching_factory_memory_limit_set_static_delegate)});
+      if (efl_ui_caching_factory_items_limit_get_static_delegate == null)
+      efl_ui_caching_factory_items_limit_get_static_delegate = new efl_ui_caching_factory_items_limit_get_delegate(items_limit_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_caching_factory_items_limit_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_caching_factory_items_limit_get_static_delegate)});
+      if (efl_ui_caching_factory_items_limit_set_static_delegate == null)
+      efl_ui_caching_factory_items_limit_set_static_delegate = new efl_ui_caching_factory_items_limit_set_delegate(items_limit_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_caching_factory_items_limit_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_caching_factory_items_limit_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.CachingFactory.efl_ui_caching_factory_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.CachingFactory.efl_ui_caching_factory_class_get();
+   }
+
+
+    private delegate  uint efl_ui_caching_factory_memory_limit_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_ui_caching_factory_memory_limit_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_caching_factory_memory_limit_get_api_delegate> efl_ui_caching_factory_memory_limit_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_caching_factory_memory_limit_get_api_delegate>(_Module, "efl_ui_caching_factory_memory_limit_get");
+    private static  uint memory_limit_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_caching_factory_memory_limit_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((CachingFactory)wrapper).GetMemoryLimit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_caching_factory_memory_limit_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_caching_factory_memory_limit_get_delegate efl_ui_caching_factory_memory_limit_get_static_delegate;
+
+
+    private delegate  void efl_ui_caching_factory_memory_limit_set_delegate(System.IntPtr obj, System.IntPtr pd,    uint limit);
+
+
+    public delegate  void efl_ui_caching_factory_memory_limit_set_api_delegate(System.IntPtr obj,    uint limit);
+    public static Efl.Eo.FunctionWrapper<efl_ui_caching_factory_memory_limit_set_api_delegate> efl_ui_caching_factory_memory_limit_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_caching_factory_memory_limit_set_api_delegate>(_Module, "efl_ui_caching_factory_memory_limit_set");
+    private static  void memory_limit_set(System.IntPtr obj, System.IntPtr pd,   uint limit)
+   {
+      Eina.Log.Debug("function efl_ui_caching_factory_memory_limit_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CachingFactory)wrapper).SetMemoryLimit( limit);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_caching_factory_memory_limit_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  limit);
+      }
+   }
+   private static efl_ui_caching_factory_memory_limit_set_delegate efl_ui_caching_factory_memory_limit_set_static_delegate;
+
+
+    private delegate  uint efl_ui_caching_factory_items_limit_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_ui_caching_factory_items_limit_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_caching_factory_items_limit_get_api_delegate> efl_ui_caching_factory_items_limit_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_caching_factory_items_limit_get_api_delegate>(_Module, "efl_ui_caching_factory_items_limit_get");
+    private static  uint items_limit_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_caching_factory_items_limit_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((CachingFactory)wrapper).GetItemsLimit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_caching_factory_items_limit_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_caching_factory_items_limit_get_delegate efl_ui_caching_factory_items_limit_get_static_delegate;
+
+
+    private delegate  void efl_ui_caching_factory_items_limit_set_delegate(System.IntPtr obj, System.IntPtr pd,    uint limit);
+
+
+    public delegate  void efl_ui_caching_factory_items_limit_set_api_delegate(System.IntPtr obj,    uint limit);
+    public static Efl.Eo.FunctionWrapper<efl_ui_caching_factory_items_limit_set_api_delegate> efl_ui_caching_factory_items_limit_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_caching_factory_items_limit_set_api_delegate>(_Module, "efl_ui_caching_factory_items_limit_set");
+    private static  void items_limit_set(System.IntPtr obj, System.IntPtr pd,   uint limit)
+   {
+      Eina.Log.Debug("function efl_ui_caching_factory_items_limit_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CachingFactory)wrapper).SetItemsLimit( limit);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_caching_factory_items_limit_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  limit);
+      }
+   }
+   private static efl_ui_caching_factory_items_limit_set_delegate efl_ui_caching_factory_items_limit_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_calendar.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_calendar.eo.cs
new file mode 100755 (executable)
index 0000000..373ac19
--- /dev/null
@@ -0,0 +1,850 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Calendar widget
+/// It helps applications to flexibly display a calendar with day of the week, date, year and month. Applications are able to set specific dates to be reported back, when selected, in the smart callbacks of the calendar widget.</summary>
+[CalendarNativeInherit]
+public class Calendar : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Ui.Format,Efl.Ui.Focus.Composition
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.CalendarNativeInherit nativeInherit = new Efl.Ui.CalendarNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Calendar))
+            return Efl.Ui.CalendarNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_calendar_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Calendar(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_calendar_class_get(), typeof(Calendar), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Calendar(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Calendar(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Calendar static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Calendar(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Emitted when the selected date in the calendar is changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_CALENDAR_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_CALENDAR_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+   }
+   /// <summary>The first day of week to use on calendar widgets.
+   /// This is the day that will appear in the left-most column (eg. Monday in France or Sunday in the US).</summary>
+   /// <returns>The first day of the week.</returns>
+   virtual public Efl.Ui.CalendarWeekday GetFirstDayOfWeek() {
+       var _ret_var = Efl.Ui.CalendarNativeInherit.efl_ui_calendar_first_day_of_week_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The first day of week to use on calendar widgets.
+   /// This is the day that will appear in the left-most column (eg. Monday in France or Sunday in the US).</summary>
+   /// <param name="day">The first day of the week.</param>
+   /// <returns></returns>
+   virtual public  void SetFirstDayOfWeek( Efl.Ui.CalendarWeekday day) {
+                         Efl.Ui.CalendarNativeInherit.efl_ui_calendar_first_day_of_week_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), day);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimum date.
+   /// Default value is 1 JAN,1902.</summary>
+   /// <returns>Time structure containing the minimum date.</returns>
+   virtual public Efl.Time GetDateMin() {
+       var _ret_var = Efl.Ui.CalendarNativeInherit.efl_ui_calendar_date_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Time_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Set the minimum date on calendar.
+   /// Set the minimum date, changing the displayed month or year if needed. Displayed day also to be disabled if it is smaller than minimum date. If the minimum date is greater than current maximum date, the minimum date would be changed to the maximum date with returning <c>false</c>.</summary>
+   /// <param name="min">Time structure containing the minimum date.</param>
+   /// <returns><c>true</c>, on success, <c>false</c> otherwise</returns>
+   virtual public bool SetDateMin( Efl.Time min) {
+       var _in_min = Efl.Time_StructConversion.ToInternal(min);
+                  var _ret_var = Efl.Ui.CalendarNativeInherit.efl_ui_calendar_date_min_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_min);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the maximum date.
+   /// Default maximum year is -1. Default maximum day and month are 31 and DEC.
+   /// 
+   /// If the maximum year is a negative value, it will be limited depending on the platform architecture (year 2037 for 32 bits);</summary>
+   /// <returns>Time structure containing the maximum date.</returns>
+   virtual public Efl.Time GetDateMax() {
+       var _ret_var = Efl.Ui.CalendarNativeInherit.efl_ui_calendar_date_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Time_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Set the maximum date on calendar.
+   /// Set the maximum date, changing the displayed month or year if needed. Displayed day also to be disabled if it is bigger than maximum date. If the maximum date is less than current minimum date, the maximum date would be changed to the minimum date with returning <c>false</c>.</summary>
+   /// <param name="max">Time structure containing the maximum date.</param>
+   /// <returns><c>true</c>, on success, <c>false</c> otherwise</returns>
+   virtual public bool SetDateMax( Efl.Time max) {
+       var _in_max = Efl.Time_StructConversion.ToInternal(max);
+                  var _ret_var = Efl.Ui.CalendarNativeInherit.efl_ui_calendar_date_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_max);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The selected date on calendar.</summary>
+   /// <returns>Time structure containing the selected date.</returns>
+   virtual public Efl.Time GetDate() {
+       var _ret_var = Efl.Ui.CalendarNativeInherit.efl_ui_calendar_date_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Time_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Set the selected date. If the date is greater than the maximum date, the date would be changed to the maximum date with returning <c>false</c>. In the opposite case with the minimum date, this would give the same result.</summary>
+   /// <param name="date">Time structure containing the selected date.</param>
+   /// <returns><c>true</c>, on success, <c>false</c> otherwise</returns>
+   virtual public bool SetDate( Efl.Time date) {
+       var _in_date = Efl.Time_StructConversion.ToInternal(date);
+                  var _ret_var = Efl.Ui.CalendarNativeInherit.efl_ui_calendar_date_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_date);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set the format function pointer to format the string.</summary>
+   /// <param name="func">The format function callback</param>
+   /// <returns></returns>
+   virtual public  void SetFormatCb( Efl.Ui.FormatFuncCb func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.Ui.FormatNativeInherit.efl_ui_format_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), Efl.Ui.FormatFuncCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <returns>The format string for <c>obj</c>&apos;s units label.</returns>
+   virtual public  System.String GetFormatString() {
+       var _ret_var = Efl.Ui.FormatNativeInherit.efl_ui_format_string_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <param name="units">The format string for <c>obj</c>&apos;s units label.</param>
+   /// <returns></returns>
+   virtual public  void SetFormatString(  System.String units) {
+                         Efl.Ui.FormatNativeInherit.efl_ui_format_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), units);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <returns>The order to use</returns>
+   virtual public Eina.List<Efl.Gfx.Entity> GetCompositionElements() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <param name="logical_order">The order to use</param>
+   /// <returns></returns>
+   virtual public  void SetCompositionElements( Eina.List<Efl.Gfx.Entity> logical_order) {
+       var _in_logical_order = logical_order.Handle;
+logical_order.Own = false;
+                  Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_logical_order);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <returns><c>true</c> or <c>false</c></returns>
+   virtual public bool GetLogicalMode() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <param name="logical_mode"><c>true</c> or <c>false</c></param>
+   /// <returns></returns>
+   virtual public  void SetLogicalMode( bool logical_mode) {
+                         Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), logical_mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Mark this widget as dirty, the children can be considered to be changed after that call</summary>
+   /// <returns></returns>
+   virtual public  void Dirty() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_dirty_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>A call to prepare the children of this element, called if marked as dirty
+   /// You can use this function to call composition_elements.</summary>
+   /// <returns></returns>
+   virtual public  void Prepare() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_prepare_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The first day of week to use on calendar widgets.
+/// This is the day that will appear in the left-most column (eg. Monday in France or Sunday in the US).</summary>
+/// <value>The first day of the week.</value>
+   public Efl.Ui.CalendarWeekday FirstDayOfWeek {
+      get { return GetFirstDayOfWeek(); }
+      set { SetFirstDayOfWeek( value); }
+   }
+   /// <summary>Minimum date on calendar.</summary>
+/// <value>Time structure containing the minimum date.</value>
+   public Efl.Time DateMin {
+      get { return GetDateMin(); }
+      set { SetDateMin( value); }
+   }
+   /// <summary>Maximum date on calendar.</summary>
+/// <value>Time structure containing the maximum date.</value>
+   public Efl.Time DateMax {
+      get { return GetDateMax(); }
+      set { SetDateMax( value); }
+   }
+   /// <summary>The selected date on calendar.</summary>
+/// <value>Time structure containing the selected date.</value>
+   public Efl.Time Date {
+      get { return GetDate(); }
+      set { SetDate( value); }
+   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+/// <value>The format function callback</value>
+   public Efl.Ui.FormatFuncCb FormatCb {
+      set { SetFormatCb( value); }
+   }
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <value>The format string for <c>obj</c>&apos;s units label.</value>
+   public  System.String FormatString {
+      get { return GetFormatString(); }
+      set { SetFormatString( value); }
+   }
+   /// <summary>Set the order of elements that will be used for composition
+/// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+/// 
+/// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+/// 
+/// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+/// 
+/// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+/// <value>The order to use</value>
+   public Eina.List<Efl.Gfx.Entity> CompositionElements {
+      get { return GetCompositionElements(); }
+      set { SetCompositionElements( value); }
+   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+/// <value><c>true</c> or <c>false</c></value>
+   public bool LogicalMode {
+      get { return GetLogicalMode(); }
+      set { SetLogicalMode( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Calendar.efl_ui_calendar_class_get();
+   }
+}
+public class CalendarNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_calendar_first_day_of_week_get_static_delegate == null)
+      efl_ui_calendar_first_day_of_week_get_static_delegate = new efl_ui_calendar_first_day_of_week_get_delegate(first_day_of_week_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_first_day_of_week_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_first_day_of_week_get_static_delegate)});
+      if (efl_ui_calendar_first_day_of_week_set_static_delegate == null)
+      efl_ui_calendar_first_day_of_week_set_static_delegate = new efl_ui_calendar_first_day_of_week_set_delegate(first_day_of_week_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_first_day_of_week_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_first_day_of_week_set_static_delegate)});
+      if (efl_ui_calendar_date_min_get_static_delegate == null)
+      efl_ui_calendar_date_min_get_static_delegate = new efl_ui_calendar_date_min_get_delegate(date_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_date_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_date_min_get_static_delegate)});
+      if (efl_ui_calendar_date_min_set_static_delegate == null)
+      efl_ui_calendar_date_min_set_static_delegate = new efl_ui_calendar_date_min_set_delegate(date_min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_date_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_date_min_set_static_delegate)});
+      if (efl_ui_calendar_date_max_get_static_delegate == null)
+      efl_ui_calendar_date_max_get_static_delegate = new efl_ui_calendar_date_max_get_delegate(date_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_date_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_date_max_get_static_delegate)});
+      if (efl_ui_calendar_date_max_set_static_delegate == null)
+      efl_ui_calendar_date_max_set_static_delegate = new efl_ui_calendar_date_max_set_delegate(date_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_date_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_date_max_set_static_delegate)});
+      if (efl_ui_calendar_date_get_static_delegate == null)
+      efl_ui_calendar_date_get_static_delegate = new efl_ui_calendar_date_get_delegate(date_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_date_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_date_get_static_delegate)});
+      if (efl_ui_calendar_date_set_static_delegate == null)
+      efl_ui_calendar_date_set_static_delegate = new efl_ui_calendar_date_set_delegate(date_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_date_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_date_set_static_delegate)});
+      if (efl_ui_format_cb_set_static_delegate == null)
+      efl_ui_format_cb_set_static_delegate = new efl_ui_format_cb_set_delegate(format_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_cb_set_static_delegate)});
+      if (efl_ui_format_string_get_static_delegate == null)
+      efl_ui_format_string_get_static_delegate = new efl_ui_format_string_get_delegate(format_string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_get_static_delegate)});
+      if (efl_ui_format_string_set_static_delegate == null)
+      efl_ui_format_string_set_static_delegate = new efl_ui_format_string_set_delegate(format_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_set_static_delegate)});
+      if (efl_ui_focus_composition_elements_get_static_delegate == null)
+      efl_ui_focus_composition_elements_get_static_delegate = new efl_ui_focus_composition_elements_get_delegate(composition_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_get_static_delegate)});
+      if (efl_ui_focus_composition_elements_set_static_delegate == null)
+      efl_ui_focus_composition_elements_set_static_delegate = new efl_ui_focus_composition_elements_set_delegate(composition_elements_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_set_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_get_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_get_static_delegate = new efl_ui_focus_composition_logical_mode_get_delegate(logical_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_get_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_set_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_set_static_delegate = new efl_ui_focus_composition_logical_mode_set_delegate(logical_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_set_static_delegate)});
+      if (efl_ui_focus_composition_dirty_static_delegate == null)
+      efl_ui_focus_composition_dirty_static_delegate = new efl_ui_focus_composition_dirty_delegate(dirty);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_dirty"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_dirty_static_delegate)});
+      if (efl_ui_focus_composition_prepare_static_delegate == null)
+      efl_ui_focus_composition_prepare_static_delegate = new efl_ui_focus_composition_prepare_delegate(prepare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_prepare"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_prepare_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Calendar.efl_ui_calendar_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Calendar.efl_ui_calendar_class_get();
+   }
+
+
+    private delegate Efl.Ui.CalendarWeekday efl_ui_calendar_first_day_of_week_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.CalendarWeekday efl_ui_calendar_first_day_of_week_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_first_day_of_week_get_api_delegate> efl_ui_calendar_first_day_of_week_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_first_day_of_week_get_api_delegate>(_Module, "efl_ui_calendar_first_day_of_week_get");
+    private static Efl.Ui.CalendarWeekday first_day_of_week_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_first_day_of_week_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.CalendarWeekday _ret_var = default(Efl.Ui.CalendarWeekday);
+         try {
+            _ret_var = ((Calendar)wrapper).GetFirstDayOfWeek();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_calendar_first_day_of_week_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_calendar_first_day_of_week_get_delegate efl_ui_calendar_first_day_of_week_get_static_delegate;
+
+
+    private delegate  void efl_ui_calendar_first_day_of_week_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.CalendarWeekday day);
+
+
+    public delegate  void efl_ui_calendar_first_day_of_week_set_api_delegate(System.IntPtr obj,   Efl.Ui.CalendarWeekday day);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_first_day_of_week_set_api_delegate> efl_ui_calendar_first_day_of_week_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_first_day_of_week_set_api_delegate>(_Module, "efl_ui_calendar_first_day_of_week_set");
+    private static  void first_day_of_week_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.CalendarWeekday day)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_first_day_of_week_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Calendar)wrapper).SetFirstDayOfWeek( day);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_calendar_first_day_of_week_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  day);
+      }
+   }
+   private static efl_ui_calendar_first_day_of_week_set_delegate efl_ui_calendar_first_day_of_week_set_static_delegate;
+
+
+    private delegate Efl.Time_StructInternal efl_ui_calendar_date_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Time_StructInternal efl_ui_calendar_date_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_date_min_get_api_delegate> efl_ui_calendar_date_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_date_min_get_api_delegate>(_Module, "efl_ui_calendar_date_min_get");
+    private static Efl.Time_StructInternal date_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_date_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Time _ret_var = default(Efl.Time);
+         try {
+            _ret_var = ((Calendar)wrapper).GetDateMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Time_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_calendar_date_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_calendar_date_min_get_delegate efl_ui_calendar_date_min_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_calendar_date_min_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Time_StructInternal min);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_calendar_date_min_set_api_delegate(System.IntPtr obj,   Efl.Time_StructInternal min);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_date_min_set_api_delegate> efl_ui_calendar_date_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_date_min_set_api_delegate>(_Module, "efl_ui_calendar_date_min_set");
+    private static bool date_min_set(System.IntPtr obj, System.IntPtr pd,  Efl.Time_StructInternal min)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_date_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_min = Efl.Time_StructConversion.ToManaged(min);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Calendar)wrapper).SetDateMin( _in_min);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_calendar_date_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min);
+      }
+   }
+   private static efl_ui_calendar_date_min_set_delegate efl_ui_calendar_date_min_set_static_delegate;
+
+
+    private delegate Efl.Time_StructInternal efl_ui_calendar_date_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Time_StructInternal efl_ui_calendar_date_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_date_max_get_api_delegate> efl_ui_calendar_date_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_date_max_get_api_delegate>(_Module, "efl_ui_calendar_date_max_get");
+    private static Efl.Time_StructInternal date_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_date_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Time _ret_var = default(Efl.Time);
+         try {
+            _ret_var = ((Calendar)wrapper).GetDateMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Time_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_calendar_date_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_calendar_date_max_get_delegate efl_ui_calendar_date_max_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_calendar_date_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Time_StructInternal max);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_calendar_date_max_set_api_delegate(System.IntPtr obj,   Efl.Time_StructInternal max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_date_max_set_api_delegate> efl_ui_calendar_date_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_date_max_set_api_delegate>(_Module, "efl_ui_calendar_date_max_set");
+    private static bool date_max_set(System.IntPtr obj, System.IntPtr pd,  Efl.Time_StructInternal max)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_date_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_max = Efl.Time_StructConversion.ToManaged(max);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Calendar)wrapper).SetDateMax( _in_max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_calendar_date_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  max);
+      }
+   }
+   private static efl_ui_calendar_date_max_set_delegate efl_ui_calendar_date_max_set_static_delegate;
+
+
+    private delegate Efl.Time_StructInternal efl_ui_calendar_date_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Time_StructInternal efl_ui_calendar_date_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_date_get_api_delegate> efl_ui_calendar_date_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_date_get_api_delegate>(_Module, "efl_ui_calendar_date_get");
+    private static Efl.Time_StructInternal date_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_date_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Time _ret_var = default(Efl.Time);
+         try {
+            _ret_var = ((Calendar)wrapper).GetDate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Time_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_calendar_date_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_calendar_date_get_delegate efl_ui_calendar_date_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_calendar_date_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Time_StructInternal date);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_calendar_date_set_api_delegate(System.IntPtr obj,   Efl.Time_StructInternal date);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_date_set_api_delegate> efl_ui_calendar_date_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_date_set_api_delegate>(_Module, "efl_ui_calendar_date_set");
+    private static bool date_set(System.IntPtr obj, System.IntPtr pd,  Efl.Time_StructInternal date)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_date_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_date = Efl.Time_StructConversion.ToManaged(date);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Calendar)wrapper).SetDate( _in_date);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_calendar_date_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  date);
+      }
+   }
+   private static efl_ui_calendar_date_set_delegate efl_ui_calendar_date_set_static_delegate;
+
+
+    private delegate  void efl_ui_format_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_ui_format_cb_set_api_delegate(System.IntPtr obj,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate> efl_ui_format_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate>(_Module, "efl_ui_format_cb_set");
+    private static  void format_cb_set(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_ui_format_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              Efl.Ui.FormatFuncCbWrapper func_wrapper = new Efl.Ui.FormatFuncCbWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((Calendar)wrapper).SetFormatCb( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_ui_format_cb_set_delegate efl_ui_format_cb_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_format_string_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_format_string_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate> efl_ui_format_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate>(_Module, "efl_ui_format_string_get");
+    private static  System.String format_string_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Calendar)wrapper).GetFormatString();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_format_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_format_string_get_delegate efl_ui_format_string_get_static_delegate;
+
+
+    private delegate  void efl_ui_format_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+
+
+    public delegate  void efl_ui_format_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate> efl_ui_format_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate>(_Module, "efl_ui_format_string_set");
+    private static  void format_string_set(System.IntPtr obj, System.IntPtr pd,   System.String units)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Calendar)wrapper).SetFormatString( units);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  units);
+      }
+   }
+   private static efl_ui_format_string_set_delegate efl_ui_format_string_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_composition_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_composition_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate> efl_ui_focus_composition_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate>(_Module, "efl_ui_focus_composition_elements_get");
+    private static  System.IntPtr composition_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Gfx.Entity> _ret_var = default(Eina.List<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Calendar)wrapper).GetCompositionElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_composition_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_elements_get_delegate efl_ui_focus_composition_elements_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_elements_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr logical_order);
+
+
+    public delegate  void efl_ui_focus_composition_elements_set_api_delegate(System.IntPtr obj,    System.IntPtr logical_order);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate> efl_ui_focus_composition_elements_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate>(_Module, "efl_ui_focus_composition_elements_set");
+    private static  void composition_elements_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr logical_order)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_logical_order = new Eina.List<Efl.Gfx.Entity>(logical_order, true, false);
+                     
+         try {
+            ((Calendar)wrapper).SetCompositionElements( _in_logical_order);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_elements_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_order);
+      }
+   }
+   private static efl_ui_focus_composition_elements_set_delegate efl_ui_focus_composition_elements_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_composition_logical_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_composition_logical_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate> efl_ui_focus_composition_logical_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_get");
+    private static bool logical_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Calendar)wrapper).GetLogicalMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_get_delegate efl_ui_focus_composition_logical_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_logical_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+
+
+    public delegate  void efl_ui_focus_composition_logical_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate> efl_ui_focus_composition_logical_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_set");
+    private static  void logical_mode_set(System.IntPtr obj, System.IntPtr pd,  bool logical_mode)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Calendar)wrapper).SetLogicalMode( logical_mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_mode);
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_set_delegate efl_ui_focus_composition_logical_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_dirty_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_dirty_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate> efl_ui_focus_composition_dirty_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate>(_Module, "efl_ui_focus_composition_dirty");
+    private static  void dirty(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_dirty was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Calendar)wrapper).Dirty();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_dirty_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_dirty_delegate efl_ui_focus_composition_dirty_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_prepare_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_prepare_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate> efl_ui_focus_composition_prepare_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate>(_Module, "efl_ui_focus_composition_prepare");
+    private static  void prepare(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_prepare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Calendar)wrapper).Prepare();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_prepare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_prepare_delegate efl_ui_focus_composition_prepare_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>A weekday
+/// See also <see cref="Efl.Ui.Calendar.SetFirstDayOfWeek"/>.</summary>
+public enum CalendarWeekday
+{
+/// <summary>Sunday weekday</summary>
+Sunday = 0,
+/// <summary>Monday weekday</summary>
+Monday = 1,
+/// <summary>Tuesday weekday</summary>
+Tuesday = 2,
+/// <summary>Wednesday weekday</summary>
+Wednesday = 3,
+/// <summary>Thursday weekday</summary>
+Thursday = 4,
+/// <summary>Friday weekday</summary>
+Friday = 5,
+/// <summary>Saturday weekday</summary>
+Saturday = 6,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 7,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_calendar_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_calendar_item.eo.cs
new file mode 100755 (executable)
index 0000000..e4838aa
--- /dev/null
@@ -0,0 +1,800 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>EFL UI Calendar Item class</summary>
+[CalendarItemNativeInherit]
+public class CalendarItem : Efl.Object, Efl.Eo.IWrapper,Efl.Ui.Focus.Object
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.CalendarItemNativeInherit nativeInherit = new Efl.Ui.CalendarItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CalendarItem))
+            return Efl.Ui.CalendarItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_calendar_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public CalendarItem(Efl.Object parent= null
+         ) :
+      base(efl_ui_calendar_item_class_get(), typeof(CalendarItem), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CalendarItem(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected CalendarItem(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static CalendarItem static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CalendarItem(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object FocusChangedEvtKey = new object();
+   /// <summary>Emitted if the focus state has changed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args> FocusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FocusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(FocusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_FocusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusChangedEvt.</summary>
+   public void On_FocusChangedEvt(Efl.Ui.Focus.ObjectFocusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args>)eventHandlers[FocusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusChangedEvt_delegate;
+   private void on_FocusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocusChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocusChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_FocusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_managerChangedEvtKey = new object();
+   /// <summary>Emitted when a new manager is the parent for this object.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args> Focus_managerChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_MANAGER_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_managerChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_managerChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_MANAGER_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_managerChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_managerChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_managerChangedEvt.</summary>
+   public void On_Focus_managerChangedEvt(Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args>)eventHandlers[Focus_managerChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_managerChangedEvt_delegate;
+   private void on_Focus_managerChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_Focus_managerChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_parentChangedEvtKey = new object();
+   /// <summary>Emitted when a new logical parent should be used.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args> Focus_parentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_PARENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_parentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_parentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_PARENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_parentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_parentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_parentChangedEvt.</summary>
+   public void On_Focus_parentChangedEvt(Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args>)eventHandlers[Focus_parentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_parentChangedEvt_delegate;
+   private void on_Focus_parentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Focus_parentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Child_focusChangedEvtKey = new object();
+   /// <summary>Emitted if child_focus has changed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args> Child_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_CHILD_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Child_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Child_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_CHILD_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Child_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Child_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Child_focusChangedEvt.</summary>
+   public void On_Child_focusChangedEvt(Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args>)eventHandlers[Child_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Child_focusChangedEvt_delegate;
+   private void on_Child_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args args = new Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Child_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_geometryChangedEvtKey = new object();
+   /// <summary>Emitted if focus geometry of this object has changed.
+   /// 1.20</summary>
+   public event EventHandler Focus_geometryChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_GEOMETRY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_geometryChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_geometryChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_GEOMETRY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_geometryChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_geometryChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_geometryChangedEvt.</summary>
+   public void On_Focus_geometryChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Focus_geometryChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_geometryChangedEvt_delegate;
+   private void on_Focus_geometryChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Focus_geometryChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_FocusChangedEvt_delegate = new Efl.EventCb(on_FocusChangedEvt_NativeCallback);
+      evt_Focus_managerChangedEvt_delegate = new Efl.EventCb(on_Focus_managerChangedEvt_NativeCallback);
+      evt_Focus_parentChangedEvt_delegate = new Efl.EventCb(on_Focus_parentChangedEvt_NativeCallback);
+      evt_Child_focusChangedEvt_delegate = new Efl.EventCb(on_Child_focusChangedEvt_NativeCallback);
+      evt_Focus_geometryChangedEvt_delegate = new Efl.EventCb(on_Focus_geometryChangedEvt_NativeCallback);
+   }
+   /// <summary>Day number</summary>
+   /// <returns>Day number</returns>
+   virtual public  int GetDayNumber() {
+       var _ret_var = Efl.Ui.CalendarItemNativeInherit.efl_ui_calendar_item_day_number_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Day number</summary>
+   /// <param name="i">Day number</param>
+   /// <returns></returns>
+   virtual public  void SetDayNumber(  int i) {
+                         Efl.Ui.CalendarItemNativeInherit.efl_ui_calendar_item_day_number_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), i);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+   /// 1.20</summary>
+   /// <returns>The geometry to use.
+   /// 1.20</returns>
+   virtual public Eina.Rect GetFocusGeometry() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Returns whether the widget is currently focused or not.
+   /// 1.20</summary>
+   /// <returns>The focused state of the object.
+   /// 1.20</returns>
+   virtual public bool GetFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This is called by the manager and should never be called by anyone else.
+   /// The function emits the focus state events, if focus is different to the previous state.
+   /// 1.20</summary>
+   /// <param name="focus">The focused state of the object.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFocus( bool focus) {
+                         Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+   /// 1.20</summary>
+   /// <returns>The manager object
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetFocusManager() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_manager_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Describes which logical parent is used by this object.
+   /// 1.20</summary>
+   /// <returns>The focus parent.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetFocusParent() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates if a child of this object has focus set to true.
+   /// 1.20</summary>
+   /// <returns><c>true</c> if a child has focus.
+   /// 1.20</returns>
+   virtual public bool GetChildFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_child_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates if a child of this object has focus set to true.
+   /// 1.20</summary>
+   /// <param name="child_focus"><c>true</c> if a child has focus.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetChildFocus( bool child_focus) {
+                         Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_child_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child_focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Tells the object that its children will be queried soon by the focus manager. Overwrite this to update the order of the children. Deleting items in this call will result in undefined behaviour and may cause your system to crash.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void SetupOrder() {
+       Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_setup_order_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This is called when <see cref="Efl.Ui.Focus.Object.SetupOrder"/> is called, but only on the first call, additional recursive calls to <see cref="Efl.Ui.Focus.Object.SetupOrder"/> will not call this function again.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void SetupOrderNonRecursive() {
+       Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_setup_order_non_recursive_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Virtual function handling focus in/out events on the widget
+   /// 1.20</summary>
+   /// <returns><c>true</c> if this widget can handle focus, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool UpdateOnFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_on_focus_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Day number</summary>
+/// <value>Day number</value>
+   public  int DayNumber {
+      get { return GetDayNumber(); }
+      set { SetDayNumber( value); }
+   }
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+/// 1.20</summary>
+/// <value>The geometry to use.
+/// 1.20</value>
+   public Eina.Rect FocusGeometry {
+      get { return GetFocusGeometry(); }
+   }
+   /// <summary>Returns whether the widget is currently focused or not.
+/// 1.20</summary>
+/// <value>The focused state of the object.
+/// 1.20</value>
+   public bool Focus {
+      get { return GetFocus(); }
+      set { SetFocus( value); }
+   }
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+/// 1.20</summary>
+/// <value>The manager object
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager FocusManager {
+      get { return GetFocusManager(); }
+   }
+   /// <summary>Describes which logical parent is used by this object.
+/// 1.20</summary>
+/// <value>The focus parent.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object FocusParent {
+      get { return GetFocusParent(); }
+   }
+   /// <summary>Indicates if a child of this object has focus set to true.
+/// 1.20</summary>
+/// <value><c>true</c> if a child has focus.
+/// 1.20</value>
+   public bool ChildFocus {
+      get { return GetChildFocus(); }
+      set { SetChildFocus( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.CalendarItem.efl_ui_calendar_item_class_get();
+   }
+}
+public class CalendarItemNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_calendar_item_day_number_get_static_delegate == null)
+      efl_ui_calendar_item_day_number_get_static_delegate = new efl_ui_calendar_item_day_number_get_delegate(day_number_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_item_day_number_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_item_day_number_get_static_delegate)});
+      if (efl_ui_calendar_item_day_number_set_static_delegate == null)
+      efl_ui_calendar_item_day_number_set_static_delegate = new efl_ui_calendar_item_day_number_set_delegate(day_number_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_calendar_item_day_number_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_calendar_item_day_number_set_static_delegate)});
+      if (efl_ui_focus_object_focus_geometry_get_static_delegate == null)
+      efl_ui_focus_object_focus_geometry_get_static_delegate = new efl_ui_focus_object_focus_geometry_get_delegate(focus_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_geometry_get_static_delegate)});
+      if (efl_ui_focus_object_focus_get_static_delegate == null)
+      efl_ui_focus_object_focus_get_static_delegate = new efl_ui_focus_object_focus_get_delegate(focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_get_static_delegate)});
+      if (efl_ui_focus_object_focus_set_static_delegate == null)
+      efl_ui_focus_object_focus_set_static_delegate = new efl_ui_focus_object_focus_set_delegate(focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_set_static_delegate)});
+      if (efl_ui_focus_object_focus_manager_get_static_delegate == null)
+      efl_ui_focus_object_focus_manager_get_static_delegate = new efl_ui_focus_object_focus_manager_get_delegate(focus_manager_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_manager_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_manager_get_static_delegate)});
+      if (efl_ui_focus_object_focus_parent_get_static_delegate == null)
+      efl_ui_focus_object_focus_parent_get_static_delegate = new efl_ui_focus_object_focus_parent_get_delegate(focus_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_parent_get_static_delegate)});
+      if (efl_ui_focus_object_child_focus_get_static_delegate == null)
+      efl_ui_focus_object_child_focus_get_static_delegate = new efl_ui_focus_object_child_focus_get_delegate(child_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_child_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_child_focus_get_static_delegate)});
+      if (efl_ui_focus_object_child_focus_set_static_delegate == null)
+      efl_ui_focus_object_child_focus_set_static_delegate = new efl_ui_focus_object_child_focus_set_delegate(child_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_child_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_child_focus_set_static_delegate)});
+      if (efl_ui_focus_object_setup_order_static_delegate == null)
+      efl_ui_focus_object_setup_order_static_delegate = new efl_ui_focus_object_setup_order_delegate(setup_order);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_setup_order"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_setup_order_static_delegate)});
+      if (efl_ui_focus_object_setup_order_non_recursive_static_delegate == null)
+      efl_ui_focus_object_setup_order_non_recursive_static_delegate = new efl_ui_focus_object_setup_order_non_recursive_delegate(setup_order_non_recursive);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_setup_order_non_recursive"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_setup_order_non_recursive_static_delegate)});
+      if (efl_ui_focus_object_on_focus_update_static_delegate == null)
+      efl_ui_focus_object_on_focus_update_static_delegate = new efl_ui_focus_object_on_focus_update_delegate(on_focus_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_on_focus_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_on_focus_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.CalendarItem.efl_ui_calendar_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.CalendarItem.efl_ui_calendar_item_class_get();
+   }
+
+
+    private delegate  int efl_ui_calendar_item_day_number_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_calendar_item_day_number_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_item_day_number_get_api_delegate> efl_ui_calendar_item_day_number_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_item_day_number_get_api_delegate>(_Module, "efl_ui_calendar_item_day_number_get");
+    private static  int day_number_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_item_day_number_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((CalendarItem)wrapper).GetDayNumber();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_calendar_item_day_number_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_calendar_item_day_number_get_delegate efl_ui_calendar_item_day_number_get_static_delegate;
+
+
+    private delegate  void efl_ui_calendar_item_day_number_set_delegate(System.IntPtr obj, System.IntPtr pd,    int i);
+
+
+    public delegate  void efl_ui_calendar_item_day_number_set_api_delegate(System.IntPtr obj,    int i);
+    public static Efl.Eo.FunctionWrapper<efl_ui_calendar_item_day_number_set_api_delegate> efl_ui_calendar_item_day_number_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_calendar_item_day_number_set_api_delegate>(_Module, "efl_ui_calendar_item_day_number_set");
+    private static  void day_number_set(System.IntPtr obj, System.IntPtr pd,   int i)
+   {
+      Eina.Log.Debug("function efl_ui_calendar_item_day_number_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CalendarItem)wrapper).SetDayNumber( i);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_calendar_item_day_number_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  i);
+      }
+   }
+   private static efl_ui_calendar_item_day_number_set_delegate efl_ui_calendar_item_day_number_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_focus_object_focus_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_focus_object_focus_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_geometry_get_api_delegate> efl_ui_focus_object_focus_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_geometry_get_api_delegate>(_Module, "efl_ui_focus_object_focus_geometry_get");
+    private static Eina.Rect_StructInternal focus_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((CalendarItem)wrapper).GetFocusGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_object_focus_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_geometry_get_delegate efl_ui_focus_object_focus_geometry_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_get_api_delegate> efl_ui_focus_object_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_get_api_delegate>(_Module, "efl_ui_focus_object_focus_get");
+    private static bool focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((CalendarItem)wrapper).GetFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_get_delegate efl_ui_focus_object_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+
+
+    public delegate  void efl_ui_focus_object_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_set_api_delegate> efl_ui_focus_object_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_set_api_delegate>(_Module, "efl_ui_focus_object_focus_set");
+    private static  void focus_set(System.IntPtr obj, System.IntPtr pd,  bool focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CalendarItem)wrapper).SetFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_object_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_object_focus_set_delegate efl_ui_focus_object_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_object_focus_manager_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_object_focus_manager_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_manager_get_api_delegate> efl_ui_focus_object_focus_manager_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_manager_get_api_delegate>(_Module, "efl_ui_focus_object_focus_manager_get");
+    private static Efl.Ui.Focus.Manager focus_manager_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_manager_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((CalendarItem)wrapper).GetFocusManager();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_manager_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_manager_get_delegate efl_ui_focus_object_focus_manager_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_object_focus_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_object_focus_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_parent_get_api_delegate> efl_ui_focus_object_focus_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_parent_get_api_delegate>(_Module, "efl_ui_focus_object_focus_parent_get");
+    private static Efl.Ui.Focus.Object focus_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((CalendarItem)wrapper).GetFocusParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_parent_get_delegate efl_ui_focus_object_focus_parent_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_child_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_child_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_get_api_delegate> efl_ui_focus_object_child_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_get_api_delegate>(_Module, "efl_ui_focus_object_child_focus_get");
+    private static bool child_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_child_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((CalendarItem)wrapper).GetChildFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_child_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_child_focus_get_delegate efl_ui_focus_object_child_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_child_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool child_focus);
+
+
+    public delegate  void efl_ui_focus_object_child_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool child_focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_set_api_delegate> efl_ui_focus_object_child_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_set_api_delegate>(_Module, "efl_ui_focus_object_child_focus_set");
+    private static  void child_focus_set(System.IntPtr obj, System.IntPtr pd,  bool child_focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_child_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CalendarItem)wrapper).SetChildFocus( child_focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_object_child_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_focus);
+      }
+   }
+   private static efl_ui_focus_object_child_focus_set_delegate efl_ui_focus_object_child_focus_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_setup_order_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_object_setup_order_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_api_delegate> efl_ui_focus_object_setup_order_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_api_delegate>(_Module, "efl_ui_focus_object_setup_order");
+    private static  void setup_order(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_setup_order was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((CalendarItem)wrapper).SetupOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_object_setup_order_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_setup_order_delegate efl_ui_focus_object_setup_order_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_setup_order_non_recursive_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_object_setup_order_non_recursive_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_non_recursive_api_delegate> efl_ui_focus_object_setup_order_non_recursive_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_non_recursive_api_delegate>(_Module, "efl_ui_focus_object_setup_order_non_recursive");
+    private static  void setup_order_non_recursive(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_setup_order_non_recursive was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((CalendarItem)wrapper).SetupOrderNonRecursive();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_object_setup_order_non_recursive_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_setup_order_non_recursive_delegate efl_ui_focus_object_setup_order_non_recursive_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_on_focus_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_on_focus_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_on_focus_update_api_delegate> efl_ui_focus_object_on_focus_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_on_focus_update_api_delegate>(_Module, "efl_ui_focus_object_on_focus_update");
+    private static bool on_focus_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_on_focus_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((CalendarItem)wrapper).UpdateOnFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_on_focus_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_on_focus_update_delegate efl_ui_focus_object_on_focus_update_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_check.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_check.eo.cs
new file mode 100755 (executable)
index 0000000..5f4a424
--- /dev/null
@@ -0,0 +1,170 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Check widget
+/// The check widget allows for toggling a value between true and false. Check objects are a lot like radio objects in layout and functionality, except they do not work as a group, but independently, and only toggle the value of a boolean between false and true.</summary>
+[CheckNativeInherit]
+public class Check : Efl.Ui.Nstate, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.CheckNativeInherit nativeInherit = new Efl.Ui.CheckNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Check))
+            return Efl.Ui.CheckNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_check_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Check(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_check_class_get(), typeof(Check), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Check(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Check(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Check static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Check(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The on/off state of the check object.</summary>
+   /// <returns><c>true</c> if the check object is selected, <c>false</c> otherwise</returns>
+   virtual public bool GetSelected() {
+       var _ret_var = Efl.Ui.CheckNativeInherit.efl_ui_check_selected_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The on/off state of the check object.</summary>
+   /// <param name="value"><c>true</c> if the check object is selected, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetSelected( bool value) {
+                         Efl.Ui.CheckNativeInherit.efl_ui_check_selected_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The on/off state of the check object.</summary>
+/// <value><c>true</c> if the check object is selected, <c>false</c> otherwise</value>
+   public bool Selected {
+      get { return GetSelected(); }
+      set { SetSelected( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Check.efl_ui_check_class_get();
+   }
+}
+public class CheckNativeInherit : Efl.Ui.NstateNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_check_selected_get_static_delegate == null)
+      efl_ui_check_selected_get_static_delegate = new efl_ui_check_selected_get_delegate(selected_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_check_selected_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_check_selected_get_static_delegate)});
+      if (efl_ui_check_selected_set_static_delegate == null)
+      efl_ui_check_selected_set_static_delegate = new efl_ui_check_selected_set_delegate(selected_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_check_selected_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_check_selected_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Check.efl_ui_check_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Check.efl_ui_check_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_check_selected_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_check_selected_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_check_selected_get_api_delegate> efl_ui_check_selected_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_check_selected_get_api_delegate>(_Module, "efl_ui_check_selected_get");
+    private static bool selected_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_check_selected_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Check)wrapper).GetSelected();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_check_selected_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_check_selected_get_delegate efl_ui_check_selected_get_static_delegate;
+
+
+    private delegate  void efl_ui_check_selected_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool value);
+
+
+    public delegate  void efl_ui_check_selected_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool value);
+    public static Efl.Eo.FunctionWrapper<efl_ui_check_selected_set_api_delegate> efl_ui_check_selected_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_check_selected_set_api_delegate>(_Module, "efl_ui_check_selected_set");
+    private static  void selected_set(System.IntPtr obj, System.IntPtr pd,  bool value)
+   {
+      Eina.Log.Debug("function efl_ui_check_selected_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Check)wrapper).SetSelected( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_check_selected_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_ui_check_selected_set_delegate efl_ui_check_selected_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_check_legacy_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_check_legacy_part.eo.cs
new file mode 100755 (executable)
index 0000000..4962d59
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary check internal part class</summary>
+[CheckLegacyPartNativeInherit]
+public class CheckLegacyPart : Efl.Ui.LayoutPartContent, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.CheckLegacyPartNativeInherit nativeInherit = new Efl.Ui.CheckLegacyPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CheckLegacyPart))
+            return Efl.Ui.CheckLegacyPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_check_legacy_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public CheckLegacyPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_check_legacy_part_class_get(), typeof(CheckLegacyPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CheckLegacyPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected CheckLegacyPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static CheckLegacyPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CheckLegacyPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.CheckLegacyPart.efl_ui_check_legacy_part_class_get();
+   }
+}
+public class CheckLegacyPartNativeInherit : Efl.Ui.LayoutPartContentNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.CheckLegacyPart.efl_ui_check_legacy_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.CheckLegacyPart.efl_ui_check_legacy_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_clickable.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_clickable.eo.cs
new file mode 100755 (executable)
index 0000000..2fdc645
--- /dev/null
@@ -0,0 +1,552 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI clickable interface</summary>
+[ClickableNativeInherit]
+public interface Clickable : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Called when object is clicked</summary>
+   event EventHandler ClickedEvt;
+   /// <summary>Called when object receives a double click</summary>
+   event EventHandler ClickedDoubleEvt;
+   /// <summary>Called when object receives a triple click</summary>
+   event EventHandler ClickedTripleEvt;
+   /// <summary>Called when object receives a right click</summary>
+   event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt;
+   /// <summary>Called when the object is pressed</summary>
+   event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt;
+   /// <summary>Called when the object is no longer pressed</summary>
+   event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt;
+   /// <summary>Called when the object receives a long press</summary>
+   event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt;
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   event EventHandler RepeatedEvt;
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Clickable.ClickedRightEvt"/>.</summary>
+public class ClickableClickedRightEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Clickable.PressedEvt"/>.</summary>
+public class ClickablePressedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Clickable.UnpressedEvt"/>.</summary>
+public class ClickableUnpressedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Clickable.LongpressedEvt"/>.</summary>
+public class ClickableLongpressedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+/// <summary>Efl UI clickable interface</summary>
+sealed public class ClickableConcrete : 
+
+Clickable
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ClickableConcrete))
+            return Efl.Ui.ClickableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_clickable_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ClickableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ClickableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ClickableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ClickableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+   }
+}
+public class ClickableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ClickableConcrete.efl_ui_clickable_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ClickableConcrete.efl_ui_clickable_interface_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_clock.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_clock.eo.cs
new file mode 100755 (executable)
index 0000000..7c2d068
--- /dev/null
@@ -0,0 +1,877 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI clock class</summary>
+[ClockNativeInherit]
+public class Clock : Efl.Ui.LayoutBase, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ClockNativeInherit nativeInherit = new Efl.Ui.ClockNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Clock))
+            return Efl.Ui.ClockNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_clock_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Clock(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_clock_class_get(), typeof(Clock), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Clock(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Clock(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Clock static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Clock(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when clock changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_CLOCK_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_CLOCK_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+   }
+   /// <summary>The current clock format. Format is a combination of allowed Libc date format specifiers like: &quot;%b %d, %Y %I : %M %p&quot;.
+   /// Maximum allowed format length is 64 chars.
+   /// 
+   /// Format can include separators for each individual clock field except for AM/PM field.
+   /// 
+   /// Each separator can be a maximum of 6 UTF-8 bytes. Space is also taken as a separator.
+   /// 
+   /// These specifiers can be arranged in any order and the widget will display the fields accordingly.
+   /// 
+   /// Default format is taken as per the system locale settings.</summary>
+   /// <returns>The clock format.</returns>
+   virtual public  System.String GetFormat() {
+       var _ret_var = Efl.Ui.ClockNativeInherit.efl_ui_clock_format_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The current clock format. Format is a combination of allowed Libc date format specifiers like: &quot;%b %d, %Y %I : %M %p&quot;.
+   /// Maximum allowed format length is 64 chars.
+   /// 
+   /// Format can include separators for each individual clock field except for AM/PM field.
+   /// 
+   /// Each separator can be a maximum of 6 UTF-8 bytes. Space is also taken as a separator.
+   /// 
+   /// These specifiers can be arranged in any order and the widget will display the fields accordingly.
+   /// 
+   /// Default format is taken as per the system locale settings.</summary>
+   /// <param name="fmt">The clock format.</param>
+   /// <returns></returns>
+   virtual public  void SetFormat(  System.String fmt) {
+                         Efl.Ui.ClockNativeInherit.efl_ui_clock_format_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fmt);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether the given clock widget should be paused or not.
+   /// This function pauses or starts the clock widget.</summary>
+   /// <returns><c>true</c> to pause clock, <c>false</c> otherwise</returns>
+   virtual public bool GetPause() {
+       var _ret_var = Efl.Ui.ClockNativeInherit.efl_ui_clock_pause_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether the given clock widget should be paused or not.
+   /// This function pauses or starts the clock widget.</summary>
+   /// <param name="paused"><c>true</c> to pause clock, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPause( bool paused) {
+                         Efl.Ui.ClockNativeInherit.efl_ui_clock_pause_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), paused);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Digits of the given clock widget should be editable when in editing mode.</summary>
+   /// <returns><c>true</c> to set edit mode, <c>false</c> otherwise</returns>
+   virtual public bool GetEditMode() {
+       var _ret_var = Efl.Ui.ClockNativeInherit.efl_ui_clock_edit_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Digits of the given clock widget should be editable when in editing mode.</summary>
+   /// <param name="value"><c>true</c> to set edit mode, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetEditMode( bool value) {
+                         Efl.Ui.ClockNativeInherit.efl_ui_clock_edit_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The lower boundary of a field.
+   /// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+   /// 
+   /// Month: default value range is from 0 to 11.
+   /// 
+   /// Date: default value range is from 1 to 31 according to the month value.
+   /// 
+   /// Hour: default value will be in terms of 24 hr format (0~23)
+   /// 
+   /// Minute: default value range is from 0 to 59.</summary>
+   /// <returns>Time structure containing the minimum time value.</returns>
+   virtual public Efl.Time GetTimeMin() {
+       var _ret_var = Efl.Ui.ClockNativeInherit.efl_ui_clock_time_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Time_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The lower boundary of a field.
+   /// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+   /// 
+   /// Month: default value range is from 0 to 11.
+   /// 
+   /// Date: default value range is from 1 to 31 according to the month value.
+   /// 
+   /// Hour: default value will be in terms of 24 hr format (0~23)
+   /// 
+   /// Minute: default value range is from 0 to 59.</summary>
+   /// <param name="mintime">Time structure containing the minimum time value.</param>
+   /// <returns></returns>
+   virtual public  void SetTimeMin( Efl.Time mintime) {
+       var _in_mintime = Efl.Time_StructConversion.ToInternal(mintime);
+                  Efl.Ui.ClockNativeInherit.efl_ui_clock_time_min_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_mintime);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The upper boundary of a field.
+   /// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+   /// 
+   /// Month: default value range is from 0 to 11.
+   /// 
+   /// Date: default value range is from 1 to 31 according to the month value.
+   /// 
+   /// Hour: default value will be in terms of 24 hr format (0~23)
+   /// 
+   /// Minute: default value range is from 0 to 59.</summary>
+   /// <returns>Time structure containing the maximum time value.</returns>
+   virtual public Efl.Time GetTimeMax() {
+       var _ret_var = Efl.Ui.ClockNativeInherit.efl_ui_clock_time_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Time_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The upper boundary of a field.
+   /// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+   /// 
+   /// Month: default value range is from 0 to 11.
+   /// 
+   /// Date: default value range is from 1 to 31 according to the month value.
+   /// 
+   /// Hour: default value will be in terms of 24 hr format (0~23)
+   /// 
+   /// Minute: default value range is from 0 to 59.</summary>
+   /// <param name="maxtime">Time structure containing the maximum time value.</param>
+   /// <returns></returns>
+   virtual public  void SetTimeMax( Efl.Time maxtime) {
+       var _in_maxtime = Efl.Time_StructConversion.ToInternal(maxtime);
+                  Efl.Ui.ClockNativeInherit.efl_ui_clock_time_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_maxtime);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The current value of a clock object.
+   /// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+   /// 
+   /// Month: default value range is from 0 to 11.
+   /// 
+   /// Date: default value range is from 1 to 31 according to the month value.
+   /// 
+   /// Hour: default value will be in terms of 24 hr format (0~23)
+   /// 
+   /// Minute: default value range is from 0 to 59.</summary>
+   /// <returns>Time structure containing the time value.</returns>
+   virtual public Efl.Time GetTime() {
+       var _ret_var = Efl.Ui.ClockNativeInherit.efl_ui_clock_time_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Time_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The current value of a clock object.
+   /// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+   /// 
+   /// Month: default value range is from 0 to 11.
+   /// 
+   /// Date: default value range is from 1 to 31 according to the month value.
+   /// 
+   /// Hour: default value will be in terms of 24 hr format (0~23)
+   /// 
+   /// Minute: default value range is from 0 to 59.</summary>
+   /// <param name="curtime">Time structure containing the time value.</param>
+   /// <returns></returns>
+   virtual public  void SetTime( Efl.Time curtime) {
+       var _in_curtime = Efl.Time_StructConversion.ToInternal(curtime);
+                  Efl.Ui.ClockNativeInherit.efl_ui_clock_time_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_curtime);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The field to be visible/not.</summary>
+   /// <param name="fieldtype">Type of the field. #EFL_UI_CLOCK_TYPE_YEAR etc.</param>
+   /// <returns><c>true</c> field can be visible, <c>false</c> otherwise.</returns>
+   virtual public bool GetFieldVisible( Efl.Ui.ClockType fieldtype) {
+                         var _ret_var = Efl.Ui.ClockNativeInherit.efl_ui_clock_field_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fieldtype);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The field to be visible/not.</summary>
+   /// <param name="fieldtype">Type of the field. #EFL_UI_CLOCK_TYPE_YEAR etc.</param>
+   /// <param name="visible"><c>true</c> field can be visible, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetFieldVisible( Efl.Ui.ClockType fieldtype,  bool visible) {
+                                           Efl.Ui.ClockNativeInherit.efl_ui_clock_field_visible_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fieldtype,  visible);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the field limits of a field.
+   /// Limits can be set to individual fields, independently, except for the AM/PM field. Any field can display the values only in between these minimum and maximum limits unless the corresponding time value is restricted from MinTime to MaxTime. That is, min/max field limits always work under the limitations of mintime/maxtime.
+   /// 
+   /// There is no provision to set the limits of AM/PM field.</summary>
+   /// <param name="fieldtype">Type of the field. #EFL_UI_CLOCK_TYPE_YEAR etc.</param>
+   /// <param name="min">Reference to field&apos;s minimum value.</param>
+   /// <param name="max">Reference to field&apos;s maximum value.</param>
+   /// <returns></returns>
+   virtual public  void GetFieldLimit( Efl.Ui.ClockType fieldtype,  out  int min,  out  int max) {
+                                                             Efl.Ui.ClockNativeInherit.efl_ui_clock_field_limit_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fieldtype,  out min,  out max);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Set a field to be visible or not.
+   /// Setting this API to <c>true</c> in itself doen&apos;t ensure that the field is visible. The field&apos;s format also must be present in the overall clock format.  If a field&apos;s visibility is set to <c>false</c> then it won&apos;t appear even though its format is present. In summary, if this API is set to true and the corresponding field&apos;s format is present in clock format, the field is visible.
+   /// 
+   /// By default the field visibility is set to <c>true</c>.</summary>
+   /// <param name="fieldtype">Type of the field. #EFL_UI_CLOCK_TYPE_YEAR etc.</param>
+   /// <param name="min">Reference to field&apos;s minimum value.</param>
+   /// <param name="max">Reference to field&apos;s maximum value.</param>
+   /// <returns></returns>
+   virtual public  void SetFieldLimit( Efl.Ui.ClockType fieldtype,   int min,   int max) {
+                                                             Efl.Ui.ClockNativeInherit.efl_ui_clock_field_limit_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fieldtype,  min,  max);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>The current clock format. Format is a combination of allowed Libc date format specifiers like: &quot;%b %d, %Y %I : %M %p&quot;.
+/// Maximum allowed format length is 64 chars.
+/// 
+/// Format can include separators for each individual clock field except for AM/PM field.
+/// 
+/// Each separator can be a maximum of 6 UTF-8 bytes. Space is also taken as a separator.
+/// 
+/// These specifiers can be arranged in any order and the widget will display the fields accordingly.
+/// 
+/// Default format is taken as per the system locale settings.</summary>
+/// <value>The clock format.</value>
+   public  System.String Format {
+      get { return GetFormat(); }
+      set { SetFormat( value); }
+   }
+   /// <summary>Whether the given clock widget should be paused or not.
+/// This function pauses or starts the clock widget.</summary>
+/// <value><c>true</c> to pause clock, <c>false</c> otherwise</value>
+   public bool Pause {
+      get { return GetPause(); }
+      set { SetPause( value); }
+   }
+   /// <summary>Digits of the given clock widget should be editable when in editing mode.</summary>
+/// <value><c>true</c> to set edit mode, <c>false</c> otherwise</value>
+   public bool EditMode {
+      get { return GetEditMode(); }
+      set { SetEditMode( value); }
+   }
+   /// <summary>The lower boundary of a field.
+/// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+/// 
+/// Month: default value range is from 0 to 11.
+/// 
+/// Date: default value range is from 1 to 31 according to the month value.
+/// 
+/// Hour: default value will be in terms of 24 hr format (0~23)
+/// 
+/// Minute: default value range is from 0 to 59.</summary>
+/// <value>Time structure containing the minimum time value.</value>
+   public Efl.Time TimeMin {
+      get { return GetTimeMin(); }
+      set { SetTimeMin( value); }
+   }
+   /// <summary>The upper boundary of a field.
+/// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+/// 
+/// Month: default value range is from 0 to 11.
+/// 
+/// Date: default value range is from 1 to 31 according to the month value.
+/// 
+/// Hour: default value will be in terms of 24 hr format (0~23)
+/// 
+/// Minute: default value range is from 0 to 59.</summary>
+/// <value>Time structure containing the maximum time value.</value>
+   public Efl.Time TimeMax {
+      get { return GetTimeMax(); }
+      set { SetTimeMax( value); }
+   }
+   /// <summary>The current value of a clock object.
+/// Year: years since 1900. Negative value represents year below 1900 (year value -30 represents 1870). Year default range is from 70 to 137.
+/// 
+/// Month: default value range is from 0 to 11.
+/// 
+/// Date: default value range is from 1 to 31 according to the month value.
+/// 
+/// Hour: default value will be in terms of 24 hr format (0~23)
+/// 
+/// Minute: default value range is from 0 to 59.</summary>
+/// <value>Time structure containing the time value.</value>
+   public Efl.Time Time {
+      get { return GetTime(); }
+      set { SetTime( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Clock.efl_ui_clock_class_get();
+   }
+}
+public class ClockNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_clock_format_get_static_delegate == null)
+      efl_ui_clock_format_get_static_delegate = new efl_ui_clock_format_get_delegate(format_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_format_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_format_get_static_delegate)});
+      if (efl_ui_clock_format_set_static_delegate == null)
+      efl_ui_clock_format_set_static_delegate = new efl_ui_clock_format_set_delegate(format_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_format_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_format_set_static_delegate)});
+      if (efl_ui_clock_pause_get_static_delegate == null)
+      efl_ui_clock_pause_get_static_delegate = new efl_ui_clock_pause_get_delegate(pause_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_pause_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_pause_get_static_delegate)});
+      if (efl_ui_clock_pause_set_static_delegate == null)
+      efl_ui_clock_pause_set_static_delegate = new efl_ui_clock_pause_set_delegate(pause_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_pause_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_pause_set_static_delegate)});
+      if (efl_ui_clock_edit_mode_get_static_delegate == null)
+      efl_ui_clock_edit_mode_get_static_delegate = new efl_ui_clock_edit_mode_get_delegate(edit_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_edit_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_edit_mode_get_static_delegate)});
+      if (efl_ui_clock_edit_mode_set_static_delegate == null)
+      efl_ui_clock_edit_mode_set_static_delegate = new efl_ui_clock_edit_mode_set_delegate(edit_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_edit_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_edit_mode_set_static_delegate)});
+      if (efl_ui_clock_time_min_get_static_delegate == null)
+      efl_ui_clock_time_min_get_static_delegate = new efl_ui_clock_time_min_get_delegate(time_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_time_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_time_min_get_static_delegate)});
+      if (efl_ui_clock_time_min_set_static_delegate == null)
+      efl_ui_clock_time_min_set_static_delegate = new efl_ui_clock_time_min_set_delegate(time_min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_time_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_time_min_set_static_delegate)});
+      if (efl_ui_clock_time_max_get_static_delegate == null)
+      efl_ui_clock_time_max_get_static_delegate = new efl_ui_clock_time_max_get_delegate(time_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_time_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_time_max_get_static_delegate)});
+      if (efl_ui_clock_time_max_set_static_delegate == null)
+      efl_ui_clock_time_max_set_static_delegate = new efl_ui_clock_time_max_set_delegate(time_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_time_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_time_max_set_static_delegate)});
+      if (efl_ui_clock_time_get_static_delegate == null)
+      efl_ui_clock_time_get_static_delegate = new efl_ui_clock_time_get_delegate(time_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_time_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_time_get_static_delegate)});
+      if (efl_ui_clock_time_set_static_delegate == null)
+      efl_ui_clock_time_set_static_delegate = new efl_ui_clock_time_set_delegate(time_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_time_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_time_set_static_delegate)});
+      if (efl_ui_clock_field_visible_get_static_delegate == null)
+      efl_ui_clock_field_visible_get_static_delegate = new efl_ui_clock_field_visible_get_delegate(field_visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_field_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_field_visible_get_static_delegate)});
+      if (efl_ui_clock_field_visible_set_static_delegate == null)
+      efl_ui_clock_field_visible_set_static_delegate = new efl_ui_clock_field_visible_set_delegate(field_visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_field_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_field_visible_set_static_delegate)});
+      if (efl_ui_clock_field_limit_get_static_delegate == null)
+      efl_ui_clock_field_limit_get_static_delegate = new efl_ui_clock_field_limit_get_delegate(field_limit_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_field_limit_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_field_limit_get_static_delegate)});
+      if (efl_ui_clock_field_limit_set_static_delegate == null)
+      efl_ui_clock_field_limit_set_static_delegate = new efl_ui_clock_field_limit_set_delegate(field_limit_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_clock_field_limit_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_clock_field_limit_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Clock.efl_ui_clock_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Clock.efl_ui_clock_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_clock_format_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_clock_format_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_format_get_api_delegate> efl_ui_clock_format_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_format_get_api_delegate>(_Module, "efl_ui_clock_format_get");
+    private static  System.String format_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_clock_format_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Clock)wrapper).GetFormat();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_clock_format_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_clock_format_get_delegate efl_ui_clock_format_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_format_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String fmt);
+
+
+    public delegate  void efl_ui_clock_format_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String fmt);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_format_set_api_delegate> efl_ui_clock_format_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_format_set_api_delegate>(_Module, "efl_ui_clock_format_set");
+    private static  void format_set(System.IntPtr obj, System.IntPtr pd,   System.String fmt)
+   {
+      Eina.Log.Debug("function efl_ui_clock_format_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Clock)wrapper).SetFormat( fmt);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_clock_format_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fmt);
+      }
+   }
+   private static efl_ui_clock_format_set_delegate efl_ui_clock_format_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_clock_pause_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_clock_pause_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_pause_get_api_delegate> efl_ui_clock_pause_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_pause_get_api_delegate>(_Module, "efl_ui_clock_pause_get");
+    private static bool pause_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_clock_pause_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Clock)wrapper).GetPause();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_clock_pause_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_clock_pause_get_delegate efl_ui_clock_pause_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_pause_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool paused);
+
+
+    public delegate  void efl_ui_clock_pause_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool paused);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_pause_set_api_delegate> efl_ui_clock_pause_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_pause_set_api_delegate>(_Module, "efl_ui_clock_pause_set");
+    private static  void pause_set(System.IntPtr obj, System.IntPtr pd,  bool paused)
+   {
+      Eina.Log.Debug("function efl_ui_clock_pause_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Clock)wrapper).SetPause( paused);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_clock_pause_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  paused);
+      }
+   }
+   private static efl_ui_clock_pause_set_delegate efl_ui_clock_pause_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_clock_edit_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_clock_edit_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_edit_mode_get_api_delegate> efl_ui_clock_edit_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_edit_mode_get_api_delegate>(_Module, "efl_ui_clock_edit_mode_get");
+    private static bool edit_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_clock_edit_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Clock)wrapper).GetEditMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_clock_edit_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_clock_edit_mode_get_delegate efl_ui_clock_edit_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_edit_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool value);
+
+
+    public delegate  void efl_ui_clock_edit_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool value);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_edit_mode_set_api_delegate> efl_ui_clock_edit_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_edit_mode_set_api_delegate>(_Module, "efl_ui_clock_edit_mode_set");
+    private static  void edit_mode_set(System.IntPtr obj, System.IntPtr pd,  bool value)
+   {
+      Eina.Log.Debug("function efl_ui_clock_edit_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Clock)wrapper).SetEditMode( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_clock_edit_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_ui_clock_edit_mode_set_delegate efl_ui_clock_edit_mode_set_static_delegate;
+
+
+    private delegate Efl.Time_StructInternal efl_ui_clock_time_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Time_StructInternal efl_ui_clock_time_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_time_min_get_api_delegate> efl_ui_clock_time_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_time_min_get_api_delegate>(_Module, "efl_ui_clock_time_min_get");
+    private static Efl.Time_StructInternal time_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_clock_time_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Time _ret_var = default(Efl.Time);
+         try {
+            _ret_var = ((Clock)wrapper).GetTimeMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Time_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_clock_time_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_clock_time_min_get_delegate efl_ui_clock_time_min_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_time_min_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Time_StructInternal mintime);
+
+
+    public delegate  void efl_ui_clock_time_min_set_api_delegate(System.IntPtr obj,   Efl.Time_StructInternal mintime);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_time_min_set_api_delegate> efl_ui_clock_time_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_time_min_set_api_delegate>(_Module, "efl_ui_clock_time_min_set");
+    private static  void time_min_set(System.IntPtr obj, System.IntPtr pd,  Efl.Time_StructInternal mintime)
+   {
+      Eina.Log.Debug("function efl_ui_clock_time_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_mintime = Efl.Time_StructConversion.ToManaged(mintime);
+                     
+         try {
+            ((Clock)wrapper).SetTimeMin( _in_mintime);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_clock_time_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mintime);
+      }
+   }
+   private static efl_ui_clock_time_min_set_delegate efl_ui_clock_time_min_set_static_delegate;
+
+
+    private delegate Efl.Time_StructInternal efl_ui_clock_time_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Time_StructInternal efl_ui_clock_time_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_time_max_get_api_delegate> efl_ui_clock_time_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_time_max_get_api_delegate>(_Module, "efl_ui_clock_time_max_get");
+    private static Efl.Time_StructInternal time_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_clock_time_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Time _ret_var = default(Efl.Time);
+         try {
+            _ret_var = ((Clock)wrapper).GetTimeMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Time_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_clock_time_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_clock_time_max_get_delegate efl_ui_clock_time_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_time_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Time_StructInternal maxtime);
+
+
+    public delegate  void efl_ui_clock_time_max_set_api_delegate(System.IntPtr obj,   Efl.Time_StructInternal maxtime);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_time_max_set_api_delegate> efl_ui_clock_time_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_time_max_set_api_delegate>(_Module, "efl_ui_clock_time_max_set");
+    private static  void time_max_set(System.IntPtr obj, System.IntPtr pd,  Efl.Time_StructInternal maxtime)
+   {
+      Eina.Log.Debug("function efl_ui_clock_time_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_maxtime = Efl.Time_StructConversion.ToManaged(maxtime);
+                     
+         try {
+            ((Clock)wrapper).SetTimeMax( _in_maxtime);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_clock_time_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  maxtime);
+      }
+   }
+   private static efl_ui_clock_time_max_set_delegate efl_ui_clock_time_max_set_static_delegate;
+
+
+    private delegate Efl.Time_StructInternal efl_ui_clock_time_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Time_StructInternal efl_ui_clock_time_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_time_get_api_delegate> efl_ui_clock_time_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_time_get_api_delegate>(_Module, "efl_ui_clock_time_get");
+    private static Efl.Time_StructInternal time_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_clock_time_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Time _ret_var = default(Efl.Time);
+         try {
+            _ret_var = ((Clock)wrapper).GetTime();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Time_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_clock_time_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_clock_time_get_delegate efl_ui_clock_time_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_time_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Time_StructInternal curtime);
+
+
+    public delegate  void efl_ui_clock_time_set_api_delegate(System.IntPtr obj,   Efl.Time_StructInternal curtime);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_time_set_api_delegate> efl_ui_clock_time_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_time_set_api_delegate>(_Module, "efl_ui_clock_time_set");
+    private static  void time_set(System.IntPtr obj, System.IntPtr pd,  Efl.Time_StructInternal curtime)
+   {
+      Eina.Log.Debug("function efl_ui_clock_time_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_curtime = Efl.Time_StructConversion.ToManaged(curtime);
+                     
+         try {
+            ((Clock)wrapper).SetTime( _in_curtime);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_clock_time_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  curtime);
+      }
+   }
+   private static efl_ui_clock_time_set_delegate efl_ui_clock_time_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_clock_field_visible_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ClockType fieldtype);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_clock_field_visible_get_api_delegate(System.IntPtr obj,   Efl.Ui.ClockType fieldtype);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_field_visible_get_api_delegate> efl_ui_clock_field_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_field_visible_get_api_delegate>(_Module, "efl_ui_clock_field_visible_get");
+    private static bool field_visible_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ClockType fieldtype)
+   {
+      Eina.Log.Debug("function efl_ui_clock_field_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Clock)wrapper).GetFieldVisible( fieldtype);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_clock_field_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fieldtype);
+      }
+   }
+   private static efl_ui_clock_field_visible_get_delegate efl_ui_clock_field_visible_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_field_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ClockType fieldtype,  [MarshalAs(UnmanagedType.U1)]  bool visible);
+
+
+    public delegate  void efl_ui_clock_field_visible_set_api_delegate(System.IntPtr obj,   Efl.Ui.ClockType fieldtype,  [MarshalAs(UnmanagedType.U1)]  bool visible);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_field_visible_set_api_delegate> efl_ui_clock_field_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_field_visible_set_api_delegate>(_Module, "efl_ui_clock_field_visible_set");
+    private static  void field_visible_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ClockType fieldtype,  bool visible)
+   {
+      Eina.Log.Debug("function efl_ui_clock_field_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Clock)wrapper).SetFieldVisible( fieldtype,  visible);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_clock_field_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fieldtype,  visible);
+      }
+   }
+   private static efl_ui_clock_field_visible_set_delegate efl_ui_clock_field_visible_set_static_delegate;
+
+
+    private delegate  void efl_ui_clock_field_limit_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ClockType fieldtype,   out  int min,   out  int max);
+
+
+    public delegate  void efl_ui_clock_field_limit_get_api_delegate(System.IntPtr obj,   Efl.Ui.ClockType fieldtype,   out  int min,   out  int max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_field_limit_get_api_delegate> efl_ui_clock_field_limit_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_field_limit_get_api_delegate>(_Module, "efl_ui_clock_field_limit_get");
+    private static  void field_limit_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ClockType fieldtype,  out  int min,  out  int max)
+   {
+      Eina.Log.Debug("function efl_ui_clock_field_limit_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       min = default( int);      max = default( int);                           
+         try {
+            ((Clock)wrapper).GetFieldLimit( fieldtype,  out min,  out max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_clock_field_limit_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fieldtype,  out min,  out max);
+      }
+   }
+   private static efl_ui_clock_field_limit_get_delegate efl_ui_clock_field_limit_get_static_delegate;
+
+
+    private delegate  void efl_ui_clock_field_limit_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ClockType fieldtype,    int min,    int max);
+
+
+    public delegate  void efl_ui_clock_field_limit_set_api_delegate(System.IntPtr obj,   Efl.Ui.ClockType fieldtype,    int min,    int max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_clock_field_limit_set_api_delegate> efl_ui_clock_field_limit_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_clock_field_limit_set_api_delegate>(_Module, "efl_ui_clock_field_limit_set");
+    private static  void field_limit_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ClockType fieldtype,   int min,   int max)
+   {
+      Eina.Log.Debug("function efl_ui_clock_field_limit_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Clock)wrapper).SetFieldLimit( fieldtype,  min,  max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_clock_field_limit_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fieldtype,  min,  max);
+      }
+   }
+   private static efl_ui_clock_field_limit_set_delegate efl_ui_clock_field_limit_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Identifies a clock field, The widget supports 6 fields : Year, month, Date, Hour, Minute, AM/PM</summary>
+public enum ClockType
+{
+/// <summary>Indicates Year field.</summary>
+Year = 0,
+/// <summary>Indicates Month field.</summary>
+Month = 1,
+/// <summary>Indicates Date field.</summary>
+Date = 2,
+/// <summary>Indicates Hour field.</summary>
+Hour = 3,
+/// <summary>Indicates Minute field.</summary>
+Minute = 4,
+/// <summary>Indicates Second field.</summary>
+Second = 5,
+/// <summary>Indicated Day field.</summary>
+Day = 6,
+/// <summary>Indicates AM/PM field .</summary>
+Ampm = 7,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_datepicker.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_datepicker.eo.cs
new file mode 100755 (executable)
index 0000000..19471ca
--- /dev/null
@@ -0,0 +1,386 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Datepicker widget
+/// This is a widget which allows the user to pick a date using internal spinner. User can use the internal spinner to select year, month, day or user can input value using internal entry.</summary>
+[DatepickerNativeInherit]
+public class Datepicker : Efl.Ui.LayoutBase, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.DatepickerNativeInherit nativeInherit = new Efl.Ui.DatepickerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Datepicker))
+            return Efl.Ui.DatepickerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_datepicker_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Datepicker(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_datepicker_class_get(), typeof(Datepicker), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Datepicker(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Datepicker(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Datepicker static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Datepicker(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when date value is changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DATEPICKER_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DATEPICKER_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+   }
+   /// <summary>The lower boundary of date.
+   /// <c>year</c>: Year. The year range is from 1900 to 2137.
+   /// 
+   /// <c>month</c>: Month. The month range is from 1 to 12.
+   /// 
+   /// <c>day</c>: Day. The day range is from 1 to 31 according to <c>month</c>.</summary>
+   /// <param name="year">The year value.</param>
+   /// <param name="month">The month value from 1 to 12.</param>
+   /// <param name="day">The day value from 1 to 31.</param>
+   /// <returns></returns>
+   virtual public  void GetMin( out  int year,  out  int month,  out  int day) {
+                                                             Efl.Ui.DatepickerNativeInherit.efl_ui_datepicker_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out year,  out month,  out day);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>The lower boundary of date.
+   /// <c>year</c>: Year. The year range is from 1900 to 2137.
+   /// 
+   /// <c>month</c>: Month. The month range is from 1 to 12.
+   /// 
+   /// <c>day</c>: Day. The day range is from 1 to 31 according to <c>month</c>.</summary>
+   /// <param name="year">The year value.</param>
+   /// <param name="month">The month value from 1 to 12.</param>
+   /// <param name="day">The day value from 1 to 31.</param>
+   /// <returns></returns>
+   virtual public  void SetMin(  int year,   int month,   int day) {
+                                                             Efl.Ui.DatepickerNativeInherit.efl_ui_datepicker_min_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), year,  month,  day);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>The upper boundary of date.
+   /// <c>year</c>: Year. The year range is from 1900 to 2137.
+   /// 
+   /// <c>month</c>: Month. The month range is from 1 to 12.
+   /// 
+   /// <c>day</c>: Day. The day range is from 1 to 31 according to <c>month</c>.</summary>
+   /// <param name="year">The year value.</param>
+   /// <param name="month">The month value from 1 to 12.</param>
+   /// <param name="day">The day value from 1 to 31.</param>
+   /// <returns></returns>
+   virtual public  void GetMax( out  int year,  out  int month,  out  int day) {
+                                                             Efl.Ui.DatepickerNativeInherit.efl_ui_datepicker_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out year,  out month,  out day);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>The upper boundary of date.
+   /// <c>year</c>: Year. The year range is from 1900 to 2137.
+   /// 
+   /// <c>month</c>: Month. The month range is from 1 to 12.
+   /// 
+   /// <c>day</c>: Day. The day range is from 1 to 31 according to <c>month</c>.</summary>
+   /// <param name="year">The year value.</param>
+   /// <param name="month">The month value from 1 to 12.</param>
+   /// <param name="day">The day value from 1 to 31.</param>
+   /// <returns></returns>
+   virtual public  void SetMax(  int year,   int month,   int day) {
+                                                             Efl.Ui.DatepickerNativeInherit.efl_ui_datepicker_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), year,  month,  day);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>The current value of date.
+   /// <c>year</c>: Year. The year range is from 1900 to 2137.
+   /// 
+   /// <c>month</c>: Month. The month range is from 0 to 11.
+   /// 
+   /// <c>day</c>: Day. The day range is from 1 to 31 according to <c>month</c>.</summary>
+   /// <param name="year">The year value.</param>
+   /// <param name="month">The month value from 1 to 12.</param>
+   /// <param name="day">The day value from 1 to 31.</param>
+   /// <returns></returns>
+   virtual public  void GetDate( out  int year,  out  int month,  out  int day) {
+                                                             Efl.Ui.DatepickerNativeInherit.efl_ui_datepicker_date_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out year,  out month,  out day);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>The current value of date.
+   /// <c>year</c>: Year. The year range is from 1900 to 2137.
+   /// 
+   /// <c>month</c>: Month. The month range is from 0 to 11.
+   /// 
+   /// <c>day</c>: Day. The day range is from 1 to 31 according to <c>month</c>.</summary>
+   /// <param name="year">The year value.</param>
+   /// <param name="month">The month value from 1 to 12.</param>
+   /// <param name="day">The day value from 1 to 31.</param>
+   /// <returns></returns>
+   virtual public  void SetDate(  int year,   int month,   int day) {
+                                                             Efl.Ui.DatepickerNativeInherit.efl_ui_datepicker_date_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), year,  month,  day);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Datepicker.efl_ui_datepicker_class_get();
+   }
+}
+public class DatepickerNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_datepicker_min_get_static_delegate == null)
+      efl_ui_datepicker_min_get_static_delegate = new efl_ui_datepicker_min_get_delegate(min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_datepicker_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_datepicker_min_get_static_delegate)});
+      if (efl_ui_datepicker_min_set_static_delegate == null)
+      efl_ui_datepicker_min_set_static_delegate = new efl_ui_datepicker_min_set_delegate(min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_datepicker_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_datepicker_min_set_static_delegate)});
+      if (efl_ui_datepicker_max_get_static_delegate == null)
+      efl_ui_datepicker_max_get_static_delegate = new efl_ui_datepicker_max_get_delegate(max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_datepicker_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_datepicker_max_get_static_delegate)});
+      if (efl_ui_datepicker_max_set_static_delegate == null)
+      efl_ui_datepicker_max_set_static_delegate = new efl_ui_datepicker_max_set_delegate(max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_datepicker_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_datepicker_max_set_static_delegate)});
+      if (efl_ui_datepicker_date_get_static_delegate == null)
+      efl_ui_datepicker_date_get_static_delegate = new efl_ui_datepicker_date_get_delegate(date_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_datepicker_date_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_datepicker_date_get_static_delegate)});
+      if (efl_ui_datepicker_date_set_static_delegate == null)
+      efl_ui_datepicker_date_set_static_delegate = new efl_ui_datepicker_date_set_delegate(date_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_datepicker_date_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_datepicker_date_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Datepicker.efl_ui_datepicker_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Datepicker.efl_ui_datepicker_class_get();
+   }
+
+
+    private delegate  void efl_ui_datepicker_min_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int year,   out  int month,   out  int day);
+
+
+    public delegate  void efl_ui_datepicker_min_get_api_delegate(System.IntPtr obj,   out  int year,   out  int month,   out  int day);
+    public static Efl.Eo.FunctionWrapper<efl_ui_datepicker_min_get_api_delegate> efl_ui_datepicker_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_datepicker_min_get_api_delegate>(_Module, "efl_ui_datepicker_min_get");
+    private static  void min_get(System.IntPtr obj, System.IntPtr pd,  out  int year,  out  int month,  out  int day)
+   {
+      Eina.Log.Debug("function efl_ui_datepicker_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 year = default( int);      month = default( int);      day = default( int);                           
+         try {
+            ((Datepicker)wrapper).GetMin( out year,  out month,  out day);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_datepicker_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out year,  out month,  out day);
+      }
+   }
+   private static efl_ui_datepicker_min_get_delegate efl_ui_datepicker_min_get_static_delegate;
+
+
+    private delegate  void efl_ui_datepicker_min_set_delegate(System.IntPtr obj, System.IntPtr pd,    int year,    int month,    int day);
+
+
+    public delegate  void efl_ui_datepicker_min_set_api_delegate(System.IntPtr obj,    int year,    int month,    int day);
+    public static Efl.Eo.FunctionWrapper<efl_ui_datepicker_min_set_api_delegate> efl_ui_datepicker_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_datepicker_min_set_api_delegate>(_Module, "efl_ui_datepicker_min_set");
+    private static  void min_set(System.IntPtr obj, System.IntPtr pd,   int year,   int month,   int day)
+   {
+      Eina.Log.Debug("function efl_ui_datepicker_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Datepicker)wrapper).SetMin( year,  month,  day);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_datepicker_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  year,  month,  day);
+      }
+   }
+   private static efl_ui_datepicker_min_set_delegate efl_ui_datepicker_min_set_static_delegate;
+
+
+    private delegate  void efl_ui_datepicker_max_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int year,   out  int month,   out  int day);
+
+
+    public delegate  void efl_ui_datepicker_max_get_api_delegate(System.IntPtr obj,   out  int year,   out  int month,   out  int day);
+    public static Efl.Eo.FunctionWrapper<efl_ui_datepicker_max_get_api_delegate> efl_ui_datepicker_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_datepicker_max_get_api_delegate>(_Module, "efl_ui_datepicker_max_get");
+    private static  void max_get(System.IntPtr obj, System.IntPtr pd,  out  int year,  out  int month,  out  int day)
+   {
+      Eina.Log.Debug("function efl_ui_datepicker_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 year = default( int);      month = default( int);      day = default( int);                           
+         try {
+            ((Datepicker)wrapper).GetMax( out year,  out month,  out day);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_datepicker_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out year,  out month,  out day);
+      }
+   }
+   private static efl_ui_datepicker_max_get_delegate efl_ui_datepicker_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_datepicker_max_set_delegate(System.IntPtr obj, System.IntPtr pd,    int year,    int month,    int day);
+
+
+    public delegate  void efl_ui_datepicker_max_set_api_delegate(System.IntPtr obj,    int year,    int month,    int day);
+    public static Efl.Eo.FunctionWrapper<efl_ui_datepicker_max_set_api_delegate> efl_ui_datepicker_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_datepicker_max_set_api_delegate>(_Module, "efl_ui_datepicker_max_set");
+    private static  void max_set(System.IntPtr obj, System.IntPtr pd,   int year,   int month,   int day)
+   {
+      Eina.Log.Debug("function efl_ui_datepicker_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Datepicker)wrapper).SetMax( year,  month,  day);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_datepicker_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  year,  month,  day);
+      }
+   }
+   private static efl_ui_datepicker_max_set_delegate efl_ui_datepicker_max_set_static_delegate;
+
+
+    private delegate  void efl_ui_datepicker_date_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int year,   out  int month,   out  int day);
+
+
+    public delegate  void efl_ui_datepicker_date_get_api_delegate(System.IntPtr obj,   out  int year,   out  int month,   out  int day);
+    public static Efl.Eo.FunctionWrapper<efl_ui_datepicker_date_get_api_delegate> efl_ui_datepicker_date_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_datepicker_date_get_api_delegate>(_Module, "efl_ui_datepicker_date_get");
+    private static  void date_get(System.IntPtr obj, System.IntPtr pd,  out  int year,  out  int month,  out  int day)
+   {
+      Eina.Log.Debug("function efl_ui_datepicker_date_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 year = default( int);      month = default( int);      day = default( int);                           
+         try {
+            ((Datepicker)wrapper).GetDate( out year,  out month,  out day);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_datepicker_date_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out year,  out month,  out day);
+      }
+   }
+   private static efl_ui_datepicker_date_get_delegate efl_ui_datepicker_date_get_static_delegate;
+
+
+    private delegate  void efl_ui_datepicker_date_set_delegate(System.IntPtr obj, System.IntPtr pd,    int year,    int month,    int day);
+
+
+    public delegate  void efl_ui_datepicker_date_set_api_delegate(System.IntPtr obj,    int year,    int month,    int day);
+    public static Efl.Eo.FunctionWrapper<efl_ui_datepicker_date_set_api_delegate> efl_ui_datepicker_date_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_datepicker_date_set_api_delegate>(_Module, "efl_ui_datepicker_date_set");
+    private static  void date_set(System.IntPtr obj, System.IntPtr pd,   int year,   int month,   int day)
+   {
+      Eina.Log.Debug("function efl_ui_datepicker_date_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Datepicker)wrapper).SetDate( year,  month,  day);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_datepicker_date_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  year,  month,  day);
+      }
+   }
+   private static efl_ui_datepicker_date_set_delegate efl_ui_datepicker_date_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_direction.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_direction.eo.cs
new file mode 100755 (executable)
index 0000000..dd84bac
--- /dev/null
@@ -0,0 +1,239 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>EFL UI object direction interface</summary>
+[DirectionNativeInherit]
+public interface Direction : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <returns>Direction of the widget.</returns>
+Efl.Ui.Dir GetDirection();
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <param name="dir">Direction of the widget.</param>
+/// <returns></returns>
+ void SetDirection( Efl.Ui.Dir dir);
+         /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   Efl.Ui.Dir Direction {
+      get ;
+      set ;
+   }
+}
+/// <summary>EFL UI object direction interface</summary>
+sealed public class DirectionConcrete : 
+
+Direction
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DirectionConcrete))
+            return Efl.Ui.DirectionNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_direction_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DirectionConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~DirectionConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static DirectionConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DirectionConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate(this.NativeHandle, dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+}
+public class DirectionNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.DirectionConcrete.efl_ui_direction_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.DirectionConcrete.efl_ui_direction_interface_get();
+   }
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((Direction)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Direction)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Direction for UI objects and layouts.
+/// Not to be confused with <see cref="Efl.Orient"/> which is for images and canvases. This enum is used to define how widgets should expand and orient themselves, not to rotate images.
+/// 
+/// See also <see cref="Efl.Ui.Direction"/>.</summary>
+public enum Dir
+{
+/// <summary>Default direction. Each widget may have a different default.</summary>
+Default = 0,
+/// <summary>Horizontal direction, along the X axis. Usually left-to-right, but may be inverted to right-to-left if mirroring is on.</summary>
+Horizontal = 1,
+/// <summary>Vertical direction, along the Y axis. Usually downwards.</summary>
+Vertical = 2,
+/// <summary>Horizontal, left-to-right direction.</summary>
+Ltr = 3,
+/// <summary>Horizontal, right-to-left direction.</summary>
+Rtl = 4,
+/// <summary>Vertical, top-to-bottom direction.</summary>
+Down = 5,
+/// <summary>Vertical, bottom-to-top direction.</summary>
+Up = 6,
+/// <summary>Right is an alias for LTR.</summary>
+Right = 3,
+/// <summary>Left is an alias for RTL.</summary>
+Left = 4,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_direction_readonly.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_direction_readonly.eo.cs
new file mode 100755 (executable)
index 0000000..ebf940e
--- /dev/null
@@ -0,0 +1,191 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[DirectionReadonlyNativeInherit]
+public interface DirectionReadonly : 
+   Efl.Ui.Direction ,
+   Efl.Eo.IWrapper, IDisposable
+{
+}
+/// <summary></summary>
+sealed public class DirectionReadonlyConcrete : 
+
+DirectionReadonly
+   , Efl.Ui.Direction
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DirectionReadonlyConcrete))
+            return Efl.Ui.DirectionReadonlyNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_direction_readonly_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DirectionReadonlyConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~DirectionReadonlyConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static DirectionReadonlyConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DirectionReadonlyConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate(this.NativeHandle, dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+}
+public class DirectionReadonlyNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.DirectionReadonlyConcrete.efl_ui_direction_readonly_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.DirectionReadonlyConcrete.efl_ui_direction_readonly_mixin_get();
+   }
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((DirectionReadonlyConcrete)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((DirectionReadonlyConcrete)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_dnd.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_dnd.eo.cs
new file mode 100755 (executable)
index 0000000..605b73a
--- /dev/null
@@ -0,0 +1,658 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[DndNativeInherit]
+public interface Dnd : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Start a drag and drop process at the drag side. During dragging, there are three events emitted as belows: - EFL_UI_DND_EVENT_DRAG_POS - EFL_UI_DND_EVENT_DRAG_ACCEPT - EFL_UI_DND_EVENT_DRAG_DONE</summary>
+/// <param name="format">The data format</param>
+/// <param name="data">The drag data</param>
+/// <param name="action">Action when data is transferred</param>
+/// <param name="icon_func">Function pointer to create icon</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void DragStart( Efl.Ui.SelectionFormat format,  Eina.Slice data,  Efl.Ui.SelectionAction action,  Efl.Dnd.DragIconCreate icon_func,   uint seat);
+   /// <summary>Set the action for the drag</summary>
+/// <param name="action">Drag action</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void SetDragAction( Efl.Ui.SelectionAction action,   uint seat);
+   /// <summary>Cancel the on-going drag</summary>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void DragCancel(  uint seat);
+   /// <summary>Make the current object as drop target. There are four events emitted: - EFL_UI_DND_EVENT_DRAG_ENTER - EFL_UI_DND_EVENT_DRAG_LEAVE - EFL_UI_DND_EVENT_DRAG_POS - EFL_UI_DND_EVENT_DRAG_DROP.</summary>
+/// <param name="format">Accepted data format</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void AddDropTarget( Efl.Ui.SelectionFormat format,   uint seat);
+   /// <summary>Delete the dropable status from object</summary>
+/// <param name="format">Accepted data format</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void DelDropTarget( Efl.Ui.SelectionFormat format,   uint seat);
+                  /// <summary>accept drag data</summary>
+   event EventHandler<Efl.Ui.DndDragAcceptEvt_Args> DragAcceptEvt;
+   /// <summary>drag is done (mouse up)</summary>
+   event EventHandler DragDoneEvt;
+   /// <summary>called when the drag object enters this object</summary>
+   event EventHandler DragEnterEvt;
+   /// <summary>called when the drag object leaves this object</summary>
+   event EventHandler DragLeaveEvt;
+   /// <summary>called when the drag object changes drag position</summary>
+   event EventHandler<Efl.Ui.DndDragPosEvt_Args> DragPosEvt;
+   /// <summary>called when the drag object dropped on this object</summary>
+   event EventHandler<Efl.Ui.DndDragDropEvt_Args> DragDropEvt;
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Dnd.DragAcceptEvt"/>.</summary>
+public class DndDragAcceptEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public bool arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Dnd.DragPosEvt"/>.</summary>
+public class DndDragPosEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Dnd.DragPos arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Dnd.DragDropEvt"/>.</summary>
+public class DndDragDropEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.SelectionData arg { get; set; }
+}
+/// <summary></summary>
+sealed public class DndConcrete : 
+
+Dnd
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DndConcrete))
+            return Efl.Ui.DndNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_dnd_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DndConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~DndConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static DndConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DndConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object DragAcceptEvtKey = new object();
+   /// <summary>accept drag data</summary>
+   public event EventHandler<Efl.Ui.DndDragAcceptEvt_Args> DragAcceptEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ACCEPT";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragAcceptEvt_delegate)) {
+               eventHandlers.AddHandler(DragAcceptEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ACCEPT";
+            if (remove_cpp_event_handler(key, this.evt_DragAcceptEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragAcceptEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragAcceptEvt.</summary>
+   public void On_DragAcceptEvt(Efl.Ui.DndDragAcceptEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DndDragAcceptEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DndDragAcceptEvt_Args>)eventHandlers[DragAcceptEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragAcceptEvt_delegate;
+   private void on_DragAcceptEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DndDragAcceptEvt_Args args = new Efl.Ui.DndDragAcceptEvt_Args();
+      args.arg = (bool)Marshal.PtrToStructure(evt.Info, typeof(bool));
+      try {
+         On_DragAcceptEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragDoneEvtKey = new object();
+   /// <summary>drag is done (mouse up)</summary>
+   public event EventHandler DragDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DONE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragDoneEvt_delegate)) {
+               eventHandlers.AddHandler(DragDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DONE";
+            if (remove_cpp_event_handler(key, this.evt_DragDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragDoneEvt.</summary>
+   public void On_DragDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragDoneEvt_delegate;
+   private void on_DragDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragEnterEvtKey = new object();
+   /// <summary>called when the drag object enters this object</summary>
+   public event EventHandler DragEnterEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ENTER";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragEnterEvt_delegate)) {
+               eventHandlers.AddHandler(DragEnterEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ENTER";
+            if (remove_cpp_event_handler(key, this.evt_DragEnterEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragEnterEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragEnterEvt.</summary>
+   public void On_DragEnterEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragEnterEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragEnterEvt_delegate;
+   private void on_DragEnterEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragEnterEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragLeaveEvtKey = new object();
+   /// <summary>called when the drag object leaves this object</summary>
+   public event EventHandler DragLeaveEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_LEAVE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragLeaveEvt_delegate)) {
+               eventHandlers.AddHandler(DragLeaveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_LEAVE";
+            if (remove_cpp_event_handler(key, this.evt_DragLeaveEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragLeaveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragLeaveEvt.</summary>
+   public void On_DragLeaveEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragLeaveEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragLeaveEvt_delegate;
+   private void on_DragLeaveEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragLeaveEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragPosEvtKey = new object();
+   /// <summary>called when the drag object changes drag position</summary>
+   public event EventHandler<Efl.Ui.DndDragPosEvt_Args> DragPosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_POS";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragPosEvt_delegate)) {
+               eventHandlers.AddHandler(DragPosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_POS";
+            if (remove_cpp_event_handler(key, this.evt_DragPosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragPosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragPosEvt.</summary>
+   public void On_DragPosEvt(Efl.Ui.DndDragPosEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DndDragPosEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DndDragPosEvt_Args>)eventHandlers[DragPosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragPosEvt_delegate;
+   private void on_DragPosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DndDragPosEvt_Args args = new Efl.Ui.DndDragPosEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_DragPosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragDropEvtKey = new object();
+   /// <summary>called when the drag object dropped on this object</summary>
+   public event EventHandler<Efl.Ui.DndDragDropEvt_Args> DragDropEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DROP";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragDropEvt_delegate)) {
+               eventHandlers.AddHandler(DragDropEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DROP";
+            if (remove_cpp_event_handler(key, this.evt_DragDropEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragDropEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragDropEvt.</summary>
+   public void On_DragDropEvt(Efl.Ui.DndDragDropEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DndDragDropEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DndDragDropEvt_Args>)eventHandlers[DragDropEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragDropEvt_delegate;
+   private void on_DragDropEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DndDragDropEvt_Args args = new Efl.Ui.DndDragDropEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_DragDropEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_DragAcceptEvt_delegate = new Efl.EventCb(on_DragAcceptEvt_NativeCallback);
+      evt_DragDoneEvt_delegate = new Efl.EventCb(on_DragDoneEvt_NativeCallback);
+      evt_DragEnterEvt_delegate = new Efl.EventCb(on_DragEnterEvt_NativeCallback);
+      evt_DragLeaveEvt_delegate = new Efl.EventCb(on_DragLeaveEvt_NativeCallback);
+      evt_DragPosEvt_delegate = new Efl.EventCb(on_DragPosEvt_NativeCallback);
+      evt_DragDropEvt_delegate = new Efl.EventCb(on_DragDropEvt_NativeCallback);
+   }
+   /// <summary>Start a drag and drop process at the drag side. During dragging, there are three events emitted as belows: - EFL_UI_DND_EVENT_DRAG_POS - EFL_UI_DND_EVENT_DRAG_ACCEPT - EFL_UI_DND_EVENT_DRAG_DONE</summary>
+   /// <param name="format">The data format</param>
+   /// <param name="data">The drag data</param>
+   /// <param name="action">Action when data is transferred</param>
+   /// <param name="icon_func">Function pointer to create icon</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void DragStart( Efl.Ui.SelectionFormat format,  Eina.Slice data,  Efl.Ui.SelectionAction action,  Efl.Dnd.DragIconCreate icon_func,   uint seat) {
+                                                                                     GCHandle icon_func_handle = GCHandle.Alloc(icon_func);
+            Efl.Ui.DndNativeInherit.efl_ui_dnd_drag_start_ptr.Value.Delegate(this.NativeHandle, format,  data,  action, GCHandle.ToIntPtr(icon_func_handle), Efl.Dnd.DragIconCreateWrapper.Cb, Efl.Eo.Globals.free_gchandle,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Set the action for the drag</summary>
+   /// <param name="action">Drag action</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void SetDragAction( Efl.Ui.SelectionAction action,   uint seat) {
+                                           Efl.Ui.DndNativeInherit.efl_ui_dnd_drag_action_set_ptr.Value.Delegate(this.NativeHandle, action,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Cancel the on-going drag</summary>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void DragCancel(  uint seat) {
+                         Efl.Ui.DndNativeInherit.efl_ui_dnd_drag_cancel_ptr.Value.Delegate(this.NativeHandle, seat);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Make the current object as drop target. There are four events emitted: - EFL_UI_DND_EVENT_DRAG_ENTER - EFL_UI_DND_EVENT_DRAG_LEAVE - EFL_UI_DND_EVENT_DRAG_POS - EFL_UI_DND_EVENT_DRAG_DROP.</summary>
+   /// <param name="format">Accepted data format</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void AddDropTarget( Efl.Ui.SelectionFormat format,   uint seat) {
+                                           Efl.Ui.DndNativeInherit.efl_ui_dnd_drop_target_add_ptr.Value.Delegate(this.NativeHandle, format,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Delete the dropable status from object</summary>
+   /// <param name="format">Accepted data format</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void DelDropTarget( Efl.Ui.SelectionFormat format,   uint seat) {
+                                           Efl.Ui.DndNativeInherit.efl_ui_dnd_drop_target_del_ptr.Value.Delegate(this.NativeHandle, format,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+}
+public class DndNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_dnd_drag_start_static_delegate == null)
+      efl_ui_dnd_drag_start_static_delegate = new efl_ui_dnd_drag_start_delegate(drag_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drag_start"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drag_start_static_delegate)});
+      if (efl_ui_dnd_drag_action_set_static_delegate == null)
+      efl_ui_dnd_drag_action_set_static_delegate = new efl_ui_dnd_drag_action_set_delegate(drag_action_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drag_action_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drag_action_set_static_delegate)});
+      if (efl_ui_dnd_drag_cancel_static_delegate == null)
+      efl_ui_dnd_drag_cancel_static_delegate = new efl_ui_dnd_drag_cancel_delegate(drag_cancel);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drag_cancel"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drag_cancel_static_delegate)});
+      if (efl_ui_dnd_drop_target_add_static_delegate == null)
+      efl_ui_dnd_drop_target_add_static_delegate = new efl_ui_dnd_drop_target_add_delegate(drop_target_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drop_target_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drop_target_add_static_delegate)});
+      if (efl_ui_dnd_drop_target_del_static_delegate == null)
+      efl_ui_dnd_drop_target_del_static_delegate = new efl_ui_dnd_drop_target_del_delegate(drop_target_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drop_target_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drop_target_del_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.DndConcrete.efl_ui_dnd_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.DndConcrete.efl_ui_dnd_mixin_get();
+   }
+
+
+    private delegate  void efl_ui_dnd_drag_start_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format,   Eina.Slice data,   Efl.Ui.SelectionAction action,  IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drag_start_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format,   Eina.Slice data,   Efl.Ui.SelectionAction action,  IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_start_api_delegate> efl_ui_dnd_drag_start_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_start_api_delegate>(_Module, "efl_ui_dnd_drag_start");
+    private static  void drag_start(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format,  Eina.Slice data,  Efl.Ui.SelectionAction action, IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drag_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                Efl.Dnd.DragIconCreateWrapper icon_func_wrapper = new Efl.Dnd.DragIconCreateWrapper(icon_func, icon_func_data, icon_func_free_cb);
+               
+         try {
+            ((DndConcrete)wrapper).DragStart( format,  data,  action,  icon_func_wrapper.ManagedCb,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_ui_dnd_drag_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format,  data,  action, icon_func_data, icon_func, icon_func_free_cb,  seat);
+      }
+   }
+   private static efl_ui_dnd_drag_start_delegate efl_ui_dnd_drag_start_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drag_action_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionAction action,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drag_action_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionAction action,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_action_set_api_delegate> efl_ui_dnd_drag_action_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_action_set_api_delegate>(_Module, "efl_ui_dnd_drag_action_set");
+    private static  void drag_action_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionAction action,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drag_action_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((DndConcrete)wrapper).SetDragAction( action,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_dnd_drag_action_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  action,  seat);
+      }
+   }
+   private static efl_ui_dnd_drag_action_set_delegate efl_ui_dnd_drag_action_set_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drag_cancel_delegate(System.IntPtr obj, System.IntPtr pd,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drag_cancel_api_delegate(System.IntPtr obj,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_cancel_api_delegate> efl_ui_dnd_drag_cancel_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_cancel_api_delegate>(_Module, "efl_ui_dnd_drag_cancel");
+    private static  void drag_cancel(System.IntPtr obj, System.IntPtr pd,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drag_cancel was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((DndConcrete)wrapper).DragCancel( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_dnd_drag_cancel_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_ui_dnd_drag_cancel_delegate efl_ui_dnd_drag_cancel_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drop_target_add_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drop_target_add_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_add_api_delegate> efl_ui_dnd_drop_target_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_add_api_delegate>(_Module, "efl_ui_dnd_drop_target_add");
+    private static  void drop_target_add(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drop_target_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((DndConcrete)wrapper).AddDropTarget( format,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_dnd_drop_target_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format,  seat);
+      }
+   }
+   private static efl_ui_dnd_drop_target_add_delegate efl_ui_dnd_drop_target_add_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drop_target_del_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drop_target_del_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_del_api_delegate> efl_ui_dnd_drop_target_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_del_api_delegate>(_Module, "efl_ui_dnd_drop_target_del");
+    private static  void drop_target_del(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drop_target_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((DndConcrete)wrapper).DelDropTarget( format,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_dnd_drop_target_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format,  seat);
+      }
+   }
+   private static efl_ui_dnd_drop_target_del_delegate efl_ui_dnd_drop_target_del_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_dnd_container.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_dnd_container.eo.cs
new file mode 100755 (executable)
index 0000000..f80d634
--- /dev/null
@@ -0,0 +1,368 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[DndContainerNativeInherit]
+public interface DndContainer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The time since mouse down happens to drag starts.</summary>
+/// <returns>The drag delay time</returns>
+double GetDragDelayTime();
+   /// <summary>The time since mouse down happens to drag starts.</summary>
+/// <param name="time">The drag delay time</param>
+/// <returns></returns>
+ void SetDragDelayTime( double time);
+   /// <summary>This registers a drag for items in a container. Many items can be dragged at a time. During dragging, there are three events emitted: EFL_DND_EVENT_DRAG_POS, EFL_DND_EVENT_DRAG_ACCEPT, EFL_DND_EVENT_DRAG_DONE.</summary>
+/// <param name="data_func">Data and its format</param>
+/// <param name="item_func">Item to determine drag start</param>
+/// <param name="icon_func">Icon used during drag</param>
+/// <param name="icon_list_func">Icons used for animations CHECKING</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void AddDragItem( Efl.Dnd.DragDataGet data_func,  Efl.Dnd.ItemGet item_func,  Efl.Dnd.DragIconCreate icon_func,  Efl.Dnd.DragIconListCreate icon_list_func,   uint seat);
+   /// <summary>Remove drag function of items in the container object.</summary>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void DelDragItem(  uint seat);
+   /// <summary></summary>
+/// <param name="format">Accepted data formats</param>
+/// <param name="item_func">Get item at specific position</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void AddDropItem( Efl.Ui.SelectionFormat format,  Efl.Dnd.ItemGet item_func,   uint seat);
+   /// <summary></summary>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void DelDropItem(  uint seat);
+                     /// <summary>The time since mouse down happens to drag starts.</summary>
+/// <value>The drag delay time</value>
+   double DragDelayTime {
+      get ;
+      set ;
+   }
+}
+/// <summary></summary>
+sealed public class DndContainerConcrete : 
+
+DndContainer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DndContainerConcrete))
+            return Efl.Ui.DndContainerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_dnd_container_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DndContainerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~DndContainerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static DndContainerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DndContainerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The time since mouse down happens to drag starts.</summary>
+   /// <returns>The drag delay time</returns>
+   public double GetDragDelayTime() {
+       var _ret_var = Efl.Ui.DndContainerNativeInherit.efl_ui_dnd_container_drag_delay_time_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The time since mouse down happens to drag starts.</summary>
+   /// <param name="time">The drag delay time</param>
+   /// <returns></returns>
+   public  void SetDragDelayTime( double time) {
+                         Efl.Ui.DndContainerNativeInherit.efl_ui_dnd_container_drag_delay_time_set_ptr.Value.Delegate(this.NativeHandle, time);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This registers a drag for items in a container. Many items can be dragged at a time. During dragging, there are three events emitted: EFL_DND_EVENT_DRAG_POS, EFL_DND_EVENT_DRAG_ACCEPT, EFL_DND_EVENT_DRAG_DONE.</summary>
+   /// <param name="data_func">Data and its format</param>
+   /// <param name="item_func">Item to determine drag start</param>
+   /// <param name="icon_func">Icon used during drag</param>
+   /// <param name="icon_list_func">Icons used for animations CHECKING</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void AddDragItem( Efl.Dnd.DragDataGet data_func,  Efl.Dnd.ItemGet item_func,  Efl.Dnd.DragIconCreate icon_func,  Efl.Dnd.DragIconListCreate icon_list_func,   uint seat) {
+                                                                   GCHandle data_func_handle = GCHandle.Alloc(data_func);
+      GCHandle item_func_handle = GCHandle.Alloc(item_func);
+      GCHandle icon_func_handle = GCHandle.Alloc(icon_func);
+      GCHandle icon_list_func_handle = GCHandle.Alloc(icon_list_func);
+            Efl.Ui.DndContainerNativeInherit.efl_ui_dnd_container_drag_item_add_ptr.Value.Delegate(this.NativeHandle,GCHandle.ToIntPtr(data_func_handle), Efl.Dnd.DragDataGetWrapper.Cb, Efl.Eo.Globals.free_gchandle, GCHandle.ToIntPtr(item_func_handle), Efl.Dnd.ItemGetWrapper.Cb, Efl.Eo.Globals.free_gchandle, GCHandle.ToIntPtr(icon_func_handle), Efl.Dnd.DragIconCreateWrapper.Cb, Efl.Eo.Globals.free_gchandle, GCHandle.ToIntPtr(icon_list_func_handle), Efl.Dnd.DragIconListCreateWrapper.Cb, Efl.Eo.Globals.free_gchandle,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Remove drag function of items in the container object.</summary>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void DelDragItem(  uint seat) {
+                         Efl.Ui.DndContainerNativeInherit.efl_ui_dnd_container_drag_item_del_ptr.Value.Delegate(this.NativeHandle, seat);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="format">Accepted data formats</param>
+   /// <param name="item_func">Get item at specific position</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void AddDropItem( Efl.Ui.SelectionFormat format,  Efl.Dnd.ItemGet item_func,   uint seat) {
+                                                 GCHandle item_func_handle = GCHandle.Alloc(item_func);
+            Efl.Ui.DndContainerNativeInherit.efl_ui_dnd_container_drop_item_add_ptr.Value.Delegate(this.NativeHandle, format, GCHandle.ToIntPtr(item_func_handle), Efl.Dnd.ItemGetWrapper.Cb, Efl.Eo.Globals.free_gchandle,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary></summary>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void DelDropItem(  uint seat) {
+                         Efl.Ui.DndContainerNativeInherit.efl_ui_dnd_container_drop_item_del_ptr.Value.Delegate(this.NativeHandle, seat);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The time since mouse down happens to drag starts.</summary>
+/// <value>The drag delay time</value>
+   public double DragDelayTime {
+      get { return GetDragDelayTime(); }
+      set { SetDragDelayTime( value); }
+   }
+}
+public class DndContainerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_dnd_container_drag_delay_time_get_static_delegate == null)
+      efl_ui_dnd_container_drag_delay_time_get_static_delegate = new efl_ui_dnd_container_drag_delay_time_get_delegate(drag_delay_time_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_container_drag_delay_time_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_container_drag_delay_time_get_static_delegate)});
+      if (efl_ui_dnd_container_drag_delay_time_set_static_delegate == null)
+      efl_ui_dnd_container_drag_delay_time_set_static_delegate = new efl_ui_dnd_container_drag_delay_time_set_delegate(drag_delay_time_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_container_drag_delay_time_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_container_drag_delay_time_set_static_delegate)});
+      if (efl_ui_dnd_container_drag_item_add_static_delegate == null)
+      efl_ui_dnd_container_drag_item_add_static_delegate = new efl_ui_dnd_container_drag_item_add_delegate(drag_item_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_container_drag_item_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_container_drag_item_add_static_delegate)});
+      if (efl_ui_dnd_container_drag_item_del_static_delegate == null)
+      efl_ui_dnd_container_drag_item_del_static_delegate = new efl_ui_dnd_container_drag_item_del_delegate(drag_item_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_container_drag_item_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_container_drag_item_del_static_delegate)});
+      if (efl_ui_dnd_container_drop_item_add_static_delegate == null)
+      efl_ui_dnd_container_drop_item_add_static_delegate = new efl_ui_dnd_container_drop_item_add_delegate(drop_item_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_container_drop_item_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_container_drop_item_add_static_delegate)});
+      if (efl_ui_dnd_container_drop_item_del_static_delegate == null)
+      efl_ui_dnd_container_drop_item_del_static_delegate = new efl_ui_dnd_container_drop_item_del_delegate(drop_item_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_container_drop_item_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_container_drop_item_del_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.DndContainerConcrete.efl_ui_dnd_container_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.DndContainerConcrete.efl_ui_dnd_container_mixin_get();
+   }
+
+
+    private delegate double efl_ui_dnd_container_drag_delay_time_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_dnd_container_drag_delay_time_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_delay_time_get_api_delegate> efl_ui_dnd_container_drag_delay_time_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_delay_time_get_api_delegate>(_Module, "efl_ui_dnd_container_drag_delay_time_get");
+    private static double drag_delay_time_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_container_drag_delay_time_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((DndContainerConcrete)wrapper).GetDragDelayTime();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_dnd_container_drag_delay_time_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_dnd_container_drag_delay_time_get_delegate efl_ui_dnd_container_drag_delay_time_get_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_container_drag_delay_time_set_delegate(System.IntPtr obj, System.IntPtr pd,   double time);
+
+
+    public delegate  void efl_ui_dnd_container_drag_delay_time_set_api_delegate(System.IntPtr obj,   double time);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_delay_time_set_api_delegate> efl_ui_dnd_container_drag_delay_time_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_delay_time_set_api_delegate>(_Module, "efl_ui_dnd_container_drag_delay_time_set");
+    private static  void drag_delay_time_set(System.IntPtr obj, System.IntPtr pd,  double time)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_container_drag_delay_time_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((DndContainerConcrete)wrapper).SetDragDelayTime( time);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_dnd_container_drag_delay_time_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  time);
+      }
+   }
+   private static efl_ui_dnd_container_drag_delay_time_set_delegate efl_ui_dnd_container_drag_delay_time_set_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_container_drag_item_add_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr data_func_data, Efl.Dnd.DragDataGetInternal data_func, EinaFreeCb data_func_free_cb,  IntPtr item_func_data, Efl.Dnd.ItemGetInternal item_func, EinaFreeCb item_func_free_cb,  IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,  IntPtr icon_list_func_data, Efl.Dnd.DragIconListCreateInternal icon_list_func, EinaFreeCb icon_list_func_free_cb,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_container_drag_item_add_api_delegate(System.IntPtr obj,  IntPtr data_func_data, Efl.Dnd.DragDataGetInternal data_func, EinaFreeCb data_func_free_cb,  IntPtr item_func_data, Efl.Dnd.ItemGetInternal item_func, EinaFreeCb item_func_free_cb,  IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,  IntPtr icon_list_func_data, Efl.Dnd.DragIconListCreateInternal icon_list_func, EinaFreeCb icon_list_func_free_cb,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_item_add_api_delegate> efl_ui_dnd_container_drag_item_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_item_add_api_delegate>(_Module, "efl_ui_dnd_container_drag_item_add");
+    private static  void drag_item_add(System.IntPtr obj, System.IntPtr pd, IntPtr data_func_data, Efl.Dnd.DragDataGetInternal data_func, EinaFreeCb data_func_free_cb, IntPtr item_func_data, Efl.Dnd.ItemGetInternal item_func, EinaFreeCb item_func_free_cb, IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb, IntPtr icon_list_func_data, Efl.Dnd.DragIconListCreateInternal icon_list_func, EinaFreeCb icon_list_func_free_cb,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_container_drag_item_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                              Efl.Dnd.DragDataGetWrapper data_func_wrapper = new Efl.Dnd.DragDataGetWrapper(data_func, data_func_data, data_func_free_cb);
+         Efl.Dnd.ItemGetWrapper item_func_wrapper = new Efl.Dnd.ItemGetWrapper(item_func, item_func_data, item_func_free_cb);
+         Efl.Dnd.DragIconCreateWrapper icon_func_wrapper = new Efl.Dnd.DragIconCreateWrapper(icon_func, icon_func_data, icon_func_free_cb);
+         Efl.Dnd.DragIconListCreateWrapper icon_list_func_wrapper = new Efl.Dnd.DragIconListCreateWrapper(icon_list_func, icon_list_func_data, icon_list_func_free_cb);
+               
+         try {
+            ((DndContainerConcrete)wrapper).AddDragItem( data_func_wrapper.ManagedCb,  item_func_wrapper.ManagedCb,  icon_func_wrapper.ManagedCb,  icon_list_func_wrapper.ManagedCb,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_ui_dnd_container_drag_item_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), data_func_data, data_func, data_func_free_cb, item_func_data, item_func, item_func_free_cb, icon_func_data, icon_func, icon_func_free_cb, icon_list_func_data, icon_list_func, icon_list_func_free_cb,  seat);
+      }
+   }
+   private static efl_ui_dnd_container_drag_item_add_delegate efl_ui_dnd_container_drag_item_add_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_container_drag_item_del_delegate(System.IntPtr obj, System.IntPtr pd,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_container_drag_item_del_api_delegate(System.IntPtr obj,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_item_del_api_delegate> efl_ui_dnd_container_drag_item_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drag_item_del_api_delegate>(_Module, "efl_ui_dnd_container_drag_item_del");
+    private static  void drag_item_del(System.IntPtr obj, System.IntPtr pd,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_container_drag_item_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((DndContainerConcrete)wrapper).DelDragItem( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_dnd_container_drag_item_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_ui_dnd_container_drag_item_del_delegate efl_ui_dnd_container_drag_item_del_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_container_drop_item_add_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format,  IntPtr item_func_data, Efl.Dnd.ItemGetInternal item_func, EinaFreeCb item_func_free_cb,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_container_drop_item_add_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format,  IntPtr item_func_data, Efl.Dnd.ItemGetInternal item_func, EinaFreeCb item_func_free_cb,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drop_item_add_api_delegate> efl_ui_dnd_container_drop_item_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drop_item_add_api_delegate>(_Module, "efl_ui_dnd_container_drop_item_add");
+    private static  void drop_item_add(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format, IntPtr item_func_data, Efl.Dnd.ItemGetInternal item_func, EinaFreeCb item_func_free_cb,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_container_drop_item_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                            Efl.Dnd.ItemGetWrapper item_func_wrapper = new Efl.Dnd.ItemGetWrapper(item_func, item_func_data, item_func_free_cb);
+               
+         try {
+            ((DndContainerConcrete)wrapper).AddDropItem( format,  item_func_wrapper.ManagedCb,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_dnd_container_drop_item_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format, item_func_data, item_func, item_func_free_cb,  seat);
+      }
+   }
+   private static efl_ui_dnd_container_drop_item_add_delegate efl_ui_dnd_container_drop_item_add_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_container_drop_item_del_delegate(System.IntPtr obj, System.IntPtr pd,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_container_drop_item_del_api_delegate(System.IntPtr obj,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drop_item_del_api_delegate> efl_ui_dnd_container_drop_item_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_container_drop_item_del_api_delegate>(_Module, "efl_ui_dnd_container_drop_item_del");
+    private static  void drop_item_del(System.IntPtr obj, System.IntPtr pd,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_container_drop_item_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((DndContainerConcrete)wrapper).DelDropItem( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_dnd_container_drop_item_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_ui_dnd_container_drop_item_del_delegate efl_ui_dnd_container_drop_item_del_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_dnd_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_ui_dnd_types.eot.cs
new file mode 100755 (executable)
index 0000000..c0c3514
--- /dev/null
@@ -0,0 +1,436 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Dnd { 
+/// <summary></summary>
+/// <param name="win">The window to create the objects relative to</param>
+/// <param name="drag_obj">The drag object</param>
+/// <param name="off"></param>
+/// <returns></returns>
+public delegate Efl.Canvas.Object DragIconCreate( Efl.Canvas.Object win,  Efl.Canvas.Object drag_obj,  out Eina.Position2D off);
+[return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]public delegate Efl.Canvas.Object DragIconCreateInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object win, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object drag_obj,   out Eina.Position2D_StructInternal off);
+internal class DragIconCreateWrapper
+{
+
+   private DragIconCreateInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal DragIconCreateWrapper (DragIconCreateInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~DragIconCreateWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal Efl.Canvas.Object ManagedCb( Efl.Canvas.Object win, Efl.Canvas.Object drag_obj, out Eina.Position2D off)
+   {
+                                    var _out_off = new Eina.Position2D_StructInternal();
+                        var _ret_var = _cb(_cb_data,  win,  drag_obj,  out _out_off);
+      Eina.Error.RaiseIfUnhandledException();
+                  off = Eina.Position2D_StructConversion.ToManaged(_out_off);
+                        return _ret_var;
+   }
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]   internal static Efl.Canvas.Object Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object win, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object drag_obj,   out Eina.Position2D_StructInternal off)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      DragIconCreate cb = (DragIconCreate)handle.Target;
+                                    Eina.Position2D _out_off = default(Eina.Position2D);
+                           Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+      try {
+         _ret_var = cb( win,  drag_obj,  out _out_off);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                  off = Eina.Position2D_StructConversion.ToInternal(_out_off);
+                        return _ret_var;
+   }
+}
+} } 
+namespace Efl { namespace Dnd { 
+/// <summary></summary>
+/// <param name="obj">The container object</param>
+/// <param name="format">Data format</param>
+/// <param name="drag_data">Data</param>
+/// <param name="action">The drag action</param>
+/// <returns></returns>
+public delegate  void DragDataGet( Efl.Canvas.Object obj,  out Efl.Ui.SelectionFormat format,  ref Eina.RwSlice drag_data,  out Efl.Ui.SelectionAction action);
+public delegate  void DragDataGetInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj,   out Efl.Ui.SelectionFormat format,   ref Eina.RwSlice drag_data,   out Efl.Ui.SelectionAction action);
+internal class DragDataGetWrapper
+{
+
+   private DragDataGetInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal DragDataGetWrapper (DragDataGetInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~DragDataGetWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  void ManagedCb( Efl.Canvas.Object obj, out Efl.Ui.SelectionFormat format, ref Eina.RwSlice drag_data, out Efl.Ui.SelectionAction action)
+   {
+                                                                              _cb(_cb_data,  obj,  out format,  ref drag_data,  out action);
+      Eina.Error.RaiseIfUnhandledException();
+                                                         }
+
+      internal static  void Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj,   out Efl.Ui.SelectionFormat format,   ref Eina.RwSlice drag_data,   out Efl.Ui.SelectionAction action)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      DragDataGet cb = (DragDataGet)handle.Target;
+                                    format = default(Efl.Ui.SelectionFormat);      drag_data = default(Eina.RwSlice);      action = default(Efl.Ui.SelectionAction);                                 
+      try {
+         cb( obj,  out format,  ref drag_data,  out action);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                                                         }
+}
+} } 
+namespace Efl { namespace Dnd { 
+/// <summary></summary>
+/// <param name="obj">The container object</param>
+/// <param name="pos">The coordinates to get item</param>
+/// <param name="posret">position relative to item (left (-1), middle (0), right (1)</param>
+/// <returns></returns>
+public delegate Efl.Object ItemGet( Efl.Canvas.Object obj,  Eina.Position2D pos,  out Eina.Position2D posret);
+[return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]public delegate Efl.Object ItemGetInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj,   Eina.Position2D_StructInternal pos,   out Eina.Position2D_StructInternal posret);
+internal class ItemGetWrapper
+{
+
+   private ItemGetInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal ItemGetWrapper (ItemGetInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~ItemGetWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal Efl.Object ManagedCb( Efl.Canvas.Object obj, Eina.Position2D pos, out Eina.Position2D posret)
+   {
+            var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                        var _out_posret = new Eina.Position2D_StructInternal();
+                        var _ret_var = _cb(_cb_data,  obj,  _in_pos,  out _out_posret);
+      Eina.Error.RaiseIfUnhandledException();
+                  posret = Eina.Position2D_StructConversion.ToManaged(_out_posret);
+                        return _ret_var;
+   }
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]   internal static Efl.Object Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj,   Eina.Position2D_StructInternal pos,   out Eina.Position2D_StructInternal posret)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      ItemGet cb = (ItemGet)handle.Target;
+            var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                        Eina.Position2D _out_posret = default(Eina.Position2D);
+                           Efl.Object _ret_var = default(Efl.Object);
+      try {
+         _ret_var = cb( obj,  _in_pos,  out _out_posret);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                  posret = Eina.Position2D_StructConversion.ToInternal(_out_posret);
+                        return _ret_var;
+   }
+}
+} } 
+namespace Efl { namespace Dnd { 
+/// <summary></summary>
+/// <param name="obj">The container object</param>
+/// <returns></returns>
+public delegate Eina.List<Efl.Canvas.Object> DragIconListCreate( Efl.Canvas.Object obj);
+public delegate  System.IntPtr DragIconListCreateInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj);
+internal class DragIconListCreateWrapper
+{
+
+   private DragIconListCreateInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal DragIconListCreateWrapper (DragIconListCreateInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~DragIconListCreateWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal Eina.List<Efl.Canvas.Object> ManagedCb( Efl.Canvas.Object obj)
+   {
+                        var _ret_var = _cb(_cb_data,  obj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.List<Efl.Canvas.Object>(_ret_var, false, false);
+   }
+
+      internal static  System.IntPtr Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      DragIconListCreate cb = (DragIconListCreate)handle.Target;
+                           Eina.List<Efl.Canvas.Object> _ret_var = default(Eina.List<Efl.Canvas.Object>);
+      try {
+         _ret_var = cb( obj);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                  return _ret_var.Handle;
+   }
+}
+} } 
+namespace Efl { namespace Dnd { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct DragAccept
+{
+   /// <summary></summary>
+   public bool Accepted;
+   ///<summary>Constructor for DragAccept.</summary>
+   public DragAccept(
+      bool Accepted=default(bool)   )
+   {
+      this.Accepted = Accepted;
+   }
+public static implicit operator DragAccept(IntPtr ptr)
+   {
+      var tmp = (DragAccept_StructInternal)Marshal.PtrToStructure(ptr, typeof(DragAccept_StructInternal));
+      return DragAccept_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct DragAccept.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct DragAccept_StructInternal
+{
+///<summary>Internal wrapper for field Accepted</summary>
+public System.Byte Accepted;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator DragAccept(DragAccept_StructInternal struct_)
+   {
+      return DragAccept_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator DragAccept_StructInternal(DragAccept struct_)
+   {
+      return DragAccept_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct DragAccept</summary>
+public static class DragAccept_StructConversion
+{
+   internal static DragAccept_StructInternal ToInternal(DragAccept _external_struct)
+   {
+      var _internal_struct = new DragAccept_StructInternal();
+
+      _internal_struct.Accepted = _external_struct.Accepted ? (byte)1 : (byte)0;
+
+      return _internal_struct;
+   }
+
+   internal static DragAccept ToManaged(DragAccept_StructInternal _internal_struct)
+   {
+      var _external_struct = new DragAccept();
+
+      _external_struct.Accepted = _internal_struct.Accepted != 0;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Dnd { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct DragPos
+{
+   /// <summary>Evas Coordinate</summary>
+   public Eina.Position2D Pos;
+   /// <summary>The drag action</summary>
+   public Efl.Ui.SelectionAction Action;
+   /// <summary>The drag format</summary>
+   public Efl.Ui.SelectionFormat Format;
+   /// <summary>The item object. It is only available for container object.</summary>
+   public Efl.Canvas.Object Item;
+   ///<summary>Constructor for DragPos.</summary>
+   public DragPos(
+      Eina.Position2D Pos=default(Eina.Position2D),
+      Efl.Ui.SelectionAction Action=default(Efl.Ui.SelectionAction),
+      Efl.Ui.SelectionFormat Format=default(Efl.Ui.SelectionFormat),
+      Efl.Canvas.Object Item=default(Efl.Canvas.Object)   )
+   {
+      this.Pos = Pos;
+      this.Action = Action;
+      this.Format = Format;
+      this.Item = Item;
+   }
+public static implicit operator DragPos(IntPtr ptr)
+   {
+      var tmp = (DragPos_StructInternal)Marshal.PtrToStructure(ptr, typeof(DragPos_StructInternal));
+      return DragPos_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct DragPos.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct DragPos_StructInternal
+{
+   
+   public Eina.Position2D_StructInternal Pos;
+   
+   public Efl.Ui.SelectionAction Action;
+   
+   public Efl.Ui.SelectionFormat Format;
+///<summary>Internal wrapper for field Item</summary>
+public System.IntPtr Item;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator DragPos(DragPos_StructInternal struct_)
+   {
+      return DragPos_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator DragPos_StructInternal(DragPos struct_)
+   {
+      return DragPos_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct DragPos</summary>
+public static class DragPos_StructConversion
+{
+   internal static DragPos_StructInternal ToInternal(DragPos _external_struct)
+   {
+      var _internal_struct = new DragPos_StructInternal();
+
+      _internal_struct.Pos = Eina.Position2D_StructConversion.ToInternal(_external_struct.Pos);
+      _internal_struct.Action = _external_struct.Action;
+      _internal_struct.Format = _external_struct.Format;
+      _internal_struct.Item = _external_struct.Item.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static DragPos ToManaged(DragPos_StructInternal _internal_struct)
+   {
+      var _external_struct = new DragPos();
+
+      _external_struct.Pos = Eina.Position2D_StructConversion.ToManaged(_internal_struct.Pos);
+      _external_struct.Action = _internal_struct.Action;
+      _external_struct.Format = _internal_struct.Format;
+
+      _external_struct.Item = (Efl.Canvas.Object) System.Activator.CreateInstance(typeof(Efl.Canvas.Object), new System.Object[] {_internal_struct.Item});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Item);
+
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Dnd { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct DragItemContainerDrop
+{
+   /// <summary>The item object</summary>
+   public Efl.Canvas.Object Item;
+   /// <summary>The selection data</summary>
+   public Efl.Ui.SelectionData Data;
+   /// <summary>Position relative to item (left (-1), middle (0), right (1)</summary>
+   public Eina.Position2D Pos;
+   ///<summary>Constructor for DragItemContainerDrop.</summary>
+   public DragItemContainerDrop(
+      Efl.Canvas.Object Item=default(Efl.Canvas.Object),
+      Efl.Ui.SelectionData Data=default(Efl.Ui.SelectionData),
+      Eina.Position2D Pos=default(Eina.Position2D)   )
+   {
+      this.Item = Item;
+      this.Data = Data;
+      this.Pos = Pos;
+   }
+public static implicit operator DragItemContainerDrop(IntPtr ptr)
+   {
+      var tmp = (DragItemContainerDrop_StructInternal)Marshal.PtrToStructure(ptr, typeof(DragItemContainerDrop_StructInternal));
+      return DragItemContainerDrop_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct DragItemContainerDrop.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct DragItemContainerDrop_StructInternal
+{
+///<summary>Internal wrapper for field Item</summary>
+public System.IntPtr Item;
+   
+   public Efl.Ui.SelectionData_StructInternal Data;
+   
+   public Eina.Position2D_StructInternal Pos;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator DragItemContainerDrop(DragItemContainerDrop_StructInternal struct_)
+   {
+      return DragItemContainerDrop_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator DragItemContainerDrop_StructInternal(DragItemContainerDrop struct_)
+   {
+      return DragItemContainerDrop_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct DragItemContainerDrop</summary>
+public static class DragItemContainerDrop_StructConversion
+{
+   internal static DragItemContainerDrop_StructInternal ToInternal(DragItemContainerDrop _external_struct)
+   {
+      var _internal_struct = new DragItemContainerDrop_StructInternal();
+
+      _internal_struct.Item = _external_struct.Item.NativeHandle;
+      _internal_struct.Data = Efl.Ui.SelectionData_StructConversion.ToInternal(_external_struct.Data);
+      _internal_struct.Pos = Eina.Position2D_StructConversion.ToInternal(_external_struct.Pos);
+
+      return _internal_struct;
+   }
+
+   internal static DragItemContainerDrop ToManaged(DragItemContainerDrop_StructInternal _internal_struct)
+   {
+      var _external_struct = new DragItemContainerDrop();
+
+
+      _external_struct.Item = (Efl.Canvas.Object) System.Activator.CreateInstance(typeof(Efl.Canvas.Object), new System.Object[] {_internal_struct.Item});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Item);
+
+      _external_struct.Data = Efl.Ui.SelectionData_StructConversion.ToManaged(_internal_struct.Data);
+      _external_struct.Pos = Eina.Position2D_StructConversion.ToManaged(_internal_struct.Pos);
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_drag.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_drag.eo.cs
new file mode 100755 (executable)
index 0000000..5deb717
--- /dev/null
@@ -0,0 +1,684 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Common interface for draggable objects and parts.
+/// 1.20</summary>
+[DragNativeInherit]
+public interface Drag : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Gets the draggable object location.
+/// 1.20</summary>
+/// <param name="dx">The x relative position, from 0 to 1.
+/// 1.20</param>
+/// <param name="dy">The y relative position, from 0 to 1.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool GetDragValue( out double dx,  out double dy);
+   /// <summary>Sets the draggable object location.
+/// This places the draggable object at the given location.
+/// 1.20</summary>
+/// <param name="dx">The x relative position, from 0 to 1.
+/// 1.20</param>
+/// <param name="dy">The y relative position, from 0 to 1.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool SetDragValue( double dx,  double dy);
+   /// <summary>Gets the size of the dradgable object.
+/// 1.20</summary>
+/// <param name="dw">The drag relative width, from 0 to 1.
+/// 1.20</param>
+/// <param name="dh">The drag relative height, from 0 to 1.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool GetDragSize( out double dw,  out double dh);
+   /// <summary>Sets the size of the draggable object.
+/// 1.20</summary>
+/// <param name="dw">The drag relative width, from 0 to 1.
+/// 1.20</param>
+/// <param name="dh">The drag relative height, from 0 to 1.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool SetDragSize( double dw,  double dh);
+   /// <summary>Gets the draggable direction.
+/// 1.20</summary>
+/// <returns>The direction(s) premitted for drag.
+/// 1.20</returns>
+Efl.Ui.DragDir GetDragDir();
+   /// <summary>Gets the x and y step increments for the draggable object.
+/// 1.20</summary>
+/// <param name="dx">The x step relative amount, from 0 to 1.
+/// 1.20</param>
+/// <param name="dy">The y step relative amount, from 0 to 1.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool GetDragStep( out double dx,  out double dy);
+   /// <summary>Sets the x,y step increments for a draggable object.
+/// 1.20</summary>
+/// <param name="dx">The x step relative amount, from 0 to 1.
+/// 1.20</param>
+/// <param name="dy">The y step relative amount, from 0 to 1.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool SetDragStep( double dx,  double dy);
+   /// <summary>Gets the x,y page step increments for the draggable object.
+/// 1.20</summary>
+/// <param name="dx">The x page step increment
+/// 1.20</param>
+/// <param name="dy">The y page step increment
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool GetDragPage( out double dx,  out double dy);
+   /// <summary>Sets the x,y page step increment values.
+/// 1.20</summary>
+/// <param name="dx">The x page step increment
+/// 1.20</param>
+/// <param name="dy">The y page step increment
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool SetDragPage( double dx,  double dy);
+   /// <summary>Moves the draggable by <c>dx</c>,<c>dy</c> steps.
+/// This moves the draggable part by <c>dx</c>,<c>dy</c> steps where the step increment is the amount set by <see cref="Efl.Ui.Drag.GetDragStep"/>.
+/// 
+/// <c>dx</c> and <c>dy</c> can be positive or negative numbers, integer values are recommended.
+/// 1.20</summary>
+/// <param name="dx">The number of steps horizontally.
+/// 1.20</param>
+/// <param name="dy">The number of steps vertically.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool MoveDragStep( double dx,  double dy);
+   /// <summary>Moves the draggable by <c>dx</c>,<c>dy</c> pages.
+/// This moves the draggable by <c>dx</c>,<c>dy</c> pages. The increment is defined by <see cref="Efl.Ui.Drag.GetDragPage"/>.
+/// 
+/// <c>dx</c> and <c>dy</c> can be positive or negative numbers, integer values are recommended.
+/// 
+/// Warning: Paging is bugged!
+/// 1.20</summary>
+/// <param name="dx">The number of pages horizontally.
+/// 1.20</param>
+/// <param name="dy">The number of pages vertically.
+/// 1.20</param>
+/// <returns><c>true</c> on success, <c>false</c> otherwise
+/// 1.20</returns>
+bool MoveDragPage( double dx,  double dy);
+                                    /// <summary>Determines the draggable directions (read-only).
+/// The draggable directions are defined in the EDC file, inside the &quot;draggable&quot; section, by the attributes <c>x</c> and <c>y</c>. See the EDC reference documentation for more information.
+/// 1.20</summary>
+/// <value>The direction(s) premitted for drag.
+/// 1.20</value>
+   Efl.Ui.DragDir DragDir {
+      get ;
+   }
+}
+/// <summary>Common interface for draggable objects and parts.
+/// 1.20</summary>
+sealed public class DragConcrete : 
+
+Drag
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DragConcrete))
+            return Efl.Ui.DragNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_drag_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DragConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~DragConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static DragConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DragConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Gets the draggable object location.
+   /// 1.20</summary>
+   /// <param name="dx">The x relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetDragValue( out double dx,  out double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_value_get_ptr.Value.Delegate(this.NativeHandle, out dx,  out dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the draggable object location.
+   /// This places the draggable object at the given location.
+   /// 1.20</summary>
+   /// <param name="dx">The x relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y relative position, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool SetDragValue( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_value_set_ptr.Value.Delegate(this.NativeHandle, dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the size of the dradgable object.
+   /// 1.20</summary>
+   /// <param name="dw">The drag relative width, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dh">The drag relative height, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetDragSize( out double dw,  out double dh) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_size_get_ptr.Value.Delegate(this.NativeHandle, out dw,  out dh);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the size of the draggable object.
+   /// 1.20</summary>
+   /// <param name="dw">The drag relative width, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dh">The drag relative height, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool SetDragSize( double dw,  double dh) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_size_set_ptr.Value.Delegate(this.NativeHandle, dw,  dh);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the draggable direction.
+   /// 1.20</summary>
+   /// <returns>The direction(s) premitted for drag.
+   /// 1.20</returns>
+   public Efl.Ui.DragDir GetDragDir() {
+       var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_dir_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets the x and y step increments for the draggable object.
+   /// 1.20</summary>
+   /// <param name="dx">The x step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetDragStep( out double dx,  out double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_step_get_ptr.Value.Delegate(this.NativeHandle, out dx,  out dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the x,y step increments for a draggable object.
+   /// 1.20</summary>
+   /// <param name="dx">The x step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <param name="dy">The y step relative amount, from 0 to 1.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool SetDragStep( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_step_set_ptr.Value.Delegate(this.NativeHandle, dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets the x,y page step increments for the draggable object.
+   /// 1.20</summary>
+   /// <param name="dx">The x page step increment
+   /// 1.20</param>
+   /// <param name="dy">The y page step increment
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool GetDragPage( out double dx,  out double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_page_get_ptr.Value.Delegate(this.NativeHandle, out dx,  out dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Sets the x,y page step increment values.
+   /// 1.20</summary>
+   /// <param name="dx">The x page step increment
+   /// 1.20</param>
+   /// <param name="dy">The y page step increment
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool SetDragPage( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_page_set_ptr.Value.Delegate(this.NativeHandle, dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Moves the draggable by <c>dx</c>,<c>dy</c> steps.
+   /// This moves the draggable part by <c>dx</c>,<c>dy</c> steps where the step increment is the amount set by <see cref="Efl.Ui.Drag.GetDragStep"/>.
+   /// 
+   /// <c>dx</c> and <c>dy</c> can be positive or negative numbers, integer values are recommended.
+   /// 1.20</summary>
+   /// <param name="dx">The number of steps horizontally.
+   /// 1.20</param>
+   /// <param name="dy">The number of steps vertically.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool MoveDragStep( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_step_move_ptr.Value.Delegate(this.NativeHandle, dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Moves the draggable by <c>dx</c>,<c>dy</c> pages.
+   /// This moves the draggable by <c>dx</c>,<c>dy</c> pages. The increment is defined by <see cref="Efl.Ui.Drag.GetDragPage"/>.
+   /// 
+   /// <c>dx</c> and <c>dy</c> can be positive or negative numbers, integer values are recommended.
+   /// 
+   /// Warning: Paging is bugged!
+   /// 1.20</summary>
+   /// <param name="dx">The number of pages horizontally.
+   /// 1.20</param>
+   /// <param name="dy">The number of pages vertically.
+   /// 1.20</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool MoveDragPage( double dx,  double dy) {
+                                           var _ret_var = Efl.Ui.DragNativeInherit.efl_ui_drag_page_move_ptr.Value.Delegate(this.NativeHandle, dx,  dy);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Determines the draggable directions (read-only).
+/// The draggable directions are defined in the EDC file, inside the &quot;draggable&quot; section, by the attributes <c>x</c> and <c>y</c>. See the EDC reference documentation for more information.
+/// 1.20</summary>
+/// <value>The direction(s) premitted for drag.
+/// 1.20</value>
+   public Efl.Ui.DragDir DragDir {
+      get { return GetDragDir(); }
+   }
+}
+public class DragNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_drag_value_get_static_delegate == null)
+      efl_ui_drag_value_get_static_delegate = new efl_ui_drag_value_get_delegate(drag_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_value_get_static_delegate)});
+      if (efl_ui_drag_value_set_static_delegate == null)
+      efl_ui_drag_value_set_static_delegate = new efl_ui_drag_value_set_delegate(drag_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_value_set_static_delegate)});
+      if (efl_ui_drag_size_get_static_delegate == null)
+      efl_ui_drag_size_get_static_delegate = new efl_ui_drag_size_get_delegate(drag_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_size_get_static_delegate)});
+      if (efl_ui_drag_size_set_static_delegate == null)
+      efl_ui_drag_size_set_static_delegate = new efl_ui_drag_size_set_delegate(drag_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_size_set_static_delegate)});
+      if (efl_ui_drag_dir_get_static_delegate == null)
+      efl_ui_drag_dir_get_static_delegate = new efl_ui_drag_dir_get_delegate(drag_dir_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_dir_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_dir_get_static_delegate)});
+      if (efl_ui_drag_step_get_static_delegate == null)
+      efl_ui_drag_step_get_static_delegate = new efl_ui_drag_step_get_delegate(drag_step_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_step_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_step_get_static_delegate)});
+      if (efl_ui_drag_step_set_static_delegate == null)
+      efl_ui_drag_step_set_static_delegate = new efl_ui_drag_step_set_delegate(drag_step_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_step_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_step_set_static_delegate)});
+      if (efl_ui_drag_page_get_static_delegate == null)
+      efl_ui_drag_page_get_static_delegate = new efl_ui_drag_page_get_delegate(drag_page_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_page_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_page_get_static_delegate)});
+      if (efl_ui_drag_page_set_static_delegate == null)
+      efl_ui_drag_page_set_static_delegate = new efl_ui_drag_page_set_delegate(drag_page_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_page_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_page_set_static_delegate)});
+      if (efl_ui_drag_step_move_static_delegate == null)
+      efl_ui_drag_step_move_static_delegate = new efl_ui_drag_step_move_delegate(drag_step_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_step_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_step_move_static_delegate)});
+      if (efl_ui_drag_page_move_static_delegate == null)
+      efl_ui_drag_page_move_static_delegate = new efl_ui_drag_page_move_delegate(drag_page_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_drag_page_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_drag_page_move_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.DragConcrete.efl_ui_drag_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.DragConcrete.efl_ui_drag_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_value_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dx,   out double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_value_get_api_delegate(System.IntPtr obj,   out double dx,   out double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_value_get_api_delegate> efl_ui_drag_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_value_get_api_delegate>(_Module, "efl_ui_drag_value_get");
+    private static bool drag_value_get(System.IntPtr obj, System.IntPtr pd,  out double dx,  out double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dx = default(double);      dy = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).GetDragValue( out dx,  out dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dx,  out dy);
+      }
+   }
+   private static efl_ui_drag_value_get_delegate efl_ui_drag_value_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_value_set_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_value_set_api_delegate> efl_ui_drag_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_value_set_api_delegate>(_Module, "efl_ui_drag_value_set");
+    private static bool drag_value_set(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).SetDragValue( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_value_set_delegate efl_ui_drag_value_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dw,   out double dh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_size_get_api_delegate(System.IntPtr obj,   out double dw,   out double dh);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_size_get_api_delegate> efl_ui_drag_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_size_get_api_delegate>(_Module, "efl_ui_drag_size_get");
+    private static bool drag_size_get(System.IntPtr obj, System.IntPtr pd,  out double dw,  out double dh)
+   {
+      Eina.Log.Debug("function efl_ui_drag_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dw = default(double);      dh = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).GetDragSize( out dw,  out dh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dw,  out dh);
+      }
+   }
+   private static efl_ui_drag_size_get_delegate efl_ui_drag_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dw,   double dh);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_size_set_api_delegate(System.IntPtr obj,   double dw,   double dh);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_size_set_api_delegate> efl_ui_drag_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_size_set_api_delegate>(_Module, "efl_ui_drag_size_set");
+    private static bool drag_size_set(System.IntPtr obj, System.IntPtr pd,  double dw,  double dh)
+   {
+      Eina.Log.Debug("function efl_ui_drag_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).SetDragSize( dw,  dh);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dw,  dh);
+      }
+   }
+   private static efl_ui_drag_size_set_delegate efl_ui_drag_size_set_static_delegate;
+
+
+    private delegate Efl.Ui.DragDir efl_ui_drag_dir_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.DragDir efl_ui_drag_dir_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_dir_get_api_delegate> efl_ui_drag_dir_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_dir_get_api_delegate>(_Module, "efl_ui_drag_dir_get");
+    private static Efl.Ui.DragDir drag_dir_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_drag_dir_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.DragDir _ret_var = default(Efl.Ui.DragDir);
+         try {
+            _ret_var = ((Drag)wrapper).GetDragDir();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_drag_dir_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_drag_dir_get_delegate efl_ui_drag_dir_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_step_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dx,   out double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_step_get_api_delegate(System.IntPtr obj,   out double dx,   out double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_step_get_api_delegate> efl_ui_drag_step_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_step_get_api_delegate>(_Module, "efl_ui_drag_step_get");
+    private static bool drag_step_get(System.IntPtr obj, System.IntPtr pd,  out double dx,  out double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_step_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dx = default(double);      dy = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).GetDragStep( out dx,  out dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_step_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dx,  out dy);
+      }
+   }
+   private static efl_ui_drag_step_get_delegate efl_ui_drag_step_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_step_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_step_set_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_step_set_api_delegate> efl_ui_drag_step_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_step_set_api_delegate>(_Module, "efl_ui_drag_step_set");
+    private static bool drag_step_set(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_step_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).SetDragStep( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_step_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_step_set_delegate efl_ui_drag_step_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_page_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double dx,   out double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_page_get_api_delegate(System.IntPtr obj,   out double dx,   out double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_page_get_api_delegate> efl_ui_drag_page_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_page_get_api_delegate>(_Module, "efl_ui_drag_page_get");
+    private static bool drag_page_get(System.IntPtr obj, System.IntPtr pd,  out double dx,  out double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_page_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           dx = default(double);      dy = default(double);                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).GetDragPage( out dx,  out dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_page_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out dx,  out dy);
+      }
+   }
+   private static efl_ui_drag_page_get_delegate efl_ui_drag_page_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_page_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_page_set_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_page_set_api_delegate> efl_ui_drag_page_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_page_set_api_delegate>(_Module, "efl_ui_drag_page_set");
+    private static bool drag_page_set(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_page_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).SetDragPage( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_page_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_page_set_delegate efl_ui_drag_page_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_step_move_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_step_move_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_step_move_api_delegate> efl_ui_drag_step_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_step_move_api_delegate>(_Module, "efl_ui_drag_step_move");
+    private static bool drag_step_move(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_step_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).MoveDragStep( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_step_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_step_move_delegate efl_ui_drag_step_move_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_drag_page_move_delegate(System.IntPtr obj, System.IntPtr pd,   double dx,   double dy);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_drag_page_move_api_delegate(System.IntPtr obj,   double dx,   double dy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_drag_page_move_api_delegate> efl_ui_drag_page_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_drag_page_move_api_delegate>(_Module, "efl_ui_drag_page_move");
+    private static bool drag_page_move(System.IntPtr obj, System.IntPtr pd,  double dx,  double dy)
+   {
+      Eina.Log.Debug("function efl_ui_drag_page_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Drag)wrapper).MoveDragPage( dx,  dy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_drag_page_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dx,  dy);
+      }
+   }
+   private static efl_ui_drag_page_move_delegate efl_ui_drag_page_move_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_draggable.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_draggable.eo.cs
new file mode 100755 (executable)
index 0000000..5c264d0
--- /dev/null
@@ -0,0 +1,658 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI draggable interface</summary>
+[DraggableNativeInherit]
+public interface Draggable : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+/// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+/// <returns>Turn on or off drop_target. Default is <c>false</c>.</returns>
+bool GetDragTarget();
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+/// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+/// <param name="set">Turn on or off drop_target. Default is <c>false</c>.</param>
+/// <returns></returns>
+ void SetDragTarget( bool set);
+         /// <summary>Called when drag operation starts</summary>
+   event EventHandler<Efl.Ui.DraggableDragEvt_Args> DragEvt;
+   /// <summary>Called when drag started</summary>
+   event EventHandler DragStartEvt;
+   /// <summary>Called when drag stopped</summary>
+   event EventHandler<Efl.Ui.DraggableDragStopEvt_Args> DragStopEvt;
+   /// <summary>Called when drag operation ends</summary>
+   event EventHandler DragEndEvt;
+   /// <summary>Called when drag starts into up direction</summary>
+   event EventHandler<Efl.Ui.DraggableDragStartUpEvt_Args> DragStartUpEvt;
+   /// <summary>Called when drag starts into down direction</summary>
+   event EventHandler<Efl.Ui.DraggableDragStartDownEvt_Args> DragStartDownEvt;
+   /// <summary>Called when drag starts into right direction</summary>
+   event EventHandler<Efl.Ui.DraggableDragStartRightEvt_Args> DragStartRightEvt;
+   /// <summary>Called when drag starts into left direction</summary>
+   event EventHandler<Efl.Ui.DraggableDragStartLeftEvt_Args> DragStartLeftEvt;
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+/// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+/// <value>Turn on or off drop_target. Default is <c>false</c>.</value>
+   bool DragTarget {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Draggable.DragEvt"/>.</summary>
+public class DraggableDragEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Draggable.DragStopEvt"/>.</summary>
+public class DraggableDragStopEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Draggable.DragStartUpEvt"/>.</summary>
+public class DraggableDragStartUpEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Draggable.DragStartDownEvt"/>.</summary>
+public class DraggableDragStartDownEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Draggable.DragStartRightEvt"/>.</summary>
+public class DraggableDragStartRightEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Draggable.DragStartLeftEvt"/>.</summary>
+public class DraggableDragStartLeftEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Object arg { get; set; }
+}
+/// <summary>Efl UI draggable interface</summary>
+sealed public class DraggableConcrete : 
+
+Draggable
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (DraggableConcrete))
+            return Efl.Ui.DraggableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_draggable_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public DraggableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~DraggableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static DraggableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new DraggableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object DragEvtKey = new object();
+   /// <summary>Called when drag operation starts</summary>
+   public event EventHandler<Efl.Ui.DraggableDragEvt_Args> DragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragEvt_delegate)) {
+               eventHandlers.AddHandler(DragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_DragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragEvt.</summary>
+   public void On_DragEvt(Efl.Ui.DraggableDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragEvt_Args>)eventHandlers[DragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragEvt_delegate;
+   private void on_DragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragEvt_Args args = new Efl.Ui.DraggableDragEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartEvtKey = new object();
+   /// <summary>Called when drag started</summary>
+   public event EventHandler DragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_DragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartEvt.</summary>
+   public void On_DragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartEvt_delegate;
+   private void on_DragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStopEvtKey = new object();
+   /// <summary>Called when drag stopped</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStopEvt_Args> DragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStopEvt_delegate)) {
+               eventHandlers.AddHandler(DragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_DragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStopEvt.</summary>
+   public void On_DragStopEvt(Efl.Ui.DraggableDragStopEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStopEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStopEvt_Args>)eventHandlers[DragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStopEvt_delegate;
+   private void on_DragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStopEvt_Args args = new Efl.Ui.DraggableDragStopEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragEndEvtKey = new object();
+   /// <summary>Called when drag operation ends</summary>
+   public event EventHandler DragEndEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_END";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragEndEvt_delegate)) {
+               eventHandlers.AddHandler(DragEndEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_END";
+            if (remove_cpp_event_handler(key, this.evt_DragEndEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragEndEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragEndEvt.</summary>
+   public void On_DragEndEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragEndEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragEndEvt_delegate;
+   private void on_DragEndEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragEndEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartUpEvtKey = new object();
+   /// <summary>Called when drag starts into up direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartUpEvt_Args> DragStartUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartUpEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_UP";
+            if (remove_cpp_event_handler(key, this.evt_DragStartUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartUpEvt.</summary>
+   public void On_DragStartUpEvt(Efl.Ui.DraggableDragStartUpEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartUpEvt_Args>)eventHandlers[DragStartUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartUpEvt_delegate;
+   private void on_DragStartUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartUpEvt_Args args = new Efl.Ui.DraggableDragStartUpEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartDownEvtKey = new object();
+   /// <summary>Called when drag starts into down direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartDownEvt_Args> DragStartDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartDownEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_DragStartDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartDownEvt.</summary>
+   public void On_DragStartDownEvt(Efl.Ui.DraggableDragStartDownEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartDownEvt_Args>)eventHandlers[DragStartDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartDownEvt_delegate;
+   private void on_DragStartDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartDownEvt_Args args = new Efl.Ui.DraggableDragStartDownEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartRightEvtKey = new object();
+   /// <summary>Called when drag starts into right direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartRightEvt_Args> DragStartRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartRightEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_DragStartRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartRightEvt.</summary>
+   public void On_DragStartRightEvt(Efl.Ui.DraggableDragStartRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartRightEvt_Args>)eventHandlers[DragStartRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartRightEvt_delegate;
+   private void on_DragStartRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartRightEvt_Args args = new Efl.Ui.DraggableDragStartRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartLeftEvtKey = new object();
+   /// <summary>Called when drag starts into left direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartLeftEvt_Args> DragStartLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartLeftEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_DragStartLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartLeftEvt.</summary>
+   public void On_DragStartLeftEvt(Efl.Ui.DraggableDragStartLeftEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartLeftEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartLeftEvt_Args>)eventHandlers[DragStartLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartLeftEvt_delegate;
+   private void on_DragStartLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartLeftEvt_Args args = new Efl.Ui.DraggableDragStartLeftEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_DragEvt_delegate = new Efl.EventCb(on_DragEvt_NativeCallback);
+      evt_DragStartEvt_delegate = new Efl.EventCb(on_DragStartEvt_NativeCallback);
+      evt_DragStopEvt_delegate = new Efl.EventCb(on_DragStopEvt_NativeCallback);
+      evt_DragEndEvt_delegate = new Efl.EventCb(on_DragEndEvt_NativeCallback);
+      evt_DragStartUpEvt_delegate = new Efl.EventCb(on_DragStartUpEvt_NativeCallback);
+      evt_DragStartDownEvt_delegate = new Efl.EventCb(on_DragStartDownEvt_NativeCallback);
+      evt_DragStartRightEvt_delegate = new Efl.EventCb(on_DragStartRightEvt_NativeCallback);
+      evt_DragStartLeftEvt_delegate = new Efl.EventCb(on_DragStartLeftEvt_NativeCallback);
+   }
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+   /// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+   /// <returns>Turn on or off drop_target. Default is <c>false</c>.</returns>
+   public bool GetDragTarget() {
+       var _ret_var = Efl.Ui.DraggableNativeInherit.efl_ui_draggable_drag_target_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+   /// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+   /// <param name="set">Turn on or off drop_target. Default is <c>false</c>.</param>
+   /// <returns></returns>
+   public  void SetDragTarget( bool set) {
+                         Efl.Ui.DraggableNativeInherit.efl_ui_draggable_drag_target_set_ptr.Value.Delegate(this.NativeHandle, set);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+/// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+/// <value>Turn on or off drop_target. Default is <c>false</c>.</value>
+   public bool DragTarget {
+      get { return GetDragTarget(); }
+      set { SetDragTarget( value); }
+   }
+}
+public class DraggableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_draggable_drag_target_get_static_delegate == null)
+      efl_ui_draggable_drag_target_get_static_delegate = new efl_ui_draggable_drag_target_get_delegate(drag_target_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_draggable_drag_target_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_draggable_drag_target_get_static_delegate)});
+      if (efl_ui_draggable_drag_target_set_static_delegate == null)
+      efl_ui_draggable_drag_target_set_static_delegate = new efl_ui_draggable_drag_target_set_delegate(drag_target_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_draggable_drag_target_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_draggable_drag_target_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.DraggableConcrete.efl_ui_draggable_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.DraggableConcrete.efl_ui_draggable_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_draggable_drag_target_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_draggable_drag_target_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_get_api_delegate> efl_ui_draggable_drag_target_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_get_api_delegate>(_Module, "efl_ui_draggable_drag_target_get");
+    private static bool drag_target_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_draggable_drag_target_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Draggable)wrapper).GetDragTarget();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_draggable_drag_target_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_draggable_drag_target_get_delegate efl_ui_draggable_drag_target_get_static_delegate;
+
+
+    private delegate  void efl_ui_draggable_drag_target_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool set);
+
+
+    public delegate  void efl_ui_draggable_drag_target_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool set);
+    public static Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_set_api_delegate> efl_ui_draggable_drag_target_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_set_api_delegate>(_Module, "efl_ui_draggable_drag_target_set");
+    private static  void drag_target_set(System.IntPtr obj, System.IntPtr pd,  bool set)
+   {
+      Eina.Log.Debug("function efl_ui_draggable_drag_target_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Draggable)wrapper).SetDragTarget( set);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_draggable_drag_target_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  set);
+      }
+   }
+   private static efl_ui_draggable_drag_target_set_delegate efl_ui_draggable_drag_target_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_factory.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_factory.eo.cs
new file mode 100755 (executable)
index 0000000..5649c54
--- /dev/null
@@ -0,0 +1,436 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI factory interface</summary>
+[FactoryNativeInherit]
+public interface Factory : 
+   Efl.Ui.FactoryBind ,
+   Efl.Ui.PropertyBind ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Create a UI object from the necessary properties in the specified model.</summary>
+/// <param name="model">Efl model</param>
+/// <param name="parent">Efl canvas</param>
+/// <returns>Created UI object</returns>
+ Eina.Future Create( Efl.Model model,  Efl.Gfx.Entity parent);
+   /// <summary>Release a UI object and disconnect from models.</summary>
+/// <param name="ui_view">Efl canvas</param>
+/// <returns></returns>
+ void Release( Efl.Gfx.Entity ui_view);
+      System.Threading.Tasks.Task<Eina.Value> CreateAsync( Efl.Model model, Efl.Gfx.Entity parent, System.Threading.CancellationToken token=default(System.Threading.CancellationToken));
+      /// <summary>Event triggered when an item has been successfully created.</summary>
+   event EventHandler<Efl.Ui.FactoryCreatedEvt_Args> CreatedEvt;
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Factory.CreatedEvt"/>.</summary>
+public class FactoryCreatedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.FactoryItemCreatedEvent arg { get; set; }
+}
+/// <summary>Efl UI factory interface</summary>
+sealed public class FactoryConcrete : 
+
+Factory
+   , Efl.Ui.FactoryBind, Efl.Ui.PropertyBind
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FactoryConcrete))
+            return Efl.Ui.FactoryNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_factory_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FactoryConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FactoryConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FactoryConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FactoryConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object CreatedEvtKey = new object();
+   /// <summary>Event triggered when an item has been successfully created.</summary>
+   public event EventHandler<Efl.Ui.FactoryCreatedEvt_Args> CreatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FACTORY_EVENT_CREATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_CreatedEvt_delegate)) {
+               eventHandlers.AddHandler(CreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FACTORY_EVENT_CREATED";
+            if (remove_cpp_event_handler(key, this.evt_CreatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CreatedEvt.</summary>
+   public void On_CreatedEvt(Efl.Ui.FactoryCreatedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.FactoryCreatedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.FactoryCreatedEvt_Args>)eventHandlers[CreatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CreatedEvt_delegate;
+   private void on_CreatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.FactoryCreatedEvt_Args args = new Efl.Ui.FactoryCreatedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_CreatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_CreatedEvt_delegate = new Efl.EventCb(on_CreatedEvt_NativeCallback);
+   }
+   /// <summary>Create a UI object from the necessary properties in the specified model.</summary>
+   /// <param name="model">Efl model</param>
+   /// <param name="parent">Efl canvas</param>
+   /// <returns>Created UI object</returns>
+   public  Eina.Future Create( Efl.Model model,  Efl.Gfx.Entity parent) {
+                                           var _ret_var = Efl.Ui.FactoryNativeInherit.efl_ui_factory_create_ptr.Value.Delegate(this.NativeHandle, model,  parent);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Release a UI object and disconnect from models.</summary>
+   /// <param name="ui_view">Efl canvas</param>
+   /// <returns></returns>
+   public  void Release( Efl.Gfx.Entity ui_view) {
+                         Efl.Ui.FactoryNativeInherit.efl_ui_factory_release_ptr.Value.Delegate(this.NativeHandle, ui_view);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>bind the factory with the given key string. when the data is ready or changed, factory create the object and bind the data to the key action and process promised work. Note: the input <see cref="Efl.Ui.Factory"/> need to be <see cref="Efl.Ui.PropertyBind.PropertyBind"/> at least once.</summary>
+   /// <param name="key">Key string for bind model property data</param>
+   /// <param name="factory"><see cref="Efl.Ui.Factory"/> for create and bind model property data</param>
+   /// <returns></returns>
+   public  void FactoryBind(  System.String key,  Efl.Ui.Factory factory) {
+                                           Efl.Ui.FactoryBindNativeInherit.efl_ui_factory_bind_ptr.Value.Delegate(this.NativeHandle, key,  factory);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>bind property data with the given key string. when the data is ready or changed, bind the data to the key action and process promised work.</summary>
+   /// <param name="key">key string for bind model property data</param>
+   /// <param name="property">Model property name</param>
+   /// <returns></returns>
+   public  void PropertyBind(  System.String key,   System.String property) {
+                                           Efl.Ui.PropertyBindNativeInherit.efl_ui_property_bind_ptr.Value.Delegate(this.NativeHandle, key,  property);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   public System.Threading.Tasks.Task<Eina.Value> CreateAsync( Efl.Model model, Efl.Gfx.Entity parent, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = Create(  model,  parent);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+}
+public class FactoryNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_factory_create_static_delegate == null)
+      efl_ui_factory_create_static_delegate = new efl_ui_factory_create_delegate(create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_create_static_delegate)});
+      if (efl_ui_factory_release_static_delegate == null)
+      efl_ui_factory_release_static_delegate = new efl_ui_factory_release_delegate(release);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_release"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_release_static_delegate)});
+      if (efl_ui_factory_bind_static_delegate == null)
+      efl_ui_factory_bind_static_delegate = new efl_ui_factory_bind_delegate(factory_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_bind_static_delegate)});
+      if (efl_ui_property_bind_static_delegate == null)
+      efl_ui_property_bind_static_delegate = new efl_ui_property_bind_delegate(property_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_property_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_property_bind_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.FactoryConcrete.efl_ui_factory_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.FactoryConcrete.efl_ui_factory_interface_get();
+   }
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_ui_factory_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity parent);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_ui_factory_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity parent);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_create_api_delegate> efl_ui_factory_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_create_api_delegate>(_Module, "efl_ui_factory_create");
+    private static  Eina.Future create(System.IntPtr obj, System.IntPtr pd,  Efl.Model model,  Efl.Gfx.Entity parent)
+   {
+      Eina.Log.Debug("function efl_ui_factory_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Factory)wrapper).Create( model,  parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_factory_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  model,  parent);
+      }
+   }
+   private static efl_ui_factory_create_delegate efl_ui_factory_create_static_delegate;
+
+
+    private delegate  void efl_ui_factory_release_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity ui_view);
+
+
+    public delegate  void efl_ui_factory_release_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity ui_view);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_release_api_delegate> efl_ui_factory_release_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_release_api_delegate>(_Module, "efl_ui_factory_release");
+    private static  void release(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity ui_view)
+   {
+      Eina.Log.Debug("function efl_ui_factory_release was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Factory)wrapper).Release( ui_view);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_factory_release_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ui_view);
+      }
+   }
+   private static efl_ui_factory_release_delegate efl_ui_factory_release_static_delegate;
+
+
+    private delegate  void efl_ui_factory_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+
+
+    public delegate  void efl_ui_factory_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate> efl_ui_factory_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate>(_Module, "efl_ui_factory_bind");
+    private static  void factory_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Ui.Factory factory)
+   {
+      Eina.Log.Debug("function efl_ui_factory_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Factory)wrapper).FactoryBind( key,  factory);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_factory_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  factory);
+      }
+   }
+   private static efl_ui_factory_bind_delegate efl_ui_factory_bind_static_delegate;
+
+
+    private delegate  void efl_ui_property_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    public delegate  void efl_ui_property_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate> efl_ui_property_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate>(_Module, "efl_ui_property_bind");
+    private static  void property_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String property)
+   {
+      Eina.Log.Debug("function efl_ui_property_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Factory)wrapper).PropertyBind( key,  property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_property_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  property);
+      }
+   }
+   private static efl_ui_property_bind_delegate efl_ui_property_bind_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>EFL Ui Factory event structure provided when an item was just created.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct FactoryItemCreatedEvent
+{
+   /// <summary>The model already set on the new item.</summary>
+   public Efl.Model Model;
+   /// <summary>The item that was just created.</summary>
+   public Efl.Gfx.Entity Item;
+   ///<summary>Constructor for FactoryItemCreatedEvent.</summary>
+   public FactoryItemCreatedEvent(
+      Efl.Model Model=default(Efl.Model),
+      Efl.Gfx.Entity Item=default(Efl.Gfx.Entity)   )
+   {
+      this.Model = Model;
+      this.Item = Item;
+   }
+public static implicit operator FactoryItemCreatedEvent(IntPtr ptr)
+   {
+      var tmp = (FactoryItemCreatedEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(FactoryItemCreatedEvent_StructInternal));
+      return FactoryItemCreatedEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct FactoryItemCreatedEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct FactoryItemCreatedEvent_StructInternal
+{
+///<summary>Internal wrapper for field Model</summary>
+public System.IntPtr Model;
+///<summary>Internal wrapper for field Item</summary>
+public System.IntPtr Item;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator FactoryItemCreatedEvent(FactoryItemCreatedEvent_StructInternal struct_)
+   {
+      return FactoryItemCreatedEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator FactoryItemCreatedEvent_StructInternal(FactoryItemCreatedEvent struct_)
+   {
+      return FactoryItemCreatedEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct FactoryItemCreatedEvent</summary>
+public static class FactoryItemCreatedEvent_StructConversion
+{
+   internal static FactoryItemCreatedEvent_StructInternal ToInternal(FactoryItemCreatedEvent _external_struct)
+   {
+      var _internal_struct = new FactoryItemCreatedEvent_StructInternal();
+
+      _internal_struct.Model = _external_struct.Model.NativeHandle;
+      _internal_struct.Item = _external_struct.Item.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static FactoryItemCreatedEvent ToManaged(FactoryItemCreatedEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new FactoryItemCreatedEvent();
+
+
+      _external_struct.Model = (Efl.ModelConcrete) System.Activator.CreateInstance(typeof(Efl.ModelConcrete), new System.Object[] {_internal_struct.Model});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Model);
+
+
+      _external_struct.Item = (Efl.Gfx.EntityConcrete) System.Activator.CreateInstance(typeof(Efl.Gfx.EntityConcrete), new System.Object[] {_internal_struct.Item});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Item);
+
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_factory_bind.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_factory_bind.eo.cs
new file mode 100755 (executable)
index 0000000..6b99854
--- /dev/null
@@ -0,0 +1,146 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Property interface. view object can have <see cref="Efl.Model"/> and need to set cotent with those model stored data. the interface can help binding the factory to create object with model property data. see <see cref="Efl.Model"/> see <see cref="Efl.Ui.Factory"/></summary>
+[FactoryBindNativeInherit]
+public interface FactoryBind : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>bind the factory with the given key string. when the data is ready or changed, factory create the object and bind the data to the key action and process promised work. Note: the input <see cref="Efl.Ui.Factory"/> need to be <see cref="Efl.Ui.PropertyBind.PropertyBind"/> at least once.</summary>
+/// <param name="key">Key string for bind model property data</param>
+/// <param name="factory"><see cref="Efl.Ui.Factory"/> for create and bind model property data</param>
+/// <returns></returns>
+ void FactoryBind(  System.String key,  Efl.Ui.Factory factory);
+   }
+/// <summary>Efl UI Property interface. view object can have <see cref="Efl.Model"/> and need to set cotent with those model stored data. the interface can help binding the factory to create object with model property data. see <see cref="Efl.Model"/> see <see cref="Efl.Ui.Factory"/></summary>
+sealed public class FactoryBindConcrete : 
+
+FactoryBind
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FactoryBindConcrete))
+            return Efl.Ui.FactoryBindNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_factory_bind_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FactoryBindConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FactoryBindConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FactoryBindConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FactoryBindConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>bind the factory with the given key string. when the data is ready or changed, factory create the object and bind the data to the key action and process promised work. Note: the input <see cref="Efl.Ui.Factory"/> need to be <see cref="Efl.Ui.PropertyBind.PropertyBind"/> at least once.</summary>
+   /// <param name="key">Key string for bind model property data</param>
+   /// <param name="factory"><see cref="Efl.Ui.Factory"/> for create and bind model property data</param>
+   /// <returns></returns>
+   public  void FactoryBind(  System.String key,  Efl.Ui.Factory factory) {
+                                           Efl.Ui.FactoryBindNativeInherit.efl_ui_factory_bind_ptr.Value.Delegate(this.NativeHandle, key,  factory);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+}
+public class FactoryBindNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_factory_bind_static_delegate == null)
+      efl_ui_factory_bind_static_delegate = new efl_ui_factory_bind_delegate(factory_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_bind_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.FactoryBindConcrete.efl_ui_factory_bind_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.FactoryBindConcrete.efl_ui_factory_bind_interface_get();
+   }
+
+
+    private delegate  void efl_ui_factory_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+
+
+    public delegate  void efl_ui_factory_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate> efl_ui_factory_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate>(_Module, "efl_ui_factory_bind");
+    private static  void factory_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Ui.Factory factory)
+   {
+      Eina.Log.Debug("function efl_ui_factory_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((FactoryBind)wrapper).FactoryBind( key,  factory);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_factory_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  factory);
+      }
+   }
+   private static efl_ui_factory_bind_delegate efl_ui_factory_bind_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_flip.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_flip.eo.cs
new file mode 100755 (executable)
index 0000000..75f29e8
--- /dev/null
@@ -0,0 +1,1331 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI flip class</summary>
+[FlipNativeInherit]
+public class Flip : Efl.Ui.Widget, Efl.Eo.IWrapper,Efl.Container,Efl.Pack,Efl.PackLinear
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.FlipNativeInherit nativeInherit = new Efl.Ui.FlipNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Flip))
+            return Efl.Ui.FlipNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_flip_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Flip(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_flip_class_get(), typeof(Flip), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Flip(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Flip(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Flip static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Flip(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object AnimateBeginEvtKey = new object();
+   /// <summary>Called when flip animation begins</summary>
+   public event EventHandler AnimateBeginEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FLIP_EVENT_ANIMATE_BEGIN";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AnimateBeginEvt_delegate)) {
+               eventHandlers.AddHandler(AnimateBeginEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FLIP_EVENT_ANIMATE_BEGIN";
+            if (remove_cpp_event_handler(key, this.evt_AnimateBeginEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnimateBeginEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnimateBeginEvt.</summary>
+   public void On_AnimateBeginEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AnimateBeginEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnimateBeginEvt_delegate;
+   private void on_AnimateBeginEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AnimateBeginEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AnimateDoneEvtKey = new object();
+   /// <summary>Called when flip animation is done</summary>
+   public event EventHandler AnimateDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FLIP_EVENT_ANIMATE_DONE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AnimateDoneEvt_delegate)) {
+               eventHandlers.AddHandler(AnimateDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FLIP_EVENT_ANIMATE_DONE";
+            if (remove_cpp_event_handler(key, this.evt_AnimateDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnimateDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnimateDoneEvt.</summary>
+   public void On_AnimateDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AnimateDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnimateDoneEvt_delegate;
+   private void on_AnimateDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AnimateDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_AnimateBeginEvt_delegate = new Efl.EventCb(on_AnimateBeginEvt_NativeCallback);
+      evt_AnimateDoneEvt_delegate = new Efl.EventCb(on_AnimateDoneEvt_NativeCallback);
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Get the interactive flip mode.</summary>
+   /// <returns>The interactive flip mode to use.</returns>
+   virtual public Efl.Ui.FlipInteraction GetInteraction() {
+       var _ret_var = Efl.Ui.FlipNativeInherit.efl_ui_flip_interaction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the interactive flip mode.
+   /// This sets if the flip should be interactive (allow user to click and drag a side of the flip to reveal the back page and cause it to flip). By default a flip is not interactive. You may also need to set which sides of the flip are &quot;active&quot; for flipping and how much space they use (a minimum of a finger size) with <see cref="Efl.Ui.Flip.SetInteractionDirectionEnabled"/> and <see cref="Efl.Ui.Flip.SetInteractionDirectionHitsize"/>.
+   /// 
+   /// The four available mode of interaction are #ELM_FLIP_INTERACTION_NONE, #ELM_FLIP_INTERACTION_ROTATE, #ELM_FLIP_INTERACTION_CUBE and  #ELM_FLIP_INTERACTION_PAGE.
+   /// 
+   /// Note: #ELM_FLIP_INTERACTION_ROTATE won&apos;t cause #ELM_FLIP_ROTATE_XZ_CENTER_AXIS or #ELM_FLIP_ROTATE_YZ_CENTER_AXIS to happen, those can only be achieved with <see cref="Efl.Ui.Flip.Go"/>.</summary>
+   /// <param name="mode">The interactive flip mode to use.</param>
+   /// <returns></returns>
+   virtual public  void SetInteraction( Efl.Ui.FlipInteraction mode) {
+                         Efl.Ui.FlipNativeInherit.efl_ui_flip_interaction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get flip front visibility state.</summary>
+   /// <returns><c>true</c> if front front is showing, <c>false</c> if the back is showing.</returns>
+   virtual public bool GetFrontVisible() {
+       var _ret_var = Efl.Ui.FlipNativeInherit.efl_ui_flip_front_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the amount of the flip that is sensitive to interactive flip.
+   /// Set the amount of the flip that is sensitive to interactive flip, with 0 representing no area in the flip and 1 representing the entire flip. There is however a consideration to be made in that the area will never be smaller than the finger size set (as set in your Elementary configuration), and dragging must always start from the opposite half of the flip (eg. right half of the flip when dragging to the left).
+   /// 
+   /// Note: The <c>dir</c> parameter is not actually related to the direction of the drag, it only refers to the area in the flip where interaction can occur (top, bottom, left, right).
+   /// 
+   /// Negative values of <c>hitsize</c> will disable this hit area.
+   /// 
+   /// See also <see cref="Efl.Ui.Flip.SetInteraction"/>.</summary>
+   /// <param name="dir">The hit area to set.</param>
+   /// <param name="hitsize">The amount of that dimension (0.0 to 1.0) to use.</param>
+   /// <returns></returns>
+   virtual public  void SetInteractionDirectionHitsize( Efl.Ui.Dir dir,  double hitsize) {
+                                           Efl.Ui.FlipNativeInherit.efl_ui_flip_interaction_direction_hitsize_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir,  hitsize);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the amount of the flip that is sensitive to interactive flip.</summary>
+   /// <param name="dir">The direction to check.</param>
+   /// <returns>The size set for that direction.</returns>
+   virtual public double GetInteractionDirectionHitsize( Efl.Ui.Dir dir) {
+                         var _ret_var = Efl.Ui.FlipNativeInherit.efl_ui_flip_interaction_direction_hitsize_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set which directions of the flip respond to interactive flip
+   /// By default all directions are disabled, so you may want to enable the desired directions for flipping if you need interactive flipping. You must call this function once for each direction that&apos;s enabled.
+   /// 
+   /// You can also set the appropriate hit area size by calling <see cref="Efl.Ui.Flip.SetInteractionDirectionHitsize"/>. By default, a minimum hit area will be created on the opposite edge of the flip.</summary>
+   /// <param name="dir">The direction to change.</param>
+   /// <param name="enabled">If that direction is enabled or not.</param>
+   /// <returns></returns>
+   virtual public  void SetInteractionDirectionEnabled( Efl.Ui.Dir dir,  bool enabled) {
+                                           Efl.Ui.FlipNativeInherit.efl_ui_flip_interaction_direction_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir,  enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the enabled state of that flip direction.</summary>
+   /// <param name="dir">The direction to check.</param>
+   /// <returns>If that direction is enabled or not.</returns>
+   virtual public bool GetInteractionDirectionEnabled( Efl.Ui.Dir dir) {
+                         var _ret_var = Efl.Ui.FlipNativeInherit.efl_ui_flip_interaction_direction_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Runs the flip animation.
+   /// Flips the front and back contents using the <c>mode</c> animation. This effectively hides the currently visible content and shows the hidden one.
+   /// 
+   /// There a number of possible animations to use for flipping, namely #ELM_FLIP_ROTATE_X_CENTER_AXIS (rotate the currently visible content around a horizontal axis in the middle of its height, the other content is shown as the other side of the flip), #ELM_FLIP_ROTATE_Y_CENTER_AXIS (rotate the currently visible content around a vertical axis in the middle of its width, the other content is shown as the other side of the flip), #ELM_FLIP_ROTATE_XZ_CENTER_AXIS (rotate the currently visible content around a diagonal axis in the middle of its width, the other content is shown as the other side of the flip), #ELM_FLIP_ROTATE_YZ_CENTER_AXIS (rotate the currently visible content around a diagonal axis in the middle of its height, the other content is shown as the other side of the flip). #ELM_FLIP_CUBE_LEFT (rotate the currently visible content to the left as if the flip was a cube, the other content is shown as the right face of the cube), #ELM_FLIP_CUBE_RIGHT (rotate the currently visible content to the right as if the flip was a cube, the other content is shown as the left face of the cube), #ELM_FLIP_CUBE_UP (rotate the currently visible content up as if the flip was a cube, the other content is shown as the bottom face of the cube), #ELM_FLIP_CUBE_DOWN (rotate the currently visible content down as if the flip was a cube, the other content is shown as the upper face of the cube), #ELM_FLIP_PAGE_LEFT (move the currently visible content to the left as if the flip was a book, the other content is shown as the page below that), #ELM_FLIP_PAGE_RIGHT (move the currently visible content to the right as if the flip was a book, the other content is shown as the page below it), #ELM_FLIP_PAGE_UP (move the currently visible content up as if the flip was a book, the other content is shown as the page below it), #ELM_FLIP_PAGE_DOWN (move the currently visible content down as if the flip was a book, the other content is shown as the page below that) and #ELM_FLIP_CROSS_FADE (fade out the currently visible content, while fading in the invisible content).</summary>
+   /// <param name="mode">The mode type.</param>
+   /// <returns></returns>
+   virtual public  void Go( Efl.Ui.FlipMode mode) {
+                         Efl.Ui.FlipNativeInherit.efl_ui_flip_go_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Runs the flip animation to front or back.
+   /// Flips the front and back contents using the <c>mode</c> animation. This effectively hides the currently visible content and shows he hidden one.
+   /// 
+   /// There a number of possible animations to use for flipping, namely #ELM_FLIP_ROTATE_X_CENTER_AXIS (rotate the currently visible content around a horizontal axis in the middle of its height, the other content is shown as the other side of the flip), #ELM_FLIP_ROTATE_Y_CENTER_AXIS (rotate the currently visible content around a vertical axis in the middle of its width, the other content is shown as the other side of the flip), #ELM_FLIP_ROTATE_XZ_CENTER_AXIS (rotate the currently visible content around a diagonal axis in the middle of its width, the other content is shown as the other side of the flip), #ELM_FLIP_ROTATE_YZ_CENTER_AXIS (rotate the currently visible content around a diagonal axis in the middle of its height, the other content is shown as the other side of the flip). #ELM_FLIP_CUBE_LEFT (rotate the currently visible content to the left as if the flip was a cube, the other content is show as the right face of the cube), #ELM_FLIP_CUBE_RIGHT (rotate the currently visible content to the right as if the flip was a cube, the other content is show as the left face of the cube), #ELM_FLIP_CUBE_UP (rotate the currently visible content up as if the flip was a cube, the other content is shown as the bottom face of the cube), #ELM_FLIP_CUBE_DOWN (rotate the currently visible content down as if the flip was a cube, the other content is shown as the upper face of the cube), #ELM_FLIP_PAGE_LEFT (move the currently visible content to the left as if the flip was a book, the other content is shown as the page below that), #ELM_FLIP_PAGE_RIGHT (move the currently visible content to the right as if the flip was a book, the other content is shown as the page below it), #ELM_FLIP_PAGE_UP (move the currently visible content up as if the flip was a book, the other content is shown as the page below it) and #ELM_FLIP_PAGE_DOWN (move the currently visible content down as if the flip was a book, the other content is shown as the page below that).</summary>
+   /// <param name="front">If <c>true</c>, makes front visible, otherwise makes back.</param>
+   /// <param name="mode">The mode type.</param>
+   /// <returns></returns>
+   virtual public  void GoTo( bool front,  Efl.Ui.FlipMode mode) {
+                                           Efl.Ui.FlipNativeInherit.efl_ui_flip_go_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), front,  mode);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the interactive flip mode.</summary>
+/// <value>The interactive flip mode to use.</value>
+   public Efl.Ui.FlipInteraction Interaction {
+      get { return GetInteraction(); }
+      set { SetInteraction( value); }
+   }
+   /// <summary>Get flip front visibility state.</summary>
+/// <value><c>true</c> if front front is showing, <c>false</c> if the back is showing.</value>
+   public bool FrontVisible {
+      get { return GetFrontVisible(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Flip.efl_ui_flip_class_get();
+   }
+}
+public class FlipNativeInherit : Efl.Ui.WidgetNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_flip_interaction_get_static_delegate == null)
+      efl_ui_flip_interaction_get_static_delegate = new efl_ui_flip_interaction_get_delegate(interaction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_interaction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_interaction_get_static_delegate)});
+      if (efl_ui_flip_interaction_set_static_delegate == null)
+      efl_ui_flip_interaction_set_static_delegate = new efl_ui_flip_interaction_set_delegate(interaction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_interaction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_interaction_set_static_delegate)});
+      if (efl_ui_flip_front_visible_get_static_delegate == null)
+      efl_ui_flip_front_visible_get_static_delegate = new efl_ui_flip_front_visible_get_delegate(front_visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_front_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_front_visible_get_static_delegate)});
+      if (efl_ui_flip_interaction_direction_hitsize_set_static_delegate == null)
+      efl_ui_flip_interaction_direction_hitsize_set_static_delegate = new efl_ui_flip_interaction_direction_hitsize_set_delegate(interaction_direction_hitsize_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_interaction_direction_hitsize_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_interaction_direction_hitsize_set_static_delegate)});
+      if (efl_ui_flip_interaction_direction_hitsize_get_static_delegate == null)
+      efl_ui_flip_interaction_direction_hitsize_get_static_delegate = new efl_ui_flip_interaction_direction_hitsize_get_delegate(interaction_direction_hitsize_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_interaction_direction_hitsize_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_interaction_direction_hitsize_get_static_delegate)});
+      if (efl_ui_flip_interaction_direction_enabled_set_static_delegate == null)
+      efl_ui_flip_interaction_direction_enabled_set_static_delegate = new efl_ui_flip_interaction_direction_enabled_set_delegate(interaction_direction_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_interaction_direction_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_interaction_direction_enabled_set_static_delegate)});
+      if (efl_ui_flip_interaction_direction_enabled_get_static_delegate == null)
+      efl_ui_flip_interaction_direction_enabled_get_static_delegate = new efl_ui_flip_interaction_direction_enabled_get_delegate(interaction_direction_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_interaction_direction_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_interaction_direction_enabled_get_static_delegate)});
+      if (efl_ui_flip_go_static_delegate == null)
+      efl_ui_flip_go_static_delegate = new efl_ui_flip_go_delegate(go);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_go"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_go_static_delegate)});
+      if (efl_ui_flip_go_to_static_delegate == null)
+      efl_ui_flip_go_to_static_delegate = new efl_ui_flip_go_to_delegate(go_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_flip_go_to"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_flip_go_to_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Flip.efl_ui_flip_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Flip.efl_ui_flip_class_get();
+   }
+
+
+    private delegate Efl.Ui.FlipInteraction efl_ui_flip_interaction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.FlipInteraction efl_ui_flip_interaction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_get_api_delegate> efl_ui_flip_interaction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_get_api_delegate>(_Module, "efl_ui_flip_interaction_get");
+    private static Efl.Ui.FlipInteraction interaction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_flip_interaction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.FlipInteraction _ret_var = default(Efl.Ui.FlipInteraction);
+         try {
+            _ret_var = ((Flip)wrapper).GetInteraction();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_flip_interaction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_flip_interaction_get_delegate efl_ui_flip_interaction_get_static_delegate;
+
+
+    private delegate  void efl_ui_flip_interaction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.FlipInteraction mode);
+
+
+    public delegate  void efl_ui_flip_interaction_set_api_delegate(System.IntPtr obj,   Efl.Ui.FlipInteraction mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_set_api_delegate> efl_ui_flip_interaction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_set_api_delegate>(_Module, "efl_ui_flip_interaction_set");
+    private static  void interaction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.FlipInteraction mode)
+   {
+      Eina.Log.Debug("function efl_ui_flip_interaction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Flip)wrapper).SetInteraction( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_flip_interaction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_flip_interaction_set_delegate efl_ui_flip_interaction_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_flip_front_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_flip_front_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_front_visible_get_api_delegate> efl_ui_flip_front_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_front_visible_get_api_delegate>(_Module, "efl_ui_flip_front_visible_get");
+    private static bool front_visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_flip_front_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).GetFrontVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_flip_front_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_flip_front_visible_get_delegate efl_ui_flip_front_visible_get_static_delegate;
+
+
+    private delegate  void efl_ui_flip_interaction_direction_hitsize_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir,   double hitsize);
+
+
+    public delegate  void efl_ui_flip_interaction_direction_hitsize_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir,   double hitsize);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_hitsize_set_api_delegate> efl_ui_flip_interaction_direction_hitsize_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_hitsize_set_api_delegate>(_Module, "efl_ui_flip_interaction_direction_hitsize_set");
+    private static  void interaction_direction_hitsize_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir,  double hitsize)
+   {
+      Eina.Log.Debug("function efl_ui_flip_interaction_direction_hitsize_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Flip)wrapper).SetInteractionDirectionHitsize( dir,  hitsize);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_flip_interaction_direction_hitsize_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir,  hitsize);
+      }
+   }
+   private static efl_ui_flip_interaction_direction_hitsize_set_delegate efl_ui_flip_interaction_direction_hitsize_set_static_delegate;
+
+
+    private delegate double efl_ui_flip_interaction_direction_hitsize_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate double efl_ui_flip_interaction_direction_hitsize_get_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_hitsize_get_api_delegate> efl_ui_flip_interaction_direction_hitsize_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_hitsize_get_api_delegate>(_Module, "efl_ui_flip_interaction_direction_hitsize_get");
+    private static double interaction_direction_hitsize_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_flip_interaction_direction_hitsize_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    double _ret_var = default(double);
+         try {
+            _ret_var = ((Flip)wrapper).GetInteractionDirectionHitsize( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_flip_interaction_direction_hitsize_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_flip_interaction_direction_hitsize_get_delegate efl_ui_flip_interaction_direction_hitsize_get_static_delegate;
+
+
+    private delegate  void efl_ui_flip_interaction_direction_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_ui_flip_interaction_direction_enabled_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_enabled_set_api_delegate> efl_ui_flip_interaction_direction_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_enabled_set_api_delegate>(_Module, "efl_ui_flip_interaction_direction_enabled_set");
+    private static  void interaction_direction_enabled_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_ui_flip_interaction_direction_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Flip)wrapper).SetInteractionDirectionEnabled( dir,  enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_flip_interaction_direction_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir,  enabled);
+      }
+   }
+   private static efl_ui_flip_interaction_direction_enabled_set_delegate efl_ui_flip_interaction_direction_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_flip_interaction_direction_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_flip_interaction_direction_enabled_get_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_enabled_get_api_delegate> efl_ui_flip_interaction_direction_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_interaction_direction_enabled_get_api_delegate>(_Module, "efl_ui_flip_interaction_direction_enabled_get");
+    private static bool interaction_direction_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_flip_interaction_direction_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).GetInteractionDirectionEnabled( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_flip_interaction_direction_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_flip_interaction_direction_enabled_get_delegate efl_ui_flip_interaction_direction_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_flip_go_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.FlipMode mode);
+
+
+    public delegate  void efl_ui_flip_go_api_delegate(System.IntPtr obj,   Efl.Ui.FlipMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_go_api_delegate> efl_ui_flip_go_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_go_api_delegate>(_Module, "efl_ui_flip_go");
+    private static  void go(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.FlipMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_flip_go was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Flip)wrapper).Go( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_flip_go_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_flip_go_delegate efl_ui_flip_go_static_delegate;
+
+
+    private delegate  void efl_ui_flip_go_to_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool front,   Efl.Ui.FlipMode mode);
+
+
+    public delegate  void efl_ui_flip_go_to_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool front,   Efl.Ui.FlipMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_flip_go_to_api_delegate> efl_ui_flip_go_to_ptr = new Efl.Eo.FunctionWrapper<efl_ui_flip_go_to_api_delegate>(_Module, "efl_ui_flip_go_to");
+    private static  void go_to(System.IntPtr obj, System.IntPtr pd,  bool front,  Efl.Ui.FlipMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_flip_go_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Flip)wrapper).GoTo( front,  mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_flip_go_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  front,  mode);
+      }
+   }
+   private static efl_ui_flip_go_to_delegate efl_ui_flip_go_to_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Flip)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Flip)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((Flip)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Flip)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((Flip)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Flip)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Flip)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Flip)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((Flip)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Flip)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI flip mode</summary>
+public enum FlipMode
+{
+/// <summary>Rotate Y center axis flip mode</summary>
+RotateYCenterAxis = 0,
+/// <summary>Rotate X center axis flip mode</summary>
+RotateXCenterAxis = 1,
+/// <summary>Rotate XZ center axis flip mode</summary>
+RotateXzCenterAxis = 2,
+/// <summary>Rotate YZ center axis flip mode</summary>
+RotateYzCenterAxis = 3,
+/// <summary>Cube left flip mode</summary>
+CubeLeft = 4,
+/// <summary>Cube right flip mode</summary>
+CubeRight = 5,
+/// <summary>Cube up flip mode</summary>
+CubeUp = 6,
+/// <summary>Cube down flip mode</summary>
+CubeDown = 7,
+/// <summary>Page left flip mode</summary>
+PageLeft = 8,
+/// <summary>Page right flip mode</summary>
+PageRight = 9,
+/// <summary>Page up flip mode</summary>
+PageUp = 10,
+/// <summary>Page down flip mode</summary>
+PageDown = 11,
+/// <summary>Cross fade flip mode</summary>
+CrossFade = 12,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI flip interaction</summary>
+public enum FlipInteraction
+{
+/// <summary>No interaction</summary>
+None = 0,
+/// <summary>Rotate interaction</summary>
+Rotate = 1,
+/// <summary>Cube interaction</summary>
+Cube = 2,
+/// <summary>Page interaction</summary>
+Page = 3,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_flip_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_flip_part.eo.cs
new file mode 100755 (executable)
index 0000000..ba854c6
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI flip internal class</summary>
+[FlipPartNativeInherit]
+public class FlipPart : Efl.Ui.WidgetPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.FlipPartNativeInherit nativeInherit = new Efl.Ui.FlipPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FlipPart))
+            return Efl.Ui.FlipPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_flip_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public FlipPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_flip_part_class_get(), typeof(FlipPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FlipPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected FlipPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static FlipPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FlipPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.FlipPart.efl_ui_flip_part_class_get();
+   }
+}
+public class FlipPartNativeInherit : Efl.Ui.WidgetPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.FlipPart.efl_ui_flip_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.FlipPart.efl_ui_flip_part_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((FlipPart)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((FlipPart)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((FlipPart)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_composition.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_composition.eo.cs
new file mode 100755 (executable)
index 0000000..7c4563e
--- /dev/null
@@ -0,0 +1,403 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>This defines the inheriting widget as Composition widget.
+/// A composition widget is a widget that&apos;s the logical parent of another set of widgets which can be used for interaction.</summary>
+[CompositionNativeInherit]
+public interface Composition : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Set the order of elements that will be used for composition
+/// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+/// 
+/// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+/// 
+/// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+/// 
+/// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+/// <returns>The order to use</returns>
+Eina.List<Efl.Gfx.Entity> GetCompositionElements();
+   /// <summary>Set the order of elements that will be used for composition
+/// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+/// 
+/// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+/// 
+/// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+/// 
+/// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+/// <param name="logical_order">The order to use</param>
+/// <returns></returns>
+ void SetCompositionElements( Eina.List<Efl.Gfx.Entity> logical_order);
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+/// <returns><c>true</c> or <c>false</c></returns>
+bool GetLogicalMode();
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+/// <param name="logical_mode"><c>true</c> or <c>false</c></param>
+/// <returns></returns>
+ void SetLogicalMode( bool logical_mode);
+   /// <summary>Mark this widget as dirty, the children can be considered to be changed after that call</summary>
+/// <returns></returns>
+ void Dirty();
+   /// <summary>A call to prepare the children of this element, called if marked as dirty
+/// You can use this function to call composition_elements.</summary>
+/// <returns></returns>
+ void Prepare();
+                     /// <summary>Set the order of elements that will be used for composition
+/// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+/// 
+/// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+/// 
+/// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+/// 
+/// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+/// <value>The order to use</value>
+   Eina.List<Efl.Gfx.Entity> CompositionElements {
+      get ;
+      set ;
+   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+/// <value><c>true</c> or <c>false</c></value>
+   bool LogicalMode {
+      get ;
+      set ;
+   }
+}
+/// <summary>This defines the inheriting widget as Composition widget.
+/// A composition widget is a widget that&apos;s the logical parent of another set of widgets which can be used for interaction.</summary>
+sealed public class CompositionConcrete : 
+
+Composition
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (CompositionConcrete))
+            return Efl.Ui.Focus.CompositionNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_composition_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public CompositionConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~CompositionConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static CompositionConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new CompositionConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <returns>The order to use</returns>
+   public Eina.List<Efl.Gfx.Entity> GetCompositionElements() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <param name="logical_order">The order to use</param>
+   /// <returns></returns>
+   public  void SetCompositionElements( Eina.List<Efl.Gfx.Entity> logical_order) {
+       var _in_logical_order = logical_order.Handle;
+logical_order.Own = false;
+                  Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_set_ptr.Value.Delegate(this.NativeHandle, _in_logical_order);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <returns><c>true</c> or <c>false</c></returns>
+   public bool GetLogicalMode() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <param name="logical_mode"><c>true</c> or <c>false</c></param>
+   /// <returns></returns>
+   public  void SetLogicalMode( bool logical_mode) {
+                         Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate(this.NativeHandle, logical_mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Mark this widget as dirty, the children can be considered to be changed after that call</summary>
+   /// <returns></returns>
+   public  void Dirty() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_dirty_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>A call to prepare the children of this element, called if marked as dirty
+   /// You can use this function to call composition_elements.</summary>
+   /// <returns></returns>
+   public  void Prepare() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_prepare_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Set the order of elements that will be used for composition
+/// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+/// 
+/// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+/// 
+/// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+/// 
+/// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+/// <value>The order to use</value>
+   public Eina.List<Efl.Gfx.Entity> CompositionElements {
+      get { return GetCompositionElements(); }
+      set { SetCompositionElements( value); }
+   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+/// <value><c>true</c> or <c>false</c></value>
+   public bool LogicalMode {
+      get { return GetLogicalMode(); }
+      set { SetLogicalMode( value); }
+   }
+}
+public class CompositionNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_focus_composition_elements_get_static_delegate == null)
+      efl_ui_focus_composition_elements_get_static_delegate = new efl_ui_focus_composition_elements_get_delegate(composition_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_get_static_delegate)});
+      if (efl_ui_focus_composition_elements_set_static_delegate == null)
+      efl_ui_focus_composition_elements_set_static_delegate = new efl_ui_focus_composition_elements_set_delegate(composition_elements_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_set_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_get_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_get_static_delegate = new efl_ui_focus_composition_logical_mode_get_delegate(logical_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_get_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_set_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_set_static_delegate = new efl_ui_focus_composition_logical_mode_set_delegate(logical_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_set_static_delegate)});
+      if (efl_ui_focus_composition_dirty_static_delegate == null)
+      efl_ui_focus_composition_dirty_static_delegate = new efl_ui_focus_composition_dirty_delegate(dirty);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_dirty"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_dirty_static_delegate)});
+      if (efl_ui_focus_composition_prepare_static_delegate == null)
+      efl_ui_focus_composition_prepare_static_delegate = new efl_ui_focus_composition_prepare_delegate(prepare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_prepare"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_prepare_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.CompositionConcrete.efl_ui_focus_composition_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.CompositionConcrete.efl_ui_focus_composition_mixin_get();
+   }
+
+
+    private delegate  System.IntPtr efl_ui_focus_composition_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_composition_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate> efl_ui_focus_composition_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate>(_Module, "efl_ui_focus_composition_elements_get");
+    private static  System.IntPtr composition_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Gfx.Entity> _ret_var = default(Eina.List<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((CompositionConcrete)wrapper).GetCompositionElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_composition_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_elements_get_delegate efl_ui_focus_composition_elements_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_elements_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr logical_order);
+
+
+    public delegate  void efl_ui_focus_composition_elements_set_api_delegate(System.IntPtr obj,    System.IntPtr logical_order);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate> efl_ui_focus_composition_elements_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate>(_Module, "efl_ui_focus_composition_elements_set");
+    private static  void composition_elements_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr logical_order)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_logical_order = new Eina.List<Efl.Gfx.Entity>(logical_order, true, false);
+                     
+         try {
+            ((CompositionConcrete)wrapper).SetCompositionElements( _in_logical_order);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_elements_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_order);
+      }
+   }
+   private static efl_ui_focus_composition_elements_set_delegate efl_ui_focus_composition_elements_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_composition_logical_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_composition_logical_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate> efl_ui_focus_composition_logical_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_get");
+    private static bool logical_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((CompositionConcrete)wrapper).GetLogicalMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_get_delegate efl_ui_focus_composition_logical_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_logical_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+
+
+    public delegate  void efl_ui_focus_composition_logical_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate> efl_ui_focus_composition_logical_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_set");
+    private static  void logical_mode_set(System.IntPtr obj, System.IntPtr pd,  bool logical_mode)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((CompositionConcrete)wrapper).SetLogicalMode( logical_mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_mode);
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_set_delegate efl_ui_focus_composition_logical_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_dirty_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_dirty_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate> efl_ui_focus_composition_dirty_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate>(_Module, "efl_ui_focus_composition_dirty");
+    private static  void dirty(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_dirty was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((CompositionConcrete)wrapper).Dirty();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_dirty_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_dirty_delegate efl_ui_focus_composition_dirty_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_prepare_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_prepare_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate> efl_ui_focus_composition_prepare_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate>(_Module, "efl_ui_focus_composition_prepare");
+    private static  void prepare(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_prepare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((CompositionConcrete)wrapper).Prepare();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_prepare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_prepare_delegate efl_ui_focus_composition_prepare_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_layer.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_layer.eo.cs
new file mode 100755 (executable)
index 0000000..5d162b4
--- /dev/null
@@ -0,0 +1,1322 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>This defines the inheriting widget as focus layer
+/// A focus layer is the uppermost one which received input and handles all focus related events for as long as it exists and is visible. It&apos;s NOT possible to escape this layer with focus movement.
+/// 
+/// Once the object is hidden or destroyed the focus will go back to the mainwindow, where it was before.</summary>
+[LayerNativeInherit]
+public interface Layer : 
+   Efl.Ui.WidgetFocusManager ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Enable property</summary>
+/// <returns><c>true</c> to set enable the layer <c>false</c> to disable it</returns>
+bool GetEnable();
+   /// <summary>Enable property</summary>
+/// <param name="v"><c>true</c> to set enable the layer <c>false</c> to disable it</param>
+/// <returns></returns>
+ void SetEnable( bool v);
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+/// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+/// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+/// <returns></returns>
+ void GetBehaviour( out bool enable_on_visible,  out bool cycle);
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+/// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+/// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+/// <returns></returns>
+ void SetBehaviour( bool enable_on_visible,  bool cycle);
+               /// <summary>Enable property</summary>
+/// <value><c>true</c> to set enable the layer <c>false</c> to disable it</value>
+   bool Enable {
+      get ;
+      set ;
+   }
+}
+/// <summary>This defines the inheriting widget as focus layer
+/// A focus layer is the uppermost one which received input and handles all focus related events for as long as it exists and is visible. It&apos;s NOT possible to escape this layer with focus movement.
+/// 
+/// Once the object is hidden or destroyed the focus will go back to the mainwindow, where it was before.</summary>
+sealed public class LayerConcrete : 
+
+Layer
+   , Efl.Ui.WidgetFocusManager, Efl.Ui.Focus.Manager
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayerConcrete))
+            return Efl.Ui.Focus.LayerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_layer_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~LayerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static LayerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>Enable property</summary>
+   /// <returns><c>true</c> to set enable the layer <c>false</c> to disable it</returns>
+   public bool GetEnable() {
+       var _ret_var = Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_enable_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable property</summary>
+   /// <param name="v"><c>true</c> to set enable the layer <c>false</c> to disable it</param>
+   /// <returns></returns>
+   public  void SetEnable( bool v) {
+                         Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_enable_set_ptr.Value.Delegate(this.NativeHandle, v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+   /// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+   /// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+   /// <returns></returns>
+   public  void GetBehaviour( out bool enable_on_visible,  out bool cycle) {
+                                           Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_behaviour_get_ptr.Value.Delegate(this.NativeHandle, out enable_on_visible,  out cycle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+   /// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+   /// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+   /// <returns></returns>
+   public  void SetBehaviour( bool enable_on_visible,  bool cycle) {
+                                           Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_behaviour_set_ptr.Value.Delegate(this.NativeHandle, enable_on_visible,  cycle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate(this.NativeHandle, focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(this.NativeHandle, redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(this.NativeHandle, _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate(this.NativeHandle, direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate(this.NativeHandle, direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate(this.NativeHandle, child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(this.NativeHandle, direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Enable property</summary>
+/// <value><c>true</c> to set enable the layer <c>false</c> to disable it</value>
+   public bool Enable {
+      get { return GetEnable(); }
+      set { SetEnable( value); }
+   }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+}
+public class LayerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_focus_layer_enable_get_static_delegate == null)
+      efl_ui_focus_layer_enable_get_static_delegate = new efl_ui_focus_layer_enable_get_delegate(enable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_enable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_enable_get_static_delegate)});
+      if (efl_ui_focus_layer_enable_set_static_delegate == null)
+      efl_ui_focus_layer_enable_set_static_delegate = new efl_ui_focus_layer_enable_set_delegate(enable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_enable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_enable_set_static_delegate)});
+      if (efl_ui_focus_layer_behaviour_get_static_delegate == null)
+      efl_ui_focus_layer_behaviour_get_static_delegate = new efl_ui_focus_layer_behaviour_get_delegate(behaviour_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_behaviour_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_behaviour_get_static_delegate)});
+      if (efl_ui_focus_layer_behaviour_set_static_delegate == null)
+      efl_ui_focus_layer_behaviour_set_static_delegate = new efl_ui_focus_layer_behaviour_set_delegate(behaviour_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_behaviour_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_behaviour_set_static_delegate)});
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.LayerConcrete.efl_ui_focus_layer_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.LayerConcrete.efl_ui_focus_layer_mixin_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_layer_enable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_layer_enable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_get_api_delegate> efl_ui_focus_layer_enable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_get_api_delegate>(_Module, "efl_ui_focus_layer_enable_get");
+    private static bool enable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_enable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).GetEnable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_layer_enable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_layer_enable_get_delegate efl_ui_focus_layer_enable_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_enable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_ui_focus_layer_enable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_set_api_delegate> efl_ui_focus_layer_enable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_set_api_delegate>(_Module, "efl_ui_focus_layer_enable_set");
+    private static  void enable_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_enable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayerConcrete)wrapper).SetEnable( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_layer_enable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_ui_focus_layer_enable_set_delegate efl_ui_focus_layer_enable_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_behaviour_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  out bool cycle);
+
+
+    public delegate  void efl_ui_focus_layer_behaviour_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  out bool cycle);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_get_api_delegate> efl_ui_focus_layer_behaviour_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_get_api_delegate>(_Module, "efl_ui_focus_layer_behaviour_get");
+    private static  void behaviour_get(System.IntPtr obj, System.IntPtr pd,  out bool enable_on_visible,  out bool cycle)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_behaviour_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           enable_on_visible = default(bool);      cycle = default(bool);                     
+         try {
+            ((LayerConcrete)wrapper).GetBehaviour( out enable_on_visible,  out cycle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_layer_behaviour_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out enable_on_visible,  out cycle);
+      }
+   }
+   private static efl_ui_focus_layer_behaviour_get_delegate efl_ui_focus_layer_behaviour_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_behaviour_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  bool cycle);
+
+
+    public delegate  void efl_ui_focus_layer_behaviour_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  bool cycle);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_set_api_delegate> efl_ui_focus_layer_behaviour_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_set_api_delegate>(_Module, "efl_ui_focus_layer_behaviour_set");
+    private static  void behaviour_set(System.IntPtr obj, System.IntPtr pd,  bool enable_on_visible,  bool cycle)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_behaviour_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayerConcrete)wrapper).SetBehaviour( enable_on_visible,  cycle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_layer_behaviour_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable_on_visible,  cycle);
+      }
+   }
+   private static efl_ui_focus_layer_behaviour_set_delegate efl_ui_focus_layer_behaviour_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayerConcrete)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayerConcrete)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((LayerConcrete)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LayerConcrete)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LayerConcrete)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayerConcrete)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LayerConcrete)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LayerConcrete)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_manager.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_manager.eo.cs
new file mode 100755 (executable)
index 0000000..8b7429f
--- /dev/null
@@ -0,0 +1,1529 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Interface for managing focus objects
+/// This interface is built in order to support movement of the focus property in a set of widgets. The movement of the focus property can happen in a tree manner, or a graph manner. The movement is also keeping track of the history of focused elements. The tree interpretation differentiates between logical and non-logical widgets, a logical widget cannot receive focus whereas a non-logical one can.
+/// 1.20</summary>
+[ManagerNativeInherit]
+public interface Manager : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <returns>Currently focused element.
+/// 1.20</returns>
+Efl.Ui.Focus.Object GetManagerFocus();
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <param name="focus">Currently focused element.
+/// 1.20</param>
+/// <returns></returns>
+ void SetManagerFocus( Efl.Ui.Focus.Object focus);
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <returns>The redirect manager.
+/// 1.20</returns>
+Efl.Ui.Focus.Manager GetRedirect();
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <param name="redirect">The redirect manager.
+/// 1.20</param>
+/// <returns></returns>
+ void SetRedirect( Efl.Ui.Focus.Manager redirect);
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <returns>An iterator over the border objects.
+/// 1.20</returns>
+Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements();
+   /// <summary>Get all elements that are at the border of the viewport
+/// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+/// 1.20</summary>
+/// <param name="viewport">The rectangle defining the viewport.
+/// 1.20</param>
+/// <returns>The list of border objects.
+/// 1.20</returns>
+Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport);
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <returns>Will be registered into this manager object.
+/// 1.20</returns>
+Efl.Ui.Focus.Object GetRoot();
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <param name="root">Will be registered into this manager object.
+/// 1.20</param>
+/// <returns>If <c>true</c>, this is the root node
+/// 1.20</returns>
+bool SetRoot( Efl.Ui.Focus.Object root);
+   /// <summary>Move the focus in the given direction.
+/// This call flushes all changes. This means all changes between the last flush and now are computed.
+/// 1.20</summary>
+/// <param name="direction">The direction to move to.
+/// 1.20</param>
+/// <returns>The element which is now focused.
+/// 1.20</returns>
+Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction);
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+/// 1.20</summary>
+/// <param name="direction">Direction to move focus.
+/// 1.20</param>
+/// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+/// 1.20</param>
+/// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+/// 1.20</param>
+/// <returns>Object that would receive focus if moved in the given direction.
+/// 1.20</returns>
+Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical);
+   /// <summary>Return the widget in the direction next.
+/// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+/// 1.20</summary>
+/// <param name="root">Parent for returned child.
+/// 1.20</param>
+/// <returns>Child of passed parameter.
+/// 1.20</returns>
+Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root);
+   /// <summary>This will fetch the data from a registered node.
+/// Be aware this function will trigger a computation of all dirty nodes.
+/// 1.20</summary>
+/// <param name="child">The child object to inspect.
+/// 1.20</param>
+/// <returns>The list of relations starting from <c>child</c>.
+/// 1.20</returns>
+Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child);
+   /// <summary>Return the last logical object.
+/// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+/// 1.20</summary>
+/// <returns>Last object.
+/// 1.20</returns>
+Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd();
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+/// You should focus another element immediately after calling this, in order to always have a focused object.
+/// 1.20</summary>
+/// <returns></returns>
+ void ResetHistory();
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+/// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+/// 1.20</summary>
+/// <returns></returns>
+ void PopHistoryStack();
+   /// <summary>Called when this manager is set as redirect.
+/// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+/// 1.20</summary>
+/// <param name="direction">The direction in which this should be setup.
+/// 1.20</param>
+/// <param name="entry">The object that caused this manager to be redirect.
+/// 1.20</param>
+/// <returns></returns>
+ void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry);
+   /// <summary>This disables the cache invalidation when an object is moved.
+/// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+/// 1.20</summary>
+/// <returns></returns>
+ void FreezeDirtyLogic();
+   /// <summary>This enables the cache invalidation when an object is moved.
+/// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+/// 1.20</summary>
+/// <returns></returns>
+ void DirtyLogicUnfreeze();
+                                                         /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt;
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   event EventHandler FlushPreEvt;
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   event EventHandler CoordsDirtyEvt;
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt;
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt;
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   Efl.Ui.Focus.Object ManagerFocus {
+      get ;
+      set ;
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   Efl.Ui.Focus.Manager Redirect {
+      get ;
+      set ;
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get ;
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   Efl.Ui.Focus.Object Root {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Focus.Manager.RedirectChangedEvt"/>.</summary>
+public class ManagerRedirectChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.Focus.Manager arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Focus.Manager.Manager_focusChangedEvt"/>.</summary>
+public class ManagerManager_focusChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.Focus.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Focus.Manager.Dirty_logic_freezeChangedEvt"/>.</summary>
+public class ManagerDirty_logic_freezeChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public bool arg { get; set; }
+}
+/// <summary>Interface for managing focus objects
+/// This interface is built in order to support movement of the focus property in a set of widgets. The movement of the focus property can happen in a tree manner, or a graph manner. The movement is also keeping track of the history of focused elements. The tree interpretation differentiates between logical and non-logical widgets, a logical widget cannot receive focus whereas a non-logical one can.
+/// 1.20</summary>
+sealed public class ManagerConcrete : 
+
+Manager
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ManagerConcrete))
+            return Efl.Ui.Focus.ManagerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_manager_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ManagerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ManagerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ManagerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ManagerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate(this.NativeHandle, focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(this.NativeHandle, redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(this.NativeHandle, _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate(this.NativeHandle, direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate(this.NativeHandle, direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate(this.NativeHandle, child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(this.NativeHandle, direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+}
+public class ManagerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.ManagerConcrete.efl_ui_focus_manager_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ManagerConcrete.efl_ui_focus_manager_interface_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Manager)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Manager)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Manager)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Manager)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Manager)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Manager)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Manager)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Manager)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Manager)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((Manager)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((Manager)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Manager)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Manager)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Manager)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Manager)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Manager)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } } 
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Structure holding the graph of relations between focusable objects.
+/// 1.20</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Relations
+{
+   /// <summary>List of objects on the right side</summary>
+   public Eina.List<Efl.Ui.Focus.Object> Right;
+   /// <summary>[List of objects on the left side</summary>
+   public Eina.List<Efl.Ui.Focus.Object> Left;
+   /// <summary>[List of objects above</summary>
+   public Eina.List<Efl.Ui.Focus.Object> Top;
+   /// <summary>[List of objects below</summary>
+   public Eina.List<Efl.Ui.Focus.Object> Down;
+   /// <summary>[Next object</summary>
+   public Efl.Ui.Focus.Object Next;
+   /// <summary>Previous object</summary>
+   public Efl.Ui.Focus.Object Prev;
+   /// <summary>Parent object</summary>
+   public Efl.Ui.Focus.Object Parent;
+   /// <summary>Redirect manager</summary>
+   public Efl.Ui.Focus.Manager Redirect;
+   /// <summary>The node where this is the information from</summary>
+   public Efl.Ui.Focus.Object Node;
+   /// <summary><c>true</c> if this node is only logical</summary>
+   public bool Logical;
+   /// <summary>The position in the history stack</summary>
+   public  int Position_in_history;
+   ///<summary>Constructor for Relations.</summary>
+   public Relations(
+      Eina.List<Efl.Ui.Focus.Object> Right=default(Eina.List<Efl.Ui.Focus.Object>),
+      Eina.List<Efl.Ui.Focus.Object> Left=default(Eina.List<Efl.Ui.Focus.Object>),
+      Eina.List<Efl.Ui.Focus.Object> Top=default(Eina.List<Efl.Ui.Focus.Object>),
+      Eina.List<Efl.Ui.Focus.Object> Down=default(Eina.List<Efl.Ui.Focus.Object>),
+      Efl.Ui.Focus.Object Next=default(Efl.Ui.Focus.Object),
+      Efl.Ui.Focus.Object Prev=default(Efl.Ui.Focus.Object),
+      Efl.Ui.Focus.Object Parent=default(Efl.Ui.Focus.Object),
+      Efl.Ui.Focus.Manager Redirect=default(Efl.Ui.Focus.Manager),
+      Efl.Ui.Focus.Object Node=default(Efl.Ui.Focus.Object),
+      bool Logical=default(bool),
+       int Position_in_history=default( int)   )
+   {
+      this.Right = Right;
+      this.Left = Left;
+      this.Top = Top;
+      this.Down = Down;
+      this.Next = Next;
+      this.Prev = Prev;
+      this.Parent = Parent;
+      this.Redirect = Redirect;
+      this.Node = Node;
+      this.Logical = Logical;
+      this.Position_in_history = Position_in_history;
+   }
+public static implicit operator Relations(IntPtr ptr)
+   {
+      var tmp = (Relations_StructInternal)Marshal.PtrToStructure(ptr, typeof(Relations_StructInternal));
+      return Relations_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Relations.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Relations_StructInternal
+{
+   
+   public  System.IntPtr Right;
+   
+   public  System.IntPtr Left;
+   
+   public  System.IntPtr Top;
+   
+   public  System.IntPtr Down;
+///<summary>Internal wrapper for field Next</summary>
+public System.IntPtr Next;
+///<summary>Internal wrapper for field Prev</summary>
+public System.IntPtr Prev;
+///<summary>Internal wrapper for field Parent</summary>
+public System.IntPtr Parent;
+///<summary>Internal wrapper for field Redirect</summary>
+public System.IntPtr Redirect;
+///<summary>Internal wrapper for field Node</summary>
+public System.IntPtr Node;
+///<summary>Internal wrapper for field Logical</summary>
+public System.Byte Logical;
+   
+   public  int Position_in_history;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Relations(Relations_StructInternal struct_)
+   {
+      return Relations_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Relations_StructInternal(Relations struct_)
+   {
+      return Relations_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Relations</summary>
+public static class Relations_StructConversion
+{
+   internal static Relations_StructInternal ToInternal(Relations _external_struct)
+   {
+      var _internal_struct = new Relations_StructInternal();
+
+      _internal_struct.Right = _external_struct.Right.Handle;
+      _internal_struct.Left = _external_struct.Left.Handle;
+      _internal_struct.Top = _external_struct.Top.Handle;
+      _internal_struct.Down = _external_struct.Down.Handle;
+      _internal_struct.Next = _external_struct.Next.NativeHandle;
+      _internal_struct.Prev = _external_struct.Prev.NativeHandle;
+      _internal_struct.Parent = _external_struct.Parent.NativeHandle;
+      _internal_struct.Redirect = _external_struct.Redirect.NativeHandle;
+      _internal_struct.Node = _external_struct.Node.NativeHandle;
+      _internal_struct.Logical = _external_struct.Logical ? (byte)1 : (byte)0;
+      _internal_struct.Position_in_history = _external_struct.Position_in_history;
+
+      return _internal_struct;
+   }
+
+   internal static Relations ToManaged(Relations_StructInternal _internal_struct)
+   {
+      var _external_struct = new Relations();
+
+      _external_struct.Right = new Eina.List<Efl.Ui.Focus.Object>(_internal_struct.Right, false, false);
+      _external_struct.Left = new Eina.List<Efl.Ui.Focus.Object>(_internal_struct.Left, false, false);
+      _external_struct.Top = new Eina.List<Efl.Ui.Focus.Object>(_internal_struct.Top, false, false);
+      _external_struct.Down = new Eina.List<Efl.Ui.Focus.Object>(_internal_struct.Down, false, false);
+
+      _external_struct.Next = (Efl.Ui.Focus.ObjectConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ObjectConcrete), new System.Object[] {_internal_struct.Next});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Next);
+
+
+      _external_struct.Prev = (Efl.Ui.Focus.ObjectConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ObjectConcrete), new System.Object[] {_internal_struct.Prev});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Prev);
+
+
+      _external_struct.Parent = (Efl.Ui.Focus.ObjectConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ObjectConcrete), new System.Object[] {_internal_struct.Parent});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Parent);
+
+
+      _external_struct.Redirect = (Efl.Ui.Focus.ManagerConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ManagerConcrete), new System.Object[] {_internal_struct.Redirect});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Redirect);
+
+
+      _external_struct.Node = (Efl.Ui.Focus.ObjectConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ObjectConcrete), new System.Object[] {_internal_struct.Node});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Node);
+
+      _external_struct.Logical = _internal_struct.Logical != 0;
+      _external_struct.Position_in_history = _internal_struct.Position_in_history;
+
+      return _external_struct;
+   }
+
+}
+} } } 
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Structure holding the focus object with extra information on logical end
+/// 1.21</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ManagerLogicalEndDetail
+{
+   /// <summary><c>true</c> if logical end, <c>false</c> otherwise</summary>
+   public bool Is_regular_end;
+   /// <summary>Focus object element</summary>
+   public Efl.Ui.Focus.Object Element;
+   ///<summary>Constructor for ManagerLogicalEndDetail.</summary>
+   public ManagerLogicalEndDetail(
+      bool Is_regular_end=default(bool),
+      Efl.Ui.Focus.Object Element=default(Efl.Ui.Focus.Object)   )
+   {
+      this.Is_regular_end = Is_regular_end;
+      this.Element = Element;
+   }
+public static implicit operator ManagerLogicalEndDetail(IntPtr ptr)
+   {
+      var tmp = (ManagerLogicalEndDetail_StructInternal)Marshal.PtrToStructure(ptr, typeof(ManagerLogicalEndDetail_StructInternal));
+      return ManagerLogicalEndDetail_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ManagerLogicalEndDetail.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ManagerLogicalEndDetail_StructInternal
+{
+///<summary>Internal wrapper for field Is_regular_end</summary>
+public System.Byte Is_regular_end;
+///<summary>Internal wrapper for field Element</summary>
+public System.IntPtr Element;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ManagerLogicalEndDetail(ManagerLogicalEndDetail_StructInternal struct_)
+   {
+      return ManagerLogicalEndDetail_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ManagerLogicalEndDetail_StructInternal(ManagerLogicalEndDetail struct_)
+   {
+      return ManagerLogicalEndDetail_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ManagerLogicalEndDetail</summary>
+public static class ManagerLogicalEndDetail_StructConversion
+{
+   internal static ManagerLogicalEndDetail_StructInternal ToInternal(ManagerLogicalEndDetail _external_struct)
+   {
+      var _internal_struct = new ManagerLogicalEndDetail_StructInternal();
+
+      _internal_struct.Is_regular_end = _external_struct.Is_regular_end ? (byte)1 : (byte)0;
+      _internal_struct.Element = _external_struct.Element.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static ManagerLogicalEndDetail ToManaged(ManagerLogicalEndDetail_StructInternal _internal_struct)
+   {
+      var _external_struct = new ManagerLogicalEndDetail();
+
+      _external_struct.Is_regular_end = _internal_struct.Is_regular_end != 0;
+
+      _external_struct.Element = (Efl.Ui.Focus.ObjectConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ObjectConcrete), new System.Object[] {_internal_struct.Element});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Element);
+
+
+      return _external_struct;
+   }
+
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_calc.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_calc.eo.cs
new file mode 100755 (executable)
index 0000000..5575290
--- /dev/null
@@ -0,0 +1,1344 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Calculates the directions of Efl.Ui.Focus.Direction
+/// Each registered item will get an other registered object in each direction. You can get items for the currently focused item if you call request move.
+/// 1.20</summary>
+[ManagerCalcNativeInherit]
+public class ManagerCalc : Efl.Object, Efl.Eo.IWrapper,Efl.Ui.Focus.Manager
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.Focus.ManagerCalcNativeInherit nativeInherit = new Efl.Ui.Focus.ManagerCalcNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ManagerCalc))
+            return Efl.Ui.Focus.ManagerCalcNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_manager_calc_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ManagerCalc(Efl.Object parent= null
+         ) :
+      base(efl_ui_focus_manager_calc_class_get(), typeof(ManagerCalc), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ManagerCalc(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ManagerCalc(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ManagerCalc static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ManagerCalc(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>Register a new item in the graph.
+   /// <c>parent</c> can not be <c>null</c>, it will be used as the parent in the logical tree. <c>redirect</c> will be set as redirect property on that manager, once <c>child</c> gets focused.
+   /// 1.20</summary>
+   /// <param name="child">The object to register
+   /// 1.20</param>
+   /// <param name="parent">The parent to use in the logical tree
+   /// 1.20</param>
+   /// <param name="redirect">The redirect manager to set once this child is focused can be NULL for no redirect
+   /// 1.20</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool Register( Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Object parent,  Efl.Ui.Focus.Manager redirect) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerCalcNativeInherit.efl_ui_focus_manager_calc_register_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  parent,  redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Register a new item only for the logical parent.
+   /// The item can never get focus, it just helps to build a tree out of the items that are.
+   /// 1.20</summary>
+   /// <param name="child">The object to register
+   /// 1.20</param>
+   /// <param name="parent">The parent to use in the logical tree
+   /// 1.20</param>
+   /// <param name="redirect">The redirect manager to set once this child is focused can be <c>null</c> for no redirect
+   /// 1.20</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool RegisterLogical( Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Object parent,  Efl.Ui.Focus.Manager redirect) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerCalcNativeInherit.efl_ui_focus_manager_calc_register_logical_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  parent,  redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Set a new redirect object for the given child.
+   /// Once <c>child</c> is focused the redirect manager will be set in the redirect property. Set redirect to <c>null</c> if nothing should happen.
+   /// 1.20</summary>
+   /// <param name="child">The child to update
+   /// 1.20</param>
+   /// <param name="redirect">Once <c>child</c> is focused this element will be set as redirect
+   /// 1.20</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool UpdateRedirect( Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Manager redirect) {
+                                           var _ret_var = Efl.Ui.Focus.ManagerCalcNativeInherit.efl_ui_focus_manager_calc_update_redirect_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Set a new logical parent for the given child.
+   /// 1.20</summary>
+   /// <param name="child">The child to update
+   /// 1.20</param>
+   /// <param name="parent">The parent which now will be the logical parent of child
+   /// 1.20</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool UpdateParent( Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Object parent) {
+                                           var _ret_var = Efl.Ui.Focus.ManagerCalcNativeInherit.efl_ui_focus_manager_calc_update_parent_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  parent);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Give the list of children a different order.
+   /// 1.20</summary>
+   /// <param name="parent">the parent to update
+   /// 1.20</param>
+   /// <param name="children">the list with the new order
+   /// 1.20</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool UpdateChildren( Efl.Ui.Focus.Object parent,  Eina.List<Efl.Ui.Focus.Object> children) {
+             var _in_children = children.Handle;
+children.Own = false;
+                              var _ret_var = Efl.Ui.Focus.ManagerCalcNativeInherit.efl_ui_focus_manager_calc_update_children_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), parent,  _in_children);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Give the given order to the parent&apos;s child.
+   /// Children from the list which are not true children are ignored.
+   /// 1.20</summary>
+   /// <param name="parent">the parent to update
+   /// 1.20</param>
+   /// <param name="children">the order of items
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void UpdateOrder( Efl.Ui.Focus.Object parent,  Eina.List<Efl.Ui.Focus.Object> children) {
+             var _in_children = children.Handle;
+children.Own = false;
+                              Efl.Ui.Focus.ManagerCalcNativeInherit.efl_ui_focus_manager_calc_update_order_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), parent,  _in_children);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Unregister the given item from the focus graph.
+   /// 1.20</summary>
+   /// <param name="child">The child to unregister.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void Unregister( Efl.Ui.Focus.Object child) {
+                         Efl.Ui.Focus.ManagerCalcNativeInherit.efl_ui_focus_manager_calc_unregister_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   virtual public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ManagerCalc.efl_ui_focus_manager_calc_class_get();
+   }
+}
+public class ManagerCalcNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_focus_manager_calc_register_static_delegate == null)
+      efl_ui_focus_manager_calc_register_static_delegate = new efl_ui_focus_manager_calc_register_delegate(register);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_calc_register"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_calc_register_static_delegate)});
+      if (efl_ui_focus_manager_calc_register_logical_static_delegate == null)
+      efl_ui_focus_manager_calc_register_logical_static_delegate = new efl_ui_focus_manager_calc_register_logical_delegate(register_logical);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_calc_register_logical"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_calc_register_logical_static_delegate)});
+      if (efl_ui_focus_manager_calc_update_redirect_static_delegate == null)
+      efl_ui_focus_manager_calc_update_redirect_static_delegate = new efl_ui_focus_manager_calc_update_redirect_delegate(update_redirect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_calc_update_redirect"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_calc_update_redirect_static_delegate)});
+      if (efl_ui_focus_manager_calc_update_parent_static_delegate == null)
+      efl_ui_focus_manager_calc_update_parent_static_delegate = new efl_ui_focus_manager_calc_update_parent_delegate(update_parent);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_calc_update_parent"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_calc_update_parent_static_delegate)});
+      if (efl_ui_focus_manager_calc_update_children_static_delegate == null)
+      efl_ui_focus_manager_calc_update_children_static_delegate = new efl_ui_focus_manager_calc_update_children_delegate(update_children);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_calc_update_children"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_calc_update_children_static_delegate)});
+      if (efl_ui_focus_manager_calc_update_order_static_delegate == null)
+      efl_ui_focus_manager_calc_update_order_static_delegate = new efl_ui_focus_manager_calc_update_order_delegate(update_order);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_calc_update_order"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_calc_update_order_static_delegate)});
+      if (efl_ui_focus_manager_calc_unregister_static_delegate == null)
+      efl_ui_focus_manager_calc_unregister_static_delegate = new efl_ui_focus_manager_calc_unregister_delegate(unregister);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_calc_unregister"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_calc_unregister_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.ManagerCalc.efl_ui_focus_manager_calc_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ManagerCalc.efl_ui_focus_manager_calc_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_calc_register_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_calc_register_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_register_api_delegate> efl_ui_focus_manager_calc_register_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_register_api_delegate>(_Module, "efl_ui_focus_manager_calc_register");
+    private static bool register(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Object parent,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_calc_register was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).Register( child,  parent,  redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_calc_register_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  parent,  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_calc_register_delegate efl_ui_focus_manager_calc_register_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_calc_register_logical_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_calc_register_logical_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_register_logical_api_delegate> efl_ui_focus_manager_calc_register_logical_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_register_logical_api_delegate>(_Module, "efl_ui_focus_manager_calc_register_logical");
+    private static bool register_logical(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Object parent,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_calc_register_logical was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).RegisterLogical( child,  parent,  redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_calc_register_logical_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  parent,  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_calc_register_logical_delegate efl_ui_focus_manager_calc_register_logical_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_calc_update_redirect_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_calc_update_redirect_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_redirect_api_delegate> efl_ui_focus_manager_calc_update_redirect_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_redirect_api_delegate>(_Module, "efl_ui_focus_manager_calc_update_redirect");
+    private static bool update_redirect(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_calc_update_redirect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).UpdateRedirect( child,  redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_focus_manager_calc_update_redirect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_calc_update_redirect_delegate efl_ui_focus_manager_calc_update_redirect_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_calc_update_parent_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_calc_update_parent_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_parent_api_delegate> efl_ui_focus_manager_calc_update_parent_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_parent_api_delegate>(_Module, "efl_ui_focus_manager_calc_update_parent");
+    private static bool update_parent(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child,  Efl.Ui.Focus.Object parent)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_calc_update_parent was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).UpdateParent( child,  parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_focus_manager_calc_update_parent_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  parent);
+      }
+   }
+   private static efl_ui_focus_manager_calc_update_parent_delegate efl_ui_focus_manager_calc_update_parent_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_calc_update_children_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent,    System.IntPtr children);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_calc_update_children_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent,    System.IntPtr children);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_children_api_delegate> efl_ui_focus_manager_calc_update_children_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_children_api_delegate>(_Module, "efl_ui_focus_manager_calc_update_children");
+    private static bool update_children(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object parent,   System.IntPtr children)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_calc_update_children was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_children = new Eina.List<Efl.Ui.Focus.Object>(children, true, false);
+                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).UpdateChildren( parent,  _in_children);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_focus_manager_calc_update_children_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent,  children);
+      }
+   }
+   private static efl_ui_focus_manager_calc_update_children_delegate efl_ui_focus_manager_calc_update_children_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_calc_update_order_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent,    System.IntPtr children);
+
+
+    public delegate  void efl_ui_focus_manager_calc_update_order_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object parent,    System.IntPtr children);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_order_api_delegate> efl_ui_focus_manager_calc_update_order_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_update_order_api_delegate>(_Module, "efl_ui_focus_manager_calc_update_order");
+    private static  void update_order(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object parent,   System.IntPtr children)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_calc_update_order was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_children = new Eina.List<Efl.Ui.Focus.Object>(children, true, false);
+                                 
+         try {
+            ((ManagerCalc)wrapper).UpdateOrder( parent,  _in_children);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_calc_update_order_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent,  children);
+      }
+   }
+   private static efl_ui_focus_manager_calc_update_order_delegate efl_ui_focus_manager_calc_update_order_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_calc_unregister_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  void efl_ui_focus_manager_calc_unregister_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_unregister_api_delegate> efl_ui_focus_manager_calc_unregister_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_calc_unregister_api_delegate>(_Module, "efl_ui_focus_manager_calc_unregister");
+    private static  void unregister(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_calc_unregister was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ManagerCalc)wrapper).Unregister( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_calc_unregister_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_calc_unregister_delegate efl_ui_focus_manager_calc_unregister_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ManagerCalc)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ManagerCalc)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((ManagerCalc)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerCalc)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerCalc)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ManagerCalc)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerCalc)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerCalc)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_root_focus.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_root_focus.eo.cs
new file mode 100755 (executable)
index 0000000..35afdbc
--- /dev/null
@@ -0,0 +1,166 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>This class ensures that the root is at least focusable, if nothing else is focusable</summary>
+[ManagerRootFocusNativeInherit]
+public class ManagerRootFocus : Efl.Ui.Focus.ManagerCalc, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.Focus.ManagerRootFocusNativeInherit nativeInherit = new Efl.Ui.Focus.ManagerRootFocusNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ManagerRootFocus))
+            return Efl.Ui.Focus.ManagerRootFocusNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_manager_root_focus_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ManagerRootFocus(Efl.Object parent= null
+         ) :
+      base(efl_ui_focus_manager_root_focus_class_get(), typeof(ManagerRootFocus), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ManagerRootFocus(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ManagerRootFocus(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ManagerRootFocus static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ManagerRootFocus(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The default replacement object for the case that there is no focusable object inside the manager is the root object. However, you can change this by setting this value to something else. <c>null</c> is triggered as the same value as Efl.Ui.Focus.Manager.root.get</summary>
+   /// <returns>Canvas object</returns>
+   virtual public Efl.Canvas.Object GetCanvasObject() {
+       var _ret_var = Efl.Ui.Focus.ManagerRootFocusNativeInherit.efl_ui_focus_manager_root_focus_canvas_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The default replacement object for the case that there is no focusable object inside the manager is the root object. However, you can change this by setting this value to something else. <c>null</c> is triggered as the same value as Efl.Ui.Focus.Manager.root.get</summary>
+   /// <param name="canvas_object">Canvas object</param>
+   /// <returns></returns>
+   virtual public  void SetCanvasObject( Efl.Canvas.Object canvas_object) {
+                         Efl.Ui.Focus.ManagerRootFocusNativeInherit.efl_ui_focus_manager_root_focus_canvas_object_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), canvas_object);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The default replacement object for the case that there is no focusable object inside the manager is the root object. However, you can change this by setting this value to something else. <c>null</c> is triggered as the same value as Efl.Ui.Focus.Manager.root.get</summary>
+/// <value>Canvas object</value>
+   public Efl.Canvas.Object CanvasObject {
+      get { return GetCanvasObject(); }
+      set { SetCanvasObject( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ManagerRootFocus.efl_ui_focus_manager_root_focus_class_get();
+   }
+}
+public class ManagerRootFocusNativeInherit : Efl.Ui.Focus.ManagerCalcNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_focus_manager_root_focus_canvas_object_get_static_delegate == null)
+      efl_ui_focus_manager_root_focus_canvas_object_get_static_delegate = new efl_ui_focus_manager_root_focus_canvas_object_get_delegate(canvas_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_focus_canvas_object_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_focus_canvas_object_get_static_delegate)});
+      if (efl_ui_focus_manager_root_focus_canvas_object_set_static_delegate == null)
+      efl_ui_focus_manager_root_focus_canvas_object_set_static_delegate = new efl_ui_focus_manager_root_focus_canvas_object_set_delegate(canvas_object_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_focus_canvas_object_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_focus_canvas_object_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.ManagerRootFocus.efl_ui_focus_manager_root_focus_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ManagerRootFocus.efl_ui_focus_manager_root_focus_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_focus_manager_root_focus_canvas_object_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_focus_manager_root_focus_canvas_object_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_focus_canvas_object_get_api_delegate> efl_ui_focus_manager_root_focus_canvas_object_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_focus_canvas_object_get_api_delegate>(_Module, "efl_ui_focus_manager_root_focus_canvas_object_get");
+    private static Efl.Canvas.Object canvas_object_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_focus_canvas_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((ManagerRootFocus)wrapper).GetCanvasObject();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_focus_canvas_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_focus_canvas_object_get_delegate efl_ui_focus_manager_root_focus_canvas_object_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_root_focus_canvas_object_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object canvas_object);
+
+
+    public delegate  void efl_ui_focus_manager_root_focus_canvas_object_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object canvas_object);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_focus_canvas_object_set_api_delegate> efl_ui_focus_manager_root_focus_canvas_object_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_focus_canvas_object_set_api_delegate>(_Module, "efl_ui_focus_manager_root_focus_canvas_object_set");
+    private static  void canvas_object_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object canvas_object)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_focus_canvas_object_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ManagerRootFocus)wrapper).SetCanvasObject( canvas_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_root_focus_canvas_object_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  canvas_object);
+      }
+   }
+   private static efl_ui_focus_manager_root_focus_canvas_object_set_delegate efl_ui_focus_manager_root_focus_canvas_object_set_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_sub.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_sub.eo.cs
new file mode 100755 (executable)
index 0000000..6adf553
--- /dev/null
@@ -0,0 +1,1123 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>A class that automatically registers its border elements in the parent manager
+/// This sub manager will register its border elements on the parent manager. The parent manager is found with the <see cref="Efl.Ui.Focus.Object"/> interface of the <see cref="Efl.Object.Parent"/>.
+/// 
+/// Each sub manager also has to be a focus object, the object itself will be registered into the parent manager. It will be used as logical parent while registering the border elements.
+/// 
+/// You can filter the border elements by overriding the property <see cref="Efl.Ui.Focus.Manager.GetBorderElements"/>.
+/// 1.20</summary>
+[ManagerSubNativeInherit]
+public interface ManagerSub : 
+   Efl.Ui.Focus.Manager ,
+   Efl.Eo.IWrapper, IDisposable
+{
+}
+/// <summary>A class that automatically registers its border elements in the parent manager
+/// This sub manager will register its border elements on the parent manager. The parent manager is found with the <see cref="Efl.Ui.Focus.Object"/> interface of the <see cref="Efl.Object.Parent"/>.
+/// 
+/// Each sub manager also has to be a focus object, the object itself will be registered into the parent manager. It will be used as logical parent while registering the border elements.
+/// 
+/// You can filter the border elements by overriding the property <see cref="Efl.Ui.Focus.Manager.GetBorderElements"/>.
+/// 1.20</summary>
+sealed public class ManagerSubConcrete : 
+
+ManagerSub
+   , Efl.Ui.Focus.Manager
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ManagerSubConcrete))
+            return Efl.Ui.Focus.ManagerSubNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_manager_sub_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ManagerSubConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ManagerSubConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ManagerSubConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ManagerSubConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate(this.NativeHandle, focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(this.NativeHandle, redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(this.NativeHandle, _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate(this.NativeHandle, direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate(this.NativeHandle, direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate(this.NativeHandle, child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(this.NativeHandle, direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+}
+public class ManagerSubNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.ManagerSubConcrete.efl_ui_focus_manager_sub_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ManagerSubConcrete.efl_ui_focus_manager_sub_mixin_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ManagerSubConcrete)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ManagerSubConcrete)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((ManagerSubConcrete)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerSubConcrete)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerSubConcrete)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ManagerSubConcrete)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerSubConcrete)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ManagerSubConcrete)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_window_root.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_manager_window_root.eo.cs
new file mode 100755 (executable)
index 0000000..25eb308
--- /dev/null
@@ -0,0 +1,108 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>A interface to indicate the end of a focus chain.
+/// Focusmanagers are ensuring that if they give focus to something, that they are registered in the upper focus manager. The most upper focus manager does not need to do that, and can implement this interface to indicate that.</summary>
+[ManagerWindowRootNativeInherit]
+public interface ManagerWindowRoot : 
+   Efl.Eo.IWrapper, IDisposable
+{
+}
+/// <summary>A interface to indicate the end of a focus chain.
+/// Focusmanagers are ensuring that if they give focus to something, that they are registered in the upper focus manager. The most upper focus manager does not need to do that, and can implement this interface to indicate that.</summary>
+sealed public class ManagerWindowRootConcrete : 
+
+ManagerWindowRoot
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ManagerWindowRootConcrete))
+            return Efl.Ui.Focus.ManagerWindowRootNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_manager_window_root_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ManagerWindowRootConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ManagerWindowRootConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ManagerWindowRootConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ManagerWindowRootConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+}
+public class ManagerWindowRootNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.ManagerWindowRootConcrete.efl_ui_focus_manager_window_root_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ManagerWindowRootConcrete.efl_ui_focus_manager_window_root_interface_get();
+   }
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_object.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_object.eo.cs
new file mode 100755 (executable)
index 0000000..dc85cf8
--- /dev/null
@@ -0,0 +1,911 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>Functions of focusable objects.
+/// 1.20</summary>
+[ObjectNativeInherit]
+public interface Object : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+/// 1.20</summary>
+/// <returns>The geometry to use.
+/// 1.20</returns>
+Eina.Rect GetFocusGeometry();
+   /// <summary>Returns whether the widget is currently focused or not.
+/// 1.20</summary>
+/// <returns>The focused state of the object.
+/// 1.20</returns>
+bool GetFocus();
+   /// <summary>This is called by the manager and should never be called by anyone else.
+/// The function emits the focus state events, if focus is different to the previous state.
+/// 1.20</summary>
+/// <param name="focus">The focused state of the object.
+/// 1.20</param>
+/// <returns></returns>
+ void SetFocus( bool focus);
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+/// 1.20</summary>
+/// <returns>The manager object
+/// 1.20</returns>
+Efl.Ui.Focus.Manager GetFocusManager();
+   /// <summary>Describes which logical parent is used by this object.
+/// 1.20</summary>
+/// <returns>The focus parent.
+/// 1.20</returns>
+Efl.Ui.Focus.Object GetFocusParent();
+   /// <summary>Indicates if a child of this object has focus set to true.
+/// 1.20</summary>
+/// <returns><c>true</c> if a child has focus.
+/// 1.20</returns>
+bool GetChildFocus();
+   /// <summary>Indicates if a child of this object has focus set to true.
+/// 1.20</summary>
+/// <param name="child_focus"><c>true</c> if a child has focus.
+/// 1.20</param>
+/// <returns></returns>
+ void SetChildFocus( bool child_focus);
+   /// <summary>Tells the object that its children will be queried soon by the focus manager. Overwrite this to update the order of the children. Deleting items in this call will result in undefined behaviour and may cause your system to crash.
+/// 1.20</summary>
+/// <returns></returns>
+ void SetupOrder();
+   /// <summary>This is called when <see cref="Efl.Ui.Focus.Object.SetupOrder"/> is called, but only on the first call, additional recursive calls to <see cref="Efl.Ui.Focus.Object.SetupOrder"/> will not call this function again.
+/// 1.20</summary>
+/// <returns></returns>
+ void SetupOrderNonRecursive();
+   /// <summary>Virtual function handling focus in/out events on the widget
+/// 1.20</summary>
+/// <returns><c>true</c> if this widget can handle focus, <c>false</c> otherwise
+/// 1.20</returns>
+bool UpdateOnFocus();
+                                 /// <summary>Emitted if the focus state has changed.
+   /// 1.20</summary>
+   event EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args> FocusChangedEvt;
+   /// <summary>Emitted when a new manager is the parent for this object.
+   /// 1.20</summary>
+   event EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args> Focus_managerChangedEvt;
+   /// <summary>Emitted when a new logical parent should be used.
+   /// 1.20</summary>
+   event EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args> Focus_parentChangedEvt;
+   /// <summary>Emitted if child_focus has changed.
+   /// 1.20</summary>
+   event EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args> Child_focusChangedEvt;
+   /// <summary>Emitted if focus geometry of this object has changed.
+   /// 1.20</summary>
+   event EventHandler Focus_geometryChangedEvt;
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+/// 1.20</summary>
+/// <value>The geometry to use.
+/// 1.20</value>
+   Eina.Rect FocusGeometry {
+      get ;
+   }
+   /// <summary>Returns whether the widget is currently focused or not.
+/// 1.20</summary>
+/// <value>The focused state of the object.
+/// 1.20</value>
+   bool Focus {
+      get ;
+      set ;
+   }
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+/// 1.20</summary>
+/// <value>The manager object
+/// 1.20</value>
+   Efl.Ui.Focus.Manager FocusManager {
+      get ;
+   }
+   /// <summary>Describes which logical parent is used by this object.
+/// 1.20</summary>
+/// <value>The focus parent.
+/// 1.20</value>
+   Efl.Ui.Focus.Object FocusParent {
+      get ;
+   }
+   /// <summary>Indicates if a child of this object has focus set to true.
+/// 1.20</summary>
+/// <value><c>true</c> if a child has focus.
+/// 1.20</value>
+   bool ChildFocus {
+      get ;
+      set ;
+   }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Focus.Object.FocusChangedEvt"/>.</summary>
+public class ObjectFocusChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public bool arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Focus.Object.Focus_managerChangedEvt"/>.</summary>
+public class ObjectFocus_managerChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.Focus.Manager arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Focus.Object.Focus_parentChangedEvt"/>.</summary>
+public class ObjectFocus_parentChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.Focus.Object arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Focus.Object.Child_focusChangedEvt"/>.</summary>
+public class ObjectChild_focusChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public bool arg { get; set; }
+}
+/// <summary>Functions of focusable objects.
+/// 1.20</summary>
+sealed public class ObjectConcrete : 
+
+Object
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ObjectConcrete))
+            return Efl.Ui.Focus.ObjectNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_object_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ObjectConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ObjectConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ObjectConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ObjectConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object FocusChangedEvtKey = new object();
+   /// <summary>Emitted if the focus state has changed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args> FocusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FocusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(FocusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_FocusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusChangedEvt.</summary>
+   public void On_FocusChangedEvt(Efl.Ui.Focus.ObjectFocusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args>)eventHandlers[FocusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusChangedEvt_delegate;
+   private void on_FocusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocusChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocusChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_FocusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_managerChangedEvtKey = new object();
+   /// <summary>Emitted when a new manager is the parent for this object.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args> Focus_managerChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_MANAGER_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_managerChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_managerChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_MANAGER_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_managerChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_managerChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_managerChangedEvt.</summary>
+   public void On_Focus_managerChangedEvt(Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args>)eventHandlers[Focus_managerChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_managerChangedEvt_delegate;
+   private void on_Focus_managerChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_Focus_managerChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_parentChangedEvtKey = new object();
+   /// <summary>Emitted when a new logical parent should be used.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args> Focus_parentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_PARENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_parentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_parentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_PARENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_parentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_parentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_parentChangedEvt.</summary>
+   public void On_Focus_parentChangedEvt(Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args>)eventHandlers[Focus_parentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_parentChangedEvt_delegate;
+   private void on_Focus_parentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Focus_parentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Child_focusChangedEvtKey = new object();
+   /// <summary>Emitted if child_focus has changed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args> Child_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_CHILD_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Child_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Child_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_CHILD_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Child_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Child_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Child_focusChangedEvt.</summary>
+   public void On_Child_focusChangedEvt(Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args>)eventHandlers[Child_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Child_focusChangedEvt_delegate;
+   private void on_Child_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args args = new Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Child_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_geometryChangedEvtKey = new object();
+   /// <summary>Emitted if focus geometry of this object has changed.
+   /// 1.20</summary>
+   public event EventHandler Focus_geometryChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_GEOMETRY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_geometryChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_geometryChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_GEOMETRY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_geometryChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_geometryChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_geometryChangedEvt.</summary>
+   public void On_Focus_geometryChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Focus_geometryChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_geometryChangedEvt_delegate;
+   private void on_Focus_geometryChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Focus_geometryChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_FocusChangedEvt_delegate = new Efl.EventCb(on_FocusChangedEvt_NativeCallback);
+      evt_Focus_managerChangedEvt_delegate = new Efl.EventCb(on_Focus_managerChangedEvt_NativeCallback);
+      evt_Focus_parentChangedEvt_delegate = new Efl.EventCb(on_Focus_parentChangedEvt_NativeCallback);
+      evt_Child_focusChangedEvt_delegate = new Efl.EventCb(on_Child_focusChangedEvt_NativeCallback);
+      evt_Focus_geometryChangedEvt_delegate = new Efl.EventCb(on_Focus_geometryChangedEvt_NativeCallback);
+   }
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+   /// 1.20</summary>
+   /// <returns>The geometry to use.
+   /// 1.20</returns>
+   public Eina.Rect GetFocusGeometry() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_geometry_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Returns whether the widget is currently focused or not.
+   /// 1.20</summary>
+   /// <returns>The focused state of the object.
+   /// 1.20</returns>
+   public bool GetFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This is called by the manager and should never be called by anyone else.
+   /// The function emits the focus state events, if focus is different to the previous state.
+   /// 1.20</summary>
+   /// <param name="focus">The focused state of the object.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetFocus( bool focus) {
+                         Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_set_ptr.Value.Delegate(this.NativeHandle, focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+   /// 1.20</summary>
+   /// <returns>The manager object
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Manager GetFocusManager() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_manager_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Describes which logical parent is used by this object.
+   /// 1.20</summary>
+   /// <returns>The focus parent.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetFocusParent() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_parent_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates if a child of this object has focus set to true.
+   /// 1.20</summary>
+   /// <returns><c>true</c> if a child has focus.
+   /// 1.20</returns>
+   public bool GetChildFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_child_focus_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates if a child of this object has focus set to true.
+   /// 1.20</summary>
+   /// <param name="child_focus"><c>true</c> if a child has focus.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetChildFocus( bool child_focus) {
+                         Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_child_focus_set_ptr.Value.Delegate(this.NativeHandle, child_focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Tells the object that its children will be queried soon by the focus manager. Overwrite this to update the order of the children. Deleting items in this call will result in undefined behaviour and may cause your system to crash.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void SetupOrder() {
+       Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_setup_order_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This is called when <see cref="Efl.Ui.Focus.Object.SetupOrder"/> is called, but only on the first call, additional recursive calls to <see cref="Efl.Ui.Focus.Object.SetupOrder"/> will not call this function again.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void SetupOrderNonRecursive() {
+       Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_setup_order_non_recursive_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Virtual function handling focus in/out events on the widget
+   /// 1.20</summary>
+   /// <returns><c>true</c> if this widget can handle focus, <c>false</c> otherwise
+   /// 1.20</returns>
+   public bool UpdateOnFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_on_focus_update_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+/// 1.20</summary>
+/// <value>The geometry to use.
+/// 1.20</value>
+   public Eina.Rect FocusGeometry {
+      get { return GetFocusGeometry(); }
+   }
+   /// <summary>Returns whether the widget is currently focused or not.
+/// 1.20</summary>
+/// <value>The focused state of the object.
+/// 1.20</value>
+   public bool Focus {
+      get { return GetFocus(); }
+      set { SetFocus( value); }
+   }
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+/// 1.20</summary>
+/// <value>The manager object
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager FocusManager {
+      get { return GetFocusManager(); }
+   }
+   /// <summary>Describes which logical parent is used by this object.
+/// 1.20</summary>
+/// <value>The focus parent.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object FocusParent {
+      get { return GetFocusParent(); }
+   }
+   /// <summary>Indicates if a child of this object has focus set to true.
+/// 1.20</summary>
+/// <value><c>true</c> if a child has focus.
+/// 1.20</value>
+   public bool ChildFocus {
+      get { return GetChildFocus(); }
+      set { SetChildFocus( value); }
+   }
+}
+public class ObjectNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_focus_object_focus_geometry_get_static_delegate == null)
+      efl_ui_focus_object_focus_geometry_get_static_delegate = new efl_ui_focus_object_focus_geometry_get_delegate(focus_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_geometry_get_static_delegate)});
+      if (efl_ui_focus_object_focus_get_static_delegate == null)
+      efl_ui_focus_object_focus_get_static_delegate = new efl_ui_focus_object_focus_get_delegate(focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_get_static_delegate)});
+      if (efl_ui_focus_object_focus_set_static_delegate == null)
+      efl_ui_focus_object_focus_set_static_delegate = new efl_ui_focus_object_focus_set_delegate(focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_set_static_delegate)});
+      if (efl_ui_focus_object_focus_manager_get_static_delegate == null)
+      efl_ui_focus_object_focus_manager_get_static_delegate = new efl_ui_focus_object_focus_manager_get_delegate(focus_manager_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_manager_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_manager_get_static_delegate)});
+      if (efl_ui_focus_object_focus_parent_get_static_delegate == null)
+      efl_ui_focus_object_focus_parent_get_static_delegate = new efl_ui_focus_object_focus_parent_get_delegate(focus_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_parent_get_static_delegate)});
+      if (efl_ui_focus_object_child_focus_get_static_delegate == null)
+      efl_ui_focus_object_child_focus_get_static_delegate = new efl_ui_focus_object_child_focus_get_delegate(child_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_child_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_child_focus_get_static_delegate)});
+      if (efl_ui_focus_object_child_focus_set_static_delegate == null)
+      efl_ui_focus_object_child_focus_set_static_delegate = new efl_ui_focus_object_child_focus_set_delegate(child_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_child_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_child_focus_set_static_delegate)});
+      if (efl_ui_focus_object_setup_order_static_delegate == null)
+      efl_ui_focus_object_setup_order_static_delegate = new efl_ui_focus_object_setup_order_delegate(setup_order);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_setup_order"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_setup_order_static_delegate)});
+      if (efl_ui_focus_object_setup_order_non_recursive_static_delegate == null)
+      efl_ui_focus_object_setup_order_non_recursive_static_delegate = new efl_ui_focus_object_setup_order_non_recursive_delegate(setup_order_non_recursive);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_setup_order_non_recursive"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_setup_order_non_recursive_static_delegate)});
+      if (efl_ui_focus_object_on_focus_update_static_delegate == null)
+      efl_ui_focus_object_on_focus_update_static_delegate = new efl_ui_focus_object_on_focus_update_delegate(on_focus_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_on_focus_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_on_focus_update_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.ObjectConcrete.efl_ui_focus_object_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.ObjectConcrete.efl_ui_focus_object_mixin_get();
+   }
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_focus_object_focus_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_focus_object_focus_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_geometry_get_api_delegate> efl_ui_focus_object_focus_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_geometry_get_api_delegate>(_Module, "efl_ui_focus_object_focus_geometry_get");
+    private static Eina.Rect_StructInternal focus_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetFocusGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_object_focus_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_geometry_get_delegate efl_ui_focus_object_focus_geometry_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_get_api_delegate> efl_ui_focus_object_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_get_api_delegate>(_Module, "efl_ui_focus_object_focus_get");
+    private static bool focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_get_delegate efl_ui_focus_object_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+
+
+    public delegate  void efl_ui_focus_object_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_set_api_delegate> efl_ui_focus_object_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_set_api_delegate>(_Module, "efl_ui_focus_object_focus_set");
+    private static  void focus_set(System.IntPtr obj, System.IntPtr pd,  bool focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_object_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_object_focus_set_delegate efl_ui_focus_object_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_object_focus_manager_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_object_focus_manager_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_manager_get_api_delegate> efl_ui_focus_object_focus_manager_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_manager_get_api_delegate>(_Module, "efl_ui_focus_object_focus_manager_get");
+    private static Efl.Ui.Focus.Manager focus_manager_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_manager_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetFocusManager();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_manager_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_manager_get_delegate efl_ui_focus_object_focus_manager_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_object_focus_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_object_focus_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_parent_get_api_delegate> efl_ui_focus_object_focus_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_parent_get_api_delegate>(_Module, "efl_ui_focus_object_focus_parent_get");
+    private static Efl.Ui.Focus.Object focus_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetFocusParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_parent_get_delegate efl_ui_focus_object_focus_parent_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_child_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_child_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_get_api_delegate> efl_ui_focus_object_child_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_get_api_delegate>(_Module, "efl_ui_focus_object_child_focus_get");
+    private static bool child_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_child_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).GetChildFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_child_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_child_focus_get_delegate efl_ui_focus_object_child_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_child_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool child_focus);
+
+
+    public delegate  void efl_ui_focus_object_child_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool child_focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_set_api_delegate> efl_ui_focus_object_child_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_set_api_delegate>(_Module, "efl_ui_focus_object_child_focus_set");
+    private static  void child_focus_set(System.IntPtr obj, System.IntPtr pd,  bool child_focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_child_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ObjectConcrete)wrapper).SetChildFocus( child_focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_object_child_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_focus);
+      }
+   }
+   private static efl_ui_focus_object_child_focus_set_delegate efl_ui_focus_object_child_focus_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_setup_order_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_object_setup_order_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_api_delegate> efl_ui_focus_object_setup_order_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_api_delegate>(_Module, "efl_ui_focus_object_setup_order");
+    private static  void setup_order(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_setup_order was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ObjectConcrete)wrapper).SetupOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_object_setup_order_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_setup_order_delegate efl_ui_focus_object_setup_order_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_setup_order_non_recursive_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_object_setup_order_non_recursive_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_non_recursive_api_delegate> efl_ui_focus_object_setup_order_non_recursive_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_non_recursive_api_delegate>(_Module, "efl_ui_focus_object_setup_order_non_recursive");
+    private static  void setup_order_non_recursive(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_setup_order_non_recursive was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ObjectConcrete)wrapper).SetupOrderNonRecursive();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_object_setup_order_non_recursive_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_setup_order_non_recursive_delegate efl_ui_focus_object_setup_order_non_recursive_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_on_focus_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_on_focus_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_on_focus_update_api_delegate> efl_ui_focus_object_on_focus_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_on_focus_update_api_delegate>(_Module, "efl_ui_focus_object_on_focus_update");
+    private static bool on_focus_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_on_focus_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ObjectConcrete)wrapper).UpdateOnFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_on_focus_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_on_focus_update_delegate efl_ui_focus_object_on_focus_update_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_focus_util.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_focus_util.eo.cs
new file mode 100755 (executable)
index 0000000..c778270
--- /dev/null
@@ -0,0 +1,185 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Focus { 
+/// <summary>EFL UI Focus Util class</summary>
+[UtilNativeInherit]
+public class Util : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.Focus.UtilNativeInherit nativeInherit = new Efl.Ui.Focus.UtilNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Util))
+            return Efl.Ui.Focus.UtilNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_focus_util_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Util(Efl.Object parent= null
+         ) :
+      base(efl_ui_focus_util_class_get(), typeof(Util), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Util(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Util(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Util static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Util(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Focus helper method</summary>
+   /// <param name="focus_elem">Focus element</param>
+   /// <returns></returns>
+   public static  void Focus( Efl.Ui.Focus.Object focus_elem) {
+                         Efl.Ui.Focus.UtilNativeInherit.efl_ui_focus_util_focus_ptr.Value.Delegate( focus_elem);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the highest manager in the redirect property</summary>
+   /// <param name="manager"></param>
+   /// <returns></returns>
+   public static Efl.Ui.Focus.Manager ActiveManager( Efl.Ui.Focus.Manager manager) {
+                         var _ret_var = Efl.Ui.Focus.UtilNativeInherit.efl_ui_focus_util_active_manager_ptr.Value.Delegate( manager);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="dir"></param>
+   /// <returns></returns>
+   public static Efl.Ui.Focus.Direction DirectionComplement( Efl.Ui.Focus.Direction dir) {
+                         var _ret_var = Efl.Ui.Focus.UtilNativeInherit.efl_ui_focus_util_direction_complement_ptr.Value.Delegate( dir);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.Util.efl_ui_focus_util_class_get();
+   }
+}
+public class UtilNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Focus.Util.efl_ui_focus_util_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Focus.Util.efl_ui_focus_util_class_get();
+   }
+
+
+    private delegate  void efl_ui_focus_util_focus_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus_elem);
+
+
+    public delegate  void efl_ui_focus_util_focus_api_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus_elem);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_util_focus_api_delegate> efl_ui_focus_util_focus_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_util_focus_api_delegate>(_Module, "efl_ui_focus_util_focus");
+    private static  void focus(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus_elem)
+   {
+      Eina.Log.Debug("function efl_ui_focus_util_focus was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            Util.Focus( focus_elem);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_util_focus_ptr.Value.Delegate( focus_elem);
+      }
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_util_active_manager_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager manager);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_util_active_manager_api_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager manager);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_util_active_manager_api_delegate> efl_ui_focus_util_active_manager_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_util_active_manager_api_delegate>(_Module, "efl_ui_focus_util_active_manager");
+    private static Efl.Ui.Focus.Manager active_manager(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager manager)
+   {
+      Eina.Log.Debug("function efl_ui_focus_util_active_manager was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = Util.ActiveManager( manager);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_util_active_manager_ptr.Value.Delegate( manager);
+      }
+   }
+
+
+    private delegate Efl.Ui.Focus.Direction efl_ui_focus_util_direction_complement_delegate(  Efl.Ui.Focus.Direction dir);
+
+
+    public delegate Efl.Ui.Focus.Direction efl_ui_focus_util_direction_complement_api_delegate(  Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_util_direction_complement_api_delegate> efl_ui_focus_util_direction_complement_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_util_direction_complement_api_delegate>(_Module, "efl_ui_focus_util_direction_complement");
+    private static Efl.Ui.Focus.Direction direction_complement(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function efl_ui_focus_util_direction_complement was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Direction _ret_var = default(Efl.Ui.Focus.Direction);
+         try {
+            _ret_var = Util.DirectionComplement( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_util_direction_complement_ptr.Value.Delegate( dir);
+      }
+   }
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_format.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_format.eo.cs
new file mode 100755 (executable)
index 0000000..e3969d0
--- /dev/null
@@ -0,0 +1,309 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+/// <param name="str">the formated string to be appended by user.</param>
+/// <param name="value">The Eina.Value passed by <c>obj</c>.</param>
+/// <returns></returns>
+public delegate  void FormatFuncCb(  Eina.Strbuf str,   Eina.Value value);
+public delegate  void FormatFuncCbInternal(IntPtr data,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))]   Eina.Strbuf str,    Eina.ValueNative value);
+internal class FormatFuncCbWrapper
+{
+
+   private FormatFuncCbInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal FormatFuncCbWrapper (FormatFuncCbInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~FormatFuncCbWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  void ManagedCb(  Eina.Strbuf str,  Eina.Value value)
+   {
+                                          _cb(_cb_data,  str,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                                 }
+
+      internal static  void Cb(IntPtr cb_data,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StrbufKeepOwnershipMarshaler))]   Eina.Strbuf str,    Eina.ValueNative value)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      FormatFuncCb cb = (FormatFuncCb)handle.Target;
+                                             
+      try {
+         cb( str,  value);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                                 }
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>interface class for format_func</summary>
+[FormatNativeInherit]
+public interface Format : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Set the format function pointer to format the string.</summary>
+/// <param name="func">The format function callback</param>
+/// <returns></returns>
+ void SetFormatCb( Efl.Ui.FormatFuncCb func);
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <returns>The format string for <c>obj</c>&apos;s units label.</returns>
+ System.String GetFormatString();
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <param name="units">The format string for <c>obj</c>&apos;s units label.</param>
+/// <returns></returns>
+ void SetFormatString(  System.String units);
+            /// <summary>Set the format function pointer to format the string.</summary>
+/// <value>The format function callback</value>
+   Efl.Ui.FormatFuncCb FormatCb {
+      set ;
+   }
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <value>The format string for <c>obj</c>&apos;s units label.</value>
+    System.String FormatString {
+      get ;
+      set ;
+   }
+}
+/// <summary>interface class for format_func</summary>
+sealed public class FormatConcrete : 
+
+Format
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (FormatConcrete))
+            return Efl.Ui.FormatNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_format_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public FormatConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~FormatConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static FormatConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new FormatConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+   /// <param name="func">The format function callback</param>
+   /// <returns></returns>
+   public  void SetFormatCb( Efl.Ui.FormatFuncCb func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.Ui.FormatNativeInherit.efl_ui_format_cb_set_ptr.Value.Delegate(this.NativeHandle,GCHandle.ToIntPtr(func_handle), Efl.Ui.FormatFuncCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <returns>The format string for <c>obj</c>&apos;s units label.</returns>
+   public  System.String GetFormatString() {
+       var _ret_var = Efl.Ui.FormatNativeInherit.efl_ui_format_string_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <param name="units">The format string for <c>obj</c>&apos;s units label.</param>
+   /// <returns></returns>
+   public  void SetFormatString(  System.String units) {
+                         Efl.Ui.FormatNativeInherit.efl_ui_format_string_set_ptr.Value.Delegate(this.NativeHandle, units);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+/// <value>The format function callback</value>
+   public Efl.Ui.FormatFuncCb FormatCb {
+      set { SetFormatCb( value); }
+   }
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <value>The format string for <c>obj</c>&apos;s units label.</value>
+   public  System.String FormatString {
+      get { return GetFormatString(); }
+      set { SetFormatString( value); }
+   }
+}
+public class FormatNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_format_cb_set_static_delegate == null)
+      efl_ui_format_cb_set_static_delegate = new efl_ui_format_cb_set_delegate(format_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_cb_set_static_delegate)});
+      if (efl_ui_format_string_get_static_delegate == null)
+      efl_ui_format_string_get_static_delegate = new efl_ui_format_string_get_delegate(format_string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_get_static_delegate)});
+      if (efl_ui_format_string_set_static_delegate == null)
+      efl_ui_format_string_set_static_delegate = new efl_ui_format_string_set_delegate(format_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.FormatConcrete.efl_ui_format_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.FormatConcrete.efl_ui_format_mixin_get();
+   }
+
+
+    private delegate  void efl_ui_format_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_ui_format_cb_set_api_delegate(System.IntPtr obj,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate> efl_ui_format_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate>(_Module, "efl_ui_format_cb_set");
+    private static  void format_cb_set(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_ui_format_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              Efl.Ui.FormatFuncCbWrapper func_wrapper = new Efl.Ui.FormatFuncCbWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((FormatConcrete)wrapper).SetFormatCb( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_ui_format_cb_set_delegate efl_ui_format_cb_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_format_string_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_format_string_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate> efl_ui_format_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate>(_Module, "efl_ui_format_string_get");
+    private static  System.String format_string_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((FormatConcrete)wrapper).GetFormatString();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_format_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_format_string_get_delegate efl_ui_format_string_get_static_delegate;
+
+
+    private delegate  void efl_ui_format_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+
+
+    public delegate  void efl_ui_format_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate> efl_ui_format_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate>(_Module, "efl_ui_format_string_set");
+    private static  void format_string_set(System.IntPtr obj, System.IntPtr pd,   System.String units)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((FormatConcrete)wrapper).SetFormatString( units);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  units);
+      }
+   }
+   private static efl_ui_format_string_set_delegate efl_ui_format_string_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_frame.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_frame.eo.cs
new file mode 100755 (executable)
index 0000000..04061a6
--- /dev/null
@@ -0,0 +1,957 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Frame widget
+/// The Frame widget allows for collapsing and expanding the content widget by clicking on the frame label. the label and content can be set using text_set and content_set api.</summary>
+[FrameNativeInherit]
+public class Frame : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content,Efl.Text,Efl.TextMarkup,Efl.Ui.Clickable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.FrameNativeInherit nativeInherit = new Efl.Ui.FrameNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Frame))
+            return Efl.Ui.FrameNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_frame_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Frame(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_frame_class_get(), typeof(Frame), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Frame(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Frame(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Frame static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Frame(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+   }
+   /// <summary>Determine the collapse state of a frame Use this to determine the collapse state of a frame.</summary>
+   /// <returns><c>true</c> to collapse, <c>false</c> to expand.</returns>
+   virtual public bool GetCollapse() {
+       var _ret_var = Efl.Ui.FrameNativeInherit.efl_ui_frame_collapse_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Manually collapse a frame without animations Use this to toggle the collapsed state of a frame, bypassing animations.</summary>
+   /// <param name="collapse"><c>true</c> to collapse, <c>false</c> to expand.</param>
+   /// <returns></returns>
+   virtual public  void SetCollapse( bool collapse) {
+                         Efl.Ui.FrameNativeInherit.efl_ui_frame_collapse_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), collapse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Determine autocollapsing of a frame
+   /// When this returns <c>true</c>, clicking a frame&apos;s label will collapse the frame vertically, shrinking it to the height of the label. By default, this is DISABLED.</summary>
+   /// <returns>Whether to enable autocollapse.</returns>
+   virtual public bool GetAutocollapse() {
+       var _ret_var = Efl.Ui.FrameNativeInherit.efl_ui_frame_autocollapse_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Toggle autocollapsing of a frame When <c>enable</c> is <c>true</c>, clicking a frame&apos;s label will collapse the frame vertically, shrinking it to the height of the label. By default, this is DISABLED.</summary>
+   /// <param name="autocollapse">Whether to enable autocollapse.</param>
+   /// <returns></returns>
+   virtual public  void SetAutocollapse( bool autocollapse) {
+                         Efl.Ui.FrameNativeInherit.efl_ui_frame_autocollapse_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), autocollapse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Manually collapse a frame with animations Use this to toggle the collapsed state of a frame, triggering animations.</summary>
+   /// <param name="collapse"><c>true</c> to collapse, <c>false</c> to expand.</param>
+   /// <returns></returns>
+   virtual public  void CollapseGo( bool collapse) {
+                         Efl.Ui.FrameNativeInherit.efl_ui_frame_collapse_go_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), collapse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   virtual public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Determine the collapse state of a frame Use this to determine the collapse state of a frame.</summary>
+/// <value><c>true</c> to collapse, <c>false</c> to expand.</value>
+   public bool Collapse {
+      get { return GetCollapse(); }
+      set { SetCollapse( value); }
+   }
+   /// <summary>Determine autocollapsing of a frame
+/// When this returns <c>true</c>, clicking a frame&apos;s label will collapse the frame vertically, shrinking it to the height of the label. By default, this is DISABLED.</summary>
+/// <value>Whether to enable autocollapse.</value>
+   public bool Autocollapse {
+      get { return GetAutocollapse(); }
+      set { SetAutocollapse( value); }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Frame.efl_ui_frame_class_get();
+   }
+}
+public class FrameNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_frame_collapse_get_static_delegate == null)
+      efl_ui_frame_collapse_get_static_delegate = new efl_ui_frame_collapse_get_delegate(collapse_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_frame_collapse_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_frame_collapse_get_static_delegate)});
+      if (efl_ui_frame_collapse_set_static_delegate == null)
+      efl_ui_frame_collapse_set_static_delegate = new efl_ui_frame_collapse_set_delegate(collapse_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_frame_collapse_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_frame_collapse_set_static_delegate)});
+      if (efl_ui_frame_autocollapse_get_static_delegate == null)
+      efl_ui_frame_autocollapse_get_static_delegate = new efl_ui_frame_autocollapse_get_delegate(autocollapse_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_frame_autocollapse_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_frame_autocollapse_get_static_delegate)});
+      if (efl_ui_frame_autocollapse_set_static_delegate == null)
+      efl_ui_frame_autocollapse_set_static_delegate = new efl_ui_frame_autocollapse_set_delegate(autocollapse_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_frame_autocollapse_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_frame_autocollapse_set_static_delegate)});
+      if (efl_ui_frame_collapse_go_static_delegate == null)
+      efl_ui_frame_collapse_go_static_delegate = new efl_ui_frame_collapse_go_delegate(collapse_go);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_frame_collapse_go"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_frame_collapse_go_static_delegate)});
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Frame.efl_ui_frame_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Frame.efl_ui_frame_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_frame_collapse_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_frame_collapse_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_frame_collapse_get_api_delegate> efl_ui_frame_collapse_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_frame_collapse_get_api_delegate>(_Module, "efl_ui_frame_collapse_get");
+    private static bool collapse_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_frame_collapse_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Frame)wrapper).GetCollapse();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_frame_collapse_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_frame_collapse_get_delegate efl_ui_frame_collapse_get_static_delegate;
+
+
+    private delegate  void efl_ui_frame_collapse_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool collapse);
+
+
+    public delegate  void efl_ui_frame_collapse_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool collapse);
+    public static Efl.Eo.FunctionWrapper<efl_ui_frame_collapse_set_api_delegate> efl_ui_frame_collapse_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_frame_collapse_set_api_delegate>(_Module, "efl_ui_frame_collapse_set");
+    private static  void collapse_set(System.IntPtr obj, System.IntPtr pd,  bool collapse)
+   {
+      Eina.Log.Debug("function efl_ui_frame_collapse_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Frame)wrapper).SetCollapse( collapse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_frame_collapse_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  collapse);
+      }
+   }
+   private static efl_ui_frame_collapse_set_delegate efl_ui_frame_collapse_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_frame_autocollapse_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_frame_autocollapse_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_frame_autocollapse_get_api_delegate> efl_ui_frame_autocollapse_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_frame_autocollapse_get_api_delegate>(_Module, "efl_ui_frame_autocollapse_get");
+    private static bool autocollapse_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_frame_autocollapse_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Frame)wrapper).GetAutocollapse();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_frame_autocollapse_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_frame_autocollapse_get_delegate efl_ui_frame_autocollapse_get_static_delegate;
+
+
+    private delegate  void efl_ui_frame_autocollapse_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool autocollapse);
+
+
+    public delegate  void efl_ui_frame_autocollapse_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool autocollapse);
+    public static Efl.Eo.FunctionWrapper<efl_ui_frame_autocollapse_set_api_delegate> efl_ui_frame_autocollapse_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_frame_autocollapse_set_api_delegate>(_Module, "efl_ui_frame_autocollapse_set");
+    private static  void autocollapse_set(System.IntPtr obj, System.IntPtr pd,  bool autocollapse)
+   {
+      Eina.Log.Debug("function efl_ui_frame_autocollapse_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Frame)wrapper).SetAutocollapse( autocollapse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_frame_autocollapse_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  autocollapse);
+      }
+   }
+   private static efl_ui_frame_autocollapse_set_delegate efl_ui_frame_autocollapse_set_static_delegate;
+
+
+    private delegate  void efl_ui_frame_collapse_go_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool collapse);
+
+
+    public delegate  void efl_ui_frame_collapse_go_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool collapse);
+    public static Efl.Eo.FunctionWrapper<efl_ui_frame_collapse_go_api_delegate> efl_ui_frame_collapse_go_ptr = new Efl.Eo.FunctionWrapper<efl_ui_frame_collapse_go_api_delegate>(_Module, "efl_ui_frame_collapse_go");
+    private static  void collapse_go(System.IntPtr obj, System.IntPtr pd,  bool collapse)
+   {
+      Eina.Log.Debug("function efl_ui_frame_collapse_go was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Frame)wrapper).CollapseGo( collapse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_frame_collapse_go_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  collapse);
+      }
+   }
+   private static efl_ui_frame_collapse_go_delegate efl_ui_frame_collapse_go_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Frame)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Frame)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Frame)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Frame)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Frame)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Frame)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Frame)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_grid.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_grid.eo.cs
new file mode 100755 (executable)
index 0000000..91a9a86
--- /dev/null
@@ -0,0 +1,3876 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Simple grid widget with Pack interface.</summary>
+[GridNativeInherit]
+public class Grid : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Pack,Efl.PackLayout,Efl.PackLinear,Efl.Ui.Clickable,Efl.Ui.Direction,Efl.Ui.MultiSelectable,Efl.Ui.Scrollable,Efl.Ui.ScrollableInteractive,Efl.Ui.Scrollbar,Efl.Ui.Selectable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.GridNativeInherit nativeInherit = new Efl.Ui.GridNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Grid))
+            return Efl.Ui.GridNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_grid_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Grid(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_grid_class_get(), typeof(Grid), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Grid(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Grid(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Grid static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Grid(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object LayoutUpdatedEvtKey = new object();
+   /// <summary>Sent after the layout was updated.</summary>
+   public event EventHandler LayoutUpdatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LayoutUpdatedEvt_delegate)) {
+               eventHandlers.AddHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (remove_cpp_event_handler(key, this.evt_LayoutUpdatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LayoutUpdatedEvt.</summary>
+   public void On_LayoutUpdatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LayoutUpdatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LayoutUpdatedEvt_delegate;
+   private void on_LayoutUpdatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LayoutUpdatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPressEvtKey = new object();
+   /// <summary>Called when bar is pressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPressEvt_delegate)) {
+               eventHandlers.AddHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarPressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPressEvt.</summary>
+   public void On_BarPressEvt(Efl.Ui.ScrollbarBarPressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args>)eventHandlers[BarPressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPressEvt_delegate;
+   private void on_BarPressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarPressEvt_Args args = new Efl.Ui.ScrollbarBarPressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarPressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarUnpressEvtKey = new object();
+   /// <summary>Called when bar is unpressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarUnpressEvt_delegate)) {
+               eventHandlers.AddHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarUnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarUnpressEvt.</summary>
+   public void On_BarUnpressEvt(Efl.Ui.ScrollbarBarUnpressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args>)eventHandlers[BarUnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarUnpressEvt_delegate;
+   private void on_BarUnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarUnpressEvt_Args args = new Efl.Ui.ScrollbarBarUnpressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarUnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarDragEvtKey = new object();
+   /// <summary>Called when bar is dragged</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarDragEvt_delegate)) {
+               eventHandlers.AddHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_BarDragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarDragEvt.</summary>
+   public void On_BarDragEvt(Efl.Ui.ScrollbarBarDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args>)eventHandlers[BarDragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarDragEvt_delegate;
+   private void on_BarDragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarDragEvt_Args args = new Efl.Ui.ScrollbarBarDragEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarDragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarSizeChangedEvtKey = new object();
+   /// <summary>Called when bar size is changed</summary>
+   public event EventHandler BarSizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarSizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarSizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarSizeChangedEvt.</summary>
+   public void On_BarSizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarSizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarSizeChangedEvt_delegate;
+   private void on_BarSizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarSizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPosChangedEvtKey = new object();
+   /// <summary>Called when bar position is changed</summary>
+   public event EventHandler BarPosChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPosChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarPosChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPosChangedEvt.</summary>
+   public void On_BarPosChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarPosChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPosChangedEvt_delegate;
+   private void on_BarPosChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarPosChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarShowEvtKey = new object();
+   /// <summary>Callend when bar is shown</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarShowEvt_delegate)) {
+               eventHandlers.AddHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (remove_cpp_event_handler(key, this.evt_BarShowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarShowEvt.</summary>
+   public void On_BarShowEvt(Efl.Ui.ScrollbarBarShowEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args>)eventHandlers[BarShowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarShowEvt_delegate;
+   private void on_BarShowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarShowEvt_Args args = new Efl.Ui.ScrollbarBarShowEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarShowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarHideEvtKey = new object();
+   /// <summary>Called when bar is hidden</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarHideEvt_delegate)) {
+               eventHandlers.AddHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (remove_cpp_event_handler(key, this.evt_BarHideEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarHideEvt.</summary>
+   public void On_BarHideEvt(Efl.Ui.ScrollbarBarHideEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args>)eventHandlers[BarHideEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarHideEvt_delegate;
+   private void on_BarHideEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarHideEvt_Args args = new Efl.Ui.ScrollbarBarHideEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarHideEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectedEvtKey = new object();
+   /// <summary>Called when selected</summary>
+   public event EventHandler SelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_SelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectedEvt.</summary>
+   public void On_SelectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectedEvt_delegate;
+   private void on_SelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnselectedEvtKey = new object();
+   /// <summary>Called when no longer selected</summary>
+   public event EventHandler UnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_UnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnselectedEvt.</summary>
+   public void On_UnselectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnselectedEvt_delegate;
+   private void on_UnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionPasteEvtKey = new object();
+   /// <summary>Called when selection is pasted</summary>
+   public event EventHandler SelectionPasteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionPasteEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (remove_cpp_event_handler(key, this.evt_SelectionPasteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionPasteEvt.</summary>
+   public void On_SelectionPasteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionPasteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionPasteEvt_delegate;
+   private void on_SelectionPasteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionPasteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCopyEvtKey = new object();
+   /// <summary>Called when selection is copied</summary>
+   public event EventHandler SelectionCopyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCopyEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCopyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCopyEvt.</summary>
+   public void On_SelectionCopyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCopyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCopyEvt_delegate;
+   private void on_SelectionCopyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCopyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCutEvtKey = new object();
+   /// <summary>Called when selection is cut</summary>
+   public event EventHandler SelectionCutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCutEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCutEvt.</summary>
+   public void On_SelectionCutEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCutEvt_delegate;
+   private void on_SelectionCutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionStartEvtKey = new object();
+   /// <summary>Called at selection start</summary>
+   public event EventHandler SelectionStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionStartEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (remove_cpp_event_handler(key, this.evt_SelectionStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionStartEvt.</summary>
+   public void On_SelectionStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionStartEvt_delegate;
+   private void on_SelectionStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Ui_Selectable_SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection is changed</summary>
+    event EventHandler Efl.Ui.Selectable.SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Ui_Selectable_SelectionChangedEvt.</summary>
+   public void On_Efl_Ui_Selectable_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Efl_Ui_Selectable_SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate;
+   private void on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Efl_Ui_Selectable_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionClearedEvtKey = new object();
+   /// <summary>Called when selection is cleared</summary>
+   public event EventHandler SelectionClearedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionClearedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionClearedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionClearedEvt.</summary>
+   public void On_SelectionClearedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionClearedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionClearedEvt_delegate;
+   private void on_SelectionClearedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionClearedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_LayoutUpdatedEvt_delegate = new Efl.EventCb(on_LayoutUpdatedEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_BarPressEvt_delegate = new Efl.EventCb(on_BarPressEvt_NativeCallback);
+      evt_BarUnpressEvt_delegate = new Efl.EventCb(on_BarUnpressEvt_NativeCallback);
+      evt_BarDragEvt_delegate = new Efl.EventCb(on_BarDragEvt_NativeCallback);
+      evt_BarSizeChangedEvt_delegate = new Efl.EventCb(on_BarSizeChangedEvt_NativeCallback);
+      evt_BarPosChangedEvt_delegate = new Efl.EventCb(on_BarPosChangedEvt_NativeCallback);
+      evt_BarShowEvt_delegate = new Efl.EventCb(on_BarShowEvt_NativeCallback);
+      evt_BarHideEvt_delegate = new Efl.EventCb(on_BarHideEvt_NativeCallback);
+      evt_SelectedEvt_delegate = new Efl.EventCb(on_SelectedEvt_NativeCallback);
+      evt_UnselectedEvt_delegate = new Efl.EventCb(on_UnselectedEvt_NativeCallback);
+      evt_SelectionPasteEvt_delegate = new Efl.EventCb(on_SelectionPasteEvt_NativeCallback);
+      evt_SelectionCopyEvt_delegate = new Efl.EventCb(on_SelectionCopyEvt_NativeCallback);
+      evt_SelectionCutEvt_delegate = new Efl.EventCb(on_SelectionCutEvt_NativeCallback);
+      evt_SelectionStartEvt_delegate = new Efl.EventCb(on_SelectionStartEvt_NativeCallback);
+      evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate = new Efl.EventCb(on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback);
+      evt_SelectionClearedEvt_delegate = new Efl.EventCb(on_SelectionClearedEvt_NativeCallback);
+   }
+   /// <summary>Property data of item size.</summary>
+   /// <returns>last selected item of grid.</returns>
+   virtual public Eina.Size2D GetItemSize() {
+       var _ret_var = Efl.Ui.GridNativeInherit.efl_ui_grid_item_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Property data of item size.</summary>
+   /// <param name="size">last selected item of grid.</param>
+   /// <returns></returns>
+   virtual public  void SetItemSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Ui.GridNativeInherit.efl_ui_grid_item_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Property data of last selected item.</summary>
+   /// <returns>last selected item of grid.</returns>
+   virtual public Efl.Ui.GridItem GetLastSelectedItem() {
+       var _ret_var = Efl.Ui.GridNativeInherit.efl_ui_grid_last_selected_item_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>scroll move the item to show in the viewport.</summary>
+   /// <param name="item">Target item.</param>
+   /// <param name="animation">Boolean value for animation of scroll move.</param>
+   /// <returns></returns>
+   virtual public  void ItemScroll( Efl.Ui.GridItem item,  bool animation) {
+                                           Efl.Ui.GridNativeInherit.efl_ui_grid_item_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>scroll move the item to show at the align position of the viewport.</summary>
+   /// <param name="item">Target item.</param>
+   /// <param name="align">align value in Viewport.</param>
+   /// <param name="animation">Boolean value for animation of scroll move.</param>
+   /// <returns></returns>
+   virtual public  void ItemScrollAlign( Efl.Ui.GridItem item,  double align,  bool animation) {
+                                                             Efl.Ui.GridNativeInherit.efl_ui_grid_item_scroll_align_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item,  align,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Get the selected items iterator. The iterator sequence will be decided by selection.</summary>
+   /// <returns>Iterator covered by selected items list. user have to free the iterator after used.</returns>
+   virtual public Eina.Iterator<Efl.Ui.GridItem> GetSelectedItems() {
+       var _ret_var = Efl.Ui.GridNativeInherit.efl_ui_grid_selected_items_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.GridItem>(_ret_var, true, false);
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Requests EFL to call the <see cref="Efl.PackLayout.UpdateLayout"/> method on this object.
+   /// This <see cref="Efl.PackLayout.UpdateLayout"/> may be called asynchronously.</summary>
+   /// <returns></returns>
+   virtual public  void LayoutRequest() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_request_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Implementation of this container&apos;s layout algorithm.
+   /// EFL will call this function whenever the contents of this container need to be re-layed out on the canvas.
+   /// 
+   /// This can be overriden to implement custom layout behaviours.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateLayout() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The mode type for children selection.</summary>
+   /// <returns>Type of selection of children</returns>
+   virtual public Efl.Ui.SelectMode GetSelectMode() {
+       var _ret_var = Efl.Ui.MultiSelectableNativeInherit.efl_ui_select_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The mode type for children selection.</summary>
+   /// <param name="mode">Type of selection of children</param>
+   /// <returns></returns>
+   virtual public  void SetSelectMode( Efl.Ui.SelectMode mode) {
+                         Efl.Ui.MultiSelectableNativeInherit.efl_ui_select_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content position</summary>
+   /// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+   virtual public Eina.Position2D GetContentPos() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The content position</summary>
+   /// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+   /// <returns></returns>
+   virtual public  void SetContentPos( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content size</summary>
+   /// <returns>The content size in pixels.</returns>
+   virtual public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The viewport geometry</summary>
+   /// <returns>It is absolute geometry.</returns>
+   virtual public Eina.Rect GetViewportGeometry() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void GetBounceEnabled( out bool horiz,  out bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void SetBounceEnabled( bool horiz,  bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollFreeze() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollFreeze( bool freeze) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollHold() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollHold( bool hold) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void GetLooping( out bool loop_h,  out bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void SetLooping( bool loop_h,  bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   virtual public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   virtual public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void GetGravity( out double x,  out double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void SetGravity( double x,  double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   virtual public  void SetMatchContent( bool w,  bool h) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_match_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <returns>The step size in pixels</returns>
+   virtual public Eina.Position2D GetStepSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <param name="step">The step size in pixels</param>
+   /// <returns></returns>
+   virtual public  void SetStepSize( Eina.Position2D step) {
+       var _in_step = Eina.Position2D_StructConversion.ToInternal(step);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+   /// <param name="rect">The position where to scroll. and The size user want to see</param>
+   /// <param name="animation">Whether to scroll with animation or not</param>
+   /// <returns></returns>
+   virtual public  void Scroll( Eina.Rect rect,  bool animation) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                    Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+   /// <param name="width">Value between 0.0 and 1.0</param>
+   /// <param name="height">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarSize( out double width,  out double height) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out width,  out height);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarPosition( out double posx,  out double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out posx,  out posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void SetBarPosition( double posx,  double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), posx,  posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Update bar visibility.
+   /// The object will call this function whenever the bar need to be shown or hidden.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateBarVisibility() {
+       Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Property data of item size.</summary>
+/// <value>last selected item of grid.</value>
+   public Eina.Size2D ItemSize {
+      get { return GetItemSize(); }
+      set { SetItemSize( value); }
+   }
+   /// <summary>Property data of last selected item.</summary>
+/// <value>last selected item of grid.</value>
+   public Efl.Ui.GridItem LastSelectedItem {
+      get { return GetLastSelectedItem(); }
+   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   /// <summary>The mode type for children selection.</summary>
+/// <value>Type of selection of children</value>
+   public Efl.Ui.SelectMode SelectMode {
+      get { return GetSelectMode(); }
+      set { SetSelectMode( value); }
+   }
+   /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   public Eina.Position2D ContentPos {
+      get { return GetContentPos(); }
+      set { SetContentPos( value); }
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   public Eina.Rect ViewportGeometry {
+      get { return GetViewportGeometry(); }
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool ScrollFreeze {
+      get { return GetScrollFreeze(); }
+      set { SetScrollFreeze( value); }
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool ScrollHold {
+      get { return GetScrollHold(); }
+      set { SetScrollHold( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   public Eina.Position2D StepSize {
+      get { return GetStepSize(); }
+      set { SetStepSize( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Grid.efl_ui_grid_class_get();
+   }
+}
+public class GridNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_grid_item_size_get_static_delegate == null)
+      efl_ui_grid_item_size_get_static_delegate = new efl_ui_grid_item_size_get_delegate(item_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_grid_item_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_grid_item_size_get_static_delegate)});
+      if (efl_ui_grid_item_size_set_static_delegate == null)
+      efl_ui_grid_item_size_set_static_delegate = new efl_ui_grid_item_size_set_delegate(item_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_grid_item_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_grid_item_size_set_static_delegate)});
+      if (efl_ui_grid_last_selected_item_get_static_delegate == null)
+      efl_ui_grid_last_selected_item_get_static_delegate = new efl_ui_grid_last_selected_item_get_delegate(last_selected_item_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_grid_last_selected_item_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_grid_last_selected_item_get_static_delegate)});
+      if (efl_ui_grid_item_scroll_static_delegate == null)
+      efl_ui_grid_item_scroll_static_delegate = new efl_ui_grid_item_scroll_delegate(item_scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_grid_item_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_grid_item_scroll_static_delegate)});
+      if (efl_ui_grid_item_scroll_align_static_delegate == null)
+      efl_ui_grid_item_scroll_align_static_delegate = new efl_ui_grid_item_scroll_align_delegate(item_scroll_align);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_grid_item_scroll_align"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_grid_item_scroll_align_static_delegate)});
+      if (efl_ui_grid_selected_items_get_static_delegate == null)
+      efl_ui_grid_selected_items_get_static_delegate = new efl_ui_grid_selected_items_get_delegate(selected_items_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_grid_selected_items_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_grid_selected_items_get_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_layout_request_static_delegate == null)
+      efl_pack_layout_request_static_delegate = new efl_pack_layout_request_delegate(layout_request);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_request"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_request_static_delegate)});
+      if (efl_pack_layout_update_static_delegate == null)
+      efl_pack_layout_update_static_delegate = new efl_pack_layout_update_delegate(layout_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_update"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_update_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      if (efl_ui_select_mode_get_static_delegate == null)
+      efl_ui_select_mode_get_static_delegate = new efl_ui_select_mode_get_delegate(select_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_select_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_select_mode_get_static_delegate)});
+      if (efl_ui_select_mode_set_static_delegate == null)
+      efl_ui_select_mode_set_static_delegate = new efl_ui_select_mode_set_delegate(select_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_select_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_select_mode_set_static_delegate)});
+      if (efl_ui_scrollable_content_pos_get_static_delegate == null)
+      efl_ui_scrollable_content_pos_get_static_delegate = new efl_ui_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_get_static_delegate)});
+      if (efl_ui_scrollable_content_pos_set_static_delegate == null)
+      efl_ui_scrollable_content_pos_set_static_delegate = new efl_ui_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_set_static_delegate)});
+      if (efl_ui_scrollable_content_size_get_static_delegate == null)
+      efl_ui_scrollable_content_size_get_static_delegate = new efl_ui_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_scrollable_viewport_geometry_get_static_delegate == null)
+      efl_ui_scrollable_viewport_geometry_get_static_delegate = new efl_ui_scrollable_viewport_geometry_get_delegate(viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_viewport_geometry_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_get_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_get_static_delegate = new efl_ui_scrollable_bounce_enabled_get_delegate(bounce_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_set_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_set_static_delegate = new efl_ui_scrollable_bounce_enabled_set_delegate(bounce_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_get_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_get_static_delegate = new efl_ui_scrollable_scroll_freeze_get_delegate(scroll_freeze_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_set_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_set_static_delegate = new efl_ui_scrollable_scroll_freeze_set_delegate(scroll_freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_get_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_get_static_delegate = new efl_ui_scrollable_scroll_hold_get_delegate(scroll_hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_set_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_set_static_delegate = new efl_ui_scrollable_scroll_hold_set_delegate(scroll_hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_set_static_delegate)});
+      if (efl_ui_scrollable_looping_get_static_delegate == null)
+      efl_ui_scrollable_looping_get_static_delegate = new efl_ui_scrollable_looping_get_delegate(looping_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_get_static_delegate)});
+      if (efl_ui_scrollable_looping_set_static_delegate == null)
+      efl_ui_scrollable_looping_set_static_delegate = new efl_ui_scrollable_looping_set_delegate(looping_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_set_static_delegate)});
+      if (efl_ui_scrollable_movement_block_get_static_delegate == null)
+      efl_ui_scrollable_movement_block_get_static_delegate = new efl_ui_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_get_static_delegate)});
+      if (efl_ui_scrollable_movement_block_set_static_delegate == null)
+      efl_ui_scrollable_movement_block_set_static_delegate = new efl_ui_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_set_static_delegate)});
+      if (efl_ui_scrollable_gravity_get_static_delegate == null)
+      efl_ui_scrollable_gravity_get_static_delegate = new efl_ui_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_get_static_delegate)});
+      if (efl_ui_scrollable_gravity_set_static_delegate == null)
+      efl_ui_scrollable_gravity_set_static_delegate = new efl_ui_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_set_static_delegate)});
+      if (efl_ui_scrollable_match_content_set_static_delegate == null)
+      efl_ui_scrollable_match_content_set_static_delegate = new efl_ui_scrollable_match_content_set_delegate(match_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_match_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_match_content_set_static_delegate)});
+      if (efl_ui_scrollable_step_size_get_static_delegate == null)
+      efl_ui_scrollable_step_size_get_static_delegate = new efl_ui_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_get_static_delegate)});
+      if (efl_ui_scrollable_step_size_set_static_delegate == null)
+      efl_ui_scrollable_step_size_set_static_delegate = new efl_ui_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_static_delegate == null)
+      efl_ui_scrollable_scroll_static_delegate = new efl_ui_scrollable_scroll_delegate(scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_get_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_get_static_delegate = new efl_ui_scrollbar_bar_mode_get_delegate(bar_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_set_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_set_static_delegate = new efl_ui_scrollbar_bar_mode_set_delegate(bar_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_size_get_static_delegate == null)
+      efl_ui_scrollbar_bar_size_get_static_delegate = new efl_ui_scrollbar_bar_size_get_delegate(bar_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_size_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_get_static_delegate == null)
+      efl_ui_scrollbar_bar_position_get_static_delegate = new efl_ui_scrollbar_bar_position_get_delegate(bar_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_set_static_delegate == null)
+      efl_ui_scrollbar_bar_position_set_static_delegate = new efl_ui_scrollbar_bar_position_set_delegate(bar_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_visibility_update_static_delegate == null)
+      efl_ui_scrollbar_bar_visibility_update_static_delegate = new efl_ui_scrollbar_bar_visibility_update_delegate(bar_visibility_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_visibility_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_visibility_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Grid.efl_ui_grid_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Grid.efl_ui_grid_class_get();
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_grid_item_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_grid_item_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_grid_item_size_get_api_delegate> efl_ui_grid_item_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_grid_item_size_get_api_delegate>(_Module, "efl_ui_grid_item_size_get");
+    private static Eina.Size2D_StructInternal item_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_grid_item_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Grid)wrapper).GetItemSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_grid_item_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_grid_item_size_get_delegate efl_ui_grid_item_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_grid_item_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_ui_grid_item_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_ui_grid_item_size_set_api_delegate> efl_ui_grid_item_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_grid_item_size_set_api_delegate>(_Module, "efl_ui_grid_item_size_set");
+    private static  void item_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_ui_grid_item_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Grid)wrapper).SetItemSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_grid_item_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_ui_grid_item_size_set_delegate efl_ui_grid_item_size_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.GridItem, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.GridItem efl_ui_grid_last_selected_item_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.GridItem, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.GridItem efl_ui_grid_last_selected_item_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_grid_last_selected_item_get_api_delegate> efl_ui_grid_last_selected_item_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_grid_last_selected_item_get_api_delegate>(_Module, "efl_ui_grid_last_selected_item_get");
+    private static Efl.Ui.GridItem last_selected_item_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_grid_last_selected_item_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.GridItem _ret_var = default(Efl.Ui.GridItem);
+         try {
+            _ret_var = ((Grid)wrapper).GetLastSelectedItem();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_grid_last_selected_item_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_grid_last_selected_item_get_delegate efl_ui_grid_last_selected_item_get_static_delegate;
+
+
+    private delegate  void efl_ui_grid_item_scroll_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.GridItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.GridItem item,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_grid_item_scroll_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.GridItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.GridItem item,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_grid_item_scroll_api_delegate> efl_ui_grid_item_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_grid_item_scroll_api_delegate>(_Module, "efl_ui_grid_item_scroll");
+    private static  void item_scroll(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.GridItem item,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_grid_item_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).ItemScroll( item,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_grid_item_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item,  animation);
+      }
+   }
+   private static efl_ui_grid_item_scroll_delegate efl_ui_grid_item_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_grid_item_scroll_align_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.GridItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.GridItem item,   double align,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_grid_item_scroll_align_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.GridItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.GridItem item,   double align,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_grid_item_scroll_align_api_delegate> efl_ui_grid_item_scroll_align_ptr = new Efl.Eo.FunctionWrapper<efl_ui_grid_item_scroll_align_api_delegate>(_Module, "efl_ui_grid_item_scroll_align");
+    private static  void item_scroll_align(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.GridItem item,  double align,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_grid_item_scroll_align was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Grid)wrapper).ItemScrollAlign( item,  align,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_grid_item_scroll_align_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item,  align,  animation);
+      }
+   }
+   private static efl_ui_grid_item_scroll_align_delegate efl_ui_grid_item_scroll_align_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_grid_selected_items_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_grid_selected_items_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_grid_selected_items_get_api_delegate> efl_ui_grid_selected_items_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_grid_selected_items_get_api_delegate>(_Module, "efl_ui_grid_selected_items_get");
+    private static  System.IntPtr selected_items_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_grid_selected_items_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.GridItem> _ret_var = default(Eina.Iterator<Efl.Ui.GridItem>);
+         try {
+            _ret_var = ((Grid)wrapper).GetSelectedItems();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_ui_grid_selected_items_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_grid_selected_items_get_delegate efl_ui_grid_selected_items_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((Grid)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((Grid)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Grid)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    private delegate  void efl_pack_layout_request_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_request_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate> efl_pack_layout_request_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate>(_Module, "efl_pack_layout_request");
+    private static  void layout_request(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_request was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Grid)wrapper).LayoutRequest();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_request_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_request_delegate efl_pack_layout_request_static_delegate;
+
+
+    private delegate  void efl_pack_layout_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate> efl_pack_layout_update_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate>(_Module, "efl_pack_layout_update");
+    private static  void layout_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Grid)wrapper).UpdateLayout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_update_delegate efl_pack_layout_update_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Grid)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((Grid)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Grid)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((Grid)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Grid)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+
+
+    private delegate Efl.Ui.SelectMode efl_ui_select_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.SelectMode efl_ui_select_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_select_mode_get_api_delegate> efl_ui_select_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_select_mode_get_api_delegate>(_Module, "efl_ui_select_mode_get");
+    private static Efl.Ui.SelectMode select_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_select_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.SelectMode _ret_var = default(Efl.Ui.SelectMode);
+         try {
+            _ret_var = ((Grid)wrapper).GetSelectMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_select_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_select_mode_get_delegate efl_ui_select_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_select_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectMode mode);
+
+
+    public delegate  void efl_ui_select_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_select_mode_set_api_delegate> efl_ui_select_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_select_mode_set_api_delegate>(_Module, "efl_ui_select_mode_set");
+    private static  void select_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_select_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Grid)wrapper).SetSelectMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_select_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_select_mode_set_delegate efl_ui_select_mode_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate> efl_ui_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate>(_Module, "efl_ui_scrollable_content_pos_get");
+    private static Eina.Position2D_StructInternal content_pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Grid)wrapper).GetContentPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_pos_get_delegate efl_ui_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_ui_scrollable_content_pos_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate> efl_ui_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate>(_Module, "efl_ui_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Grid)wrapper).SetContentPos( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_ui_scrollable_content_pos_set_delegate efl_ui_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate> efl_ui_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_scrollable_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Grid)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_size_get_delegate efl_ui_scrollable_content_size_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate> efl_ui_scrollable_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate>(_Module, "efl_ui_scrollable_viewport_geometry_get");
+    private static Eina.Rect_StructInternal viewport_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Grid)wrapper).GetViewportGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_viewport_geometry_get_delegate efl_ui_scrollable_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate> efl_ui_scrollable_bounce_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_get");
+    private static  void bounce_enabled_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((Grid)wrapper).GetBounceEnabled( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_get_delegate efl_ui_scrollable_bounce_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate> efl_ui_scrollable_bounce_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_set");
+    private static  void bounce_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).SetBounceEnabled( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_set_delegate efl_ui_scrollable_bounce_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_freeze_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_freeze_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate> efl_ui_scrollable_scroll_freeze_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_get");
+    private static bool scroll_freeze_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).GetScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_get_delegate efl_ui_scrollable_scroll_freeze_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void efl_ui_scrollable_scroll_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate> efl_ui_scrollable_scroll_freeze_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_set");
+    private static  void scroll_freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Grid)wrapper).SetScrollFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_set_delegate efl_ui_scrollable_scroll_freeze_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate> efl_ui_scrollable_scroll_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_get");
+    private static bool scroll_hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Grid)wrapper).GetScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_get_delegate efl_ui_scrollable_scroll_hold_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void efl_ui_scrollable_scroll_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate> efl_ui_scrollable_scroll_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_set");
+    private static  void scroll_hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Grid)wrapper).SetScrollHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_set_delegate efl_ui_scrollable_scroll_hold_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate> efl_ui_scrollable_looping_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate>(_Module, "efl_ui_scrollable_looping_get");
+    private static  void looping_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((Grid)wrapper).GetLooping( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_get_delegate efl_ui_scrollable_looping_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate> efl_ui_scrollable_looping_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate>(_Module, "efl_ui_scrollable_looping_set");
+    private static  void looping_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).SetLooping( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_set_delegate efl_ui_scrollable_looping_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate> efl_ui_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate>(_Module, "efl_ui_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((Grid)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_movement_block_get_delegate efl_ui_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void efl_ui_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate> efl_ui_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate>(_Module, "efl_ui_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Grid)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static efl_ui_scrollable_movement_block_set_delegate efl_ui_scrollable_movement_block_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate> efl_ui_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate>(_Module, "efl_ui_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Grid)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_get_delegate efl_ui_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate> efl_ui_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate>(_Module, "efl_ui_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_set_delegate efl_ui_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_match_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void efl_ui_scrollable_match_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate> efl_ui_scrollable_match_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate>(_Module, "efl_ui_scrollable_match_content_set");
+    private static  void match_content_set(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_match_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).SetMatchContent( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_match_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static efl_ui_scrollable_match_content_set_delegate efl_ui_scrollable_match_content_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate> efl_ui_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate>(_Module, "efl_ui_scrollable_step_size_get");
+    private static Eina.Position2D_StructInternal step_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Grid)wrapper).GetStepSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_step_size_get_delegate efl_ui_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal step);
+
+
+    public delegate  void efl_ui_scrollable_step_size_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate> efl_ui_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate>(_Module, "efl_ui_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal step)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_step = Eina.Position2D_StructConversion.ToManaged(step);
+                     
+         try {
+            ((Grid)wrapper).SetStepSize( _in_step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_scrollable_step_size_set_delegate efl_ui_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_scrollable_scroll_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate> efl_ui_scrollable_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate>(_Module, "efl_ui_scrollable_scroll");
+    private static  void scroll(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                       
+         try {
+            ((Grid)wrapper).Scroll( _in_rect,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  animation);
+      }
+   }
+   private static efl_ui_scrollable_scroll_delegate efl_ui_scrollable_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_get_api_delegate(System.IntPtr obj,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate> efl_ui_scrollbar_bar_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_get");
+    private static  void bar_mode_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Efl.Ui.ScrollbarMode);      vbar = default(Efl.Ui.ScrollbarMode);                     
+         try {
+            ((Grid)wrapper).GetBarMode( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_get_delegate efl_ui_scrollbar_bar_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate> efl_ui_scrollbar_bar_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_set");
+    private static  void bar_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).SetBarMode( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_set_delegate efl_ui_scrollbar_bar_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double width,   out double height);
+
+
+    public delegate  void efl_ui_scrollbar_bar_size_get_api_delegate(System.IntPtr obj,   out double width,   out double height);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate> efl_ui_scrollbar_bar_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_size_get");
+    private static  void bar_size_get(System.IntPtr obj, System.IntPtr pd,  out double width,  out double height)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           width = default(double);      height = default(double);                     
+         try {
+            ((Grid)wrapper).GetBarSize( out width,  out height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out width,  out height);
+      }
+   }
+   private static efl_ui_scrollbar_bar_size_get_delegate efl_ui_scrollbar_bar_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double posx,   out double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_get_api_delegate(System.IntPtr obj,   out double posx,   out double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate> efl_ui_scrollbar_bar_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_get");
+    private static  void bar_position_get(System.IntPtr obj, System.IntPtr pd,  out double posx,  out double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           posx = default(double);      posy = default(double);                     
+         try {
+            ((Grid)wrapper).GetBarPosition( out posx,  out posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out posx,  out posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_get_delegate efl_ui_scrollbar_bar_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   double posx,   double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_set_api_delegate(System.IntPtr obj,   double posx,   double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate> efl_ui_scrollbar_bar_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_set");
+    private static  void bar_position_set(System.IntPtr obj, System.IntPtr pd,  double posx,  double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Grid)wrapper).SetBarPosition( posx,  posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  posx,  posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_set_delegate efl_ui_scrollbar_bar_position_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_visibility_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_scrollbar_bar_visibility_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate> efl_ui_scrollbar_bar_visibility_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate>(_Module, "efl_ui_scrollbar_bar_visibility_update");
+    private static  void bar_visibility_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_visibility_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Grid)wrapper).UpdateBarVisibility();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollbar_bar_visibility_update_delegate efl_ui_scrollbar_bar_visibility_update_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_grid_default_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_grid_default_item.eo.cs
new file mode 100755 (executable)
index 0000000..f089e8b
--- /dev/null
@@ -0,0 +1,424 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Grid Default Item class. This class need to be sub object of list widget. Text and contents can be set using <see cref="Efl.Text"/>, <see cref="Efl.Content"/> or <see cref="Efl.Part"/>.</summary>
+[GridDefaultItemNativeInherit]
+public class GridDefaultItem : Efl.Ui.GridItem, Efl.Eo.IWrapper,Efl.Content,Efl.Text,Efl.TextMarkup
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.GridDefaultItemNativeInherit nativeInherit = new Efl.Ui.GridDefaultItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GridDefaultItem))
+            return Efl.Ui.GridDefaultItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_grid_default_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public GridDefaultItem(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_grid_default_item_class_get(), typeof(GridDefaultItem), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GridDefaultItem(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected GridDefaultItem(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static GridDefaultItem static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GridDefaultItem(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>No description supplied.</summary>
+   public Efl.Ui.GridDefaultItemPartEnd End
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "end");
+         return Efl.Ui.GridDefaultItemPartEnd.static_cast(obj);
+      }
+   }
+   /// <summary>No description supplied.</summary>
+   public Efl.Ui.GridDefaultItemPartIcon Icon
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "icon");
+         return Efl.Ui.GridDefaultItemPartIcon.static_cast(obj);
+      }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   virtual public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridDefaultItem.efl_ui_grid_default_item_class_get();
+   }
+}
+public class GridDefaultItemNativeInherit : Efl.Ui.GridItemNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.GridDefaultItem.efl_ui_grid_default_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridDefaultItem.efl_ui_grid_default_item_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((GridDefaultItem)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((GridDefaultItem)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((GridDefaultItem)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((GridDefaultItem)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((GridDefaultItem)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((GridDefaultItem)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((GridDefaultItem)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_grid_default_item_part_end.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_grid_default_item_part_end.eo.cs
new file mode 100755 (executable)
index 0000000..36089c6
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Grid Default Item internal content of end part class</summary>
+[GridDefaultItemPartEndNativeInherit]
+public class GridDefaultItemPartEnd : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.GridDefaultItemPartEndNativeInherit nativeInherit = new Efl.Ui.GridDefaultItemPartEndNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GridDefaultItemPartEnd))
+            return Efl.Ui.GridDefaultItemPartEndNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_grid_default_item_part_end_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public GridDefaultItemPartEnd(Efl.Object parent= null
+         ) :
+      base(efl_ui_grid_default_item_part_end_class_get(), typeof(GridDefaultItemPartEnd), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GridDefaultItemPartEnd(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected GridDefaultItemPartEnd(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static GridDefaultItemPartEnd static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GridDefaultItemPartEnd(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridDefaultItemPartEnd.efl_ui_grid_default_item_part_end_class_get();
+   }
+}
+public class GridDefaultItemPartEndNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.GridDefaultItemPartEnd.efl_ui_grid_default_item_part_end_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridDefaultItemPartEnd.efl_ui_grid_default_item_part_end_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((GridDefaultItemPartEnd)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((GridDefaultItemPartEnd)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((GridDefaultItemPartEnd)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_grid_default_item_part_icon.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_grid_default_item_part_icon.eo.cs
new file mode 100755 (executable)
index 0000000..ac87b72
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Grid Default Item internal content of icon part class</summary>
+[GridDefaultItemPartIconNativeInherit]
+public class GridDefaultItemPartIcon : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.GridDefaultItemPartIconNativeInherit nativeInherit = new Efl.Ui.GridDefaultItemPartIconNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GridDefaultItemPartIcon))
+            return Efl.Ui.GridDefaultItemPartIconNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_grid_default_item_part_icon_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public GridDefaultItemPartIcon(Efl.Object parent= null
+         ) :
+      base(efl_ui_grid_default_item_part_icon_class_get(), typeof(GridDefaultItemPartIcon), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GridDefaultItemPartIcon(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected GridDefaultItemPartIcon(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static GridDefaultItemPartIcon static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GridDefaultItemPartIcon(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridDefaultItemPartIcon.efl_ui_grid_default_item_part_icon_class_get();
+   }
+}
+public class GridDefaultItemPartIconNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.GridDefaultItemPartIcon.efl_ui_grid_default_item_part_icon_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridDefaultItemPartIcon.efl_ui_grid_default_item_part_icon_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((GridDefaultItemPartIcon)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((GridDefaultItemPartIcon)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((GridDefaultItemPartIcon)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_grid_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_grid_item.eo.cs
new file mode 100755 (executable)
index 0000000..30ce67b
--- /dev/null
@@ -0,0 +1,94 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[GridItemNativeInherit]
+public class GridItem : Efl.Ui.Item, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.GridItemNativeInherit nativeInherit = new Efl.Ui.GridItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (GridItem))
+            return Efl.Ui.GridItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_grid_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public GridItem(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_grid_item_class_get(), typeof(GridItem), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public GridItem(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected GridItem(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static GridItem static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new GridItem(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridItem.efl_ui_grid_item_class_get();
+   }
+}
+public class GridItemNativeInherit : Efl.Ui.ItemNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.GridItem.efl_ui_grid_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.GridItem.efl_ui_grid_item_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_i18n.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_i18n.eo.cs
new file mode 100755 (executable)
index 0000000..23e0ee0
--- /dev/null
@@ -0,0 +1,394 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>A common Internationalization interface for UI objects.</summary>
+[I18nNativeInherit]
+public interface I18n : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Whether this object should be mirrored.
+/// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+/// <returns><c>true</c> for RTL, <c>false</c> for LTR (default).</returns>
+bool GetMirrored();
+   /// <summary>Whether this object should be mirrored.
+/// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+/// <param name="rtl"><c>true</c> for RTL, <c>false</c> for LTR (default).</param>
+/// <returns></returns>
+ void SetMirrored( bool rtl);
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+/// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+/// 
+/// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+/// <returns>Whether the widget uses automatic mirroring</returns>
+bool GetMirroredAutomatic();
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+/// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+/// 
+/// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+/// <param name="automatic">Whether the widget uses automatic mirroring</param>
+/// <returns></returns>
+ void SetMirroredAutomatic( bool automatic);
+   /// <summary>Gets the language for this object.</summary>
+/// <returns>The current language.</returns>
+ System.String GetLanguage();
+   /// <summary>Sets the language for this object.</summary>
+/// <param name="language">The current language.</param>
+/// <returns></returns>
+ void SetLanguage(  System.String language);
+                     /// <summary>Whether this object should be mirrored.
+/// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+/// <value><c>true</c> for RTL, <c>false</c> for LTR (default).</value>
+   bool Mirrored {
+      get ;
+      set ;
+   }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+/// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+/// 
+/// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+/// <value>Whether the widget uses automatic mirroring</value>
+   bool MirroredAutomatic {
+      get ;
+      set ;
+   }
+   /// <summary>The (human) language for this object.</summary>
+/// <value>The current language.</value>
+    System.String Language {
+      get ;
+      set ;
+   }
+}
+/// <summary>A common Internationalization interface for UI objects.</summary>
+sealed public class I18nConcrete : 
+
+I18n
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (I18nConcrete))
+            return Efl.Ui.I18nNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_i18n_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public I18nConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~I18nConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static I18nConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new I18nConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Whether this object should be mirrored.
+   /// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+   /// <returns><c>true</c> for RTL, <c>false</c> for LTR (default).</returns>
+   public bool GetMirrored() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_mirrored_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether this object should be mirrored.
+   /// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+   /// <param name="rtl"><c>true</c> for RTL, <c>false</c> for LTR (default).</param>
+   /// <returns></returns>
+   public  void SetMirrored( bool rtl) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_mirrored_set_ptr.Value.Delegate(this.NativeHandle, rtl);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+   /// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+   /// 
+   /// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+   /// <returns>Whether the widget uses automatic mirroring</returns>
+   public bool GetMirroredAutomatic() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_mirrored_automatic_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+   /// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+   /// 
+   /// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+   /// <param name="automatic">Whether the widget uses automatic mirroring</param>
+   /// <returns></returns>
+   public  void SetMirroredAutomatic( bool automatic) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_mirrored_automatic_set_ptr.Value.Delegate(this.NativeHandle, automatic);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the language for this object.</summary>
+   /// <returns>The current language.</returns>
+   public  System.String GetLanguage() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_language_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the language for this object.</summary>
+   /// <param name="language">The current language.</param>
+   /// <returns></returns>
+   public  void SetLanguage(  System.String language) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_language_set_ptr.Value.Delegate(this.NativeHandle, language);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether this object should be mirrored.
+/// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+/// <value><c>true</c> for RTL, <c>false</c> for LTR (default).</value>
+   public bool Mirrored {
+      get { return GetMirrored(); }
+      set { SetMirrored( value); }
+   }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+/// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+/// 
+/// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+/// <value>Whether the widget uses automatic mirroring</value>
+   public bool MirroredAutomatic {
+      get { return GetMirroredAutomatic(); }
+      set { SetMirroredAutomatic( value); }
+   }
+   /// <summary>The (human) language for this object.</summary>
+/// <value>The current language.</value>
+   public  System.String Language {
+      get { return GetLanguage(); }
+      set { SetLanguage( value); }
+   }
+}
+public class I18nNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_mirrored_get_static_delegate == null)
+      efl_ui_mirrored_get_static_delegate = new efl_ui_mirrored_get_delegate(mirrored_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_get_static_delegate)});
+      if (efl_ui_mirrored_set_static_delegate == null)
+      efl_ui_mirrored_set_static_delegate = new efl_ui_mirrored_set_delegate(mirrored_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_set_static_delegate)});
+      if (efl_ui_mirrored_automatic_get_static_delegate == null)
+      efl_ui_mirrored_automatic_get_static_delegate = new efl_ui_mirrored_automatic_get_delegate(mirrored_automatic_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_automatic_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_automatic_get_static_delegate)});
+      if (efl_ui_mirrored_automatic_set_static_delegate == null)
+      efl_ui_mirrored_automatic_set_static_delegate = new efl_ui_mirrored_automatic_set_delegate(mirrored_automatic_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_automatic_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_automatic_set_static_delegate)});
+      if (efl_ui_language_get_static_delegate == null)
+      efl_ui_language_get_static_delegate = new efl_ui_language_get_delegate(language_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_language_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_language_get_static_delegate)});
+      if (efl_ui_language_set_static_delegate == null)
+      efl_ui_language_set_static_delegate = new efl_ui_language_set_delegate(language_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_language_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_language_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.I18nConcrete.efl_ui_i18n_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.I18nConcrete.efl_ui_i18n_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_mirrored_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_mirrored_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_get_api_delegate> efl_ui_mirrored_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_get_api_delegate>(_Module, "efl_ui_mirrored_get");
+    private static bool mirrored_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((I18n)wrapper).GetMirrored();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_mirrored_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_mirrored_get_delegate efl_ui_mirrored_get_static_delegate;
+
+
+    private delegate  void efl_ui_mirrored_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool rtl);
+
+
+    public delegate  void efl_ui_mirrored_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool rtl);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_set_api_delegate> efl_ui_mirrored_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_set_api_delegate>(_Module, "efl_ui_mirrored_set");
+    private static  void mirrored_set(System.IntPtr obj, System.IntPtr pd,  bool rtl)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((I18n)wrapper).SetMirrored( rtl);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_mirrored_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rtl);
+      }
+   }
+   private static efl_ui_mirrored_set_delegate efl_ui_mirrored_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_mirrored_automatic_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_mirrored_automatic_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_get_api_delegate> efl_ui_mirrored_automatic_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_get_api_delegate>(_Module, "efl_ui_mirrored_automatic_get");
+    private static bool mirrored_automatic_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_automatic_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((I18n)wrapper).GetMirroredAutomatic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_mirrored_automatic_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_mirrored_automatic_get_delegate efl_ui_mirrored_automatic_get_static_delegate;
+
+
+    private delegate  void efl_ui_mirrored_automatic_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+
+
+    public delegate  void efl_ui_mirrored_automatic_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_set_api_delegate> efl_ui_mirrored_automatic_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_set_api_delegate>(_Module, "efl_ui_mirrored_automatic_set");
+    private static  void mirrored_automatic_set(System.IntPtr obj, System.IntPtr pd,  bool automatic)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_automatic_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((I18n)wrapper).SetMirroredAutomatic( automatic);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_mirrored_automatic_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  automatic);
+      }
+   }
+   private static efl_ui_mirrored_automatic_set_delegate efl_ui_mirrored_automatic_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_language_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_language_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_language_get_api_delegate> efl_ui_language_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_language_get_api_delegate>(_Module, "efl_ui_language_get");
+    private static  System.String language_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_language_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((I18n)wrapper).GetLanguage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_language_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_language_get_delegate efl_ui_language_get_static_delegate;
+
+
+    private delegate  void efl_ui_language_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String language);
+
+
+    public delegate  void efl_ui_language_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String language);
+    public static Efl.Eo.FunctionWrapper<efl_ui_language_set_api_delegate> efl_ui_language_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_language_set_api_delegate>(_Module, "efl_ui_language_set");
+    private static  void language_set(System.IntPtr obj, System.IntPtr pd,   System.String language)
+   {
+      Eina.Log.Debug("function efl_ui_language_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((I18n)wrapper).SetLanguage( language);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_language_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  language);
+      }
+   }
+   private static efl_ui_language_set_delegate efl_ui_language_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_image.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_image.eo.cs
new file mode 100755 (executable)
index 0000000..bf8f10e
--- /dev/null
@@ -0,0 +1,4994 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Image.DropEvt"/>.</summary>
+public class ImageDropEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+/// <summary>Efl UI image class</summary>
+[ImageNativeInherit]
+public class Image : Efl.Ui.Widget, Efl.Eo.IWrapper,Efl.File,Efl.Orientation,Efl.Player,Efl.Gfx.Image,Efl.Gfx.ImageLoadController,Efl.Gfx.View,Efl.Layout.Calc,Efl.Layout.Group,Efl.Layout.Signal,Efl.Ui.Clickable,Efl.Ui.Draggable,Efl.Ui.PropertyBind,Efl.Ui.View
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ImageNativeInherit nativeInherit = new Efl.Ui.ImageNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Image))
+            return Efl.Ui.ImageNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_image_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Image(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_image_class_get(), typeof(Image), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Image(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Image(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Image static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Image(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object DropEvtKey = new object();
+   /// <summary>Called when drop from drag and drop happened</summary>
+   public event EventHandler<Efl.Ui.ImageDropEvt_Args> DropEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_EVENT_DROP";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DropEvt_delegate)) {
+               eventHandlers.AddHandler(DropEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_EVENT_DROP";
+            if (remove_cpp_event_handler(key, this.evt_DropEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DropEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DropEvt.</summary>
+   public void On_DropEvt(Efl.Ui.ImageDropEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ImageDropEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ImageDropEvt_Args>)eventHandlers[DropEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DropEvt_delegate;
+   private void on_DropEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ImageDropEvt_Args args = new Efl.Ui.ImageDropEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_DropEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PreloadEvtKey = new object();
+   /// <summary>Image data has been preloaded.</summary>
+   public event EventHandler PreloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PreloadEvt_delegate)) {
+               eventHandlers.AddHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (remove_cpp_event_handler(key, this.evt_PreloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PreloadEvt.</summary>
+   public void On_PreloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PreloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PreloadEvt_delegate;
+   private void on_PreloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PreloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ResizeEvtKey = new object();
+   /// <summary>Image was resized (its pixel data).</summary>
+   public event EventHandler ResizeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ResizeEvt_delegate)) {
+               eventHandlers.AddHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (remove_cpp_event_handler(key, this.evt_ResizeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ResizeEvt.</summary>
+   public void On_ResizeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ResizeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ResizeEvt_delegate;
+   private void on_ResizeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ResizeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnloadEvtKey = new object();
+   /// <summary>Image data has been unloaded (by some mechanism in EFL that threw out the original image data).</summary>
+   public event EventHandler UnloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnloadEvt_delegate)) {
+               eventHandlers.AddHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (remove_cpp_event_handler(key, this.evt_UnloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnloadEvt.</summary>
+   public void On_UnloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnloadEvt_delegate;
+   private void on_UnloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadDoneEvtKey = new object();
+   /// <summary>Called when he image was loaded</summary>
+   public event EventHandler LoadDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadDoneEvt_delegate)) {
+               eventHandlers.AddHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_DONE";
+            if (remove_cpp_event_handler(key, this.evt_LoadDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadDoneEvt.</summary>
+   public void On_LoadDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadDoneEvt_delegate;
+   private void on_LoadDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadErrorEvtKey = new object();
+   /// <summary>Called when an error happened during image loading</summary>
+   public event EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> LoadErrorEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LoadErrorEvt_delegate)) {
+               eventHandlers.AddHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_LOAD_CONTROLLER_EVENT_LOAD_ERROR";
+            if (remove_cpp_event_handler(key, this.evt_LoadErrorEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadErrorEvt.</summary>
+   public void On_LoadErrorEvt(Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args>)eventHandlers[LoadErrorEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadErrorEvt_delegate;
+   private void on_LoadErrorEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args args = new Efl.Gfx.ImageLoadControllerLoadErrorEvt_Args();
+      args.arg = default(Efl.Gfx.ImageLoadError);
+      try {
+         On_LoadErrorEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RecalcEvtKey = new object();
+   /// <summary>The layout was recalculated.
+   /// 1.21</summary>
+   public event EventHandler RecalcEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_RecalcEvt_delegate)) {
+               eventHandlers.AddHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (remove_cpp_event_handler(key, this.evt_RecalcEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RecalcEvt.</summary>
+   public void On_RecalcEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RecalcEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RecalcEvt_delegate;
+   private void on_RecalcEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RecalcEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CircularDependencyEvtKey = new object();
+   /// <summary>A circular dependency between parts of the object was found.
+   /// 1.21</summary>
+   public event EventHandler CircularDependencyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_CircularDependencyEvt_delegate)) {
+               eventHandlers.AddHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (remove_cpp_event_handler(key, this.evt_CircularDependencyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CircularDependencyEvt.</summary>
+   public void On_CircularDependencyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CircularDependencyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CircularDependencyEvt_delegate;
+   private void on_CircularDependencyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CircularDependencyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragEvtKey = new object();
+   /// <summary>Called when drag operation starts</summary>
+   public event EventHandler<Efl.Ui.DraggableDragEvt_Args> DragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragEvt_delegate)) {
+               eventHandlers.AddHandler(DragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_DragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragEvt.</summary>
+   public void On_DragEvt(Efl.Ui.DraggableDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragEvt_Args>)eventHandlers[DragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragEvt_delegate;
+   private void on_DragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragEvt_Args args = new Efl.Ui.DraggableDragEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartEvtKey = new object();
+   /// <summary>Called when drag started</summary>
+   public event EventHandler DragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_DragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartEvt.</summary>
+   public void On_DragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartEvt_delegate;
+   private void on_DragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStopEvtKey = new object();
+   /// <summary>Called when drag stopped</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStopEvt_Args> DragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStopEvt_delegate)) {
+               eventHandlers.AddHandler(DragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_DragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStopEvt.</summary>
+   public void On_DragStopEvt(Efl.Ui.DraggableDragStopEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStopEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStopEvt_Args>)eventHandlers[DragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStopEvt_delegate;
+   private void on_DragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStopEvt_Args args = new Efl.Ui.DraggableDragStopEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragEndEvtKey = new object();
+   /// <summary>Called when drag operation ends</summary>
+   public event EventHandler DragEndEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_END";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragEndEvt_delegate)) {
+               eventHandlers.AddHandler(DragEndEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_END";
+            if (remove_cpp_event_handler(key, this.evt_DragEndEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragEndEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragEndEvt.</summary>
+   public void On_DragEndEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragEndEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragEndEvt_delegate;
+   private void on_DragEndEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragEndEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartUpEvtKey = new object();
+   /// <summary>Called when drag starts into up direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartUpEvt_Args> DragStartUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartUpEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_UP";
+            if (remove_cpp_event_handler(key, this.evt_DragStartUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartUpEvt.</summary>
+   public void On_DragStartUpEvt(Efl.Ui.DraggableDragStartUpEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartUpEvt_Args>)eventHandlers[DragStartUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartUpEvt_delegate;
+   private void on_DragStartUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartUpEvt_Args args = new Efl.Ui.DraggableDragStartUpEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartDownEvtKey = new object();
+   /// <summary>Called when drag starts into down direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartDownEvt_Args> DragStartDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartDownEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_DragStartDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartDownEvt.</summary>
+   public void On_DragStartDownEvt(Efl.Ui.DraggableDragStartDownEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartDownEvt_Args>)eventHandlers[DragStartDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartDownEvt_delegate;
+   private void on_DragStartDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartDownEvt_Args args = new Efl.Ui.DraggableDragStartDownEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartRightEvtKey = new object();
+   /// <summary>Called when drag starts into right direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartRightEvt_Args> DragStartRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartRightEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_DragStartRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartRightEvt.</summary>
+   public void On_DragStartRightEvt(Efl.Ui.DraggableDragStartRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartRightEvt_Args>)eventHandlers[DragStartRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartRightEvt_delegate;
+   private void on_DragStartRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartRightEvt_Args args = new Efl.Ui.DraggableDragStartRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragStartLeftEvtKey = new object();
+   /// <summary>Called when drag starts into left direction</summary>
+   public event EventHandler<Efl.Ui.DraggableDragStartLeftEvt_Args> DragStartLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DragStartLeftEvt_delegate)) {
+               eventHandlers.AddHandler(DragStartLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_DRAG_START_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_DragStartLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragStartLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragStartLeftEvt.</summary>
+   public void On_DragStartLeftEvt(Efl.Ui.DraggableDragStartLeftEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DraggableDragStartLeftEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DraggableDragStartLeftEvt_Args>)eventHandlers[DragStartLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragStartLeftEvt_delegate;
+   private void on_DragStartLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DraggableDragStartLeftEvt_Args args = new Efl.Ui.DraggableDragStartLeftEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_DragStartLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_DropEvt_delegate = new Efl.EventCb(on_DropEvt_NativeCallback);
+      evt_PreloadEvt_delegate = new Efl.EventCb(on_PreloadEvt_NativeCallback);
+      evt_ResizeEvt_delegate = new Efl.EventCb(on_ResizeEvt_NativeCallback);
+      evt_UnloadEvt_delegate = new Efl.EventCb(on_UnloadEvt_NativeCallback);
+      evt_LoadDoneEvt_delegate = new Efl.EventCb(on_LoadDoneEvt_NativeCallback);
+      evt_LoadErrorEvt_delegate = new Efl.EventCb(on_LoadErrorEvt_NativeCallback);
+      evt_RecalcEvt_delegate = new Efl.EventCb(on_RecalcEvt_NativeCallback);
+      evt_CircularDependencyEvt_delegate = new Efl.EventCb(on_CircularDependencyEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+      evt_DragEvt_delegate = new Efl.EventCb(on_DragEvt_NativeCallback);
+      evt_DragStartEvt_delegate = new Efl.EventCb(on_DragStartEvt_NativeCallback);
+      evt_DragStopEvt_delegate = new Efl.EventCb(on_DragStopEvt_NativeCallback);
+      evt_DragEndEvt_delegate = new Efl.EventCb(on_DragEndEvt_NativeCallback);
+      evt_DragStartUpEvt_delegate = new Efl.EventCb(on_DragStartUpEvt_NativeCallback);
+      evt_DragStartDownEvt_delegate = new Efl.EventCb(on_DragStartDownEvt_NativeCallback);
+      evt_DragStartRightEvt_delegate = new Efl.EventCb(on_DragStartRightEvt_NativeCallback);
+      evt_DragStartLeftEvt_delegate = new Efl.EventCb(on_DragStartLeftEvt_NativeCallback);
+   }
+   /// <summary>Enable or disable scaling up or down the internal image.
+   /// 1.18</summary>
+   /// <param name="scale_up">If <c>true</c>, the internal image might be scaled up if necessary according to the scale type. if <c>false</c>, the internal image is not scaled up no matter what the scale type is.</param>
+   /// <param name="scale_down">If <c>true</c>, the internal image might be scaled down if necessary according to the scale type. if <c>false</c>, the internal image is not scaled down no matter what the scale type is.</param>
+   /// <returns></returns>
+   virtual public  void GetScalable( out bool scale_up,  out bool scale_down) {
+                                           Efl.Ui.ImageNativeInherit.efl_ui_image_scalable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out scale_up,  out scale_down);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Enable or disable scaling up or down the internal image.
+   /// 1.18</summary>
+   /// <param name="scale_up">If <c>true</c>, the internal image might be scaled up if necessary according to the scale type. if <c>false</c>, the internal image is not scaled up no matter what the scale type is.</param>
+   /// <param name="scale_down">If <c>true</c>, the internal image might be scaled down if necessary according to the scale type. if <c>false</c>, the internal image is not scaled down no matter what the scale type is.</param>
+   /// <returns></returns>
+   virtual public  void SetScalable( bool scale_up,  bool scale_down) {
+                                           Efl.Ui.ImageNativeInherit.efl_ui_image_scalable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale_up,  scale_down);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls how the internal image is positioned inside an image object.
+   /// 1.18</summary>
+   /// <param name="align_x">Alignment in the horizontal axis (0 &lt;= align_x &lt;= 1).</param>
+   /// <param name="align_y">Alignment in the vertical axis (0 &lt;= align_y &lt;= 1).</param>
+   /// <returns></returns>
+   virtual public  void GetAlign( out double align_x,  out double align_y) {
+                                           Efl.Ui.ImageNativeInherit.efl_ui_image_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_x,  out align_y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls how the internal image is positioned inside an image object.
+   /// 1.18</summary>
+   /// <param name="align_x">Alignment in the horizontal axis (0 &lt;= align_x &lt;= 1).</param>
+   /// <param name="align_y">Alignment in the vertical axis (0 &lt;= align_y &lt;= 1).</param>
+   /// <returns></returns>
+   virtual public  void SetAlign( double align_x,  double align_y) {
+                                           Efl.Ui.ImageNativeInherit.efl_ui_image_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_x,  align_y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the icon name of image set by icon standard names.
+   /// If the image was set using efl_file_set() instead of <see cref="Efl.Ui.Image.SetIcon"/>, then this function will return null.</summary>
+   /// <returns>The icon name</returns>
+   virtual public  System.String GetIcon() {
+       var _ret_var = Efl.Ui.ImageNativeInherit.efl_ui_image_icon_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the image by icon standards names.
+   /// For example, freedesktop.org defines standard icon names such as &quot;home&quot; and &quot;network&quot;. There can be different icon sets to match those icon keys. The &quot;name&quot; given as parameter is one of these &quot;keys&quot; and will be used to look in the freedesktop.org paths and elementary theme.
+   /// 
+   /// If the name is not found in any of the expected locations and is the absolute path of an image file, this image will be used. Lookup order used by <see cref="Efl.Ui.Image.SetIcon"/> can be set using &quot;icon_theme&quot; in config.
+   /// 
+   /// Note: The image set by this function is changed when <see cref="Efl.File.Load"/> is called.
+   /// 
+   /// Note: This function does not accept relative icon path.
+   /// 
+   /// See also <see cref="Efl.Ui.Image.GetIcon"/>.</summary>
+   /// <param name="name">The icon name</param>
+   /// <returns><c>true</c> on success, <c>false</c> on error</returns>
+   virtual public bool SetIcon(  System.String name) {
+                         var _ret_var = Efl.Ui.ImageNativeInherit.efl_ui_image_icon_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Control the orientation of a given object.
+   /// This can be used to set the rotation on an image or a window, for instance.</summary>
+   /// <returns>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</returns>
+   virtual public Efl.Orient GetOrientation() {
+       var _ret_var = Efl.OrientationNativeInherit.efl_orientation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the orientation of a given object.
+   /// This can be used to set the rotation on an image or a window, for instance.</summary>
+   /// <param name="dir">The rotation angle (CCW), see <see cref="Efl.Orient"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetOrientation( Efl.Orient dir) {
+                         Efl.OrientationNativeInherit.efl_orientation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the flip of the given image
+   /// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+   /// <returns>Flip method</returns>
+   virtual public Efl.Flip GetFlip() {
+       var _ret_var = Efl.OrientationNativeInherit.efl_orientation_flip_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the flip of the given image
+   /// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+   /// <param name="flip">Flip method</param>
+   /// <returns></returns>
+   virtual public  void SetFlip( Efl.Flip flip) {
+                         Efl.OrientationNativeInherit.efl_orientation_flip_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), flip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether or not the playable can be played.</summary>
+   /// <returns><c>true</c> if the object have playable data, <c>false</c> otherwise</returns>
+   virtual public bool GetPlayable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_playable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get play/pause state of the media file.</summary>
+   /// <returns><c>true</c> if playing, <c>false</c> otherwise.</returns>
+   virtual public bool GetPlay() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set play/pause state of the media file.
+   /// This functions sets the currently playing status of the video. Using this function to play or pause the video doesn&apos;t alter it&apos;s current position.</summary>
+   /// <param name="play"><c>true</c> if playing, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetPlay( bool play) {
+                         Efl.PlayerNativeInherit.efl_player_play_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), play);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the position in the media file.
+   /// The position is returned as the number of seconds since the beginning of the media file.</summary>
+   /// <returns>The position (in seconds).</returns>
+   virtual public double GetPos() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the position in the media file.
+   /// This functions sets the current position of the media file to &quot;sec&quot;, this only works on seekable streams. Setting the position doesn&apos;t change the playing state of the media file.</summary>
+   /// <param name="sec">The position (in seconds).</param>
+   /// <returns></returns>
+   virtual public  void SetPos( double sec) {
+                         Efl.PlayerNativeInherit.efl_player_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sec);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get how much of the file has been played.
+   /// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+   /// <returns>The progress within the [0, 1] range.</returns>
+   virtual public double GetProgress() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_progress_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <returns>The play speed in the [0, infinity) range.</returns>
+   virtual public double GetPlaySpeed() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_speed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <param name="speed">The play speed in the [0, infinity) range.</param>
+   /// <returns></returns>
+   virtual public  void SetPlaySpeed( double speed) {
+                         Efl.PlayerNativeInherit.efl_player_play_speed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), speed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <returns>The volume level</returns>
+   virtual public double GetVolume() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_volume_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <param name="volume">The volume level</param>
+   /// <returns></returns>
+   virtual public  void SetVolume( double volume) {
+                         Efl.PlayerNativeInherit.efl_player_volume_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), volume);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <returns>The mute state. <c>true</c> or <c>false</c>.</returns>
+   virtual public bool GetMute() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_mute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <param name="mute">The mute state. <c>true</c> or <c>false</c>.</param>
+   /// <returns></returns>
+   virtual public  void SetMute( bool mute) {
+                         Efl.PlayerNativeInherit.efl_player_mute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mute);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the length of play for the media file.</summary>
+   /// <returns>The length of the stream in seconds.</returns>
+   virtual public double GetLength() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_length_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get whether the media file is seekable.</summary>
+   /// <returns><c>true</c> if seekable.</returns>
+   virtual public bool GetSeekable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_seekable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start a playing playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Start() {
+       Efl.PlayerNativeInherit.efl_player_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stop playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Stop() {
+       Efl.PlayerNativeInherit.efl_player_stop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <returns>Whether to use smooth scale or not.</returns>
+   virtual public bool GetSmoothScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <param name="smooth_scale">Whether to use smooth scale or not.</param>
+   /// <returns></returns>
+   virtual public  void SetSmoothScale( bool smooth_scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), smooth_scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <returns>Image scale type</returns>
+   virtual public Efl.Gfx.ImageScaleType GetScaleType() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <param name="scale_type">Image scale type</param>
+   /// <returns></returns>
+   virtual public  void SetScaleType( Efl.Gfx.ImageScaleType scale_type) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale_type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns 1.0 if not applicable (eg. height = 0).</summary>
+   /// <returns>The image&apos;s ratio.</returns>
+   virtual public double GetRatio() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_ratio_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void GetBorder( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void SetBorder(  int l,   int r,   int t,   int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l,  r,  t,  b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <returns>The scale factor.</returns>
+   virtual public double GetBorderScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <param name="scale">The scale factor.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderScale( double scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <returns>Fill mode of the center region.</returns>
+   virtual public Efl.Gfx.BorderFillMode GetBorderCenterFill() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <param name="fill">Fill mode of the center region.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderCenterFill( Efl.Gfx.BorderFillMode fill) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fill);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This represents the size of the original image in pixels.
+   /// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+   /// 
+   /// This is a read-only property, and may return 0x0.
+   /// 1.20</summary>
+   /// <returns>The size in pixels.</returns>
+   virtual public Eina.Size2D GetImageSize() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+   /// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+   /// <returns>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></returns>
+   virtual public Efl.Gfx.ImageContentHint GetContentHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the content hint setting of a given image object of the canvas.
+   /// This function sets the content hint value of the given image of the canvas. For example, if you&apos;re on the GL engine and your driver implementation supports it, setting this hint to #EVAS_IMAGE_CONTENT_HINT_DYNAMIC will make it need zero copies at texture upload time, which is an &quot;expensive&quot; operation.</summary>
+   /// <param name="hint">Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetContentHint( Efl.Gfx.ImageContentHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+   /// This function returns the scale hint value of the given image object of the canvas.</summary>
+   /// <returns>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></returns>
+   virtual public Efl.Gfx.ImageScaleHint GetScaleHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the scale hint of a given image of the canvas.
+   /// This function sets the scale hint value of the given image object in the canvas, which will affect how Evas is to cache scaled versions of its original source image.</summary>
+   /// <param name="hint">Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetScaleHint( Efl.Gfx.ImageScaleHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+   /// <returns>The load error code.</returns>
+   virtual public Efl.Gfx.ImageLoadError GetImageLoadError() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_load_error_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Returns the requested load size.</summary>
+   /// <returns>The image load size.</returns>
+   virtual public Eina.Size2D GetLoadSize() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Requests the canvas to load the image at the given size.
+   /// EFL will try to load an image of the requested size but does not guarantee an exact match between the request and the loaded image dimensions.</summary>
+   /// <param name="size">The image load size.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+   /// This function returns the DPI resolution of the given canvas image.</summary>
+   /// <returns>The DPI resolution.</returns>
+   virtual public double GetLoadDpi() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the DPI resolution of an image object&apos;s source image.
+   /// This function sets the DPI resolution of a given loaded canvas image. Most useful for the SVG image loader.</summary>
+   /// <param name="dpi">The DPI resolution.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadDpi( double dpi) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dpi);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+   /// 1.2</summary>
+   /// <returns><c>true</c> if region load of the image is supported, <c>false</c> otherwise</returns>
+   virtual public bool GetLoadRegionSupport() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+   /// <returns>A region of the image.</returns>
+   virtual public Eina.Rect GetLoadRegion() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Inform a given image object to load a selective region of its source image.
+   /// This function is useful when one is not showing all of an image&apos;s area on its image object.
+   /// 
+   /// Note: The image loader for the image format in question has to support selective region loading in order for this function to work.</summary>
+   /// <param name="region">A region of the image.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadRegion( Eina.Rect region) {
+       var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                  Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <returns><c>true</c> means that it should honor the orientation information.</returns>
+   virtual public bool GetLoadOrientation() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+   /// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+   /// 1.1</summary>
+   /// <param name="enable"><c>true</c> means that it should honor the orientation information.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadOrientation( bool enable) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The scale down factor is a divider on the original image size.
+   /// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+   /// 
+   /// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+   /// 
+   /// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+   /// <returns>The scale down dividing factor.</returns>
+   virtual public  int GetLoadScaleDown() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Requests the image loader to scale down by <c>div</c> times. Call this before starting the actual image load.</summary>
+   /// <param name="div">The scale down dividing factor.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadScaleDown(  int div) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), div);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+   /// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+   /// <returns>Will be true if header is to be skipped.</returns>
+   virtual public bool GetLoadSkipHeader() {
+       var _ret_var = Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the skip header state for susbsequent loads of a file.</summary>
+   /// <param name="skip">Will be true if header is to be skipped.</param>
+   /// <returns></returns>
+   virtual public  void SetLoadSkipHeader( bool skip) {
+                         Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), skip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Begin preloading an image object&apos;s image data in the background.
+   /// Once the background task is complete the event <c>load</c>,done will be emitted.</summary>
+   /// <returns></returns>
+   virtual public  void LoadAsyncStart() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Cancel preloading an image object&apos;s image data in the background.
+   /// The object should be left in a state where it has no image data. If cancel is called too late, the image will be kept in memory.</summary>
+   /// <returns></returns>
+   virtual public  void LoadAsyncCancel() {
+       Efl.Gfx.ImageLoadControllerNativeInherit.efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The dimensions of this object&apos;s viewport.
+   /// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+   /// 
+   /// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+   /// 
+   /// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+   /// 
+   /// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+   /// 
+   /// Refer to each implementing class specific documentation for more details.</summary>
+   /// <returns>Size of the view.</returns>
+   virtual public Eina.Size2D GetViewSize() {
+       var _ret_var = Efl.Gfx.ViewNativeInherit.efl_gfx_view_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The dimensions of this object&apos;s viewport.
+   /// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+   /// 
+   /// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+   /// 
+   /// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+   /// 
+   /// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+   /// 
+   /// Refer to each implementing class specific documentation for more details.</summary>
+   /// <param name="size">Size of the view.</param>
+   /// <returns></returns>
+   virtual public  void SetViewSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.ViewNativeInherit.efl_gfx_view_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether this object updates its size hints automatically.
+   /// 1.21</summary>
+   /// <returns>Whether or not update the size hints.
+   /// 1.21</returns>
+   virtual public bool GetCalcAutoUpdateHints() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable auto-update of size hints.
+   /// 1.21</summary>
+   /// <param name="update">Whether or not update the size hints.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetCalcAutoUpdateHints( bool update) {
+                         Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), update);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Calculates the minimum required size for a given layout object.
+   /// This call will trigger an internal recalculation of all parts of the object, in order to return its minimum required dimensions for width and height. The user might choose to impose those minimum sizes, making the resulting calculation to get to values greater or equal than <c>restricted</c> in both directions.
+   /// 
+   /// Note: At the end of this call, the object won&apos;t be automatically resized to the new dimensions, but just return the calculated sizes. The caller is the one up to change its geometry or not.
+   /// 
+   /// Warning: Be advised that invisible parts in the object will be taken into account in this calculation.
+   /// 1.21</summary>
+   /// <param name="restricted">The minimum size constraint as input, the returned size can not be lower than this (in both directions).
+   /// 1.21</param>
+   /// <returns>The minimum required size.
+   /// 1.21</returns>
+   virtual public Eina.Size2D CalcSizeMin( Eina.Size2D restricted) {
+       var _in_restricted = Eina.Size2D_StructConversion.ToInternal(restricted);
+                  var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_size_min_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_restricted);
+      Eina.Error.RaiseIfUnhandledException();
+                  return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Calculates the geometry of the region, relative to a given layout object&apos;s area, occupied by all parts in the object.
+   /// This function gets the geometry of the rectangle equal to the area required to group all parts in obj&apos;s group/collection. The x and y coordinates are relative to the top left corner of the whole obj object&apos;s area. Parts placed out of the group&apos;s boundaries will also be taken in account, so that x and y may be negative.
+   /// 
+   /// Note: On failure, this function will make all non-<c>null</c> geometry pointers&apos; pointed variables be set to zero.
+   /// 1.21</summary>
+   /// <returns>The calculated region.
+   /// 1.21</returns>
+   virtual public Eina.Rect CalcPartsExtends() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_parts_extends_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Freezes the layout object.
+   /// This function puts all changes on hold. Successive freezes will nest, requiring an equal number of thaws.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 on error
+   /// 1.21</returns>
+   virtual public  int FreezeCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Thaws the layout object.
+   /// This function thaws (in other words &quot;unfreezes&quot;) the given layout object.
+   /// 
+   /// Note: If sucessive freezes were done, an equal number of thaws will be required.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 if the object is not frozen or on error.
+   /// 1.21</returns>
+   virtual public  int ThawCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_thaw_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Forces a Size/Geometry calculation.
+   /// Forces the object to recalculate its layout regardless of freeze/thaw. This API should be used carefully.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/> and <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns></returns>
+   virtual public  void CalcForce() {
+       Efl.Layout.CalcNativeInherit.efl_layout_calc_force_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+   /// 
+   /// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+   /// 
+   /// Note: On failure, this function also return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+   /// 1.21</summary>
+   /// <returns>The minimum size as set in EDC.
+   /// 1.21</returns>
+   virtual public Eina.Size2D GetGroupSizeMin() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+   /// 
+   /// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+   /// 
+   /// Note: On failure, this function will return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+   /// 1.21</summary>
+   /// <returns>The maximum size as set in EDC.
+   /// 1.21</returns>
+   virtual public Eina.Size2D GetGroupSizeMax() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Retrives an EDC data field&apos;s value from a given Edje object&apos;s group.
+   /// This function fetches an EDC data field&apos;s value, which is declared on the objects building EDC file, under its group. EDC data blocks are most commonly used to pass arbitrary parameters from an application&apos;s theme to its code.
+   /// 
+   /// EDC data fields always hold  strings as values, hence the return type of this function. Check the complete &quot;syntax reference&quot; for EDC files.
+   /// 
+   /// This is how a data item is defined in EDC: collections { group { name: &quot;a_group&quot;; data { item: &quot;key1&quot; &quot;value1&quot;; item: &quot;key2&quot; &quot;value2&quot;; } } }
+   /// 
+   /// Warning: Do not confuse this call with edje_file_data_get(), which queries for a global EDC data field on an EDC declaration file.
+   /// 1.21</summary>
+   /// <param name="key">The data field&apos;s key string
+   /// 1.21</param>
+   /// <returns>The data&apos;s value string.
+   /// 1.21</returns>
+   virtual public  System.String GetGroupData(  System.String key) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_data_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns <c>true</c> if the part exists in the EDC group.
+   /// 1.21</summary>
+   /// <param name="part">The part name to check.
+   /// 1.21</param>
+   /// <returns><c>true</c> if the part exists, <c>false</c> otherwise.
+   /// 1.21</returns>
+   virtual public bool GetPartExist(  System.String part) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_part_exist_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sends an (Edje) message to a given Edje object
+   /// This function sends an Edje message to obj and to all of its child objects, if it has any (swallowed objects are one kind of child object). Only a few types are supported: - int, - float/double, - string/stringshare, - arrays of int, float, double or strings.
+   /// 
+   /// Messages can go both ways, from code to theme, or theme to code.
+   /// 
+   /// The id argument as a form of code and theme defining a common interface on message communication. One should define the same IDs on both code and EDC declaration, to individualize messages (binding them to a given context).
+   /// 1.21</summary>
+   /// <param name="id">A identification number for the message to be sent
+   /// 1.21</param>
+   /// <param name="msg">The message&apos;s payload
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void MessageSend(  int id,   Eina.Value msg) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_message_send_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id,  msg);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a callback for an arriving Edje signal, emitted by a given Edje object.
+   /// Edje signals are one of the communication interfaces between code and a given Edje object&apos;s theme. With signals, one can communicate two string values at a time, which are: - &quot;emission&quot; value: the name of the signal, in general - &quot;source&quot; value: a name for the signal&apos;s context, in general
+   /// 
+   /// Signals can go both ways, from code to theme, or theme to code.
+   /// 
+   /// Though there are those common uses for the two strings, one is free to use them however they like.
+   /// 
+   /// Signal callback registration is powerful, in the way that blobs may be used to match multiple signals at once. All the &quot;*?[&quot; set of <c>fnmatch</c>() operators can be used, both for emission and source.
+   /// 
+   /// Edje has internal signals it will emit, automatically, on various actions taking place on group parts. For example, the mouse cursor being moved, pressed, released, etc., over a given part&apos;s area, all generate individual signals.
+   /// 
+   /// With something like emission = &quot;mouse,down,*&quot;, source = &quot;button.*&quot; where &quot;button.*&quot; is the pattern for the names of parts implementing buttons on an interface, you&apos;d be registering for notifications on events of mouse buttons being pressed down on either of those parts (those events all have the &quot;mouse,down,&quot; common prefix on their names, with a suffix giving the button number). The actual emission and source strings of an event will be passed in as the emission and source parameters of the callback function (e.g. &quot;mouse,down,2&quot; and &quot;button.close&quot;), for each of those events.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.EmitSignal"/> on how to emit signals from code to a an object See <see cref="Efl.Layout.Signal.DelSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   virtual public bool AddSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Removes a signal-triggered callback from an object.
+   /// This function removes a callback, previously attached to the emission of a signal, from the object  obj. The parameters emission, source and func must match exactly those passed to a previous call to <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   virtual public bool DelSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Sends/emits an Edje signal to this layout.
+   /// This function sends a signal to the object. An Edje program, at the EDC specification level, can respond to a signal by having declared matching &quot;signal&quot; and &quot;source&quot; fields on its block.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/> for more on Edje signals.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void EmitSignal(  System.String emission,   System.String source) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_emit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Processes an object&apos;s messages and signals queue.
+   /// This function goes through the object message queue processing the pending messages for this specific Edje object. Normally they&apos;d be processed only at idle time.
+   /// 
+   /// If <c>recurse</c> is <c>true</c>, this function will be called recursively on all subobjects.
+   /// 1.21</summary>
+   /// <param name="recurse">Whether to process messages on children objects.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SignalProcess( bool recurse) {
+                         Efl.Layout.SignalNativeInherit.efl_layout_signal_process_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), recurse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+   /// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+   /// <returns>Turn on or off drop_target. Default is <c>false</c>.</returns>
+   virtual public bool GetDragTarget() {
+       var _ret_var = Efl.Ui.DraggableNativeInherit.efl_ui_draggable_drag_target_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+   /// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+   /// <param name="set">Turn on or off drop_target. Default is <c>false</c>.</param>
+   /// <returns></returns>
+   virtual public  void SetDragTarget( bool set) {
+                         Efl.Ui.DraggableNativeInherit.efl_ui_draggable_drag_target_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), set);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>bind property data with the given key string. when the data is ready or changed, bind the data to the key action and process promised work.</summary>
+   /// <param name="key">key string for bind model property data</param>
+   /// <param name="property">Model property name</param>
+   /// <returns></returns>
+   virtual public  void PropertyBind(  System.String key,   System.String property) {
+                                           Efl.Ui.PropertyBindNativeInherit.efl_ui_property_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  property);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Model that is/will be</summary>
+   /// <returns>Efl model</returns>
+   virtual public Efl.Model GetModel() {
+       var _ret_var = Efl.Ui.ViewNativeInherit.efl_ui_view_model_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Model that is/will be</summary>
+   /// <param name="model">Efl model</param>
+   /// <returns></returns>
+   virtual public  void SetModel( Efl.Model model) {
+                         Efl.Ui.ViewNativeInherit.efl_ui_view_model_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), model);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the icon name of image set by icon standard names.
+/// If the image was set using efl_file_set() instead of <see cref="Efl.Ui.Image.SetIcon"/>, then this function will return null.</summary>
+/// <value>The icon name</value>
+   public  System.String Icon {
+      get { return GetIcon(); }
+      set { SetIcon( value); }
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Control the orientation of a given object.
+/// This can be used to set the rotation on an image or a window, for instance.</summary>
+/// <value>The rotation angle (CCW), see <see cref="Efl.Orient"/>.</value>
+   public Efl.Orient Orientation {
+      get { return GetOrientation(); }
+      set { SetOrientation( value); }
+   }
+   /// <summary>Control the flip of the given image
+/// Use this function to change how your image is to be flipped: vertically or horizontally or transpose or traverse.</summary>
+/// <value>Flip method</value>
+   public Efl.Flip Flip {
+      get { return GetFlip(); }
+      set { SetFlip( value); }
+   }
+   /// <summary>Whether or not the playable can be played.</summary>
+/// <value><c>true</c> if the object have playable data, <c>false</c> otherwise</value>
+   public bool Playable {
+      get { return GetPlayable(); }
+   }
+   /// <summary>Get play/pause state of the media file.</summary>
+/// <value><c>true</c> if playing, <c>false</c> otherwise.</value>
+   public bool Play {
+      get { return GetPlay(); }
+      set { SetPlay( value); }
+   }
+   /// <summary>Get the position in the media file.
+/// The position is returned as the number of seconds since the beginning of the media file.</summary>
+/// <value>The position (in seconds).</value>
+   public double Pos {
+      get { return GetPos(); }
+      set { SetPos( value); }
+   }
+   /// <summary>Get how much of the file has been played.
+/// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+/// <value>The progress within the [0, 1] range.</value>
+   public double Progress {
+      get { return GetProgress(); }
+   }
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <value>The play speed in the [0, infinity) range.</value>
+   public double PlaySpeed {
+      get { return GetPlaySpeed(); }
+      set { SetPlaySpeed( value); }
+   }
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <value>The volume level</value>
+   public double Volume {
+      get { return GetVolume(); }
+      set { SetVolume( value); }
+   }
+   /// <summary>This property controls the audio mute state.</summary>
+/// <value>The mute state. <c>true</c> or <c>false</c>.</value>
+   public bool Mute {
+      get { return GetMute(); }
+      set { SetMute( value); }
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   public double Length {
+      get { return GetLength(); }
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   public bool Seekable {
+      get { return GetSeekable(); }
+   }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <value>Whether to use smooth scale or not.</value>
+   public bool SmoothScale {
+      get { return GetSmoothScale(); }
+      set { SetSmoothScale( value); }
+   }
+   /// <summary>Control how the image is scaled.</summary>
+/// <value>Image scale type</value>
+   public Efl.Gfx.ImageScaleType ScaleType {
+      get { return GetScaleType(); }
+      set { SetScaleType( value); }
+   }
+   /// <summary>The native width/height ratio of the image.</summary>
+/// <value>The image&apos;s ratio.</value>
+   public double Ratio {
+      get { return GetRatio(); }
+   }
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <value>The scale factor.</value>
+   public double BorderScale {
+      get { return GetBorderScale(); }
+      set { SetBorderScale( value); }
+   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <value>Fill mode of the center region.</value>
+   public Efl.Gfx.BorderFillMode BorderCenterFill {
+      get { return GetBorderCenterFill(); }
+      set { SetBorderCenterFill( value); }
+   }
+   /// <summary>This represents the size of the original image in pixels.
+/// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+/// 
+/// This is a read-only property, and may return 0x0.
+/// 1.20</summary>
+/// <value>The size in pixels.</value>
+   public Eina.Size2D ImageSize {
+      get { return GetImageSize(); }
+   }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+/// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+/// <value>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></value>
+   public Efl.Gfx.ImageContentHint ContentHint {
+      get { return GetContentHint(); }
+      set { SetContentHint( value); }
+   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+/// This function returns the scale hint value of the given image object of the canvas.</summary>
+/// <value>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></value>
+   public Efl.Gfx.ImageScaleHint ScaleHint {
+      get { return GetScaleHint(); }
+      set { SetScaleHint( value); }
+   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <value>The load error code.</value>
+   public Efl.Gfx.ImageLoadError ImageLoadError {
+      get { return GetImageLoadError(); }
+   }
+   /// <summary>The load size of an image.
+/// The image will be loaded into memory as if it was the specified size instead of its original size. This can save a lot of memory and is important for scalable types like svg.
+/// 
+/// By default, the load size is not specified, so it is 0x0.</summary>
+/// <value>The image load size.</value>
+   public Eina.Size2D LoadSize {
+      get { return GetLoadSize(); }
+      set { SetLoadSize( value); }
+   }
+   /// <summary>Get the DPI resolution of a loaded image object in the canvas.
+/// This function returns the DPI resolution of the given canvas image.</summary>
+/// <value>The DPI resolution.</value>
+   public double LoadDpi {
+      get { return GetLoadDpi(); }
+      set { SetLoadDpi( value); }
+   }
+   /// <summary>Indicates whether the <see cref="Efl.Gfx.ImageLoadController.LoadRegion"/> property is supported for the current file.
+/// 1.2</summary>
+/// <value><c>true</c> if region load of the image is supported, <c>false</c> otherwise</value>
+   public bool LoadRegionSupport {
+      get { return GetLoadRegionSupport(); }
+   }
+   /// <summary>Retrieve the coordinates of a given image object&apos;s selective (source image) load region.</summary>
+/// <value>A region of the image.</value>
+   public Eina.Rect LoadRegion {
+      get { return GetLoadRegion(); }
+      set { SetLoadRegion( value); }
+   }
+   /// <summary>Defines whether the orientation information in the image file should be honored.
+/// The orientation can for instance be set in the EXIF tags of a JPEG image. If this flag is <c>false</c>, then the orientation will be ignored at load time, otherwise the image will be loaded with the proper orientation.
+/// 1.1</summary>
+/// <value><c>true</c> means that it should honor the orientation information.</value>
+   public bool LoadOrientation {
+      get { return GetLoadOrientation(); }
+      set { SetLoadOrientation( value); }
+   }
+   /// <summary>The scale down factor is a divider on the original image size.
+/// Setting the scale down factor can reduce load time and memory usage at the cost of having a scaled down image in memory.
+/// 
+/// This function sets the scale down factor of a given canvas image. Most useful for the SVG image loader but also applies to JPEG, PNG and BMP.
+/// 
+/// Powers of two (2, 4, 8) are best supported (especially with JPEG)</summary>
+/// <value>The scale down dividing factor.</value>
+   public  int LoadScaleDown {
+      get { return GetLoadScaleDown(); }
+      set { SetLoadScaleDown( value); }
+   }
+   /// <summary>Initial load should skip header check and leave it all to data load
+/// If this is true, then future loads of images will defer header loading to a preload stage and/or data load later on rather than at the start when the load begins (e.g. when file is set).</summary>
+/// <value>Will be true if header is to be skipped.</value>
+   public bool LoadSkipHeader {
+      get { return GetLoadSkipHeader(); }
+      set { SetLoadSkipHeader( value); }
+   }
+   /// <summary>The dimensions of this object&apos;s viewport.
+/// This property represents the size of an image (file on disk, vector graphics, GL or 3D scene, ...) view: this is the logical size of a view, not the number of pixels in the buffer, nor its visible size on the window.
+/// 
+/// For scalable scenes (vector graphics, 3D or GL), this means scaling the contents of the scene and drawing more pixels as a result; For pixmaps this means zooming and stretching up or down the backing buffer to fit this view.
+/// 
+/// In most cases the view should have the same dimensions as the object on the canvas, for best quality.
+/// 
+/// <see cref="Efl.Gfx.View.SetViewSize"/> may not be implemented. If it is, it might trigger a complete recalculation of the scene, or reload of the pixel data.
+/// 
+/// Refer to each implementing class specific documentation for more details.</summary>
+/// <value>Size of the view.</value>
+   public Eina.Size2D ViewSize {
+      get { return GetViewSize(); }
+      set { SetViewSize( value); }
+   }
+   /// <summary>Whether this object updates its size hints automatically.
+/// By default edje doesn&apos;t set size hints on itself. If this property is set to <c>true</c>, size hints will be updated after recalculation. Be careful, as recalculation may happen often, enabling this property may have a considerable performance impact as other widgets will be notified of the size hints changes.
+/// 
+/// A layout recalculation can be triggered by <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcPartsExtends"/> or even any other internal event.
+/// 1.21</summary>
+/// <value>Whether or not update the size hints.
+/// 1.21</value>
+   public bool CalcAutoUpdateHints {
+      get { return GetCalcAutoUpdateHints(); }
+      set { SetCalcAutoUpdateHints( value); }
+   }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+/// 
+/// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+/// 
+/// Note: On failure, this function also return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+/// 1.21</summary>
+/// <value>The minimum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMin {
+      get { return GetGroupSizeMin(); }
+   }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+/// 
+/// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+/// 
+/// Note: On failure, this function will return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+/// 1.21</summary>
+/// <value>The maximum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMax {
+      get { return GetGroupSizeMax(); }
+   }
+   /// <summary>Control whether the object&apos;s content is changed by drag and drop.
+/// If <c>drag_target</c> is true the object can be the target of a dragging object. The content of this object can then be changed into dragging content. For example, if an object deals with image and <c>drag_target</c> is true, the user can drag the new image and drop it into said object. This object&apos;s image can then be changed into a new image.</summary>
+/// <value>Turn on or off drop_target. Default is <c>false</c>.</value>
+   public bool DragTarget {
+      get { return GetDragTarget(); }
+      set { SetDragTarget( value); }
+   }
+   /// <summary>Model that is/will be</summary>
+/// <value>Efl model</value>
+   public Efl.Model Model {
+      get { return GetModel(); }
+      set { SetModel( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Image.efl_ui_image_class_get();
+   }
+}
+public class ImageNativeInherit : Efl.Ui.WidgetNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_image_scalable_get_static_delegate == null)
+      efl_ui_image_scalable_get_static_delegate = new efl_ui_image_scalable_get_delegate(scalable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_scalable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_scalable_get_static_delegate)});
+      if (efl_ui_image_scalable_set_static_delegate == null)
+      efl_ui_image_scalable_set_static_delegate = new efl_ui_image_scalable_set_delegate(scalable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_scalable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_scalable_set_static_delegate)});
+      if (efl_ui_image_align_get_static_delegate == null)
+      efl_ui_image_align_get_static_delegate = new efl_ui_image_align_get_delegate(align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_align_get_static_delegate)});
+      if (efl_ui_image_align_set_static_delegate == null)
+      efl_ui_image_align_set_static_delegate = new efl_ui_image_align_set_delegate(align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_align_set_static_delegate)});
+      if (efl_ui_image_icon_get_static_delegate == null)
+      efl_ui_image_icon_get_static_delegate = new efl_ui_image_icon_get_delegate(icon_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_icon_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_icon_get_static_delegate)});
+      if (efl_ui_image_icon_set_static_delegate == null)
+      efl_ui_image_icon_set_static_delegate = new efl_ui_image_icon_set_delegate(icon_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_icon_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_icon_set_static_delegate)});
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_orientation_get_static_delegate == null)
+      efl_orientation_get_static_delegate = new efl_orientation_get_delegate(orientation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_get_static_delegate)});
+      if (efl_orientation_set_static_delegate == null)
+      efl_orientation_set_static_delegate = new efl_orientation_set_delegate(orientation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_set_static_delegate)});
+      if (efl_orientation_flip_get_static_delegate == null)
+      efl_orientation_flip_get_static_delegate = new efl_orientation_flip_get_delegate(flip_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_flip_get"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_flip_get_static_delegate)});
+      if (efl_orientation_flip_set_static_delegate == null)
+      efl_orientation_flip_set_static_delegate = new efl_orientation_flip_set_delegate(flip_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_orientation_flip_set"), func = Marshal.GetFunctionPointerForDelegate(efl_orientation_flip_set_static_delegate)});
+      if (efl_player_playable_get_static_delegate == null)
+      efl_player_playable_get_static_delegate = new efl_player_playable_get_delegate(playable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_playable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_playable_get_static_delegate)});
+      if (efl_player_play_get_static_delegate == null)
+      efl_player_play_get_static_delegate = new efl_player_play_get_delegate(play_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_get_static_delegate)});
+      if (efl_player_play_set_static_delegate == null)
+      efl_player_play_set_static_delegate = new efl_player_play_set_delegate(play_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_set_static_delegate)});
+      if (efl_player_pos_get_static_delegate == null)
+      efl_player_pos_get_static_delegate = new efl_player_pos_get_delegate(pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_get_static_delegate)});
+      if (efl_player_pos_set_static_delegate == null)
+      efl_player_pos_set_static_delegate = new efl_player_pos_set_delegate(pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_set_static_delegate)});
+      if (efl_player_progress_get_static_delegate == null)
+      efl_player_progress_get_static_delegate = new efl_player_progress_get_delegate(progress_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_progress_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_progress_get_static_delegate)});
+      if (efl_player_play_speed_get_static_delegate == null)
+      efl_player_play_speed_get_static_delegate = new efl_player_play_speed_get_delegate(play_speed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_get_static_delegate)});
+      if (efl_player_play_speed_set_static_delegate == null)
+      efl_player_play_speed_set_static_delegate = new efl_player_play_speed_set_delegate(play_speed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_set_static_delegate)});
+      if (efl_player_volume_get_static_delegate == null)
+      efl_player_volume_get_static_delegate = new efl_player_volume_get_delegate(volume_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_get_static_delegate)});
+      if (efl_player_volume_set_static_delegate == null)
+      efl_player_volume_set_static_delegate = new efl_player_volume_set_delegate(volume_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_set_static_delegate)});
+      if (efl_player_mute_get_static_delegate == null)
+      efl_player_mute_get_static_delegate = new efl_player_mute_get_delegate(mute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_get_static_delegate)});
+      if (efl_player_mute_set_static_delegate == null)
+      efl_player_mute_set_static_delegate = new efl_player_mute_set_delegate(mute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_set_static_delegate)});
+      if (efl_player_length_get_static_delegate == null)
+      efl_player_length_get_static_delegate = new efl_player_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_length_get_static_delegate)});
+      if (efl_player_seekable_get_static_delegate == null)
+      efl_player_seekable_get_static_delegate = new efl_player_seekable_get_delegate(seekable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_seekable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_seekable_get_static_delegate)});
+      if (efl_player_start_static_delegate == null)
+      efl_player_start_static_delegate = new efl_player_start_delegate(start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_start"), func = Marshal.GetFunctionPointerForDelegate(efl_player_start_static_delegate)});
+      if (efl_player_stop_static_delegate == null)
+      efl_player_stop_static_delegate = new efl_player_stop_delegate(stop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_player_stop_static_delegate)});
+      if (efl_gfx_image_smooth_scale_get_static_delegate == null)
+      efl_gfx_image_smooth_scale_get_static_delegate = new efl_gfx_image_smooth_scale_get_delegate(smooth_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_get_static_delegate)});
+      if (efl_gfx_image_smooth_scale_set_static_delegate == null)
+      efl_gfx_image_smooth_scale_set_static_delegate = new efl_gfx_image_smooth_scale_set_delegate(smooth_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_set_static_delegate)});
+      if (efl_gfx_image_scale_type_get_static_delegate == null)
+      efl_gfx_image_scale_type_get_static_delegate = new efl_gfx_image_scale_type_get_delegate(scale_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_get_static_delegate)});
+      if (efl_gfx_image_scale_type_set_static_delegate == null)
+      efl_gfx_image_scale_type_set_static_delegate = new efl_gfx_image_scale_type_set_delegate(scale_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_set_static_delegate)});
+      if (efl_gfx_image_ratio_get_static_delegate == null)
+      efl_gfx_image_ratio_get_static_delegate = new efl_gfx_image_ratio_get_delegate(ratio_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_ratio_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_ratio_get_static_delegate)});
+      if (efl_gfx_image_border_get_static_delegate == null)
+      efl_gfx_image_border_get_static_delegate = new efl_gfx_image_border_get_delegate(border_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_get_static_delegate)});
+      if (efl_gfx_image_border_set_static_delegate == null)
+      efl_gfx_image_border_set_static_delegate = new efl_gfx_image_border_set_delegate(border_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_set_static_delegate)});
+      if (efl_gfx_image_border_scale_get_static_delegate == null)
+      efl_gfx_image_border_scale_get_static_delegate = new efl_gfx_image_border_scale_get_delegate(border_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_get_static_delegate)});
+      if (efl_gfx_image_border_scale_set_static_delegate == null)
+      efl_gfx_image_border_scale_set_static_delegate = new efl_gfx_image_border_scale_set_delegate(border_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_set_static_delegate)});
+      if (efl_gfx_image_border_center_fill_get_static_delegate == null)
+      efl_gfx_image_border_center_fill_get_static_delegate = new efl_gfx_image_border_center_fill_get_delegate(border_center_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_get_static_delegate)});
+      if (efl_gfx_image_border_center_fill_set_static_delegate == null)
+      efl_gfx_image_border_center_fill_set_static_delegate = new efl_gfx_image_border_center_fill_set_delegate(border_center_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_set_static_delegate)});
+      if (efl_gfx_image_size_get_static_delegate == null)
+      efl_gfx_image_size_get_static_delegate = new efl_gfx_image_size_get_delegate(image_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_size_get_static_delegate)});
+      if (efl_gfx_image_content_hint_get_static_delegate == null)
+      efl_gfx_image_content_hint_get_static_delegate = new efl_gfx_image_content_hint_get_delegate(content_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_get_static_delegate)});
+      if (efl_gfx_image_content_hint_set_static_delegate == null)
+      efl_gfx_image_content_hint_set_static_delegate = new efl_gfx_image_content_hint_set_delegate(content_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_set_static_delegate)});
+      if (efl_gfx_image_scale_hint_get_static_delegate == null)
+      efl_gfx_image_scale_hint_get_static_delegate = new efl_gfx_image_scale_hint_get_delegate(scale_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_get_static_delegate)});
+      if (efl_gfx_image_scale_hint_set_static_delegate == null)
+      efl_gfx_image_scale_hint_set_static_delegate = new efl_gfx_image_scale_hint_set_delegate(scale_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_set_static_delegate)});
+      if (efl_gfx_image_load_error_get_static_delegate == null)
+      efl_gfx_image_load_error_get_static_delegate = new efl_gfx_image_load_error_get_delegate(image_load_error_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_error_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_error_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_size_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_get_static_delegate = new efl_gfx_image_load_controller_load_size_get_delegate(load_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_size_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_size_set_static_delegate = new efl_gfx_image_load_controller_load_size_set_delegate(load_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_size_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_get_static_delegate = new efl_gfx_image_load_controller_load_dpi_get_delegate(load_dpi_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_dpi_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_dpi_set_static_delegate = new efl_gfx_image_load_controller_load_dpi_set_delegate(load_dpi_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_dpi_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_dpi_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_support_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_support_get_static_delegate = new efl_gfx_image_load_controller_load_region_support_get_delegate(load_region_support_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_support_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_support_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_get_static_delegate = new efl_gfx_image_load_controller_load_region_get_delegate(load_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_region_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_region_set_static_delegate = new efl_gfx_image_load_controller_load_region_set_delegate(load_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_region_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_region_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_get_static_delegate = new efl_gfx_image_load_controller_load_orientation_get_delegate(load_orientation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_orientation_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_orientation_set_static_delegate = new efl_gfx_image_load_controller_load_orientation_set_delegate(load_orientation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_orientation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_orientation_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_get_static_delegate = new efl_gfx_image_load_controller_load_scale_down_get_delegate(load_scale_down_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_scale_down_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_scale_down_set_static_delegate = new efl_gfx_image_load_controller_load_scale_down_set_delegate(load_scale_down_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_scale_down_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_scale_down_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_get_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_get_static_delegate = new efl_gfx_image_load_controller_load_skip_header_get_delegate(load_skip_header_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_get_static_delegate)});
+      if (efl_gfx_image_load_controller_load_skip_header_set_static_delegate == null)
+      efl_gfx_image_load_controller_load_skip_header_set_static_delegate = new efl_gfx_image_load_controller_load_skip_header_set_delegate(load_skip_header_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_skip_header_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_skip_header_set_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_start_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_start_static_delegate = new efl_gfx_image_load_controller_load_async_start_delegate(load_async_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_start"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_start_static_delegate)});
+      if (efl_gfx_image_load_controller_load_async_cancel_static_delegate == null)
+      efl_gfx_image_load_controller_load_async_cancel_static_delegate = new efl_gfx_image_load_controller_load_async_cancel_delegate(load_async_cancel);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_controller_load_async_cancel"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_controller_load_async_cancel_static_delegate)});
+      if (efl_gfx_view_size_get_static_delegate == null)
+      efl_gfx_view_size_get_static_delegate = new efl_gfx_view_size_get_delegate(view_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_view_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_view_size_get_static_delegate)});
+      if (efl_gfx_view_size_set_static_delegate == null)
+      efl_gfx_view_size_set_static_delegate = new efl_gfx_view_size_set_delegate(view_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_view_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_view_size_set_static_delegate)});
+      if (efl_layout_calc_auto_update_hints_get_static_delegate == null)
+      efl_layout_calc_auto_update_hints_get_static_delegate = new efl_layout_calc_auto_update_hints_get_delegate(calc_auto_update_hints_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_get_static_delegate)});
+      if (efl_layout_calc_auto_update_hints_set_static_delegate == null)
+      efl_layout_calc_auto_update_hints_set_static_delegate = new efl_layout_calc_auto_update_hints_set_delegate(calc_auto_update_hints_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_set"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_set_static_delegate)});
+      if (efl_layout_calc_size_min_static_delegate == null)
+      efl_layout_calc_size_min_static_delegate = new efl_layout_calc_size_min_delegate(calc_size_min);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_size_min"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_size_min_static_delegate)});
+      if (efl_layout_calc_parts_extends_static_delegate == null)
+      efl_layout_calc_parts_extends_static_delegate = new efl_layout_calc_parts_extends_delegate(calc_parts_extends);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_parts_extends"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_parts_extends_static_delegate)});
+      if (efl_layout_calc_freeze_static_delegate == null)
+      efl_layout_calc_freeze_static_delegate = new efl_layout_calc_freeze_delegate(calc_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_freeze_static_delegate)});
+      if (efl_layout_calc_thaw_static_delegate == null)
+      efl_layout_calc_thaw_static_delegate = new efl_layout_calc_thaw_delegate(calc_thaw);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_thaw"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_thaw_static_delegate)});
+      if (efl_layout_calc_force_static_delegate == null)
+      efl_layout_calc_force_static_delegate = new efl_layout_calc_force_delegate(calc_force);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_force"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_force_static_delegate)});
+      if (efl_layout_group_size_min_get_static_delegate == null)
+      efl_layout_group_size_min_get_static_delegate = new efl_layout_group_size_min_get_delegate(group_size_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_min_get_static_delegate)});
+      if (efl_layout_group_size_max_get_static_delegate == null)
+      efl_layout_group_size_max_get_static_delegate = new efl_layout_group_size_max_get_delegate(group_size_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_max_get_static_delegate)});
+      if (efl_layout_group_data_get_static_delegate == null)
+      efl_layout_group_data_get_static_delegate = new efl_layout_group_data_get_delegate(group_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_data_get_static_delegate)});
+      if (efl_layout_group_part_exist_get_static_delegate == null)
+      efl_layout_group_part_exist_get_static_delegate = new efl_layout_group_part_exist_get_delegate(part_exist_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_part_exist_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_part_exist_get_static_delegate)});
+      if (efl_layout_signal_message_send_static_delegate == null)
+      efl_layout_signal_message_send_static_delegate = new efl_layout_signal_message_send_delegate(message_send);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_message_send"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_message_send_static_delegate)});
+      if (efl_layout_signal_callback_add_static_delegate == null)
+      efl_layout_signal_callback_add_static_delegate = new efl_layout_signal_callback_add_delegate(signal_callback_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_add"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_add_static_delegate)});
+      if (efl_layout_signal_callback_del_static_delegate == null)
+      efl_layout_signal_callback_del_static_delegate = new efl_layout_signal_callback_del_delegate(signal_callback_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_del"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_del_static_delegate)});
+      if (efl_layout_signal_emit_static_delegate == null)
+      efl_layout_signal_emit_static_delegate = new efl_layout_signal_emit_delegate(signal_emit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_emit"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_emit_static_delegate)});
+      if (efl_layout_signal_process_static_delegate == null)
+      efl_layout_signal_process_static_delegate = new efl_layout_signal_process_delegate(signal_process);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_process"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_process_static_delegate)});
+      if (efl_ui_draggable_drag_target_get_static_delegate == null)
+      efl_ui_draggable_drag_target_get_static_delegate = new efl_ui_draggable_drag_target_get_delegate(drag_target_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_draggable_drag_target_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_draggable_drag_target_get_static_delegate)});
+      if (efl_ui_draggable_drag_target_set_static_delegate == null)
+      efl_ui_draggable_drag_target_set_static_delegate = new efl_ui_draggable_drag_target_set_delegate(drag_target_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_draggable_drag_target_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_draggable_drag_target_set_static_delegate)});
+      if (efl_ui_property_bind_static_delegate == null)
+      efl_ui_property_bind_static_delegate = new efl_ui_property_bind_delegate(property_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_property_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_property_bind_static_delegate)});
+      if (efl_ui_view_model_get_static_delegate == null)
+      efl_ui_view_model_get_static_delegate = new efl_ui_view_model_get_delegate(model_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_get_static_delegate)});
+      if (efl_ui_view_model_set_static_delegate == null)
+      efl_ui_view_model_set_static_delegate = new efl_ui_view_model_set_delegate(model_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Image.efl_ui_image_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Image.efl_ui_image_class_get();
+   }
+
+
+    private delegate  void efl_ui_image_scalable_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool scale_up,  [MarshalAs(UnmanagedType.U1)]  out bool scale_down);
+
+
+    public delegate  void efl_ui_image_scalable_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool scale_up,  [MarshalAs(UnmanagedType.U1)]  out bool scale_down);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_scalable_get_api_delegate> efl_ui_image_scalable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_scalable_get_api_delegate>(_Module, "efl_ui_image_scalable_get");
+    private static  void scalable_get(System.IntPtr obj, System.IntPtr pd,  out bool scale_up,  out bool scale_down)
+   {
+      Eina.Log.Debug("function efl_ui_image_scalable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           scale_up = default(bool);      scale_down = default(bool);                     
+         try {
+            ((Image)wrapper).GetScalable( out scale_up,  out scale_down);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_image_scalable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out scale_up,  out scale_down);
+      }
+   }
+   private static efl_ui_image_scalable_get_delegate efl_ui_image_scalable_get_static_delegate;
+
+
+    private delegate  void efl_ui_image_scalable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool scale_up,  [MarshalAs(UnmanagedType.U1)]  bool scale_down);
+
+
+    public delegate  void efl_ui_image_scalable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool scale_up,  [MarshalAs(UnmanagedType.U1)]  bool scale_down);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_scalable_set_api_delegate> efl_ui_image_scalable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_scalable_set_api_delegate>(_Module, "efl_ui_image_scalable_set");
+    private static  void scalable_set(System.IntPtr obj, System.IntPtr pd,  bool scale_up,  bool scale_down)
+   {
+      Eina.Log.Debug("function efl_ui_image_scalable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Image)wrapper).SetScalable( scale_up,  scale_down);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_image_scalable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale_up,  scale_down);
+      }
+   }
+   private static efl_ui_image_scalable_set_delegate efl_ui_image_scalable_set_static_delegate;
+
+
+    private delegate  void efl_ui_image_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_x,   out double align_y);
+
+
+    public delegate  void efl_ui_image_align_get_api_delegate(System.IntPtr obj,   out double align_x,   out double align_y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_align_get_api_delegate> efl_ui_image_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_align_get_api_delegate>(_Module, "efl_ui_image_align_get");
+    private static  void align_get(System.IntPtr obj, System.IntPtr pd,  out double align_x,  out double align_y)
+   {
+      Eina.Log.Debug("function efl_ui_image_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_x = default(double);      align_y = default(double);                     
+         try {
+            ((Image)wrapper).GetAlign( out align_x,  out align_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_image_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_x,  out align_y);
+      }
+   }
+   private static efl_ui_image_align_get_delegate efl_ui_image_align_get_static_delegate;
+
+
+    private delegate  void efl_ui_image_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_x,   double align_y);
+
+
+    public delegate  void efl_ui_image_align_set_api_delegate(System.IntPtr obj,   double align_x,   double align_y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_align_set_api_delegate> efl_ui_image_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_align_set_api_delegate>(_Module, "efl_ui_image_align_set");
+    private static  void align_set(System.IntPtr obj, System.IntPtr pd,  double align_x,  double align_y)
+   {
+      Eina.Log.Debug("function efl_ui_image_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Image)wrapper).SetAlign( align_x,  align_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_image_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_x,  align_y);
+      }
+   }
+   private static efl_ui_image_align_set_delegate efl_ui_image_align_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_image_icon_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_image_icon_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_icon_get_api_delegate> efl_ui_image_icon_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_icon_get_api_delegate>(_Module, "efl_ui_image_icon_get");
+    private static  System.String icon_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_image_icon_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Image)wrapper).GetIcon();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_image_icon_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_image_icon_get_delegate efl_ui_image_icon_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_image_icon_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_image_icon_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_icon_set_api_delegate> efl_ui_image_icon_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_icon_set_api_delegate>(_Module, "efl_ui_image_icon_set");
+    private static bool icon_set(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_ui_image_icon_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).SetIcon( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_image_icon_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_ui_image_icon_set_delegate efl_ui_image_icon_set_static_delegate;
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((Image)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Image)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Image)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Image)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Image)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Image)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    private delegate Efl.Orient efl_orientation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Orient efl_orientation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_get_api_delegate> efl_orientation_get_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_get_api_delegate>(_Module, "efl_orientation_get");
+    private static Efl.Orient orientation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_orientation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Orient _ret_var = default(Efl.Orient);
+         try {
+            _ret_var = ((Image)wrapper).GetOrientation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_orientation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_orientation_get_delegate efl_orientation_get_static_delegate;
+
+
+    private delegate  void efl_orientation_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Orient dir);
+
+
+    public delegate  void efl_orientation_set_api_delegate(System.IntPtr obj,   Efl.Orient dir);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_set_api_delegate> efl_orientation_set_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_set_api_delegate>(_Module, "efl_orientation_set");
+    private static  void orientation_set(System.IntPtr obj, System.IntPtr pd,  Efl.Orient dir)
+   {
+      Eina.Log.Debug("function efl_orientation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetOrientation( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_orientation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_orientation_set_delegate efl_orientation_set_static_delegate;
+
+
+    private delegate Efl.Flip efl_orientation_flip_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Flip efl_orientation_flip_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_flip_get_api_delegate> efl_orientation_flip_get_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_flip_get_api_delegate>(_Module, "efl_orientation_flip_get");
+    private static Efl.Flip flip_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_orientation_flip_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Flip _ret_var = default(Efl.Flip);
+         try {
+            _ret_var = ((Image)wrapper).GetFlip();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_orientation_flip_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_orientation_flip_get_delegate efl_orientation_flip_get_static_delegate;
+
+
+    private delegate  void efl_orientation_flip_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Flip flip);
+
+
+    public delegate  void efl_orientation_flip_set_api_delegate(System.IntPtr obj,   Efl.Flip flip);
+    public static Efl.Eo.FunctionWrapper<efl_orientation_flip_set_api_delegate> efl_orientation_flip_set_ptr = new Efl.Eo.FunctionWrapper<efl_orientation_flip_set_api_delegate>(_Module, "efl_orientation_flip_set");
+    private static  void flip_set(System.IntPtr obj, System.IntPtr pd,  Efl.Flip flip)
+   {
+      Eina.Log.Debug("function efl_orientation_flip_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetFlip( flip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_orientation_flip_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  flip);
+      }
+   }
+   private static efl_orientation_flip_set_delegate efl_orientation_flip_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_playable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_playable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate> efl_player_playable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate>(_Module, "efl_player_playable_get");
+    private static bool playable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_playable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetPlayable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_playable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_playable_get_delegate efl_player_playable_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_play_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_play_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate> efl_player_play_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate>(_Module, "efl_player_play_get");
+    private static bool play_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetPlay();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_get_delegate efl_player_play_get_static_delegate;
+
+
+    private delegate  void efl_player_play_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool play);
+
+
+    public delegate  void efl_player_play_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool play);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate> efl_player_play_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate>(_Module, "efl_player_play_set");
+    private static  void play_set(System.IntPtr obj, System.IntPtr pd,  bool play)
+   {
+      Eina.Log.Debug("function efl_player_play_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetPlay( play);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  play);
+      }
+   }
+   private static efl_player_play_set_delegate efl_player_play_set_static_delegate;
+
+
+    private delegate double efl_player_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate> efl_player_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate>(_Module, "efl_player_pos_get");
+    private static double pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_pos_get_delegate efl_player_pos_get_static_delegate;
+
+
+    private delegate  void efl_player_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   double sec);
+
+
+    public delegate  void efl_player_pos_set_api_delegate(System.IntPtr obj,   double sec);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate> efl_player_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate>(_Module, "efl_player_pos_set");
+    private static  void pos_set(System.IntPtr obj, System.IntPtr pd,  double sec)
+   {
+      Eina.Log.Debug("function efl_player_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetPos( sec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sec);
+      }
+   }
+   private static efl_player_pos_set_delegate efl_player_pos_set_static_delegate;
+
+
+    private delegate double efl_player_progress_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_progress_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate> efl_player_progress_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate>(_Module, "efl_player_progress_get");
+    private static double progress_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_progress_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetProgress();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_progress_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_progress_get_delegate efl_player_progress_get_static_delegate;
+
+
+    private delegate double efl_player_play_speed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_play_speed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate> efl_player_play_speed_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate>(_Module, "efl_player_play_speed_get");
+    private static double play_speed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetPlaySpeed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_speed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_speed_get_delegate efl_player_play_speed_get_static_delegate;
+
+
+    private delegate  void efl_player_play_speed_set_delegate(System.IntPtr obj, System.IntPtr pd,   double speed);
+
+
+    public delegate  void efl_player_play_speed_set_api_delegate(System.IntPtr obj,   double speed);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate> efl_player_play_speed_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate>(_Module, "efl_player_play_speed_set");
+    private static  void play_speed_set(System.IntPtr obj, System.IntPtr pd,  double speed)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetPlaySpeed( speed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_speed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  speed);
+      }
+   }
+   private static efl_player_play_speed_set_delegate efl_player_play_speed_set_static_delegate;
+
+
+    private delegate double efl_player_volume_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_volume_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate> efl_player_volume_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate>(_Module, "efl_player_volume_get");
+    private static double volume_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_volume_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetVolume();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_volume_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_volume_get_delegate efl_player_volume_get_static_delegate;
+
+
+    private delegate  void efl_player_volume_set_delegate(System.IntPtr obj, System.IntPtr pd,   double volume);
+
+
+    public delegate  void efl_player_volume_set_api_delegate(System.IntPtr obj,   double volume);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate> efl_player_volume_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate>(_Module, "efl_player_volume_set");
+    private static  void volume_set(System.IntPtr obj, System.IntPtr pd,  double volume)
+   {
+      Eina.Log.Debug("function efl_player_volume_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetVolume( volume);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_volume_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  volume);
+      }
+   }
+   private static efl_player_volume_set_delegate efl_player_volume_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_mute_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_mute_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate> efl_player_mute_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate>(_Module, "efl_player_mute_get");
+    private static bool mute_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_mute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetMute();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_mute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_mute_get_delegate efl_player_mute_get_static_delegate;
+
+
+    private delegate  void efl_player_mute_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+
+
+    public delegate  void efl_player_mute_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate> efl_player_mute_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate>(_Module, "efl_player_mute_set");
+    private static  void mute_set(System.IntPtr obj, System.IntPtr pd,  bool mute)
+   {
+      Eina.Log.Debug("function efl_player_mute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetMute( mute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_mute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mute);
+      }
+   }
+   private static efl_player_mute_set_delegate efl_player_mute_set_static_delegate;
+
+
+    private delegate double efl_player_length_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_length_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate> efl_player_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate>(_Module, "efl_player_length_get");
+    private static double length_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetLength();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_length_get_delegate efl_player_length_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_seekable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_seekable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate> efl_player_seekable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate>(_Module, "efl_player_seekable_get");
+    private static bool seekable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_seekable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetSeekable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_seekable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_seekable_get_delegate efl_player_seekable_get_static_delegate;
+
+
+    private delegate  void efl_player_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_start_api_delegate> efl_player_start_ptr = new Efl.Eo.FunctionWrapper<efl_player_start_api_delegate>(_Module, "efl_player_start");
+    private static  void start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).Start();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_start_delegate efl_player_start_static_delegate;
+
+
+    private delegate  void efl_player_stop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_stop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate> efl_player_stop_ptr = new Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate>(_Module, "efl_player_stop");
+    private static  void stop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_stop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).Stop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_stop_delegate efl_player_stop_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_smooth_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_smooth_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate> efl_gfx_image_smooth_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate>(_Module, "efl_gfx_image_smooth_scale_get");
+    private static bool smooth_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetSmoothScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_smooth_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_smooth_scale_get_delegate efl_gfx_image_smooth_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_smooth_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+
+
+    public delegate  void efl_gfx_image_smooth_scale_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate> efl_gfx_image_smooth_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate>(_Module, "efl_gfx_image_smooth_scale_set");
+    private static  void smooth_scale_set(System.IntPtr obj, System.IntPtr pd,  bool smooth_scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetSmoothScale( smooth_scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_smooth_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  smooth_scale);
+      }
+   }
+   private static efl_gfx_image_smooth_scale_set_delegate efl_gfx_image_smooth_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate> efl_gfx_image_scale_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate>(_Module, "efl_gfx_image_scale_type_get");
+    private static Efl.Gfx.ImageScaleType scale_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleType _ret_var = default(Efl.Gfx.ImageScaleType);
+         try {
+            _ret_var = ((Image)wrapper).GetScaleType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_type_get_delegate efl_gfx_image_scale_type_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleType scale_type);
+
+
+    public delegate  void efl_gfx_image_scale_type_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleType scale_type);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate> efl_gfx_image_scale_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate>(_Module, "efl_gfx_image_scale_type_set");
+    private static  void scale_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleType scale_type)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetScaleType( scale_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale_type);
+      }
+   }
+   private static efl_gfx_image_scale_type_set_delegate efl_gfx_image_scale_type_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_ratio_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_ratio_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate> efl_gfx_image_ratio_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate>(_Module, "efl_gfx_image_ratio_get");
+    private static double ratio_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_ratio_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetRatio();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_ratio_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_ratio_get_delegate efl_gfx_image_ratio_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_image_border_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate> efl_gfx_image_border_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate>(_Module, "efl_gfx_image_border_get");
+    private static  void border_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((Image)wrapper).GetBorder( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_image_border_get_delegate efl_gfx_image_border_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_set_delegate(System.IntPtr obj, System.IntPtr pd,    int l,    int r,    int t,    int b);
+
+
+    public delegate  void efl_gfx_image_border_set_api_delegate(System.IntPtr obj,    int l,    int r,    int t,    int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate> efl_gfx_image_border_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate>(_Module, "efl_gfx_image_border_set");
+    private static  void border_set(System.IntPtr obj, System.IntPtr pd,   int l,   int r,   int t,   int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Image)wrapper).SetBorder( l,  r,  t,  b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l,  r,  t,  b);
+      }
+   }
+   private static efl_gfx_image_border_set_delegate efl_gfx_image_border_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_border_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_border_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate> efl_gfx_image_border_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate>(_Module, "efl_gfx_image_border_scale_get");
+    private static double border_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetBorderScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_scale_get_delegate efl_gfx_image_border_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_image_border_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate> efl_gfx_image_border_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate>(_Module, "efl_gfx_image_border_scale_set");
+    private static  void border_scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetBorderScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_image_border_scale_set_delegate efl_gfx_image_border_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate> efl_gfx_image_border_center_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate>(_Module, "efl_gfx_image_border_center_fill_get");
+    private static Efl.Gfx.BorderFillMode border_center_fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.BorderFillMode _ret_var = default(Efl.Gfx.BorderFillMode);
+         try {
+            _ret_var = ((Image)wrapper).GetBorderCenterFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_center_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_center_fill_get_delegate efl_gfx_image_border_center_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_center_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.BorderFillMode fill);
+
+
+    public delegate  void efl_gfx_image_border_center_fill_set_api_delegate(System.IntPtr obj,   Efl.Gfx.BorderFillMode fill);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate> efl_gfx_image_border_center_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate>(_Module, "efl_gfx_image_border_center_fill_set");
+    private static  void border_center_fill_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.BorderFillMode fill)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetBorderCenterFill( fill);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_center_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill);
+      }
+   }
+   private static efl_gfx_image_border_center_fill_set_delegate efl_gfx_image_border_center_fill_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate> efl_gfx_image_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate>(_Module, "efl_gfx_image_size_get");
+    private static Eina.Size2D_StructInternal image_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).GetImageSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_size_get_delegate efl_gfx_image_size_get_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate> efl_gfx_image_content_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate>(_Module, "efl_gfx_image_content_hint_get");
+    private static Efl.Gfx.ImageContentHint content_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageContentHint _ret_var = default(Efl.Gfx.ImageContentHint);
+         try {
+            _ret_var = ((Image)wrapper).GetContentHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_content_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_content_hint_get_delegate efl_gfx_image_content_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_content_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageContentHint hint);
+
+
+    public delegate  void efl_gfx_image_content_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageContentHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate> efl_gfx_image_content_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate>(_Module, "efl_gfx_image_content_hint_set");
+    private static  void content_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageContentHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetContentHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_content_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_content_hint_set_delegate efl_gfx_image_content_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate> efl_gfx_image_scale_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate>(_Module, "efl_gfx_image_scale_hint_get");
+    private static Efl.Gfx.ImageScaleHint scale_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleHint _ret_var = default(Efl.Gfx.ImageScaleHint);
+         try {
+            _ret_var = ((Image)wrapper).GetScaleHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_hint_get_delegate efl_gfx_image_scale_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleHint hint);
+
+
+    public delegate  void efl_gfx_image_scale_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate> efl_gfx_image_scale_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate>(_Module, "efl_gfx_image_scale_hint_set");
+    private static  void scale_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetScaleHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_scale_hint_set_delegate efl_gfx_image_scale_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate> efl_gfx_image_load_error_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate>(_Module, "efl_gfx_image_load_error_get");
+    private static Efl.Gfx.ImageLoadError image_load_error_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_error_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageLoadError _ret_var = default(Efl.Gfx.ImageLoadError);
+         try {
+            _ret_var = ((Image)wrapper).GetImageLoadError();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_error_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_error_get_delegate efl_gfx_image_load_error_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_load_controller_load_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate> efl_gfx_image_load_controller_load_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_get");
+    private static Eina.Size2D_StructInternal load_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_get_delegate efl_gfx_image_load_controller_load_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate> efl_gfx_image_load_controller_load_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_size_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_size_set");
+    private static  void load_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Image)wrapper).SetLoadSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_size_set_delegate efl_gfx_image_load_controller_load_size_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_load_controller_load_dpi_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_load_controller_load_dpi_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate> efl_gfx_image_load_controller_load_dpi_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_get");
+    private static double load_dpi_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadDpi();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_dpi_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_get_delegate efl_gfx_image_load_controller_load_dpi_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_dpi_set_delegate(System.IntPtr obj, System.IntPtr pd,   double dpi);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_dpi_set_api_delegate(System.IntPtr obj,   double dpi);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate> efl_gfx_image_load_controller_load_dpi_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_dpi_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_dpi_set");
+    private static  void load_dpi_set(System.IntPtr obj, System.IntPtr pd,  double dpi)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_dpi_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadDpi( dpi);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_dpi_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dpi);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_dpi_set_delegate efl_gfx_image_load_controller_load_dpi_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_region_support_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_region_support_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate> efl_gfx_image_load_controller_load_region_support_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_support_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_support_get");
+    private static bool load_region_support_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_support_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadRegionSupport();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_region_support_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_support_get_delegate efl_gfx_image_load_controller_load_region_support_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_image_load_controller_load_region_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate> efl_gfx_image_load_controller_load_region_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_get");
+    private static Eina.Rect_StructInternal load_region_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadRegion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_load_controller_load_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_get_delegate efl_gfx_image_load_controller_load_region_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_region_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal region);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_region_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal region);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate> efl_gfx_image_load_controller_load_region_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_region_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_region_set");
+    private static  void load_region_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal region)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                     
+         try {
+            ((Image)wrapper).SetLoadRegion( _in_region);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  region);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_region_set_delegate efl_gfx_image_load_controller_load_region_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_orientation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_orientation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate> efl_gfx_image_load_controller_load_orientation_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_get");
+    private static bool load_orientation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadOrientation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_orientation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_get_delegate efl_gfx_image_load_controller_load_orientation_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_orientation_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_orientation_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate> efl_gfx_image_load_controller_load_orientation_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_orientation_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_orientation_set");
+    private static  void load_orientation_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_orientation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadOrientation( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_orientation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_orientation_set_delegate efl_gfx_image_load_controller_load_orientation_set_static_delegate;
+
+
+    private delegate  int efl_gfx_image_load_controller_load_scale_down_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_gfx_image_load_controller_load_scale_down_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate> efl_gfx_image_load_controller_load_scale_down_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_get");
+    private static  int load_scale_down_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadScaleDown();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_scale_down_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_get_delegate efl_gfx_image_load_controller_load_scale_down_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_scale_down_set_delegate(System.IntPtr obj, System.IntPtr pd,    int div);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_scale_down_set_api_delegate(System.IntPtr obj,    int div);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate> efl_gfx_image_load_controller_load_scale_down_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_scale_down_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_scale_down_set");
+    private static  void load_scale_down_set(System.IntPtr obj, System.IntPtr pd,   int div)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_scale_down_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadScaleDown( div);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_scale_down_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  div);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_scale_down_set_delegate efl_gfx_image_load_controller_load_scale_down_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_load_controller_load_skip_header_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_load_controller_load_skip_header_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate> efl_gfx_image_load_controller_load_skip_header_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_get_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_get");
+    private static bool load_skip_header_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetLoadSkipHeader();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_controller_load_skip_header_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_get_delegate efl_gfx_image_load_controller_load_skip_header_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_skip_header_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_skip_header_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate> efl_gfx_image_load_controller_load_skip_header_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_skip_header_set_api_delegate>(_Module, "efl_gfx_image_load_controller_load_skip_header_set");
+    private static  void load_skip_header_set(System.IntPtr obj, System.IntPtr pd,  bool skip)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_skip_header_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetLoadSkipHeader( skip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_load_controller_load_skip_header_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  skip);
+      }
+   }
+   private static efl_gfx_image_load_controller_load_skip_header_set_delegate efl_gfx_image_load_controller_load_skip_header_set_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate> efl_gfx_image_load_controller_load_async_start_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_start_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_start");
+    private static  void load_async_start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).LoadAsyncStart();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_start_delegate efl_gfx_image_load_controller_load_async_start_static_delegate;
+
+
+    private delegate  void efl_gfx_image_load_controller_load_async_cancel_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_image_load_controller_load_async_cancel_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate> efl_gfx_image_load_controller_load_async_cancel_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_controller_load_async_cancel_api_delegate>(_Module, "efl_gfx_image_load_controller_load_async_cancel");
+    private static  void load_async_cancel(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_controller_load_async_cancel was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).LoadAsyncCancel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_image_load_controller_load_async_cancel_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_controller_load_async_cancel_delegate efl_gfx_image_load_controller_load_async_cancel_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_view_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_view_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_view_size_get_api_delegate> efl_gfx_view_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_view_size_get_api_delegate>(_Module, "efl_gfx_view_size_get");
+    private static Eina.Size2D_StructInternal view_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_view_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).GetViewSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_view_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_view_size_get_delegate efl_gfx_view_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_view_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_view_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_view_size_set_api_delegate> efl_gfx_view_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_view_size_set_api_delegate>(_Module, "efl_gfx_view_size_set");
+    private static  void view_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_view_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Image)wrapper).SetViewSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_view_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_view_size_set_delegate efl_gfx_view_size_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_calc_auto_update_hints_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_calc_auto_update_hints_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate> efl_layout_calc_auto_update_hints_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_get");
+    private static bool calc_auto_update_hints_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetCalcAutoUpdateHints();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_get_delegate efl_layout_calc_auto_update_hints_get_static_delegate;
+
+
+    private delegate  void efl_layout_calc_auto_update_hints_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool update);
+
+
+    public delegate  void efl_layout_calc_auto_update_hints_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool update);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate> efl_layout_calc_auto_update_hints_set_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_set");
+    private static  void calc_auto_update_hints_set(System.IntPtr obj, System.IntPtr pd,  bool update)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetCalcAutoUpdateHints( update);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  update);
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_set_delegate efl_layout_calc_auto_update_hints_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal restricted);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal restricted);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate> efl_layout_calc_size_min_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate>(_Module, "efl_layout_calc_size_min");
+    private static Eina.Size2D_StructInternal calc_size_min(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal restricted)
+   {
+      Eina.Log.Debug("function efl_layout_calc_size_min was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_restricted = Eina.Size2D_StructConversion.ToManaged(restricted);
+                     Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).CalcSizeMin( _in_restricted);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_size_min_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  restricted);
+      }
+   }
+   private static efl_layout_calc_size_min_delegate efl_layout_calc_size_min_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate> efl_layout_calc_parts_extends_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate>(_Module, "efl_layout_calc_parts_extends");
+    private static Eina.Rect_StructInternal calc_parts_extends(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_parts_extends was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Image)wrapper).CalcPartsExtends();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_parts_extends_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_parts_extends_delegate efl_layout_calc_parts_extends_static_delegate;
+
+
+    private delegate  int efl_layout_calc_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate> efl_layout_calc_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate>(_Module, "efl_layout_calc_freeze");
+    private static  int calc_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Image)wrapper).FreezeCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_freeze_delegate efl_layout_calc_freeze_static_delegate;
+
+
+    private delegate  int efl_layout_calc_thaw_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_thaw_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate> efl_layout_calc_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate>(_Module, "efl_layout_calc_thaw");
+    private static  int calc_thaw(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_thaw was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Image)wrapper).ThawCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_thaw_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_thaw_delegate efl_layout_calc_thaw_static_delegate;
+
+
+    private delegate  void efl_layout_calc_force_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_layout_calc_force_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate> efl_layout_calc_force_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate>(_Module, "efl_layout_calc_force");
+    private static  void calc_force(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_force was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Image)wrapper).CalcForce();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_layout_calc_force_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_force_delegate efl_layout_calc_force_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate> efl_layout_group_size_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate>(_Module, "efl_layout_group_size_min_get");
+    private static Eina.Size2D_StructInternal group_size_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).GetGroupSizeMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_min_get_delegate efl_layout_group_size_min_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate> efl_layout_group_size_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate>(_Module, "efl_layout_group_size_max_get");
+    private static Eina.Size2D_StructInternal group_size_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Image)wrapper).GetGroupSizeMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_max_get_delegate efl_layout_group_size_max_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_layout_group_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_layout_group_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate> efl_layout_group_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate>(_Module, "efl_layout_group_data_get");
+    private static  System.String group_data_get(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_layout_group_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Image)wrapper).GetGroupData( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_layout_group_data_get_delegate efl_layout_group_data_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_group_part_exist_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_group_part_exist_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate> efl_layout_group_part_exist_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate>(_Module, "efl_layout_group_part_exist_get");
+    private static bool part_exist_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_layout_group_part_exist_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetPartExist( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_part_exist_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_layout_group_part_exist_get_delegate efl_layout_group_part_exist_get_static_delegate;
+
+
+    private delegate  void efl_layout_signal_message_send_delegate(System.IntPtr obj, System.IntPtr pd,    int id,    Eina.ValueNative msg);
+
+
+    public delegate  void efl_layout_signal_message_send_api_delegate(System.IntPtr obj,    int id,    Eina.ValueNative msg);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate> efl_layout_signal_message_send_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate>(_Module, "efl_layout_signal_message_send");
+    private static  void message_send(System.IntPtr obj, System.IntPtr pd,   int id,   Eina.ValueNative msg)
+   {
+      Eina.Log.Debug("function efl_layout_signal_message_send was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Image)wrapper).MessageSend( id,  msg);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_message_send_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id,  msg);
+      }
+   }
+   private static efl_layout_signal_message_send_delegate efl_layout_signal_message_send_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate> efl_layout_signal_callback_add_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate>(_Module, "efl_layout_signal_callback_add");
+    private static bool signal_callback_add(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).AddSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_add_delegate efl_layout_signal_callback_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate> efl_layout_signal_callback_del_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate>(_Module, "efl_layout_signal_callback_del");
+    private static bool signal_callback_del(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).DelSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_del_delegate efl_layout_signal_callback_del_static_delegate;
+
+
+    private delegate  void efl_layout_signal_emit_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+
+
+    public delegate  void efl_layout_signal_emit_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate> efl_layout_signal_emit_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate>(_Module, "efl_layout_signal_emit");
+    private static  void signal_emit(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source)
+   {
+      Eina.Log.Debug("function efl_layout_signal_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Image)wrapper).EmitSignal( emission,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_emit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source);
+      }
+   }
+   private static efl_layout_signal_emit_delegate efl_layout_signal_emit_static_delegate;
+
+
+    private delegate  void efl_layout_signal_process_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+
+
+    public delegate  void efl_layout_signal_process_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate> efl_layout_signal_process_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate>(_Module, "efl_layout_signal_process");
+    private static  void signal_process(System.IntPtr obj, System.IntPtr pd,  bool recurse)
+   {
+      Eina.Log.Debug("function efl_layout_signal_process was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SignalProcess( recurse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_signal_process_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  recurse);
+      }
+   }
+   private static efl_layout_signal_process_delegate efl_layout_signal_process_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_draggable_drag_target_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_draggable_drag_target_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_get_api_delegate> efl_ui_draggable_drag_target_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_get_api_delegate>(_Module, "efl_ui_draggable_drag_target_get");
+    private static bool drag_target_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_draggable_drag_target_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Image)wrapper).GetDragTarget();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_draggable_drag_target_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_draggable_drag_target_get_delegate efl_ui_draggable_drag_target_get_static_delegate;
+
+
+    private delegate  void efl_ui_draggable_drag_target_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool set);
+
+
+    public delegate  void efl_ui_draggable_drag_target_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool set);
+    public static Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_set_api_delegate> efl_ui_draggable_drag_target_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_draggable_drag_target_set_api_delegate>(_Module, "efl_ui_draggable_drag_target_set");
+    private static  void drag_target_set(System.IntPtr obj, System.IntPtr pd,  bool set)
+   {
+      Eina.Log.Debug("function efl_ui_draggable_drag_target_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetDragTarget( set);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_draggable_drag_target_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  set);
+      }
+   }
+   private static efl_ui_draggable_drag_target_set_delegate efl_ui_draggable_drag_target_set_static_delegate;
+
+
+    private delegate  void efl_ui_property_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    public delegate  void efl_ui_property_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate> efl_ui_property_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate>(_Module, "efl_ui_property_bind");
+    private static  void property_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String property)
+   {
+      Eina.Log.Debug("function efl_ui_property_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Image)wrapper).PropertyBind( key,  property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_property_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  property);
+      }
+   }
+   private static efl_ui_property_bind_delegate efl_ui_property_bind_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Model efl_ui_view_model_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Model efl_ui_view_model_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate> efl_ui_view_model_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate>(_Module, "efl_ui_view_model_get");
+    private static Efl.Model model_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Model _ret_var = default(Efl.Model);
+         try {
+            _ret_var = ((Image)wrapper).GetModel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_view_model_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_view_model_get_delegate efl_ui_view_model_get_static_delegate;
+
+
+    private delegate  void efl_ui_view_model_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+
+
+    public delegate  void efl_ui_view_model_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate> efl_ui_view_model_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate>(_Module, "efl_ui_view_model_set");
+    private static  void model_set(System.IntPtr obj, System.IntPtr pd,  Efl.Model model)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Image)wrapper).SetModel( model);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_view_model_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  model);
+      }
+   }
+   private static efl_ui_view_model_set_delegate efl_ui_view_model_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Structure associated with smart callback &apos;download,progress&apos;.
+/// 1.8</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ImageProgress
+{
+   /// <summary>Current percentage</summary>
+   public double Now;
+   /// <summary>Total percentage</summary>
+   public double Total;
+   ///<summary>Constructor for ImageProgress.</summary>
+   public ImageProgress(
+      double Now=default(double),
+      double Total=default(double)   )
+   {
+      this.Now = Now;
+      this.Total = Total;
+   }
+public static implicit operator ImageProgress(IntPtr ptr)
+   {
+      var tmp = (ImageProgress_StructInternal)Marshal.PtrToStructure(ptr, typeof(ImageProgress_StructInternal));
+      return ImageProgress_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ImageProgress.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ImageProgress_StructInternal
+{
+   
+   public double Now;
+   
+   public double Total;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ImageProgress(ImageProgress_StructInternal struct_)
+   {
+      return ImageProgress_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ImageProgress_StructInternal(ImageProgress struct_)
+   {
+      return ImageProgress_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ImageProgress</summary>
+public static class ImageProgress_StructConversion
+{
+   internal static ImageProgress_StructInternal ToInternal(ImageProgress _external_struct)
+   {
+      var _internal_struct = new ImageProgress_StructInternal();
+
+      _internal_struct.Now = _external_struct.Now;
+      _internal_struct.Total = _external_struct.Total;
+
+      return _internal_struct;
+   }
+
+   internal static ImageProgress ToManaged(ImageProgress_StructInternal _internal_struct)
+   {
+      var _external_struct = new ImageProgress();
+
+      _external_struct.Now = _internal_struct.Now;
+      _external_struct.Total = _internal_struct.Total;
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Structure associated with smart callback &apos;download,progress&apos;.
+/// 1.8</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ImageError
+{
+   /// <summary>Error status of the download</summary>
+   public  int Status;
+   /// <summary><c>true</c> if the error happened when opening the file, <c>false</c> otherwise</summary>
+   public bool Open_error;
+   ///<summary>Constructor for ImageError.</summary>
+   public ImageError(
+       int Status=default( int),
+      bool Open_error=default(bool)   )
+   {
+      this.Status = Status;
+      this.Open_error = Open_error;
+   }
+public static implicit operator ImageError(IntPtr ptr)
+   {
+      var tmp = (ImageError_StructInternal)Marshal.PtrToStructure(ptr, typeof(ImageError_StructInternal));
+      return ImageError_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ImageError.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ImageError_StructInternal
+{
+   
+   public  int Status;
+///<summary>Internal wrapper for field Open_error</summary>
+public System.Byte Open_error;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ImageError(ImageError_StructInternal struct_)
+   {
+      return ImageError_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ImageError_StructInternal(ImageError struct_)
+   {
+      return ImageError_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ImageError</summary>
+public static class ImageError_StructConversion
+{
+   internal static ImageError_StructInternal ToInternal(ImageError _external_struct)
+   {
+      var _internal_struct = new ImageError_StructInternal();
+
+      _internal_struct.Status = _external_struct.Status;
+      _internal_struct.Open_error = _external_struct.Open_error ? (byte)1 : (byte)0;
+
+      return _internal_struct;
+   }
+
+   internal static ImageError ToManaged(ImageError_StructInternal _internal_struct)
+   {
+      var _external_struct = new ImageError();
+
+      _external_struct.Status = _internal_struct.Status;
+      _external_struct.Open_error = _internal_struct.Open_error != 0;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_image_factory.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_image_factory.eo.cs
new file mode 100755 (executable)
index 0000000..f2abb80
--- /dev/null
@@ -0,0 +1,94 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI image factory class</summary>
+[ImageFactoryNativeInherit]
+public class ImageFactory : Efl.Ui.CachingFactory, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ImageFactoryNativeInherit nativeInherit = new Efl.Ui.ImageFactoryNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ImageFactory))
+            return Efl.Ui.ImageFactoryNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_image_factory_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="itemClass">Define the class of the item returned by this factory. See <see cref="Efl.Ui.WidgetFactory.SetItemClass"/></param>
+   public ImageFactory(Efl.Object parent
+         , Type itemClass = null) :
+      base(efl_ui_image_factory_class_get(), typeof(ImageFactory), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(itemClass))
+         SetItemClass(Efl.Eo.Globals.GetParamHelper(itemClass));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ImageFactory(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ImageFactory(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ImageFactory static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ImageFactory(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ImageFactory.efl_ui_image_factory_class_get();
+   }
+}
+public class ImageFactoryNativeInherit : Efl.Ui.CachingFactoryNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ImageFactory.efl_ui_image_factory_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ImageFactory.efl_ui_image_factory_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_image_zoomable.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_image_zoomable.eo.cs
new file mode 100755 (executable)
index 0000000..925d222
--- /dev/null
@@ -0,0 +1,3107 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ImageZoomable.DownloadProgressEvt"/>.</summary>
+public class ImageZoomableDownloadProgressEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.Photocam.Progress arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ImageZoomable.DownloadErrorEvt"/>.</summary>
+public class ImageZoomableDownloadErrorEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.Photocam.Error arg { get; set; }
+}
+/// <summary>Elementary Image Zoomable class</summary>
+[ImageZoomableNativeInherit]
+public class ImageZoomable : Efl.Ui.Image, Efl.Eo.IWrapper,Efl.Ui.Scrollable,Efl.Ui.ScrollableInteractive,Efl.Ui.Scrollbar,Efl.Ui.Zoom
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ImageZoomableNativeInherit nativeInherit = new Efl.Ui.ImageZoomableNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ImageZoomable))
+            return Efl.Ui.ImageZoomableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_image_zoomable_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public ImageZoomable(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_image_zoomable_class_get(), typeof(ImageZoomable), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ImageZoomable(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ImageZoomable(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ImageZoomable static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ImageZoomable(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PressEvtKey = new object();
+   /// <summary>Called when photocam got pressed</summary>
+   public event EventHandler PressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PressEvt_delegate)) {
+               eventHandlers.AddHandler(PressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_PressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressEvt.</summary>
+   public void On_PressEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressEvt_delegate;
+   private void on_PressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadEvtKey = new object();
+   /// <summary>Called when photocam loading started</summary>
+   public event EventHandler LoadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOAD";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_LoadEvt_delegate)) {
+               eventHandlers.AddHandler(LoadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOAD";
+            if (remove_cpp_event_handler(key, this.evt_LoadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadEvt.</summary>
+   public void On_LoadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadEvt_delegate;
+   private void on_LoadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadedEvtKey = new object();
+   /// <summary>Called when photocam loading finished</summary>
+   public event EventHandler LoadedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOADED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_LoadedEvt_delegate)) {
+               eventHandlers.AddHandler(LoadedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOADED";
+            if (remove_cpp_event_handler(key, this.evt_LoadedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadedEvt.</summary>
+   public void On_LoadedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadedEvt_delegate;
+   private void on_LoadedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadDetailEvtKey = new object();
+   /// <summary>Called when photocal detail loading started</summary>
+   public event EventHandler LoadDetailEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOAD_DETAIL";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_LoadDetailEvt_delegate)) {
+               eventHandlers.AddHandler(LoadDetailEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOAD_DETAIL";
+            if (remove_cpp_event_handler(key, this.evt_LoadDetailEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadDetailEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadDetailEvt.</summary>
+   public void On_LoadDetailEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadDetailEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadDetailEvt_delegate;
+   private void on_LoadDetailEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadDetailEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LoadedDetailEvtKey = new object();
+   /// <summary>Called when photocam detail loading finished</summary>
+   public event EventHandler LoadedDetailEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOADED_DETAIL";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_LoadedDetailEvt_delegate)) {
+               eventHandlers.AddHandler(LoadedDetailEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_LOADED_DETAIL";
+            if (remove_cpp_event_handler(key, this.evt_LoadedDetailEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadedDetailEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadedDetailEvt.</summary>
+   public void On_LoadedDetailEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LoadedDetailEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadedDetailEvt_delegate;
+   private void on_LoadedDetailEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LoadedDetailEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DownloadStartEvtKey = new object();
+   /// <summary>Called when photocam download started</summary>
+   public event EventHandler DownloadStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_START";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DownloadStartEvt_delegate)) {
+               eventHandlers.AddHandler(DownloadStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_START";
+            if (remove_cpp_event_handler(key, this.evt_DownloadStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DownloadStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DownloadStartEvt.</summary>
+   public void On_DownloadStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DownloadStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DownloadStartEvt_delegate;
+   private void on_DownloadStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DownloadStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DownloadProgressEvtKey = new object();
+   /// <summary>Called when photocam download progress updated</summary>
+   public event EventHandler<Efl.Ui.ImageZoomableDownloadProgressEvt_Args> DownloadProgressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_PROGRESS";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DownloadProgressEvt_delegate)) {
+               eventHandlers.AddHandler(DownloadProgressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_PROGRESS";
+            if (remove_cpp_event_handler(key, this.evt_DownloadProgressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DownloadProgressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DownloadProgressEvt.</summary>
+   public void On_DownloadProgressEvt(Efl.Ui.ImageZoomableDownloadProgressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ImageZoomableDownloadProgressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ImageZoomableDownloadProgressEvt_Args>)eventHandlers[DownloadProgressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DownloadProgressEvt_delegate;
+   private void on_DownloadProgressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ImageZoomableDownloadProgressEvt_Args args = new Efl.Ui.ImageZoomableDownloadProgressEvt_Args();
+      args.arg = default(Elm.Photocam.Progress);
+      try {
+         On_DownloadProgressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DownloadDoneEvtKey = new object();
+   /// <summary>Called when photocam download finished</summary>
+   public event EventHandler DownloadDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_DONE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DownloadDoneEvt_delegate)) {
+               eventHandlers.AddHandler(DownloadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_DONE";
+            if (remove_cpp_event_handler(key, this.evt_DownloadDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DownloadDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DownloadDoneEvt.</summary>
+   public void On_DownloadDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DownloadDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DownloadDoneEvt_delegate;
+   private void on_DownloadDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DownloadDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DownloadErrorEvtKey = new object();
+   /// <summary>Called when photocam download failed</summary>
+   public event EventHandler<Efl.Ui.ImageZoomableDownloadErrorEvt_Args> DownloadErrorEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_ERROR";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DownloadErrorEvt_delegate)) {
+               eventHandlers.AddHandler(DownloadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_IMAGE_ZOOMABLE_EVENT_DOWNLOAD_ERROR";
+            if (remove_cpp_event_handler(key, this.evt_DownloadErrorEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DownloadErrorEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DownloadErrorEvt.</summary>
+   public void On_DownloadErrorEvt(Efl.Ui.ImageZoomableDownloadErrorEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ImageZoomableDownloadErrorEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ImageZoomableDownloadErrorEvt_Args>)eventHandlers[DownloadErrorEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DownloadErrorEvt_delegate;
+   private void on_DownloadErrorEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ImageZoomableDownloadErrorEvt_Args args = new Efl.Ui.ImageZoomableDownloadErrorEvt_Args();
+      args.arg = default(Elm.Photocam.Error);
+      try {
+         On_DownloadErrorEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPressEvtKey = new object();
+   /// <summary>Called when bar is pressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPressEvt_delegate)) {
+               eventHandlers.AddHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarPressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPressEvt.</summary>
+   public void On_BarPressEvt(Efl.Ui.ScrollbarBarPressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args>)eventHandlers[BarPressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPressEvt_delegate;
+   private void on_BarPressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarPressEvt_Args args = new Efl.Ui.ScrollbarBarPressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarPressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarUnpressEvtKey = new object();
+   /// <summary>Called when bar is unpressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarUnpressEvt_delegate)) {
+               eventHandlers.AddHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarUnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarUnpressEvt.</summary>
+   public void On_BarUnpressEvt(Efl.Ui.ScrollbarBarUnpressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args>)eventHandlers[BarUnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarUnpressEvt_delegate;
+   private void on_BarUnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarUnpressEvt_Args args = new Efl.Ui.ScrollbarBarUnpressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarUnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarDragEvtKey = new object();
+   /// <summary>Called when bar is dragged</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarDragEvt_delegate)) {
+               eventHandlers.AddHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_BarDragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarDragEvt.</summary>
+   public void On_BarDragEvt(Efl.Ui.ScrollbarBarDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args>)eventHandlers[BarDragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarDragEvt_delegate;
+   private void on_BarDragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarDragEvt_Args args = new Efl.Ui.ScrollbarBarDragEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarDragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarSizeChangedEvtKey = new object();
+   /// <summary>Called when bar size is changed</summary>
+   public event EventHandler BarSizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarSizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarSizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarSizeChangedEvt.</summary>
+   public void On_BarSizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarSizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarSizeChangedEvt_delegate;
+   private void on_BarSizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarSizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPosChangedEvtKey = new object();
+   /// <summary>Called when bar position is changed</summary>
+   public event EventHandler BarPosChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPosChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarPosChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPosChangedEvt.</summary>
+   public void On_BarPosChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarPosChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPosChangedEvt_delegate;
+   private void on_BarPosChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarPosChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarShowEvtKey = new object();
+   /// <summary>Callend when bar is shown</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarShowEvt_delegate)) {
+               eventHandlers.AddHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (remove_cpp_event_handler(key, this.evt_BarShowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarShowEvt.</summary>
+   public void On_BarShowEvt(Efl.Ui.ScrollbarBarShowEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args>)eventHandlers[BarShowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarShowEvt_delegate;
+   private void on_BarShowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarShowEvt_Args args = new Efl.Ui.ScrollbarBarShowEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarShowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarHideEvtKey = new object();
+   /// <summary>Called when bar is hidden</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarHideEvt_delegate)) {
+               eventHandlers.AddHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (remove_cpp_event_handler(key, this.evt_BarHideEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarHideEvt.</summary>
+   public void On_BarHideEvt(Efl.Ui.ScrollbarBarHideEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args>)eventHandlers[BarHideEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarHideEvt_delegate;
+   private void on_BarHideEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarHideEvt_Args args = new Efl.Ui.ScrollbarBarHideEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarHideEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ZoomStartEvtKey = new object();
+   /// <summary>Called when zooming started</summary>
+   public event EventHandler ZoomStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ZoomStartEvt_delegate)) {
+               eventHandlers.AddHandler(ZoomStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_START";
+            if (remove_cpp_event_handler(key, this.evt_ZoomStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ZoomStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ZoomStartEvt.</summary>
+   public void On_ZoomStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ZoomStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ZoomStartEvt_delegate;
+   private void on_ZoomStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ZoomStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ZoomStopEvtKey = new object();
+   /// <summary>Called when zooming stopped</summary>
+   public event EventHandler ZoomStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ZoomStopEvt_delegate)) {
+               eventHandlers.AddHandler(ZoomStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ZoomStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ZoomStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ZoomStopEvt.</summary>
+   public void On_ZoomStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ZoomStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ZoomStopEvt_delegate;
+   private void on_ZoomStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ZoomStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ZoomChangeEvtKey = new object();
+   /// <summary>Called when zooming changed</summary>
+   public event EventHandler ZoomChangeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_CHANGE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ZoomChangeEvt_delegate)) {
+               eventHandlers.AddHandler(ZoomChangeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_CHANGE";
+            if (remove_cpp_event_handler(key, this.evt_ZoomChangeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ZoomChangeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ZoomChangeEvt.</summary>
+   public void On_ZoomChangeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ZoomChangeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ZoomChangeEvt_delegate;
+   private void on_ZoomChangeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ZoomChangeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PressEvt_delegate = new Efl.EventCb(on_PressEvt_NativeCallback);
+      evt_LoadEvt_delegate = new Efl.EventCb(on_LoadEvt_NativeCallback);
+      evt_LoadedEvt_delegate = new Efl.EventCb(on_LoadedEvt_NativeCallback);
+      evt_LoadDetailEvt_delegate = new Efl.EventCb(on_LoadDetailEvt_NativeCallback);
+      evt_LoadedDetailEvt_delegate = new Efl.EventCb(on_LoadedDetailEvt_NativeCallback);
+      evt_DownloadStartEvt_delegate = new Efl.EventCb(on_DownloadStartEvt_NativeCallback);
+      evt_DownloadProgressEvt_delegate = new Efl.EventCb(on_DownloadProgressEvt_NativeCallback);
+      evt_DownloadDoneEvt_delegate = new Efl.EventCb(on_DownloadDoneEvt_NativeCallback);
+      evt_DownloadErrorEvt_delegate = new Efl.EventCb(on_DownloadErrorEvt_NativeCallback);
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_BarPressEvt_delegate = new Efl.EventCb(on_BarPressEvt_NativeCallback);
+      evt_BarUnpressEvt_delegate = new Efl.EventCb(on_BarUnpressEvt_NativeCallback);
+      evt_BarDragEvt_delegate = new Efl.EventCb(on_BarDragEvt_NativeCallback);
+      evt_BarSizeChangedEvt_delegate = new Efl.EventCb(on_BarSizeChangedEvt_NativeCallback);
+      evt_BarPosChangedEvt_delegate = new Efl.EventCb(on_BarPosChangedEvt_NativeCallback);
+      evt_BarShowEvt_delegate = new Efl.EventCb(on_BarShowEvt_NativeCallback);
+      evt_BarHideEvt_delegate = new Efl.EventCb(on_BarHideEvt_NativeCallback);
+      evt_ZoomStartEvt_delegate = new Efl.EventCb(on_ZoomStartEvt_NativeCallback);
+      evt_ZoomStopEvt_delegate = new Efl.EventCb(on_ZoomStopEvt_NativeCallback);
+      evt_ZoomChangeEvt_delegate = new Efl.EventCb(on_ZoomChangeEvt_NativeCallback);
+   }
+   /// <summary>Get the gesture state for photocam.
+   /// This gets the current gesture state for the photocam object.</summary>
+   /// <returns>The gesture state.</returns>
+   virtual public bool GetGestureEnabled() {
+       var _ret_var = Efl.Ui.ImageZoomableNativeInherit.efl_ui_image_zoomable_gesture_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the gesture state for photocam.
+   /// This sets the gesture state to on or off for photocam. The default is off. This will start multi touch zooming.</summary>
+   /// <param name="gesture">The gesture state.</param>
+   /// <returns></returns>
+   virtual public  void SetGestureEnabled( bool gesture) {
+                         Efl.Ui.ImageZoomableNativeInherit.efl_ui_image_zoomable_gesture_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), gesture);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the region of the image that is currently shown
+   /// See also <see cref="Efl.Ui.ImageZoomable.SetImageRegion"/>.</summary>
+   /// <returns>The region in the original image pixels.</returns>
+   virtual public Eina.Rect GetImageRegion() {
+       var _ret_var = Efl.Ui.ImageZoomableNativeInherit.efl_ui_image_zoomable_image_region_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Set the viewed region of the image
+   /// This shows the region of the image without using animation.
+   /// 1.20</summary>
+   /// <param name="region">The region in the original image pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetImageRegion( Eina.Rect region) {
+       var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                  Efl.Ui.ImageZoomableNativeInherit.efl_ui_image_zoomable_image_region_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content position</summary>
+   /// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+   virtual public Eina.Position2D GetContentPos() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The content position</summary>
+   /// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+   /// <returns></returns>
+   virtual public  void SetContentPos( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content size</summary>
+   /// <returns>The content size in pixels.</returns>
+   virtual public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The viewport geometry</summary>
+   /// <returns>It is absolute geometry.</returns>
+   virtual public Eina.Rect GetViewportGeometry() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void GetBounceEnabled( out bool horiz,  out bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void SetBounceEnabled( bool horiz,  bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollFreeze() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollFreeze( bool freeze) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollHold() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollHold( bool hold) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void GetLooping( out bool loop_h,  out bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void SetLooping( bool loop_h,  bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   virtual public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   virtual public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void GetGravity( out double x,  out double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void SetGravity( double x,  double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   virtual public  void SetMatchContent( bool w,  bool h) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_match_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <returns>The step size in pixels</returns>
+   virtual public Eina.Position2D GetStepSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <param name="step">The step size in pixels</param>
+   /// <returns></returns>
+   virtual public  void SetStepSize( Eina.Position2D step) {
+       var _in_step = Eina.Position2D_StructConversion.ToInternal(step);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+   /// <param name="rect">The position where to scroll. and The size user want to see</param>
+   /// <param name="animation">Whether to scroll with animation or not</param>
+   /// <returns></returns>
+   virtual public  void Scroll( Eina.Rect rect,  bool animation) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                    Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+   /// <param name="width">Value between 0.0 and 1.0</param>
+   /// <param name="height">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarSize( out double width,  out double height) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out width,  out height);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarPosition( out double posx,  out double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out posx,  out posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void SetBarPosition( double posx,  double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), posx,  posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Update bar visibility.
+   /// The object will call this function whenever the bar need to be shown or hidden.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateBarVisibility() {
+       Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+   /// <returns>The paused state.</returns>
+   virtual public bool GetZoomAnimation() {
+       var _ret_var = Efl.Ui.ZoomNativeInherit.efl_ui_zoom_animation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+   /// <param name="paused">The paused state.</param>
+   /// <returns></returns>
+   virtual public  void SetZoomAnimation( bool paused) {
+                         Efl.Ui.ZoomNativeInherit.efl_ui_zoom_animation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), paused);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the zoom level of the photo
+   /// This returns the current zoom level of the zoomable object. Note that if you set the fill mode to other than #EFL_UI_ZOOM_MODE_MANUAL (which is the default), the zoom level may be changed at any time by the  zoomable object itself to account for photo size and zoomable viewport size.</summary>
+   /// <returns>The zoom level to set</returns>
+   virtual public double GetZoomLevel() {
+       var _ret_var = Efl.Ui.ZoomNativeInherit.efl_ui_zoom_level_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the zoom level of the photo
+   /// This sets the zoom level. If <c>zoom</c> is 1, it means no zoom. If it&apos;s smaller than 1, it means zoom in. If it&apos;s bigger than 1, it means zoom out. For  example, <c>zoom</c> 1 will be 1:1 pixel for pixel. <c>zoom</c> 2 will be 2:1 (that is 2x2 photo pixels will display as 1 on-screen pixel) which is a zoom out. 4:1 will be 4x4 photo pixels as 1 screen pixel, and so on. The <c>zoom</c> parameter must be greater than 0. It is suggested to stick to powers of 2. (1, 2, 4, 8, 16, 32, etc.).</summary>
+   /// <param name="zoom">The zoom level to set</param>
+   /// <returns></returns>
+   virtual public  void SetZoomLevel( double zoom) {
+                         Efl.Ui.ZoomNativeInherit.efl_ui_zoom_level_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), zoom);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the zoom mode
+   /// This gets the current zoom mode of the zoomable object.</summary>
+   /// <returns>The zoom mode.</returns>
+   virtual public Efl.Ui.ZoomMode GetZoomMode() {
+       var _ret_var = Efl.Ui.ZoomNativeInherit.efl_ui_zoom_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the zoom mode
+   /// This sets the zoom mode to manual or one of several automatic levels. Manual (EFL_UI_ZOOM_MODE_MANUAL) means that zoom is set manually by <see cref="Efl.Ui.Zoom.SetZoomLevel"/> and will stay at that level until changed by code or until zoom mode is changed. This is the default mode. The Automatic modes will allow the zoomable object to automatically adjust zoom mode based on properties.
+   /// 
+   /// #EFL_UI_ZOOM_MODE_AUTO_FIT) will adjust zoom so the photo fits EXACTLY inside the scroll frame with no pixels outside this region. #EFL_UI_ZOOM_MODE_AUTO_FILL will be similar but ensure no pixels within the frame are left unfilled.</summary>
+   /// <param name="mode">The zoom mode.</param>
+   /// <returns></returns>
+   virtual public  void SetZoomMode( Efl.Ui.ZoomMode mode) {
+                         Efl.Ui.ZoomNativeInherit.efl_ui_zoom_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the gesture state for photocam.
+/// This gets the current gesture state for the photocam object.</summary>
+/// <value>The gesture state.</value>
+   public bool GestureEnabled {
+      get { return GetGestureEnabled(); }
+      set { SetGestureEnabled( value); }
+   }
+   /// <summary>Get the region of the image that is currently shown
+/// See also <see cref="Efl.Ui.ImageZoomable.SetImageRegion"/>.</summary>
+/// <value>The region in the original image pixels.</value>
+   public Eina.Rect ImageRegion {
+      get { return GetImageRegion(); }
+      set { SetImageRegion( value); }
+   }
+   /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   public Eina.Position2D ContentPos {
+      get { return GetContentPos(); }
+      set { SetContentPos( value); }
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   public Eina.Rect ViewportGeometry {
+      get { return GetViewportGeometry(); }
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool ScrollFreeze {
+      get { return GetScrollFreeze(); }
+      set { SetScrollFreeze( value); }
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool ScrollHold {
+      get { return GetScrollHold(); }
+      set { SetScrollHold( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   public Eina.Position2D StepSize {
+      get { return GetStepSize(); }
+      set { SetStepSize( value); }
+   }
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+/// <value>The paused state.</value>
+   public bool ZoomAnimation {
+      get { return GetZoomAnimation(); }
+      set { SetZoomAnimation( value); }
+   }
+   /// <summary>Get the zoom level of the photo
+/// This returns the current zoom level of the zoomable object. Note that if you set the fill mode to other than #EFL_UI_ZOOM_MODE_MANUAL (which is the default), the zoom level may be changed at any time by the  zoomable object itself to account for photo size and zoomable viewport size.</summary>
+/// <value>The zoom level to set</value>
+   public double ZoomLevel {
+      get { return GetZoomLevel(); }
+      set { SetZoomLevel( value); }
+   }
+   /// <summary>Get the zoom mode
+/// This gets the current zoom mode of the zoomable object.</summary>
+/// <value>The zoom mode.</value>
+   public Efl.Ui.ZoomMode ZoomMode {
+      get { return GetZoomMode(); }
+      set { SetZoomMode( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ImageZoomable.efl_ui_image_zoomable_class_get();
+   }
+}
+public class ImageZoomableNativeInherit : Efl.Ui.ImageNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_image_zoomable_gesture_enabled_get_static_delegate == null)
+      efl_ui_image_zoomable_gesture_enabled_get_static_delegate = new efl_ui_image_zoomable_gesture_enabled_get_delegate(gesture_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_zoomable_gesture_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_zoomable_gesture_enabled_get_static_delegate)});
+      if (efl_ui_image_zoomable_gesture_enabled_set_static_delegate == null)
+      efl_ui_image_zoomable_gesture_enabled_set_static_delegate = new efl_ui_image_zoomable_gesture_enabled_set_delegate(gesture_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_zoomable_gesture_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_zoomable_gesture_enabled_set_static_delegate)});
+      if (efl_ui_image_zoomable_image_region_get_static_delegate == null)
+      efl_ui_image_zoomable_image_region_get_static_delegate = new efl_ui_image_zoomable_image_region_get_delegate(image_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_zoomable_image_region_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_zoomable_image_region_get_static_delegate)});
+      if (efl_ui_image_zoomable_image_region_set_static_delegate == null)
+      efl_ui_image_zoomable_image_region_set_static_delegate = new efl_ui_image_zoomable_image_region_set_delegate(image_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_image_zoomable_image_region_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_image_zoomable_image_region_set_static_delegate)});
+      if (efl_ui_scrollable_content_pos_get_static_delegate == null)
+      efl_ui_scrollable_content_pos_get_static_delegate = new efl_ui_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_get_static_delegate)});
+      if (efl_ui_scrollable_content_pos_set_static_delegate == null)
+      efl_ui_scrollable_content_pos_set_static_delegate = new efl_ui_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_set_static_delegate)});
+      if (efl_ui_scrollable_content_size_get_static_delegate == null)
+      efl_ui_scrollable_content_size_get_static_delegate = new efl_ui_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_scrollable_viewport_geometry_get_static_delegate == null)
+      efl_ui_scrollable_viewport_geometry_get_static_delegate = new efl_ui_scrollable_viewport_geometry_get_delegate(viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_viewport_geometry_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_get_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_get_static_delegate = new efl_ui_scrollable_bounce_enabled_get_delegate(bounce_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_set_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_set_static_delegate = new efl_ui_scrollable_bounce_enabled_set_delegate(bounce_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_get_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_get_static_delegate = new efl_ui_scrollable_scroll_freeze_get_delegate(scroll_freeze_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_set_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_set_static_delegate = new efl_ui_scrollable_scroll_freeze_set_delegate(scroll_freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_get_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_get_static_delegate = new efl_ui_scrollable_scroll_hold_get_delegate(scroll_hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_set_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_set_static_delegate = new efl_ui_scrollable_scroll_hold_set_delegate(scroll_hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_set_static_delegate)});
+      if (efl_ui_scrollable_looping_get_static_delegate == null)
+      efl_ui_scrollable_looping_get_static_delegate = new efl_ui_scrollable_looping_get_delegate(looping_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_get_static_delegate)});
+      if (efl_ui_scrollable_looping_set_static_delegate == null)
+      efl_ui_scrollable_looping_set_static_delegate = new efl_ui_scrollable_looping_set_delegate(looping_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_set_static_delegate)});
+      if (efl_ui_scrollable_movement_block_get_static_delegate == null)
+      efl_ui_scrollable_movement_block_get_static_delegate = new efl_ui_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_get_static_delegate)});
+      if (efl_ui_scrollable_movement_block_set_static_delegate == null)
+      efl_ui_scrollable_movement_block_set_static_delegate = new efl_ui_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_set_static_delegate)});
+      if (efl_ui_scrollable_gravity_get_static_delegate == null)
+      efl_ui_scrollable_gravity_get_static_delegate = new efl_ui_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_get_static_delegate)});
+      if (efl_ui_scrollable_gravity_set_static_delegate == null)
+      efl_ui_scrollable_gravity_set_static_delegate = new efl_ui_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_set_static_delegate)});
+      if (efl_ui_scrollable_match_content_set_static_delegate == null)
+      efl_ui_scrollable_match_content_set_static_delegate = new efl_ui_scrollable_match_content_set_delegate(match_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_match_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_match_content_set_static_delegate)});
+      if (efl_ui_scrollable_step_size_get_static_delegate == null)
+      efl_ui_scrollable_step_size_get_static_delegate = new efl_ui_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_get_static_delegate)});
+      if (efl_ui_scrollable_step_size_set_static_delegate == null)
+      efl_ui_scrollable_step_size_set_static_delegate = new efl_ui_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_static_delegate == null)
+      efl_ui_scrollable_scroll_static_delegate = new efl_ui_scrollable_scroll_delegate(scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_get_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_get_static_delegate = new efl_ui_scrollbar_bar_mode_get_delegate(bar_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_set_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_set_static_delegate = new efl_ui_scrollbar_bar_mode_set_delegate(bar_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_size_get_static_delegate == null)
+      efl_ui_scrollbar_bar_size_get_static_delegate = new efl_ui_scrollbar_bar_size_get_delegate(bar_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_size_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_get_static_delegate == null)
+      efl_ui_scrollbar_bar_position_get_static_delegate = new efl_ui_scrollbar_bar_position_get_delegate(bar_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_set_static_delegate == null)
+      efl_ui_scrollbar_bar_position_set_static_delegate = new efl_ui_scrollbar_bar_position_set_delegate(bar_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_visibility_update_static_delegate == null)
+      efl_ui_scrollbar_bar_visibility_update_static_delegate = new efl_ui_scrollbar_bar_visibility_update_delegate(bar_visibility_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_visibility_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_visibility_update_static_delegate)});
+      if (efl_ui_zoom_animation_get_static_delegate == null)
+      efl_ui_zoom_animation_get_static_delegate = new efl_ui_zoom_animation_get_delegate(zoom_animation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_animation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_animation_get_static_delegate)});
+      if (efl_ui_zoom_animation_set_static_delegate == null)
+      efl_ui_zoom_animation_set_static_delegate = new efl_ui_zoom_animation_set_delegate(zoom_animation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_animation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_animation_set_static_delegate)});
+      if (efl_ui_zoom_level_get_static_delegate == null)
+      efl_ui_zoom_level_get_static_delegate = new efl_ui_zoom_level_get_delegate(zoom_level_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_level_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_level_get_static_delegate)});
+      if (efl_ui_zoom_level_set_static_delegate == null)
+      efl_ui_zoom_level_set_static_delegate = new efl_ui_zoom_level_set_delegate(zoom_level_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_level_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_level_set_static_delegate)});
+      if (efl_ui_zoom_mode_get_static_delegate == null)
+      efl_ui_zoom_mode_get_static_delegate = new efl_ui_zoom_mode_get_delegate(zoom_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_mode_get_static_delegate)});
+      if (efl_ui_zoom_mode_set_static_delegate == null)
+      efl_ui_zoom_mode_set_static_delegate = new efl_ui_zoom_mode_set_delegate(zoom_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_mode_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ImageZoomable.efl_ui_image_zoomable_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ImageZoomable.efl_ui_image_zoomable_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_image_zoomable_gesture_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_image_zoomable_gesture_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_gesture_enabled_get_api_delegate> efl_ui_image_zoomable_gesture_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_gesture_enabled_get_api_delegate>(_Module, "efl_ui_image_zoomable_gesture_enabled_get");
+    private static bool gesture_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_image_zoomable_gesture_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetGestureEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_image_zoomable_gesture_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_image_zoomable_gesture_enabled_get_delegate efl_ui_image_zoomable_gesture_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_image_zoomable_gesture_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool gesture);
+
+
+    public delegate  void efl_ui_image_zoomable_gesture_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool gesture);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_gesture_enabled_set_api_delegate> efl_ui_image_zoomable_gesture_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_gesture_enabled_set_api_delegate>(_Module, "efl_ui_image_zoomable_gesture_enabled_set");
+    private static  void gesture_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool gesture)
+   {
+      Eina.Log.Debug("function efl_ui_image_zoomable_gesture_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageZoomable)wrapper).SetGestureEnabled( gesture);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_image_zoomable_gesture_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gesture);
+      }
+   }
+   private static efl_ui_image_zoomable_gesture_enabled_set_delegate efl_ui_image_zoomable_gesture_enabled_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_image_zoomable_image_region_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_image_zoomable_image_region_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_image_region_get_api_delegate> efl_ui_image_zoomable_image_region_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_image_region_get_api_delegate>(_Module, "efl_ui_image_zoomable_image_region_get");
+    private static Eina.Rect_StructInternal image_region_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_image_zoomable_image_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetImageRegion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_image_zoomable_image_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_image_zoomable_image_region_get_delegate efl_ui_image_zoomable_image_region_get_static_delegate;
+
+
+    private delegate  void efl_ui_image_zoomable_image_region_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal region);
+
+
+    public delegate  void efl_ui_image_zoomable_image_region_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal region);
+    public static Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_image_region_set_api_delegate> efl_ui_image_zoomable_image_region_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_image_zoomable_image_region_set_api_delegate>(_Module, "efl_ui_image_zoomable_image_region_set");
+    private static  void image_region_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal region)
+   {
+      Eina.Log.Debug("function efl_ui_image_zoomable_image_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                     
+         try {
+            ((ImageZoomable)wrapper).SetImageRegion( _in_region);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_image_zoomable_image_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  region);
+      }
+   }
+   private static efl_ui_image_zoomable_image_region_set_delegate efl_ui_image_zoomable_image_region_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate> efl_ui_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate>(_Module, "efl_ui_scrollable_content_pos_get");
+    private static Eina.Position2D_StructInternal content_pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetContentPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_pos_get_delegate efl_ui_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_ui_scrollable_content_pos_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate> efl_ui_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate>(_Module, "efl_ui_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((ImageZoomable)wrapper).SetContentPos( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_ui_scrollable_content_pos_set_delegate efl_ui_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate> efl_ui_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_scrollable_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_size_get_delegate efl_ui_scrollable_content_size_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate> efl_ui_scrollable_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate>(_Module, "efl_ui_scrollable_viewport_geometry_get");
+    private static Eina.Rect_StructInternal viewport_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetViewportGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_viewport_geometry_get_delegate efl_ui_scrollable_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate> efl_ui_scrollable_bounce_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_get");
+    private static  void bounce_enabled_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((ImageZoomable)wrapper).GetBounceEnabled( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_get_delegate efl_ui_scrollable_bounce_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate> efl_ui_scrollable_bounce_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_set");
+    private static  void bounce_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageZoomable)wrapper).SetBounceEnabled( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_set_delegate efl_ui_scrollable_bounce_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_freeze_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_freeze_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate> efl_ui_scrollable_scroll_freeze_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_get");
+    private static bool scroll_freeze_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_get_delegate efl_ui_scrollable_scroll_freeze_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void efl_ui_scrollable_scroll_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate> efl_ui_scrollable_scroll_freeze_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_set");
+    private static  void scroll_freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageZoomable)wrapper).SetScrollFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_set_delegate efl_ui_scrollable_scroll_freeze_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate> efl_ui_scrollable_scroll_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_get");
+    private static bool scroll_hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_get_delegate efl_ui_scrollable_scroll_hold_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void efl_ui_scrollable_scroll_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate> efl_ui_scrollable_scroll_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_set");
+    private static  void scroll_hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageZoomable)wrapper).SetScrollHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_set_delegate efl_ui_scrollable_scroll_hold_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate> efl_ui_scrollable_looping_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate>(_Module, "efl_ui_scrollable_looping_get");
+    private static  void looping_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((ImageZoomable)wrapper).GetLooping( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_get_delegate efl_ui_scrollable_looping_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate> efl_ui_scrollable_looping_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate>(_Module, "efl_ui_scrollable_looping_set");
+    private static  void looping_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageZoomable)wrapper).SetLooping( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_set_delegate efl_ui_scrollable_looping_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate> efl_ui_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate>(_Module, "efl_ui_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_movement_block_get_delegate efl_ui_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void efl_ui_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate> efl_ui_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate>(_Module, "efl_ui_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageZoomable)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static efl_ui_scrollable_movement_block_set_delegate efl_ui_scrollable_movement_block_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate> efl_ui_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate>(_Module, "efl_ui_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((ImageZoomable)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_get_delegate efl_ui_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate> efl_ui_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate>(_Module, "efl_ui_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageZoomable)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_set_delegate efl_ui_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_match_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void efl_ui_scrollable_match_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate> efl_ui_scrollable_match_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate>(_Module, "efl_ui_scrollable_match_content_set");
+    private static  void match_content_set(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_match_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageZoomable)wrapper).SetMatchContent( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_match_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static efl_ui_scrollable_match_content_set_delegate efl_ui_scrollable_match_content_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate> efl_ui_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate>(_Module, "efl_ui_scrollable_step_size_get");
+    private static Eina.Position2D_StructInternal step_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetStepSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_step_size_get_delegate efl_ui_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal step);
+
+
+    public delegate  void efl_ui_scrollable_step_size_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate> efl_ui_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate>(_Module, "efl_ui_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal step)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_step = Eina.Position2D_StructConversion.ToManaged(step);
+                     
+         try {
+            ((ImageZoomable)wrapper).SetStepSize( _in_step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_scrollable_step_size_set_delegate efl_ui_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_scrollable_scroll_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate> efl_ui_scrollable_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate>(_Module, "efl_ui_scrollable_scroll");
+    private static  void scroll(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                       
+         try {
+            ((ImageZoomable)wrapper).Scroll( _in_rect,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  animation);
+      }
+   }
+   private static efl_ui_scrollable_scroll_delegate efl_ui_scrollable_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_get_api_delegate(System.IntPtr obj,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate> efl_ui_scrollbar_bar_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_get");
+    private static  void bar_mode_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Efl.Ui.ScrollbarMode);      vbar = default(Efl.Ui.ScrollbarMode);                     
+         try {
+            ((ImageZoomable)wrapper).GetBarMode( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_get_delegate efl_ui_scrollbar_bar_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate> efl_ui_scrollbar_bar_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_set");
+    private static  void bar_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageZoomable)wrapper).SetBarMode( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_set_delegate efl_ui_scrollbar_bar_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double width,   out double height);
+
+
+    public delegate  void efl_ui_scrollbar_bar_size_get_api_delegate(System.IntPtr obj,   out double width,   out double height);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate> efl_ui_scrollbar_bar_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_size_get");
+    private static  void bar_size_get(System.IntPtr obj, System.IntPtr pd,  out double width,  out double height)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           width = default(double);      height = default(double);                     
+         try {
+            ((ImageZoomable)wrapper).GetBarSize( out width,  out height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out width,  out height);
+      }
+   }
+   private static efl_ui_scrollbar_bar_size_get_delegate efl_ui_scrollbar_bar_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double posx,   out double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_get_api_delegate(System.IntPtr obj,   out double posx,   out double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate> efl_ui_scrollbar_bar_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_get");
+    private static  void bar_position_get(System.IntPtr obj, System.IntPtr pd,  out double posx,  out double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           posx = default(double);      posy = default(double);                     
+         try {
+            ((ImageZoomable)wrapper).GetBarPosition( out posx,  out posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out posx,  out posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_get_delegate efl_ui_scrollbar_bar_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   double posx,   double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_set_api_delegate(System.IntPtr obj,   double posx,   double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate> efl_ui_scrollbar_bar_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_set");
+    private static  void bar_position_set(System.IntPtr obj, System.IntPtr pd,  double posx,  double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ImageZoomable)wrapper).SetBarPosition( posx,  posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  posx,  posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_set_delegate efl_ui_scrollbar_bar_position_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_visibility_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_scrollbar_bar_visibility_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate> efl_ui_scrollbar_bar_visibility_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate>(_Module, "efl_ui_scrollbar_bar_visibility_update");
+    private static  void bar_visibility_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_visibility_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ImageZoomable)wrapper).UpdateBarVisibility();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollbar_bar_visibility_update_delegate efl_ui_scrollbar_bar_visibility_update_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_zoom_animation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_zoom_animation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_get_api_delegate> efl_ui_zoom_animation_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_get_api_delegate>(_Module, "efl_ui_zoom_animation_get");
+    private static bool zoom_animation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_animation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetZoomAnimation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_zoom_animation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_zoom_animation_get_delegate efl_ui_zoom_animation_get_static_delegate;
+
+
+    private delegate  void efl_ui_zoom_animation_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool paused);
+
+
+    public delegate  void efl_ui_zoom_animation_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool paused);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_set_api_delegate> efl_ui_zoom_animation_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_set_api_delegate>(_Module, "efl_ui_zoom_animation_set");
+    private static  void zoom_animation_set(System.IntPtr obj, System.IntPtr pd,  bool paused)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_animation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageZoomable)wrapper).SetZoomAnimation( paused);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_zoom_animation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  paused);
+      }
+   }
+   private static efl_ui_zoom_animation_set_delegate efl_ui_zoom_animation_set_static_delegate;
+
+
+    private delegate double efl_ui_zoom_level_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_zoom_level_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_level_get_api_delegate> efl_ui_zoom_level_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_level_get_api_delegate>(_Module, "efl_ui_zoom_level_get");
+    private static double zoom_level_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_level_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetZoomLevel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_zoom_level_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_zoom_level_get_delegate efl_ui_zoom_level_get_static_delegate;
+
+
+    private delegate  void efl_ui_zoom_level_set_delegate(System.IntPtr obj, System.IntPtr pd,   double zoom);
+
+
+    public delegate  void efl_ui_zoom_level_set_api_delegate(System.IntPtr obj,   double zoom);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_level_set_api_delegate> efl_ui_zoom_level_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_level_set_api_delegate>(_Module, "efl_ui_zoom_level_set");
+    private static  void zoom_level_set(System.IntPtr obj, System.IntPtr pd,  double zoom)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_level_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageZoomable)wrapper).SetZoomLevel( zoom);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_zoom_level_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  zoom);
+      }
+   }
+   private static efl_ui_zoom_level_set_delegate efl_ui_zoom_level_set_static_delegate;
+
+
+    private delegate Efl.Ui.ZoomMode efl_ui_zoom_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ZoomMode efl_ui_zoom_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_get_api_delegate> efl_ui_zoom_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_get_api_delegate>(_Module, "efl_ui_zoom_mode_get");
+    private static Efl.Ui.ZoomMode zoom_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ZoomMode _ret_var = default(Efl.Ui.ZoomMode);
+         try {
+            _ret_var = ((ImageZoomable)wrapper).GetZoomMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_zoom_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_zoom_mode_get_delegate efl_ui_zoom_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_zoom_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ZoomMode mode);
+
+
+    public delegate  void efl_ui_zoom_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ZoomMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_set_api_delegate> efl_ui_zoom_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_set_api_delegate>(_Module, "efl_ui_zoom_mode_set");
+    private static  void zoom_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ZoomMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ImageZoomable)wrapper).SetZoomMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_zoom_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_zoom_mode_set_delegate efl_ui_zoom_mode_set_static_delegate;
+}
+} } 
+namespace Elm { namespace Photocam { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Error
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator Error(IntPtr ptr)
+   {
+      var tmp = (Error_StructInternal)Marshal.PtrToStructure(ptr, typeof(Error_StructInternal));
+      return Error_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Error.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Error_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Error(Error_StructInternal struct_)
+   {
+      return Error_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Error_StructInternal(Error struct_)
+   {
+      return Error_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Error</summary>
+public static class Error_StructConversion
+{
+   internal static Error_StructInternal ToInternal(Error _external_struct)
+   {
+      var _internal_struct = new Error_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static Error ToManaged(Error_StructInternal _internal_struct)
+   {
+      var _external_struct = new Error();
+
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Elm { namespace Photocam { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Progress
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator Progress(IntPtr ptr)
+   {
+      var tmp = (Progress_StructInternal)Marshal.PtrToStructure(ptr, typeof(Progress_StructInternal));
+      return Progress_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Progress.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Progress_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Progress(Progress_StructInternal struct_)
+   {
+      return Progress_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Progress_StructInternal(Progress struct_)
+   {
+      return Progress_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Progress</summary>
+public static class Progress_StructConversion
+{
+   internal static Progress_StructInternal ToInternal(Progress _external_struct)
+   {
+      var _internal_struct = new Progress_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static Progress ToManaged(Progress_StructInternal _internal_struct)
+   {
+      var _external_struct = new Progress();
+
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_image_zoomable_pan.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_image_zoomable_pan.eo.cs
new file mode 100755 (executable)
index 0000000..0030136
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary photocom pan class</summary>
+[ImageZoomablePanNativeInherit]
+public class ImageZoomablePan : Efl.Ui.Pan, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ImageZoomablePanNativeInherit nativeInherit = new Efl.Ui.ImageZoomablePanNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ImageZoomablePan))
+            return Efl.Ui.ImageZoomablePanNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_image_zoomable_pan_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ImageZoomablePan(Efl.Object parent= null
+         ) :
+      base(efl_ui_image_zoomable_pan_class_get(), typeof(ImageZoomablePan), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ImageZoomablePan(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ImageZoomablePan(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ImageZoomablePan static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ImageZoomablePan(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ImageZoomablePan.efl_ui_image_zoomable_pan_class_get();
+   }
+}
+public class ImageZoomablePanNativeInherit : Efl.Ui.PanNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ImageZoomablePan.efl_ui_image_zoomable_pan_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ImageZoomablePan.efl_ui_image_zoomable_pan_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_item.eo.cs
new file mode 100755 (executable)
index 0000000..373b825
--- /dev/null
@@ -0,0 +1,933 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Item abstract class for pack widget. All item have to be inherited from this class.</summary>
+[ItemNativeInherit]
+public class Item : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Ui.Clickable,Efl.Ui.Selectable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ItemNativeInherit nativeInherit = new Efl.Ui.ItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Item))
+            return Efl.Ui.ItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Item(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_item_class_get(), typeof(Item), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Item(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Item(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Item static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Item(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectedEvtKey = new object();
+   /// <summary>Called when selected</summary>
+   public event EventHandler SelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_SelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectedEvt.</summary>
+   public void On_SelectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectedEvt_delegate;
+   private void on_SelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnselectedEvtKey = new object();
+   /// <summary>Called when no longer selected</summary>
+   public event EventHandler UnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_UnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnselectedEvt.</summary>
+   public void On_UnselectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnselectedEvt_delegate;
+   private void on_UnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionPasteEvtKey = new object();
+   /// <summary>Called when selection is pasted</summary>
+   public event EventHandler SelectionPasteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionPasteEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (remove_cpp_event_handler(key, this.evt_SelectionPasteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionPasteEvt.</summary>
+   public void On_SelectionPasteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionPasteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionPasteEvt_delegate;
+   private void on_SelectionPasteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionPasteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCopyEvtKey = new object();
+   /// <summary>Called when selection is copied</summary>
+   public event EventHandler SelectionCopyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCopyEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCopyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCopyEvt.</summary>
+   public void On_SelectionCopyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCopyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCopyEvt_delegate;
+   private void on_SelectionCopyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCopyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCutEvtKey = new object();
+   /// <summary>Called when selection is cut</summary>
+   public event EventHandler SelectionCutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCutEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCutEvt.</summary>
+   public void On_SelectionCutEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCutEvt_delegate;
+   private void on_SelectionCutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionStartEvtKey = new object();
+   /// <summary>Called at selection start</summary>
+   public event EventHandler SelectionStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionStartEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (remove_cpp_event_handler(key, this.evt_SelectionStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionStartEvt.</summary>
+   public void On_SelectionStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionStartEvt_delegate;
+   private void on_SelectionStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Ui_Selectable_SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection is changed</summary>
+    event EventHandler Efl.Ui.Selectable.SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Ui_Selectable_SelectionChangedEvt.</summary>
+   public void On_Efl_Ui_Selectable_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Efl_Ui_Selectable_SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate;
+   private void on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Efl_Ui_Selectable_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionClearedEvtKey = new object();
+   /// <summary>Called when selection is cleared</summary>
+   public event EventHandler SelectionClearedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionClearedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionClearedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionClearedEvt.</summary>
+   public void On_SelectionClearedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionClearedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionClearedEvt_delegate;
+   private void on_SelectionClearedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionClearedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+      evt_SelectedEvt_delegate = new Efl.EventCb(on_SelectedEvt_NativeCallback);
+      evt_UnselectedEvt_delegate = new Efl.EventCb(on_UnselectedEvt_NativeCallback);
+      evt_SelectionPasteEvt_delegate = new Efl.EventCb(on_SelectionPasteEvt_NativeCallback);
+      evt_SelectionCopyEvt_delegate = new Efl.EventCb(on_SelectionCopyEvt_NativeCallback);
+      evt_SelectionCutEvt_delegate = new Efl.EventCb(on_SelectionCutEvt_NativeCallback);
+      evt_SelectionStartEvt_delegate = new Efl.EventCb(on_SelectionStartEvt_NativeCallback);
+      evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate = new Efl.EventCb(on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback);
+      evt_SelectionClearedEvt_delegate = new Efl.EventCb(on_SelectionClearedEvt_NativeCallback);
+   }
+   /// <summary>index number of item from their parent object.</summary>
+   /// <returns></returns>
+   virtual public  int GetIndex() {
+       var _ret_var = Efl.Ui.ItemNativeInherit.efl_ui_item_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Select property for item object. Item can be selected by user mouse/key input also</summary>
+   /// <returns></returns>
+   virtual public bool GetSelected() {
+       var _ret_var = Efl.Ui.ItemNativeInherit.efl_ui_item_selected_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Select property for item object. Item can be selected by user mouse/key input also</summary>
+   /// <param name="select"></param>
+   /// <returns></returns>
+   virtual public  void SetSelected( bool select) {
+                         Efl.Ui.ItemNativeInherit.efl_ui_item_selected_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), select);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>index number of item from their parent object.</summary>
+/// <value></value>
+   public  int Index {
+      get { return GetIndex(); }
+   }
+   /// <summary>Select property for item object. Item can be selected by user mouse/key input also</summary>
+/// <value></value>
+   public bool Selected {
+      get { return GetSelected(); }
+      set { SetSelected( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Item.efl_ui_item_class_get();
+   }
+}
+public class ItemNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_item_index_get_static_delegate == null)
+      efl_ui_item_index_get_static_delegate = new efl_ui_item_index_get_delegate(index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_item_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_item_index_get_static_delegate)});
+      if (efl_ui_item_selected_get_static_delegate == null)
+      efl_ui_item_selected_get_static_delegate = new efl_ui_item_selected_get_delegate(selected_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_item_selected_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_item_selected_get_static_delegate)});
+      if (efl_ui_item_selected_set_static_delegate == null)
+      efl_ui_item_selected_set_static_delegate = new efl_ui_item_selected_set_delegate(selected_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_item_selected_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_item_selected_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Item.efl_ui_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Item.efl_ui_item_class_get();
+   }
+
+
+    private delegate  int efl_ui_item_index_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_item_index_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_item_index_get_api_delegate> efl_ui_item_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_item_index_get_api_delegate>(_Module, "efl_ui_item_index_get");
+    private static  int index_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_item_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Item)wrapper).GetIndex();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_item_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_item_index_get_delegate efl_ui_item_index_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_item_selected_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_item_selected_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_item_selected_get_api_delegate> efl_ui_item_selected_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_item_selected_get_api_delegate>(_Module, "efl_ui_item_selected_get");
+    private static bool selected_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_item_selected_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GetSelected();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_item_selected_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_item_selected_get_delegate efl_ui_item_selected_get_static_delegate;
+
+
+    private delegate  void efl_ui_item_selected_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool select);
+
+
+    public delegate  void efl_ui_item_selected_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool select);
+    public static Efl.Eo.FunctionWrapper<efl_ui_item_selected_set_api_delegate> efl_ui_item_selected_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_item_selected_set_api_delegate>(_Module, "efl_ui_item_selected_set");
+    private static  void selected_set(System.IntPtr obj, System.IntPtr pd,  bool select)
+   {
+      Eina.Log.Debug("function efl_ui_item_selected_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetSelected( select);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_item_selected_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  select);
+      }
+   }
+   private static efl_ui_item_selected_set_delegate efl_ui_item_selected_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_l10n.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_l10n.eo.cs
new file mode 100755 (executable)
index 0000000..6e66f87
--- /dev/null
@@ -0,0 +1,238 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Interface for all translatable text APIs.
+/// This is intended for translation of human readable on-screen text strings but may also be used in text-to-speech situations.</summary>
+[L10nNativeInherit]
+public interface L10n : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>A unique string to be translated.
+/// Often this will be a human-readable string (e.g. in English) but it can also be a unique string identifier that must then be translated to the current locale with <c>dgettext</c>() or any similar mechanism.
+/// 
+/// Setting this property will enable translation for this object or part.</summary>
+/// <param name="domain">A translation domain. If <c>null</c> this means the default domain is used.</param>
+/// <returns>This returns the untranslated value of <c>label</c>. The translated string can usually be retrieved with <see cref="Efl.Text.GetText"/>.</returns>
+ System.String GetL10nText( out  System.String domain);
+   /// <summary>Sets the new untranslated string and domain for this object.</summary>
+/// <param name="label">A unique (untranslated) string.</param>
+/// <param name="domain">A translation domain. If <c>null</c> this uses the default domain (eg. set by <c>textdomain</c>()).</param>
+/// <returns></returns>
+ void SetL10nText(  System.String label,   System.String domain);
+   /// <summary>Requests this object to update its text strings for the current locale.
+/// Currently strings are translated with <c>dgettext</c>, so support for this function may depend on the platform. It is up to the application to provide its own translation data.
+/// 
+/// This function is a hook meant to be implemented by any object that supports translation. This can be called whenever a new object is created or when the current locale changes, for instance. This should only trigger further calls to <see cref="Efl.Ui.L10n.UpdateTranslation"/> to children objects.</summary>
+/// <returns></returns>
+ void UpdateTranslation();
+         }
+/// <summary>Interface for all translatable text APIs.
+/// This is intended for translation of human readable on-screen text strings but may also be used in text-to-speech situations.</summary>
+sealed public class L10nConcrete : 
+
+L10n
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (L10nConcrete))
+            return Efl.Ui.L10nNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_l10n_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public L10nConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~L10nConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static L10nConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new L10nConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>A unique string to be translated.
+   /// Often this will be a human-readable string (e.g. in English) but it can also be a unique string identifier that must then be translated to the current locale with <c>dgettext</c>() or any similar mechanism.
+   /// 
+   /// Setting this property will enable translation for this object or part.</summary>
+   /// <param name="domain">A translation domain. If <c>null</c> this means the default domain is used.</param>
+   /// <returns>This returns the untranslated value of <c>label</c>. The translated string can usually be retrieved with <see cref="Efl.Text.GetText"/>.</returns>
+   public  System.String GetL10nText( out  System.String domain) {
+                         var _ret_var = Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_get_ptr.Value.Delegate(this.NativeHandle, out domain);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the new untranslated string and domain for this object.</summary>
+   /// <param name="label">A unique (untranslated) string.</param>
+   /// <param name="domain">A translation domain. If <c>null</c> this uses the default domain (eg. set by <c>textdomain</c>()).</param>
+   /// <returns></returns>
+   public  void SetL10nText(  System.String label,   System.String domain) {
+                                           Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_set_ptr.Value.Delegate(this.NativeHandle, label,  domain);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Requests this object to update its text strings for the current locale.
+   /// Currently strings are translated with <c>dgettext</c>, so support for this function may depend on the platform. It is up to the application to provide its own translation data.
+   /// 
+   /// This function is a hook meant to be implemented by any object that supports translation. This can be called whenever a new object is created or when the current locale changes, for instance. This should only trigger further calls to <see cref="Efl.Ui.L10n.UpdateTranslation"/> to children objects.</summary>
+   /// <returns></returns>
+   public  void UpdateTranslation() {
+       Efl.Ui.L10nNativeInherit.efl_ui_l10n_translation_update_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+}
+public class L10nNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_l10n_text_get_static_delegate == null)
+      efl_ui_l10n_text_get_static_delegate = new efl_ui_l10n_text_get_delegate(l10n_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_get_static_delegate)});
+      if (efl_ui_l10n_text_set_static_delegate == null)
+      efl_ui_l10n_text_set_static_delegate = new efl_ui_l10n_text_set_delegate(l10n_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_set_static_delegate)});
+      if (efl_ui_l10n_translation_update_static_delegate == null)
+      efl_ui_l10n_translation_update_static_delegate = new efl_ui_l10n_translation_update_delegate(translation_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_translation_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_translation_update_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.L10nConcrete.efl_ui_l10n_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.L10nConcrete.efl_ui_l10n_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_l10n_text_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_l10n_text_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate> efl_ui_l10n_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate>(_Module, "efl_ui_l10n_text_get");
+    private static  System.String l10n_text_get(System.IntPtr obj, System.IntPtr pd,  out  System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                      System.String _out_domain = default( System.String);
+                System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((L10n)wrapper).GetL10nText( out _out_domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      domain = _out_domain;
+            return _ret_var;
+      } else {
+         return efl_ui_l10n_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out domain);
+      }
+   }
+   private static efl_ui_l10n_text_get_delegate efl_ui_l10n_text_get_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+
+
+    public delegate  void efl_ui_l10n_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate> efl_ui_l10n_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate>(_Module, "efl_ui_l10n_text_set");
+    private static  void l10n_text_set(System.IntPtr obj, System.IntPtr pd,   System.String label,   System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((L10n)wrapper).SetL10nText( label,  domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_l10n_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  label,  domain);
+      }
+   }
+   private static efl_ui_l10n_text_set_delegate efl_ui_l10n_text_set_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_translation_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_l10n_translation_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate> efl_ui_l10n_translation_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate>(_Module, "efl_ui_l10n_translation_update");
+    private static  void translation_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_translation_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((L10n)wrapper).UpdateTranslation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_l10n_translation_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_l10n_translation_update_delegate efl_ui_l10n_translation_update_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout.eo.cs
new file mode 100755 (executable)
index 0000000..0f3ae51
--- /dev/null
@@ -0,0 +1,448 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary layout class</summary>
+[LayoutNativeInherit]
+public class Layout : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.File
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutNativeInherit nativeInherit = new Efl.Ui.LayoutNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Layout))
+            return Efl.Ui.LayoutNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Layout(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_layout_class_get(), typeof(Layout), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Layout(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Layout(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Layout static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Layout(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Layout.efl_ui_layout_class_get();
+   }
+}
+public class LayoutNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Layout.efl_ui_layout_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Layout.efl_ui_layout_class_get();
+   }
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((Layout)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Layout)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Layout)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Layout)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Layout)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Layout)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Layout)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Layout)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_base.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_base.eo.cs
new file mode 100755 (executable)
index 0000000..5b5b843
--- /dev/null
@@ -0,0 +1,1342 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary layout abstract</summary>
+[LayoutBaseNativeInherit]
+public class LayoutBase : Efl.Ui.Widget, Efl.Eo.IWrapper,Efl.Container,Efl.Layout.Calc,Efl.Layout.Group,Efl.Layout.Signal,Efl.Ui.FactoryBind,Efl.Ui.PropertyBind,Efl.Ui.View
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutBaseNativeInherit nativeInherit = new Efl.Ui.LayoutBaseNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutBase))
+            return Efl.Ui.LayoutBaseNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_base_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public LayoutBase(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_layout_base_class_get(), typeof(LayoutBase), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutBase(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutBase(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutBase static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutBase(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ThemeChangedEvtKey = new object();
+   /// <summary>Called when theme changed</summary>
+   public event EventHandler ThemeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LAYOUT_EVENT_THEME_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ThemeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ThemeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LAYOUT_EVENT_THEME_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ThemeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ThemeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ThemeChangedEvt.</summary>
+   public void On_ThemeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ThemeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ThemeChangedEvt_delegate;
+   private void on_ThemeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ThemeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RecalcEvtKey = new object();
+   /// <summary>The layout was recalculated.
+   /// 1.21</summary>
+   public event EventHandler RecalcEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_RecalcEvt_delegate)) {
+               eventHandlers.AddHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_RECALC";
+            if (remove_cpp_event_handler(key, this.evt_RecalcEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RecalcEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RecalcEvt.</summary>
+   public void On_RecalcEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RecalcEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RecalcEvt_delegate;
+   private void on_RecalcEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RecalcEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CircularDependencyEvtKey = new object();
+   /// <summary>A circular dependency between parts of the object was found.
+   /// 1.21</summary>
+   public event EventHandler CircularDependencyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (add_cpp_event_handler(efl.Libs.Edje, key, this.evt_CircularDependencyEvt_delegate)) {
+               eventHandlers.AddHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_LAYOUT_EVENT_CIRCULAR_DEPENDENCY";
+            if (remove_cpp_event_handler(key, this.evt_CircularDependencyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CircularDependencyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CircularDependencyEvt.</summary>
+   public void On_CircularDependencyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CircularDependencyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CircularDependencyEvt_delegate;
+   private void on_CircularDependencyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CircularDependencyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ThemeChangedEvt_delegate = new Efl.EventCb(on_ThemeChangedEvt_NativeCallback);
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+      evt_RecalcEvt_delegate = new Efl.EventCb(on_RecalcEvt_NativeCallback);
+      evt_CircularDependencyEvt_delegate = new Efl.EventCb(on_CircularDependencyEvt_NativeCallback);
+   }
+   /// <summary>Get information about the current theme in use.</summary>
+   /// <param name="klass">The class of the group, eg. &quot;button&quot;.</param>
+   /// <param name="group">The group, eg. &quot;base&quot;.</param>
+   /// <param name="style">The style to use, eg &quot;default&quot;.</param>
+   /// <returns></returns>
+   virtual public  void GetTheme( out  System.String klass,  out  System.String group,  out  System.String style) {
+                                                             Efl.Ui.LayoutBaseNativeInherit.efl_ui_layout_theme_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out klass,  out group,  out style);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Sets the edje group from the elementary theme that will be used as layout. Note that <c>style</c> will be the new style of this object, as in an <see cref="Efl.Ui.Widget.Style"/>. As a consequence this function can only be called during construction of the object, before finalize.
+   /// If this returns <c>false</c> the widget is very likely to become non-functioning.</summary>
+   /// <param name="klass">The class of the group, eg. &quot;button&quot;.</param>
+   /// <param name="group">The group, eg. &quot;base&quot;.</param>
+   /// <param name="style">The style to use, eg &quot;default&quot;.</param>
+   /// <returns>Whether the style was successfully applied or not, see the values of <see cref="Efl.Ui.ThemeApplyResult"/> for more information.</returns>
+   virtual public Efl.Ui.ThemeApplyResult SetTheme(  System.String klass,   System.String group,   System.String style) {
+                                                             var _ret_var = Efl.Ui.LayoutBaseNativeInherit.efl_ui_layout_theme_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), klass,  group,  style);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether this object updates its size hints automatically.
+   /// 1.21</summary>
+   /// <returns>Whether or not update the size hints.
+   /// 1.21</returns>
+   virtual public bool GetCalcAutoUpdateHints() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable auto-update of size hints.
+   /// 1.21</summary>
+   /// <param name="update">Whether or not update the size hints.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetCalcAutoUpdateHints( bool update) {
+                         Efl.Layout.CalcNativeInherit.efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), update);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Calculates the minimum required size for a given layout object.
+   /// This call will trigger an internal recalculation of all parts of the object, in order to return its minimum required dimensions for width and height. The user might choose to impose those minimum sizes, making the resulting calculation to get to values greater or equal than <c>restricted</c> in both directions.
+   /// 
+   /// Note: At the end of this call, the object won&apos;t be automatically resized to the new dimensions, but just return the calculated sizes. The caller is the one up to change its geometry or not.
+   /// 
+   /// Warning: Be advised that invisible parts in the object will be taken into account in this calculation.
+   /// 1.21</summary>
+   /// <param name="restricted">The minimum size constraint as input, the returned size can not be lower than this (in both directions).
+   /// 1.21</param>
+   /// <returns>The minimum required size.
+   /// 1.21</returns>
+   virtual public Eina.Size2D CalcSizeMin( Eina.Size2D restricted) {
+       var _in_restricted = Eina.Size2D_StructConversion.ToInternal(restricted);
+                  var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_size_min_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_restricted);
+      Eina.Error.RaiseIfUnhandledException();
+                  return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Calculates the geometry of the region, relative to a given layout object&apos;s area, occupied by all parts in the object.
+   /// This function gets the geometry of the rectangle equal to the area required to group all parts in obj&apos;s group/collection. The x and y coordinates are relative to the top left corner of the whole obj object&apos;s area. Parts placed out of the group&apos;s boundaries will also be taken in account, so that x and y may be negative.
+   /// 
+   /// Note: On failure, this function will make all non-<c>null</c> geometry pointers&apos; pointed variables be set to zero.
+   /// 1.21</summary>
+   /// <returns>The calculated region.
+   /// 1.21</returns>
+   virtual public Eina.Rect CalcPartsExtends() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_parts_extends_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Freezes the layout object.
+   /// This function puts all changes on hold. Successive freezes will nest, requiring an equal number of thaws.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 on error
+   /// 1.21</returns>
+   virtual public  int FreezeCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Thaws the layout object.
+   /// This function thaws (in other words &quot;unfreezes&quot;) the given layout object.
+   /// 
+   /// Note: If sucessive freezes were done, an equal number of thaws will be required.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/>.
+   /// 1.21</summary>
+   /// <returns>The frozen state or 0 if the object is not frozen or on error.
+   /// 1.21</returns>
+   virtual public  int ThawCalc() {
+       var _ret_var = Efl.Layout.CalcNativeInherit.efl_layout_calc_thaw_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Forces a Size/Geometry calculation.
+   /// Forces the object to recalculate its layout regardless of freeze/thaw. This API should be used carefully.
+   /// 
+   /// See also <see cref="Efl.Layout.Calc.FreezeCalc"/> and <see cref="Efl.Layout.Calc.ThawCalc"/>.
+   /// 1.21</summary>
+   /// <returns></returns>
+   virtual public  void CalcForce() {
+       Efl.Layout.CalcNativeInherit.efl_layout_calc_force_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+   /// 
+   /// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+   /// 
+   /// Note: On failure, this function also return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+   /// 1.21</summary>
+   /// <returns>The minimum size as set in EDC.
+   /// 1.21</returns>
+   virtual public Eina.Size2D GetGroupSizeMin() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+   /// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+   /// 
+   /// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+   /// 
+   /// Note: On failure, this function will return 0x0.
+   /// 
+   /// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+   /// 1.21</summary>
+   /// <returns>The maximum size as set in EDC.
+   /// 1.21</returns>
+   virtual public Eina.Size2D GetGroupSizeMax() {
+       var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_size_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Retrives an EDC data field&apos;s value from a given Edje object&apos;s group.
+   /// This function fetches an EDC data field&apos;s value, which is declared on the objects building EDC file, under its group. EDC data blocks are most commonly used to pass arbitrary parameters from an application&apos;s theme to its code.
+   /// 
+   /// EDC data fields always hold  strings as values, hence the return type of this function. Check the complete &quot;syntax reference&quot; for EDC files.
+   /// 
+   /// This is how a data item is defined in EDC: collections { group { name: &quot;a_group&quot;; data { item: &quot;key1&quot; &quot;value1&quot;; item: &quot;key2&quot; &quot;value2&quot;; } } }
+   /// 
+   /// Warning: Do not confuse this call with edje_file_data_get(), which queries for a global EDC data field on an EDC declaration file.
+   /// 1.21</summary>
+   /// <param name="key">The data field&apos;s key string
+   /// 1.21</param>
+   /// <returns>The data&apos;s value string.
+   /// 1.21</returns>
+   virtual public  System.String GetGroupData(  System.String key) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_data_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns <c>true</c> if the part exists in the EDC group.
+   /// 1.21</summary>
+   /// <param name="part">The part name to check.
+   /// 1.21</param>
+   /// <returns><c>true</c> if the part exists, <c>false</c> otherwise.
+   /// 1.21</returns>
+   virtual public bool GetPartExist(  System.String part) {
+                         var _ret_var = Efl.Layout.GroupNativeInherit.efl_layout_group_part_exist_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sends an (Edje) message to a given Edje object
+   /// This function sends an Edje message to obj and to all of its child objects, if it has any (swallowed objects are one kind of child object). Only a few types are supported: - int, - float/double, - string/stringshare, - arrays of int, float, double or strings.
+   /// 
+   /// Messages can go both ways, from code to theme, or theme to code.
+   /// 
+   /// The id argument as a form of code and theme defining a common interface on message communication. One should define the same IDs on both code and EDC declaration, to individualize messages (binding them to a given context).
+   /// 1.21</summary>
+   /// <param name="id">A identification number for the message to be sent
+   /// 1.21</param>
+   /// <param name="msg">The message&apos;s payload
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void MessageSend(  int id,   Eina.Value msg) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_message_send_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id,  msg);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a callback for an arriving Edje signal, emitted by a given Edje object.
+   /// Edje signals are one of the communication interfaces between code and a given Edje object&apos;s theme. With signals, one can communicate two string values at a time, which are: - &quot;emission&quot; value: the name of the signal, in general - &quot;source&quot; value: a name for the signal&apos;s context, in general
+   /// 
+   /// Signals can go both ways, from code to theme, or theme to code.
+   /// 
+   /// Though there are those common uses for the two strings, one is free to use them however they like.
+   /// 
+   /// Signal callback registration is powerful, in the way that blobs may be used to match multiple signals at once. All the &quot;*?[&quot; set of <c>fnmatch</c>() operators can be used, both for emission and source.
+   /// 
+   /// Edje has internal signals it will emit, automatically, on various actions taking place on group parts. For example, the mouse cursor being moved, pressed, released, etc., over a given part&apos;s area, all generate individual signals.
+   /// 
+   /// With something like emission = &quot;mouse,down,*&quot;, source = &quot;button.*&quot; where &quot;button.*&quot; is the pattern for the names of parts implementing buttons on an interface, you&apos;d be registering for notifications on events of mouse buttons being pressed down on either of those parts (those events all have the &quot;mouse,down,&quot; common prefix on their names, with a suffix giving the button number). The actual emission and source strings of an event will be passed in as the emission and source parameters of the callback function (e.g. &quot;mouse,down,2&quot; and &quot;button.close&quot;), for each of those events.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.EmitSignal"/> on how to emit signals from code to a an object See <see cref="Efl.Layout.Signal.DelSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   virtual public bool AddSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Removes a signal-triggered callback from an object.
+   /// This function removes a callback, previously attached to the emission of a signal, from the object  obj. The parameters emission, source and func must match exactly those passed to a previous call to <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/>.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.
+   /// 1.21</param>
+   /// <returns><c>true</c> in case of success, <c>false</c> in case of error.
+   /// 1.21</returns>
+   virtual public bool DelSignalCallback(  System.String emission,   System.String source,  EflLayoutSignalCb func) {
+                                                       GCHandle func_handle = GCHandle.Alloc(func);
+      var _ret_var = Efl.Layout.SignalNativeInherit.efl_layout_signal_callback_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source, GCHandle.ToIntPtr(func_handle), EflLayoutSignalCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Sends/emits an Edje signal to this layout.
+   /// This function sends a signal to the object. An Edje program, at the EDC specification level, can respond to a signal by having declared matching &quot;signal&quot; and &quot;source&quot; fields on its block.
+   /// 
+   /// See also the Edje Data Collection Reference for EDC files.
+   /// 
+   /// See <see cref="Efl.Layout.Signal.AddSignalCallback"/> for more on Edje signals.
+   /// 1.21</summary>
+   /// <param name="emission">The signal&apos;s &quot;emission&quot; string
+   /// 1.21</param>
+   /// <param name="source">The signal&apos;s &quot;source&quot; string
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void EmitSignal(  System.String emission,   System.String source) {
+                                           Efl.Layout.SignalNativeInherit.efl_layout_signal_emit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Processes an object&apos;s messages and signals queue.
+   /// This function goes through the object message queue processing the pending messages for this specific Edje object. Normally they&apos;d be processed only at idle time.
+   /// 
+   /// If <c>recurse</c> is <c>true</c>, this function will be called recursively on all subobjects.
+   /// 1.21</summary>
+   /// <param name="recurse">Whether to process messages on children objects.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SignalProcess( bool recurse) {
+                         Efl.Layout.SignalNativeInherit.efl_layout_signal_process_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), recurse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>bind the factory with the given key string. when the data is ready or changed, factory create the object and bind the data to the key action and process promised work. Note: the input <see cref="Efl.Ui.Factory"/> need to be <see cref="Efl.Ui.PropertyBind.PropertyBind"/> at least once.</summary>
+   /// <param name="key">Key string for bind model property data</param>
+   /// <param name="factory"><see cref="Efl.Ui.Factory"/> for create and bind model property data</param>
+   /// <returns></returns>
+   virtual public  void FactoryBind(  System.String key,  Efl.Ui.Factory factory) {
+                                           Efl.Ui.FactoryBindNativeInherit.efl_ui_factory_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  factory);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>bind property data with the given key string. when the data is ready or changed, bind the data to the key action and process promised work.</summary>
+   /// <param name="key">key string for bind model property data</param>
+   /// <param name="property">Model property name</param>
+   /// <returns></returns>
+   virtual public  void PropertyBind(  System.String key,   System.String property) {
+                                           Efl.Ui.PropertyBindNativeInherit.efl_ui_property_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  property);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Model that is/will be</summary>
+   /// <returns>Efl model</returns>
+   virtual public Efl.Model GetModel() {
+       var _ret_var = Efl.Ui.ViewNativeInherit.efl_ui_view_model_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Model that is/will be</summary>
+   /// <param name="model">Efl model</param>
+   /// <returns></returns>
+   virtual public  void SetModel( Efl.Model model) {
+                         Efl.Ui.ViewNativeInherit.efl_ui_view_model_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), model);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether this object updates its size hints automatically.
+/// By default edje doesn&apos;t set size hints on itself. If this property is set to <c>true</c>, size hints will be updated after recalculation. Be careful, as recalculation may happen often, enabling this property may have a considerable performance impact as other widgets will be notified of the size hints changes.
+/// 
+/// A layout recalculation can be triggered by <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcSizeMin"/>, <see cref="Efl.Layout.Calc.CalcPartsExtends"/> or even any other internal event.
+/// 1.21</summary>
+/// <value>Whether or not update the size hints.
+/// 1.21</value>
+   public bool CalcAutoUpdateHints {
+      get { return GetCalcAutoUpdateHints(); }
+      set { SetCalcAutoUpdateHints( value); }
+   }
+   /// <summary>Gets the minimum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the obj object&apos;s minimum size values, as declared in its EDC group definition. For instance, for an Edje object of minimum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; min: 100 100; } }
+/// 
+/// Note: If the <c>min</c> EDC property was not declared for this object, this call will return 0x0.
+/// 
+/// Note: On failure, this function also return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMax"/>.
+/// 1.21</summary>
+/// <value>The minimum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMin {
+      get { return GetGroupSizeMin(); }
+   }
+   /// <summary>Gets the maximum size specified -- as an EDC property -- for a given Edje object
+/// This function retrieves the object&apos;s maximum size values, as declared in its EDC group definition. For instance, for an Edje object of maximum size 100x100 pixels: collections { group { name: &quot;a_group&quot;; max: 100 100; } }
+/// 
+/// Note: If the <c>max</c> EDC property was not declared for the object, this call will return the maximum size a given Edje object may have, for each axis.
+/// 
+/// Note: On failure, this function will return 0x0.
+/// 
+/// See also <see cref="Efl.Layout.Group.GetGroupSizeMin"/>.
+/// 1.21</summary>
+/// <value>The maximum size as set in EDC.
+/// 1.21</value>
+   public Eina.Size2D GroupSizeMax {
+      get { return GetGroupSizeMax(); }
+   }
+   /// <summary>Model that is/will be</summary>
+/// <value>Efl model</value>
+   public Efl.Model Model {
+      get { return GetModel(); }
+      set { SetModel( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutBase.efl_ui_layout_base_class_get();
+   }
+}
+public class LayoutBaseNativeInherit : Efl.Ui.WidgetNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_layout_theme_get_static_delegate == null)
+      efl_ui_layout_theme_get_static_delegate = new efl_ui_layout_theme_get_delegate(theme_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_layout_theme_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_layout_theme_get_static_delegate)});
+      if (efl_ui_layout_theme_set_static_delegate == null)
+      efl_ui_layout_theme_set_static_delegate = new efl_ui_layout_theme_set_delegate(theme_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_layout_theme_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_layout_theme_set_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_layout_calc_auto_update_hints_get_static_delegate == null)
+      efl_layout_calc_auto_update_hints_get_static_delegate = new efl_layout_calc_auto_update_hints_get_delegate(calc_auto_update_hints_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_get_static_delegate)});
+      if (efl_layout_calc_auto_update_hints_set_static_delegate == null)
+      efl_layout_calc_auto_update_hints_set_static_delegate = new efl_layout_calc_auto_update_hints_set_delegate(calc_auto_update_hints_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_auto_update_hints_set"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_auto_update_hints_set_static_delegate)});
+      if (efl_layout_calc_size_min_static_delegate == null)
+      efl_layout_calc_size_min_static_delegate = new efl_layout_calc_size_min_delegate(calc_size_min);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_size_min"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_size_min_static_delegate)});
+      if (efl_layout_calc_parts_extends_static_delegate == null)
+      efl_layout_calc_parts_extends_static_delegate = new efl_layout_calc_parts_extends_delegate(calc_parts_extends);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_parts_extends"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_parts_extends_static_delegate)});
+      if (efl_layout_calc_freeze_static_delegate == null)
+      efl_layout_calc_freeze_static_delegate = new efl_layout_calc_freeze_delegate(calc_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_freeze_static_delegate)});
+      if (efl_layout_calc_thaw_static_delegate == null)
+      efl_layout_calc_thaw_static_delegate = new efl_layout_calc_thaw_delegate(calc_thaw);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_thaw"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_thaw_static_delegate)});
+      if (efl_layout_calc_force_static_delegate == null)
+      efl_layout_calc_force_static_delegate = new efl_layout_calc_force_delegate(calc_force);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_calc_force"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_calc_force_static_delegate)});
+      if (efl_layout_group_size_min_get_static_delegate == null)
+      efl_layout_group_size_min_get_static_delegate = new efl_layout_group_size_min_get_delegate(group_size_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_min_get_static_delegate)});
+      if (efl_layout_group_size_max_get_static_delegate == null)
+      efl_layout_group_size_max_get_static_delegate = new efl_layout_group_size_max_get_delegate(group_size_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_size_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_size_max_get_static_delegate)});
+      if (efl_layout_group_data_get_static_delegate == null)
+      efl_layout_group_data_get_static_delegate = new efl_layout_group_data_get_delegate(group_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_data_get_static_delegate)});
+      if (efl_layout_group_part_exist_get_static_delegate == null)
+      efl_layout_group_part_exist_get_static_delegate = new efl_layout_group_part_exist_get_delegate(part_exist_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_group_part_exist_get"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_group_part_exist_get_static_delegate)});
+      if (efl_layout_signal_message_send_static_delegate == null)
+      efl_layout_signal_message_send_static_delegate = new efl_layout_signal_message_send_delegate(message_send);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_message_send"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_message_send_static_delegate)});
+      if (efl_layout_signal_callback_add_static_delegate == null)
+      efl_layout_signal_callback_add_static_delegate = new efl_layout_signal_callback_add_delegate(signal_callback_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_add"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_add_static_delegate)});
+      if (efl_layout_signal_callback_del_static_delegate == null)
+      efl_layout_signal_callback_del_static_delegate = new efl_layout_signal_callback_del_delegate(signal_callback_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_callback_del"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_callback_del_static_delegate)});
+      if (efl_layout_signal_emit_static_delegate == null)
+      efl_layout_signal_emit_static_delegate = new efl_layout_signal_emit_delegate(signal_emit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_emit"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_emit_static_delegate)});
+      if (efl_layout_signal_process_static_delegate == null)
+      efl_layout_signal_process_static_delegate = new efl_layout_signal_process_delegate(signal_process);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_layout_signal_process"), func = Marshal.GetFunctionPointerForDelegate(efl_layout_signal_process_static_delegate)});
+      if (efl_ui_factory_bind_static_delegate == null)
+      efl_ui_factory_bind_static_delegate = new efl_ui_factory_bind_delegate(factory_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_bind_static_delegate)});
+      if (efl_ui_property_bind_static_delegate == null)
+      efl_ui_property_bind_static_delegate = new efl_ui_property_bind_delegate(property_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_property_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_property_bind_static_delegate)});
+      if (efl_ui_view_model_get_static_delegate == null)
+      efl_ui_view_model_get_static_delegate = new efl_ui_view_model_get_delegate(model_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_get_static_delegate)});
+      if (efl_ui_view_model_set_static_delegate == null)
+      efl_ui_view_model_set_static_delegate = new efl_ui_view_model_set_delegate(model_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutBase.efl_ui_layout_base_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutBase.efl_ui_layout_base_class_get();
+   }
+
+
+    private delegate  void efl_ui_layout_theme_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String klass,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String group,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String style);
+
+
+    public delegate  void efl_ui_layout_theme_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String klass,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String group,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String style);
+    public static Efl.Eo.FunctionWrapper<efl_ui_layout_theme_get_api_delegate> efl_ui_layout_theme_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_layout_theme_get_api_delegate>(_Module, "efl_ui_layout_theme_get");
+    private static  void theme_get(System.IntPtr obj, System.IntPtr pd,  out  System.String klass,  out  System.String group,  out  System.String style)
+   {
+      Eina.Log.Debug("function efl_ui_layout_theme_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                  System.String _out_klass = default( System.String);
+       System.String _out_group = default( System.String);
+       System.String _out_style = default( System.String);
+                           
+         try {
+            ((LayoutBase)wrapper).GetTheme( out _out_klass,  out _out_group,  out _out_style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      klass = _out_klass;
+      group = _out_group;
+      style = _out_style;
+                              } else {
+         efl_ui_layout_theme_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out klass,  out group,  out style);
+      }
+   }
+   private static efl_ui_layout_theme_get_delegate efl_ui_layout_theme_get_static_delegate;
+
+
+    private delegate Efl.Ui.ThemeApplyResult efl_ui_layout_theme_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String klass,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String group,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    public delegate Efl.Ui.ThemeApplyResult efl_ui_layout_theme_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String klass,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String group,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<efl_ui_layout_theme_set_api_delegate> efl_ui_layout_theme_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_layout_theme_set_api_delegate>(_Module, "efl_ui_layout_theme_set");
+    private static Efl.Ui.ThemeApplyResult theme_set(System.IntPtr obj, System.IntPtr pd,   System.String klass,   System.String group,   System.String style)
+   {
+      Eina.Log.Debug("function efl_ui_layout_theme_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.ThemeApplyResult _ret_var = default(Efl.Ui.ThemeApplyResult);
+         try {
+            _ret_var = ((LayoutBase)wrapper).SetTheme( klass,  group,  style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_layout_theme_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  klass,  group,  style);
+      }
+   }
+   private static efl_ui_layout_theme_set_delegate efl_ui_layout_theme_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((LayoutBase)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutBase)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_calc_auto_update_hints_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_calc_auto_update_hints_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate> efl_layout_calc_auto_update_hints_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_get_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_get");
+    private static bool calc_auto_update_hints_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutBase)wrapper).GetCalcAutoUpdateHints();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_auto_update_hints_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_get_delegate efl_layout_calc_auto_update_hints_get_static_delegate;
+
+
+    private delegate  void efl_layout_calc_auto_update_hints_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool update);
+
+
+    public delegate  void efl_layout_calc_auto_update_hints_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool update);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate> efl_layout_calc_auto_update_hints_set_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_auto_update_hints_set_api_delegate>(_Module, "efl_layout_calc_auto_update_hints_set");
+    private static  void calc_auto_update_hints_set(System.IntPtr obj, System.IntPtr pd,  bool update)
+   {
+      Eina.Log.Debug("function efl_layout_calc_auto_update_hints_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutBase)wrapper).SetCalcAutoUpdateHints( update);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_calc_auto_update_hints_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  update);
+      }
+   }
+   private static efl_layout_calc_auto_update_hints_set_delegate efl_layout_calc_auto_update_hints_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal restricted);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_calc_size_min_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal restricted);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate> efl_layout_calc_size_min_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_size_min_api_delegate>(_Module, "efl_layout_calc_size_min");
+    private static Eina.Size2D_StructInternal calc_size_min(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal restricted)
+   {
+      Eina.Log.Debug("function efl_layout_calc_size_min was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_restricted = Eina.Size2D_StructConversion.ToManaged(restricted);
+                     Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((LayoutBase)wrapper).CalcSizeMin( _in_restricted);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_size_min_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  restricted);
+      }
+   }
+   private static efl_layout_calc_size_min_delegate efl_layout_calc_size_min_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_layout_calc_parts_extends_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate> efl_layout_calc_parts_extends_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_parts_extends_api_delegate>(_Module, "efl_layout_calc_parts_extends");
+    private static Eina.Rect_StructInternal calc_parts_extends(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_parts_extends was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((LayoutBase)wrapper).CalcPartsExtends();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_calc_parts_extends_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_parts_extends_delegate efl_layout_calc_parts_extends_static_delegate;
+
+
+    private delegate  int efl_layout_calc_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate> efl_layout_calc_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_freeze_api_delegate>(_Module, "efl_layout_calc_freeze");
+    private static  int calc_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutBase)wrapper).FreezeCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_freeze_delegate efl_layout_calc_freeze_static_delegate;
+
+
+    private delegate  int efl_layout_calc_thaw_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_layout_calc_thaw_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate> efl_layout_calc_thaw_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_thaw_api_delegate>(_Module, "efl_layout_calc_thaw");
+    private static  int calc_thaw(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_thaw was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutBase)wrapper).ThawCalc();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_layout_calc_thaw_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_thaw_delegate efl_layout_calc_thaw_static_delegate;
+
+
+    private delegate  void efl_layout_calc_force_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_layout_calc_force_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate> efl_layout_calc_force_ptr = new Efl.Eo.FunctionWrapper<efl_layout_calc_force_api_delegate>(_Module, "efl_layout_calc_force");
+    private static  void calc_force(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_calc_force was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LayoutBase)wrapper).CalcForce();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_layout_calc_force_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_calc_force_delegate efl_layout_calc_force_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate> efl_layout_group_size_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_min_get_api_delegate>(_Module, "efl_layout_group_size_min_get");
+    private static Eina.Size2D_StructInternal group_size_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((LayoutBase)wrapper).GetGroupSizeMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_min_get_delegate efl_layout_group_size_min_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_layout_group_size_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate> efl_layout_group_size_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_size_max_get_api_delegate>(_Module, "efl_layout_group_size_max_get");
+    private static Eina.Size2D_StructInternal group_size_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_layout_group_size_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((LayoutBase)wrapper).GetGroupSizeMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_layout_group_size_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_layout_group_size_max_get_delegate efl_layout_group_size_max_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_layout_group_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_layout_group_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate> efl_layout_group_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_data_get_api_delegate>(_Module, "efl_layout_group_data_get");
+    private static  System.String group_data_get(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_layout_group_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutBase)wrapper).GetGroupData( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_layout_group_data_get_delegate efl_layout_group_data_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_group_part_exist_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_group_part_exist_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate> efl_layout_group_part_exist_get_ptr = new Efl.Eo.FunctionWrapper<efl_layout_group_part_exist_get_api_delegate>(_Module, "efl_layout_group_part_exist_get");
+    private static bool part_exist_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_layout_group_part_exist_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutBase)wrapper).GetPartExist( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_layout_group_part_exist_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_layout_group_part_exist_get_delegate efl_layout_group_part_exist_get_static_delegate;
+
+
+    private delegate  void efl_layout_signal_message_send_delegate(System.IntPtr obj, System.IntPtr pd,    int id,    Eina.ValueNative msg);
+
+
+    public delegate  void efl_layout_signal_message_send_api_delegate(System.IntPtr obj,    int id,    Eina.ValueNative msg);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate> efl_layout_signal_message_send_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_message_send_api_delegate>(_Module, "efl_layout_signal_message_send");
+    private static  void message_send(System.IntPtr obj, System.IntPtr pd,   int id,   Eina.ValueNative msg)
+   {
+      Eina.Log.Debug("function efl_layout_signal_message_send was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutBase)wrapper).MessageSend( id,  msg);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_message_send_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id,  msg);
+      }
+   }
+   private static efl_layout_signal_message_send_delegate efl_layout_signal_message_send_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate> efl_layout_signal_callback_add_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_add_api_delegate>(_Module, "efl_layout_signal_callback_add");
+    private static bool signal_callback_add(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutBase)wrapper).AddSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_add_delegate efl_layout_signal_callback_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_layout_signal_callback_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_layout_signal_callback_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate> efl_layout_signal_callback_del_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_callback_del_api_delegate>(_Module, "efl_layout_signal_callback_del");
+    private static bool signal_callback_del(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source, IntPtr func_data, EflLayoutSignalCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_layout_signal_callback_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                  EflLayoutSignalCbWrapper func_wrapper = new EflLayoutSignalCbWrapper(func, func_data, func_free_cb);
+         bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutBase)wrapper).DelSignalCallback( emission,  source,  func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_layout_signal_callback_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source, func_data, func, func_free_cb);
+      }
+   }
+   private static efl_layout_signal_callback_del_delegate efl_layout_signal_callback_del_static_delegate;
+
+
+    private delegate  void efl_layout_signal_emit_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+
+
+    public delegate  void efl_layout_signal_emit_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate> efl_layout_signal_emit_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_emit_api_delegate>(_Module, "efl_layout_signal_emit");
+    private static  void signal_emit(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source)
+   {
+      Eina.Log.Debug("function efl_layout_signal_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutBase)wrapper).EmitSignal( emission,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_layout_signal_emit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source);
+      }
+   }
+   private static efl_layout_signal_emit_delegate efl_layout_signal_emit_static_delegate;
+
+
+    private delegate  void efl_layout_signal_process_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+
+
+    public delegate  void efl_layout_signal_process_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool recurse);
+    public static Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate> efl_layout_signal_process_ptr = new Efl.Eo.FunctionWrapper<efl_layout_signal_process_api_delegate>(_Module, "efl_layout_signal_process");
+    private static  void signal_process(System.IntPtr obj, System.IntPtr pd,  bool recurse)
+   {
+      Eina.Log.Debug("function efl_layout_signal_process was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutBase)wrapper).SignalProcess( recurse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_layout_signal_process_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  recurse);
+      }
+   }
+   private static efl_layout_signal_process_delegate efl_layout_signal_process_static_delegate;
+
+
+    private delegate  void efl_ui_factory_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+
+
+    public delegate  void efl_ui_factory_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate> efl_ui_factory_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate>(_Module, "efl_ui_factory_bind");
+    private static  void factory_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Ui.Factory factory)
+   {
+      Eina.Log.Debug("function efl_ui_factory_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutBase)wrapper).FactoryBind( key,  factory);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_factory_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  factory);
+      }
+   }
+   private static efl_ui_factory_bind_delegate efl_ui_factory_bind_static_delegate;
+
+
+    private delegate  void efl_ui_property_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    public delegate  void efl_ui_property_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate> efl_ui_property_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate>(_Module, "efl_ui_property_bind");
+    private static  void property_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String property)
+   {
+      Eina.Log.Debug("function efl_ui_property_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutBase)wrapper).PropertyBind( key,  property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_property_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  property);
+      }
+   }
+   private static efl_ui_property_bind_delegate efl_ui_property_bind_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Model efl_ui_view_model_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Model efl_ui_view_model_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate> efl_ui_view_model_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate>(_Module, "efl_ui_view_model_get");
+    private static Efl.Model model_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Model _ret_var = default(Efl.Model);
+         try {
+            _ret_var = ((LayoutBase)wrapper).GetModel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_view_model_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_view_model_get_delegate efl_ui_view_model_get_static_delegate;
+
+
+    private delegate  void efl_ui_view_model_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+
+
+    public delegate  void efl_ui_view_model_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate> efl_ui_view_model_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate>(_Module, "efl_ui_view_model_set");
+    private static  void model_set(System.IntPtr obj, System.IntPtr pd,  Efl.Model model)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutBase)wrapper).SetModel( model);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_view_model_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  model);
+      }
+   }
+   private static efl_ui_view_model_set_delegate efl_ui_view_model_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_factory.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_factory.eo.cs
new file mode 100755 (executable)
index 0000000..520181d
--- /dev/null
@@ -0,0 +1,130 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl Ui Layout Factory class</summary>
+[LayoutFactoryNativeInherit]
+public class LayoutFactory : Efl.Ui.CachingFactory, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutFactoryNativeInherit nativeInherit = new Efl.Ui.LayoutFactoryNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutFactory))
+            return Efl.Ui.LayoutFactoryNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_factory_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="itemClass">Define the class of the item returned by this factory. See <see cref="Efl.Ui.WidgetFactory.SetItemClass"/></param>
+   public LayoutFactory(Efl.Object parent
+         , Type itemClass = null) :
+      base(efl_ui_layout_factory_class_get(), typeof(LayoutFactory), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(itemClass))
+         SetItemClass(Efl.Eo.Globals.GetParamHelper(itemClass));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutFactory(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutFactory(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutFactory static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutFactory(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>No description supplied.</summary>
+   /// <param name="klass">The class of the group.</param>
+   /// <param name="group">The group.</param>
+   /// <param name="style">The style to used.</param>
+   /// <returns></returns>
+   virtual public  void ThemeConfig(  System.String klass,   System.String group,   System.String style) {
+                                                             Efl.Ui.LayoutFactoryNativeInherit.efl_ui_layout_factory_theme_config_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), klass,  group,  style);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutFactory.efl_ui_layout_factory_class_get();
+   }
+}
+public class LayoutFactoryNativeInherit : Efl.Ui.CachingFactoryNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_layout_factory_theme_config_static_delegate == null)
+      efl_ui_layout_factory_theme_config_static_delegate = new efl_ui_layout_factory_theme_config_delegate(theme_config);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_layout_factory_theme_config"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_layout_factory_theme_config_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutFactory.efl_ui_layout_factory_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutFactory.efl_ui_layout_factory_class_get();
+   }
+
+
+    private delegate  void efl_ui_layout_factory_theme_config_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String klass,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String group,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    public delegate  void efl_ui_layout_factory_theme_config_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String klass,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String group,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<efl_ui_layout_factory_theme_config_api_delegate> efl_ui_layout_factory_theme_config_ptr = new Efl.Eo.FunctionWrapper<efl_ui_layout_factory_theme_config_api_delegate>(_Module, "efl_ui_layout_factory_theme_config");
+    private static  void theme_config(System.IntPtr obj, System.IntPtr pd,   System.String klass,   System.String group,   System.String style)
+   {
+      Eina.Log.Debug("function efl_ui_layout_factory_theme_config was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutFactory)wrapper).ThemeConfig( klass,  group,  style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_layout_factory_theme_config_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  klass,  group,  style);
+      }
+   }
+   private static efl_ui_layout_factory_theme_config_delegate efl_ui_layout_factory_theme_config_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_part.eo.cs
new file mode 100755 (executable)
index 0000000..9417702
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary layout internal part class</summary>
+[LayoutPartNativeInherit]
+public class LayoutPart : Efl.Ui.WidgetPart, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutPartNativeInherit nativeInherit = new Efl.Ui.LayoutPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPart))
+            return Efl.Ui.LayoutPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_layout_part_class_get(), typeof(LayoutPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPart.efl_ui_layout_part_class_get();
+   }
+}
+public class LayoutPartNativeInherit : Efl.Ui.WidgetPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutPart.efl_ui_layout_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPart.efl_ui_layout_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_part_bg.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_part_bg.eo.cs
new file mode 100755 (executable)
index 0000000..46429c2
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary layout internal part background class</summary>
+[LayoutPartBgNativeInherit]
+public class LayoutPartBg : Efl.Ui.WidgetPartBg, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutPartBgNativeInherit nativeInherit = new Efl.Ui.LayoutPartBgNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartBg))
+            return Efl.Ui.LayoutPartBgNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_part_bg_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartBg(Efl.Object parent= null
+         ) :
+      base(efl_ui_layout_part_bg_class_get(), typeof(LayoutPartBg), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartBg(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartBg(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartBg static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartBg(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartBg.efl_ui_layout_part_bg_class_get();
+   }
+}
+public class LayoutPartBgNativeInherit : Efl.Ui.WidgetPartBgNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutPartBg.efl_ui_layout_part_bg_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartBg.efl_ui_layout_part_bg_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_part_box.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_part_box.eo.cs
new file mode 100755 (executable)
index 0000000..7192995
--- /dev/null
@@ -0,0 +1,965 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Represents a Box created as part of a layout.
+/// Cannot be deleted. This is only a representation of an internal object of an EFL layout.</summary>
+[LayoutPartBoxNativeInherit]
+public class LayoutPartBox : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Container,Efl.Pack,Efl.PackLinear,Efl.Ui.Direction,Efl.Ui.DirectionReadonly
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutPartBoxNativeInherit nativeInherit = new Efl.Ui.LayoutPartBoxNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartBox))
+            return Efl.Ui.LayoutPartBoxNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_part_box_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartBox(Efl.Object parent= null
+         ) :
+      base(efl_ui_layout_part_box_class_get(), typeof(LayoutPartBox), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartBox(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartBox(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartBox static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartBox(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Real part property</summary>
+   /// <param name="layout">Real part object</param>
+   /// <param name="part">Real part name</param>
+   /// <returns></returns>
+   virtual public  void SetRealPart( Efl.Object layout,   System.String part) {
+                                           Efl.Ui.LayoutPartBoxNativeInherit.efl_ui_layout_part_box_real_part_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), layout,  part);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartBox.efl_ui_layout_part_box_class_get();
+   }
+}
+public class LayoutPartBoxNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_layout_part_box_real_part_set_static_delegate == null)
+      efl_ui_layout_part_box_real_part_set_static_delegate = new efl_ui_layout_part_box_real_part_set_delegate(real_part_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_layout_part_box_real_part_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_layout_part_box_real_part_set_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutPartBox.efl_ui_layout_part_box_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartBox.efl_ui_layout_part_box_class_get();
+   }
+
+
+    private delegate  void efl_ui_layout_part_box_real_part_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object layout,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    public delegate  void efl_ui_layout_part_box_real_part_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object layout,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_ui_layout_part_box_real_part_set_api_delegate> efl_ui_layout_part_box_real_part_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_layout_part_box_real_part_set_api_delegate>(_Module, "efl_ui_layout_part_box_real_part_set");
+    private static  void real_part_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object layout,   System.String part)
+   {
+      Eina.Log.Debug("function efl_ui_layout_part_box_real_part_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartBox)wrapper).SetRealPart( layout,  part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_layout_part_box_real_part_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  layout,  part);
+      }
+   }
+   private static efl_ui_layout_part_box_real_part_set_delegate efl_ui_layout_part_box_real_part_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((LayoutPartBox)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartBox)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((LayoutPartBox)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutPartBox)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((LayoutPartBox)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartBox)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_part_content.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_part_content.eo.cs
new file mode 100755 (executable)
index 0000000..119be5e
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary layout internal part class</summary>
+[LayoutPartContentNativeInherit]
+public class LayoutPartContent : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutPartContentNativeInherit nativeInherit = new Efl.Ui.LayoutPartContentNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartContent))
+            return Efl.Ui.LayoutPartContentNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_part_content_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartContent(Efl.Object parent= null
+         ) :
+      base(efl_ui_layout_part_content_class_get(), typeof(LayoutPartContent), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartContent(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartContent(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartContent static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartContent(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartContent.efl_ui_layout_part_content_class_get();
+   }
+}
+public class LayoutPartContentNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutPartContent.efl_ui_layout_part_content_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartContent.efl_ui_layout_part_content_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartContent)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartContent)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartContent)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_part_legacy.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_part_legacy.eo.cs
new file mode 100755 (executable)
index 0000000..7cc3649
--- /dev/null
@@ -0,0 +1,515 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary layout internal part class</summary>
+[LayoutPartLegacyNativeInherit]
+public class LayoutPartLegacy : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content,Efl.Text,Efl.TextMarkup,Efl.Ui.L10n
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutPartLegacyNativeInherit nativeInherit = new Efl.Ui.LayoutPartLegacyNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartLegacy))
+            return Efl.Ui.LayoutPartLegacyNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_part_legacy_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartLegacy(Efl.Object parent= null
+         ) :
+      base(efl_ui_layout_part_legacy_class_get(), typeof(LayoutPartLegacy), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartLegacy(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartLegacy(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartLegacy static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartLegacy(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   virtual public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A unique string to be translated.
+   /// Often this will be a human-readable string (e.g. in English) but it can also be a unique string identifier that must then be translated to the current locale with <c>dgettext</c>() or any similar mechanism.
+   /// 
+   /// Setting this property will enable translation for this object or part.</summary>
+   /// <param name="domain">A translation domain. If <c>null</c> this means the default domain is used.</param>
+   /// <returns>This returns the untranslated value of <c>label</c>. The translated string can usually be retrieved with <see cref="Efl.Text.GetText"/>.</returns>
+   virtual public  System.String GetL10nText( out  System.String domain) {
+                         var _ret_var = Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out domain);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the new untranslated string and domain for this object.</summary>
+   /// <param name="label">A unique (untranslated) string.</param>
+   /// <param name="domain">A translation domain. If <c>null</c> this uses the default domain (eg. set by <c>textdomain</c>()).</param>
+   /// <returns></returns>
+   virtual public  void SetL10nText(  System.String label,   System.String domain) {
+                                           Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), label,  domain);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Requests this object to update its text strings for the current locale.
+   /// Currently strings are translated with <c>dgettext</c>, so support for this function may depend on the platform. It is up to the application to provide its own translation data.
+   /// 
+   /// This function is a hook meant to be implemented by any object that supports translation. This can be called whenever a new object is created or when the current locale changes, for instance. This should only trigger further calls to <see cref="Efl.Ui.L10n.UpdateTranslation"/> to children objects.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateTranslation() {
+       Efl.Ui.L10nNativeInherit.efl_ui_l10n_translation_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartLegacy.efl_ui_layout_part_legacy_class_get();
+   }
+}
+public class LayoutPartLegacyNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      if (efl_ui_l10n_text_get_static_delegate == null)
+      efl_ui_l10n_text_get_static_delegate = new efl_ui_l10n_text_get_delegate(l10n_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_get_static_delegate)});
+      if (efl_ui_l10n_text_set_static_delegate == null)
+      efl_ui_l10n_text_set_static_delegate = new efl_ui_l10n_text_set_delegate(l10n_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_set_static_delegate)});
+      if (efl_ui_l10n_translation_update_static_delegate == null)
+      efl_ui_l10n_translation_update_static_delegate = new efl_ui_l10n_translation_update_delegate(translation_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_translation_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_translation_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutPartLegacy.efl_ui_layout_part_legacy_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartLegacy.efl_ui_layout_part_legacy_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartLegacy)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartLegacy)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartLegacy)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartLegacy)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartLegacy)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartLegacy)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartLegacy)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_l10n_text_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_l10n_text_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate> efl_ui_l10n_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate>(_Module, "efl_ui_l10n_text_get");
+    private static  System.String l10n_text_get(System.IntPtr obj, System.IntPtr pd,  out  System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                      System.String _out_domain = default( System.String);
+                System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartLegacy)wrapper).GetL10nText( out _out_domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      domain = _out_domain;
+            return _ret_var;
+      } else {
+         return efl_ui_l10n_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out domain);
+      }
+   }
+   private static efl_ui_l10n_text_get_delegate efl_ui_l10n_text_get_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+
+
+    public delegate  void efl_ui_l10n_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate> efl_ui_l10n_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate>(_Module, "efl_ui_l10n_text_set");
+    private static  void l10n_text_set(System.IntPtr obj, System.IntPtr pd,   System.String label,   System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartLegacy)wrapper).SetL10nText( label,  domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_l10n_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  label,  domain);
+      }
+   }
+   private static efl_ui_l10n_text_set_delegate efl_ui_l10n_text_set_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_translation_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_l10n_translation_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate> efl_ui_l10n_translation_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate>(_Module, "efl_ui_l10n_translation_update");
+    private static  void translation_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_translation_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LayoutPartLegacy)wrapper).UpdateTranslation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_l10n_translation_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_l10n_translation_update_delegate efl_ui_l10n_translation_update_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_part_table.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_part_table.eo.cs
new file mode 100755 (executable)
index 0000000..9f7373e
--- /dev/null
@@ -0,0 +1,1329 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Represents a Table created as part of a layout.
+/// Cannot be deleted. This is only a representation of an internal object of an EFL layout.</summary>
+[LayoutPartTableNativeInherit]
+public class LayoutPartTable : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Container,Efl.Pack,Efl.PackLinear,Efl.PackTable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutPartTableNativeInherit nativeInherit = new Efl.Ui.LayoutPartTableNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartTable))
+            return Efl.Ui.LayoutPartTableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_part_table_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartTable(Efl.Object parent= null
+         ) :
+      base(efl_ui_layout_part_table_class_get(), typeof(LayoutPartTable), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartTable(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartTable(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartTable static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartTable(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+   }
+   /// <summary>Real part property</summary>
+   /// <param name="layout">Real part object</param>
+   /// <param name="part">Real part name</param>
+   /// <returns></returns>
+   virtual public  void SetRealPart( Efl.Object layout,   System.String part) {
+                                           Efl.Ui.LayoutPartTableNativeInherit.efl_ui_layout_part_table_real_part_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), layout,  part);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Position and span of the <c>subobj</c> in this container, may be modified to move the <c>subobj</c></summary>
+   /// <param name="subobj">Child object</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">Column span</param>
+   /// <param name="rowspan">Row span</param>
+   /// <returns>Returns false if item is not a child</returns>
+   virtual public bool GetTablePosition( Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  out col,  out row,  out colspan,  out rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void GetTableSize( out  int cols,  out  int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out cols,  out rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void SetTableSize(  int cols,   int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cols,  rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gird columns property</summary>
+   /// <returns>Number of columns</returns>
+   virtual public  int GetTableColumns() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_columns_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is horizontal</summary>
+   /// <param name="cols">Number of columns</param>
+   /// <returns></returns>
+   virtual public  void SetTableColumns(  int cols) {
+                         Efl.PackTableNativeInherit.efl_pack_table_columns_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cols);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Table rows property</summary>
+   /// <returns>Number of rows</returns>
+   virtual public  int GetTableRows() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_rows_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is vertical</summary>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void SetTableRows(  int rows) {
+                         Efl.PackTableNativeInherit.efl_pack_table_rows_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), rows);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   virtual public  void GetTableDirection( out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out primary,  out secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   virtual public  void SetTableDirection( Efl.Ui.Dir primary,  Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), primary,  secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pack object at a given location in the table.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">A child object to pack in this table.</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">0 means 1, -1 means <see cref="Efl.PackTable.TableColumns"/></param>
+   /// <param name="rowspan">0 means 1, -1 means <see cref="Efl.PackTable.TableRows"/></param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool PackTable( Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  col,  row,  colspan,  rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Returns all objects at a given position in this table.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="below">If <c>true</c> get objects spanning over this cell.</param>
+   /// <returns>Iterator to table contents</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> GetTableContents(  int col,   int row,  bool below) {
+                                                             var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_contents_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), col,  row,  below);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns a child at a given position, see <see cref="Efl.PackTable.GetTableContents"/>.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <returns>Child object</returns>
+   virtual public Efl.Gfx.Entity GetTableContent(  int col,   int row) {
+                                           var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), col,  row);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gird columns property</summary>
+/// <value>Number of columns</value>
+   public  int TableColumns {
+      get { return GetTableColumns(); }
+      set { SetTableColumns( value); }
+   }
+   /// <summary>Table rows property</summary>
+/// <value>Number of rows</value>
+   public  int TableRows {
+      get { return GetTableRows(); }
+      set { SetTableRows( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartTable.efl_ui_layout_part_table_class_get();
+   }
+}
+public class LayoutPartTableNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_layout_part_table_real_part_set_static_delegate == null)
+      efl_ui_layout_part_table_real_part_set_static_delegate = new efl_ui_layout_part_table_real_part_set_delegate(real_part_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_layout_part_table_real_part_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_layout_part_table_real_part_set_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_pack_table_position_get_static_delegate == null)
+      efl_pack_table_position_get_static_delegate = new efl_pack_table_position_get_delegate(table_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_position_get_static_delegate)});
+      if (efl_pack_table_size_get_static_delegate == null)
+      efl_pack_table_size_get_static_delegate = new efl_pack_table_size_get_delegate(table_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_get_static_delegate)});
+      if (efl_pack_table_size_set_static_delegate == null)
+      efl_pack_table_size_set_static_delegate = new efl_pack_table_size_set_delegate(table_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_set_static_delegate)});
+      if (efl_pack_table_columns_get_static_delegate == null)
+      efl_pack_table_columns_get_static_delegate = new efl_pack_table_columns_get_delegate(table_columns_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_get_static_delegate)});
+      if (efl_pack_table_columns_set_static_delegate == null)
+      efl_pack_table_columns_set_static_delegate = new efl_pack_table_columns_set_delegate(table_columns_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_set_static_delegate)});
+      if (efl_pack_table_rows_get_static_delegate == null)
+      efl_pack_table_rows_get_static_delegate = new efl_pack_table_rows_get_delegate(table_rows_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_get_static_delegate)});
+      if (efl_pack_table_rows_set_static_delegate == null)
+      efl_pack_table_rows_set_static_delegate = new efl_pack_table_rows_set_delegate(table_rows_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_set_static_delegate)});
+      if (efl_pack_table_direction_get_static_delegate == null)
+      efl_pack_table_direction_get_static_delegate = new efl_pack_table_direction_get_delegate(table_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_get_static_delegate)});
+      if (efl_pack_table_direction_set_static_delegate == null)
+      efl_pack_table_direction_set_static_delegate = new efl_pack_table_direction_set_delegate(table_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_set_static_delegate)});
+      if (efl_pack_table_static_delegate == null)
+      efl_pack_table_static_delegate = new efl_pack_table_delegate(pack_table);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_static_delegate)});
+      if (efl_pack_table_contents_get_static_delegate == null)
+      efl_pack_table_contents_get_static_delegate = new efl_pack_table_contents_get_delegate(table_contents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_contents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_contents_get_static_delegate)});
+      if (efl_pack_table_content_get_static_delegate == null)
+      efl_pack_table_content_get_static_delegate = new efl_pack_table_content_get_delegate(table_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_content_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutPartTable.efl_ui_layout_part_table_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartTable.efl_ui_layout_part_table_class_get();
+   }
+
+
+    private delegate  void efl_ui_layout_part_table_real_part_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object layout,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    public delegate  void efl_ui_layout_part_table_real_part_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object layout,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_ui_layout_part_table_real_part_set_api_delegate> efl_ui_layout_part_table_real_part_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_layout_part_table_real_part_set_api_delegate>(_Module, "efl_ui_layout_part_table_real_part_set");
+    private static  void real_part_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object layout,   System.String part)
+   {
+      Eina.Log.Debug("function efl_ui_layout_part_table_real_part_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartTable)wrapper).SetRealPart( layout,  part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_layout_part_table_real_part_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  layout,  part);
+      }
+   }
+   private static efl_ui_layout_part_table_real_part_set_delegate efl_ui_layout_part_table_real_part_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((LayoutPartTable)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartTable)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((LayoutPartTable)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((LayoutPartTable)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_position_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_position_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate> efl_pack_table_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate>(_Module, "efl_pack_table_position_get");
+    private static bool table_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   col = default( int);      row = default( int);      colspan = default( int);      rowspan = default( int);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTablePosition( subobj,  out col,  out row,  out colspan,  out rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  out col,  out row,  out colspan,  out rowspan);
+      }
+   }
+   private static efl_pack_table_position_get_delegate efl_pack_table_position_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int cols,   out  int rows);
+
+
+    public delegate  void efl_pack_table_size_get_api_delegate(System.IntPtr obj,   out  int cols,   out  int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate> efl_pack_table_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate>(_Module, "efl_pack_table_size_get");
+    private static  void table_size_get(System.IntPtr obj, System.IntPtr pd,  out  int cols,  out  int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           cols = default( int);      rows = default( int);                     
+         try {
+            ((LayoutPartTable)wrapper).GetTableSize( out cols,  out rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cols,  out rows);
+      }
+   }
+   private static efl_pack_table_size_get_delegate efl_pack_table_size_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols,    int rows);
+
+
+    public delegate  void efl_pack_table_size_set_api_delegate(System.IntPtr obj,    int cols,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate> efl_pack_table_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate>(_Module, "efl_pack_table_size_set");
+    private static  void table_size_set(System.IntPtr obj, System.IntPtr pd,   int cols,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartTable)wrapper).SetTableSize( cols,  rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols,  rows);
+      }
+   }
+   private static efl_pack_table_size_set_delegate efl_pack_table_size_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_columns_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_columns_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate> efl_pack_table_columns_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate>(_Module, "efl_pack_table_columns_get");
+    private static  int table_columns_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableColumns();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_columns_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_columns_get_delegate efl_pack_table_columns_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_columns_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols);
+
+
+    public delegate  void efl_pack_table_columns_set_api_delegate(System.IntPtr obj,    int cols);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate> efl_pack_table_columns_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate>(_Module, "efl_pack_table_columns_set");
+    private static  void table_columns_set(System.IntPtr obj, System.IntPtr pd,   int cols)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartTable)wrapper).SetTableColumns( cols);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_columns_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols);
+      }
+   }
+   private static efl_pack_table_columns_set_delegate efl_pack_table_columns_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_rows_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_rows_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate> efl_pack_table_rows_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate>(_Module, "efl_pack_table_rows_get");
+    private static  int table_rows_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableRows();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_rows_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_rows_get_delegate efl_pack_table_rows_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_rows_set_delegate(System.IntPtr obj, System.IntPtr pd,    int rows);
+
+
+    public delegate  void efl_pack_table_rows_set_api_delegate(System.IntPtr obj,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate> efl_pack_table_rows_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate>(_Module, "efl_pack_table_rows_set");
+    private static  void table_rows_set(System.IntPtr obj, System.IntPtr pd,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartTable)wrapper).SetTableRows( rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_rows_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rows);
+      }
+   }
+   private static efl_pack_table_rows_set_delegate efl_pack_table_rows_set_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_get_api_delegate(System.IntPtr obj,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate> efl_pack_table_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate>(_Module, "efl_pack_table_direction_get");
+    private static  void table_direction_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           primary = default(Efl.Ui.Dir);      secondary = default(Efl.Ui.Dir);                     
+         try {
+            ((LayoutPartTable)wrapper).GetTableDirection( out primary,  out secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out primary,  out secondary);
+      }
+   }
+   private static efl_pack_table_direction_get_delegate efl_pack_table_direction_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate> efl_pack_table_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate>(_Module, "efl_pack_table_direction_set");
+    private static  void table_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir primary,  Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartTable)wrapper).SetTableDirection( primary,  secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  primary,  secondary);
+      }
+   }
+   private static efl_pack_table_direction_set_delegate efl_pack_table_direction_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate> efl_pack_table_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate>(_Module, "efl_pack_table");
+    private static bool pack_table(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            bool _ret_var = default(bool);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).PackTable( subobj,  col,  row,  colspan,  rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  col,  row,  colspan,  rowspan);
+      }
+   }
+   private static efl_pack_table_delegate efl_pack_table_static_delegate;
+
+
+    private delegate  System.IntPtr efl_pack_table_contents_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+
+
+    public delegate  System.IntPtr efl_pack_table_contents_get_api_delegate(System.IntPtr obj,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate> efl_pack_table_contents_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate>(_Module, "efl_pack_table_contents_get");
+    private static  System.IntPtr table_contents_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row,  bool below)
+   {
+      Eina.Log.Debug("function efl_pack_table_contents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableContents( col,  row,  below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_pack_table_contents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row,  below);
+      }
+   }
+   private static efl_pack_table_contents_get_delegate efl_pack_table_contents_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_table_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_table_content_get_api_delegate(System.IntPtr obj,    int col,    int row);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate> efl_pack_table_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate>(_Module, "efl_pack_table_content_get");
+    private static Efl.Gfx.Entity table_content_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row)
+   {
+      Eina.Log.Debug("function efl_pack_table_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((LayoutPartTable)wrapper).GetTableContent( col,  row);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_table_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row);
+      }
+   }
+   private static efl_pack_table_content_get_delegate efl_pack_table_content_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_layout_part_text.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_layout_part_text.eo.cs
new file mode 100755 (executable)
index 0000000..86ade85
--- /dev/null
@@ -0,0 +1,357 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary layout internal part class</summary>
+[LayoutPartTextNativeInherit]
+public class LayoutPartText : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Text,Efl.TextMarkup,Efl.Ui.L10n
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.LayoutPartTextNativeInherit nativeInherit = new Efl.Ui.LayoutPartTextNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LayoutPartText))
+            return Efl.Ui.LayoutPartTextNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_layout_part_text_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public LayoutPartText(Efl.Object parent= null
+         ) :
+      base(efl_ui_layout_part_text_class_get(), typeof(LayoutPartText), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LayoutPartText(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected LayoutPartText(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static LayoutPartText static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LayoutPartText(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   virtual public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>A unique string to be translated.
+   /// Often this will be a human-readable string (e.g. in English) but it can also be a unique string identifier that must then be translated to the current locale with <c>dgettext</c>() or any similar mechanism.
+   /// 
+   /// Setting this property will enable translation for this object or part.</summary>
+   /// <param name="domain">A translation domain. If <c>null</c> this means the default domain is used.</param>
+   /// <returns>This returns the untranslated value of <c>label</c>. The translated string can usually be retrieved with <see cref="Efl.Text.GetText"/>.</returns>
+   virtual public  System.String GetL10nText( out  System.String domain) {
+                         var _ret_var = Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out domain);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the new untranslated string and domain for this object.</summary>
+   /// <param name="label">A unique (untranslated) string.</param>
+   /// <param name="domain">A translation domain. If <c>null</c> this uses the default domain (eg. set by <c>textdomain</c>()).</param>
+   /// <returns></returns>
+   virtual public  void SetL10nText(  System.String label,   System.String domain) {
+                                           Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), label,  domain);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Requests this object to update its text strings for the current locale.
+   /// Currently strings are translated with <c>dgettext</c>, so support for this function may depend on the platform. It is up to the application to provide its own translation data.
+   /// 
+   /// This function is a hook meant to be implemented by any object that supports translation. This can be called whenever a new object is created or when the current locale changes, for instance. This should only trigger further calls to <see cref="Efl.Ui.L10n.UpdateTranslation"/> to children objects.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateTranslation() {
+       Efl.Ui.L10nNativeInherit.efl_ui_l10n_translation_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartText.efl_ui_layout_part_text_class_get();
+   }
+}
+public class LayoutPartTextNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      if (efl_ui_l10n_text_get_static_delegate == null)
+      efl_ui_l10n_text_get_static_delegate = new efl_ui_l10n_text_get_delegate(l10n_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_get_static_delegate)});
+      if (efl_ui_l10n_text_set_static_delegate == null)
+      efl_ui_l10n_text_set_static_delegate = new efl_ui_l10n_text_set_delegate(l10n_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_set_static_delegate)});
+      if (efl_ui_l10n_translation_update_static_delegate == null)
+      efl_ui_l10n_translation_update_static_delegate = new efl_ui_l10n_translation_update_delegate(translation_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_translation_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_translation_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LayoutPartText.efl_ui_layout_part_text_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LayoutPartText.efl_ui_layout_part_text_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((LayoutPartText)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_l10n_text_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_l10n_text_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate> efl_ui_l10n_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate>(_Module, "efl_ui_l10n_text_get");
+    private static  System.String l10n_text_get(System.IntPtr obj, System.IntPtr pd,  out  System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                      System.String _out_domain = default( System.String);
+                System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((LayoutPartText)wrapper).GetL10nText( out _out_domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      domain = _out_domain;
+            return _ret_var;
+      } else {
+         return efl_ui_l10n_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out domain);
+      }
+   }
+   private static efl_ui_l10n_text_get_delegate efl_ui_l10n_text_get_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+
+
+    public delegate  void efl_ui_l10n_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate> efl_ui_l10n_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate>(_Module, "efl_ui_l10n_text_set");
+    private static  void l10n_text_set(System.IntPtr obj, System.IntPtr pd,   System.String label,   System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((LayoutPartText)wrapper).SetL10nText( label,  domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_l10n_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  label,  domain);
+      }
+   }
+   private static efl_ui_l10n_text_set_delegate efl_ui_l10n_text_set_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_translation_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_l10n_translation_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate> efl_ui_l10n_translation_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate>(_Module, "efl_ui_l10n_translation_update");
+    private static  void translation_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_translation_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((LayoutPartText)wrapper).UpdateTranslation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_l10n_translation_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_l10n_translation_update_delegate efl_ui_l10n_translation_update_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_legacy.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_legacy.eo.cs
new file mode 100755 (executable)
index 0000000..63ab9e3
--- /dev/null
@@ -0,0 +1,108 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>The bg (background) widget is used for setting (solid) background decorations
+/// in a window (unless it has transparency enabled) or on any container object. It works just like an image but has some properties useful for backgrounds, such as setting it to tiled, centered, scaled or stretched.</summary>
+[LegacyNativeInherit]
+public interface Legacy : 
+   Efl.Eo.IWrapper, IDisposable
+{
+}
+/// <summary>The bg (background) widget is used for setting (solid) background decorations
+/// in a window (unless it has transparency enabled) or on any container object. It works just like an image but has some properties useful for backgrounds, such as setting it to tiled, centered, scaled or stretched.</summary>
+sealed public class LegacyConcrete : 
+
+Legacy
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (LegacyConcrete))
+            return Efl.Ui.LegacyNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_legacy_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public LegacyConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~LegacyConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static LegacyConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new LegacyConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+}
+public class LegacyNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.LegacyConcrete.efl_ui_legacy_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.LegacyConcrete.efl_ui_legacy_interface_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list.eo.cs
new file mode 100755 (executable)
index 0000000..3bda45d
--- /dev/null
@@ -0,0 +1,3715 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Simple list widget with Pack interface.</summary>
+[ListNativeInherit]
+public class List : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Pack,Efl.PackLayout,Efl.PackLinear,Efl.Ui.Clickable,Efl.Ui.MultiSelectable,Efl.Ui.Scrollable,Efl.Ui.ScrollableInteractive,Efl.Ui.Scrollbar,Efl.Ui.Selectable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListNativeInherit nativeInherit = new Efl.Ui.ListNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (List))
+            return Efl.Ui.ListNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public List(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_list_class_get(), typeof(List), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public List(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected List(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static List static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new List(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object LayoutUpdatedEvtKey = new object();
+   /// <summary>Sent after the layout was updated.</summary>
+   public event EventHandler LayoutUpdatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LayoutUpdatedEvt_delegate)) {
+               eventHandlers.AddHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (remove_cpp_event_handler(key, this.evt_LayoutUpdatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LayoutUpdatedEvt.</summary>
+   public void On_LayoutUpdatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LayoutUpdatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LayoutUpdatedEvt_delegate;
+   private void on_LayoutUpdatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LayoutUpdatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPressEvtKey = new object();
+   /// <summary>Called when bar is pressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPressEvt_delegate)) {
+               eventHandlers.AddHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarPressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPressEvt.</summary>
+   public void On_BarPressEvt(Efl.Ui.ScrollbarBarPressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args>)eventHandlers[BarPressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPressEvt_delegate;
+   private void on_BarPressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarPressEvt_Args args = new Efl.Ui.ScrollbarBarPressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarPressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarUnpressEvtKey = new object();
+   /// <summary>Called when bar is unpressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarUnpressEvt_delegate)) {
+               eventHandlers.AddHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarUnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarUnpressEvt.</summary>
+   public void On_BarUnpressEvt(Efl.Ui.ScrollbarBarUnpressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args>)eventHandlers[BarUnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarUnpressEvt_delegate;
+   private void on_BarUnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarUnpressEvt_Args args = new Efl.Ui.ScrollbarBarUnpressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarUnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarDragEvtKey = new object();
+   /// <summary>Called when bar is dragged</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarDragEvt_delegate)) {
+               eventHandlers.AddHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_BarDragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarDragEvt.</summary>
+   public void On_BarDragEvt(Efl.Ui.ScrollbarBarDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args>)eventHandlers[BarDragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarDragEvt_delegate;
+   private void on_BarDragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarDragEvt_Args args = new Efl.Ui.ScrollbarBarDragEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarDragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarSizeChangedEvtKey = new object();
+   /// <summary>Called when bar size is changed</summary>
+   public event EventHandler BarSizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarSizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarSizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarSizeChangedEvt.</summary>
+   public void On_BarSizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarSizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarSizeChangedEvt_delegate;
+   private void on_BarSizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarSizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPosChangedEvtKey = new object();
+   /// <summary>Called when bar position is changed</summary>
+   public event EventHandler BarPosChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPosChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarPosChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPosChangedEvt.</summary>
+   public void On_BarPosChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarPosChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPosChangedEvt_delegate;
+   private void on_BarPosChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarPosChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarShowEvtKey = new object();
+   /// <summary>Callend when bar is shown</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarShowEvt_delegate)) {
+               eventHandlers.AddHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (remove_cpp_event_handler(key, this.evt_BarShowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarShowEvt.</summary>
+   public void On_BarShowEvt(Efl.Ui.ScrollbarBarShowEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args>)eventHandlers[BarShowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarShowEvt_delegate;
+   private void on_BarShowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarShowEvt_Args args = new Efl.Ui.ScrollbarBarShowEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarShowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarHideEvtKey = new object();
+   /// <summary>Called when bar is hidden</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarHideEvt_delegate)) {
+               eventHandlers.AddHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (remove_cpp_event_handler(key, this.evt_BarHideEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarHideEvt.</summary>
+   public void On_BarHideEvt(Efl.Ui.ScrollbarBarHideEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args>)eventHandlers[BarHideEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarHideEvt_delegate;
+   private void on_BarHideEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarHideEvt_Args args = new Efl.Ui.ScrollbarBarHideEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarHideEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectedEvtKey = new object();
+   /// <summary>Called when selected</summary>
+   public event EventHandler SelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_SelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectedEvt.</summary>
+   public void On_SelectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectedEvt_delegate;
+   private void on_SelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnselectedEvtKey = new object();
+   /// <summary>Called when no longer selected</summary>
+   public event EventHandler UnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_UnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnselectedEvt.</summary>
+   public void On_UnselectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnselectedEvt_delegate;
+   private void on_UnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionPasteEvtKey = new object();
+   /// <summary>Called when selection is pasted</summary>
+   public event EventHandler SelectionPasteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionPasteEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (remove_cpp_event_handler(key, this.evt_SelectionPasteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionPasteEvt.</summary>
+   public void On_SelectionPasteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionPasteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionPasteEvt_delegate;
+   private void on_SelectionPasteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionPasteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCopyEvtKey = new object();
+   /// <summary>Called when selection is copied</summary>
+   public event EventHandler SelectionCopyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCopyEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCopyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCopyEvt.</summary>
+   public void On_SelectionCopyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCopyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCopyEvt_delegate;
+   private void on_SelectionCopyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCopyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCutEvtKey = new object();
+   /// <summary>Called when selection is cut</summary>
+   public event EventHandler SelectionCutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCutEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCutEvt.</summary>
+   public void On_SelectionCutEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCutEvt_delegate;
+   private void on_SelectionCutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionStartEvtKey = new object();
+   /// <summary>Called at selection start</summary>
+   public event EventHandler SelectionStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionStartEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (remove_cpp_event_handler(key, this.evt_SelectionStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionStartEvt.</summary>
+   public void On_SelectionStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionStartEvt_delegate;
+   private void on_SelectionStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Ui_Selectable_SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection is changed</summary>
+    event EventHandler Efl.Ui.Selectable.SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Ui_Selectable_SelectionChangedEvt.</summary>
+   public void On_Efl_Ui_Selectable_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Efl_Ui_Selectable_SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate;
+   private void on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Efl_Ui_Selectable_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionClearedEvtKey = new object();
+   /// <summary>Called when selection is cleared</summary>
+   public event EventHandler SelectionClearedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionClearedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionClearedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionClearedEvt.</summary>
+   public void On_SelectionClearedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionClearedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionClearedEvt_delegate;
+   private void on_SelectionClearedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionClearedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_LayoutUpdatedEvt_delegate = new Efl.EventCb(on_LayoutUpdatedEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_BarPressEvt_delegate = new Efl.EventCb(on_BarPressEvt_NativeCallback);
+      evt_BarUnpressEvt_delegate = new Efl.EventCb(on_BarUnpressEvt_NativeCallback);
+      evt_BarDragEvt_delegate = new Efl.EventCb(on_BarDragEvt_NativeCallback);
+      evt_BarSizeChangedEvt_delegate = new Efl.EventCb(on_BarSizeChangedEvt_NativeCallback);
+      evt_BarPosChangedEvt_delegate = new Efl.EventCb(on_BarPosChangedEvt_NativeCallback);
+      evt_BarShowEvt_delegate = new Efl.EventCb(on_BarShowEvt_NativeCallback);
+      evt_BarHideEvt_delegate = new Efl.EventCb(on_BarHideEvt_NativeCallback);
+      evt_SelectedEvt_delegate = new Efl.EventCb(on_SelectedEvt_NativeCallback);
+      evt_UnselectedEvt_delegate = new Efl.EventCb(on_UnselectedEvt_NativeCallback);
+      evt_SelectionPasteEvt_delegate = new Efl.EventCb(on_SelectionPasteEvt_NativeCallback);
+      evt_SelectionCopyEvt_delegate = new Efl.EventCb(on_SelectionCopyEvt_NativeCallback);
+      evt_SelectionCutEvt_delegate = new Efl.EventCb(on_SelectionCutEvt_NativeCallback);
+      evt_SelectionStartEvt_delegate = new Efl.EventCb(on_SelectionStartEvt_NativeCallback);
+      evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate = new Efl.EventCb(on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback);
+      evt_SelectionClearedEvt_delegate = new Efl.EventCb(on_SelectionClearedEvt_NativeCallback);
+   }
+   /// <summary>Property data of last selected item.</summary>
+   /// <returns>last selected item of list.</returns>
+   virtual public Efl.Ui.ListItem GetLastSelectedItem() {
+       var _ret_var = Efl.Ui.ListNativeInherit.efl_ui_list_last_selected_item_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>scroll move the item to show in the viewport.</summary>
+   /// <param name="item">Target item.</param>
+   /// <param name="animation">Boolean value for animation of scroll move.</param>
+   /// <returns></returns>
+   virtual public  void ItemScroll( Efl.Ui.ListItem item,  bool animation) {
+                                           Efl.Ui.ListNativeInherit.efl_ui_list_item_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>scroll move the item to show at the align position of the viewport.</summary>
+   /// <param name="item">Target item.</param>
+   /// <param name="align">align value in Viewport.</param>
+   /// <param name="animation">Boolean value for animation of scroll move.</param>
+   /// <returns></returns>
+   virtual public  void ItemScrollAlign( Efl.Ui.ListItem item,  double align,  bool animation) {
+                                                             Efl.Ui.ListNativeInherit.efl_ui_list_item_scroll_align_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item,  align,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Get the selected items iterator. The iterator sequence will be decided by selection.</summary>
+   /// <returns>Iterator covered by selected items list. user have to free the iterator after used.</returns>
+   virtual public Eina.Iterator<Efl.Ui.ListItem> GetSelectedItems() {
+       var _ret_var = Efl.Ui.ListNativeInherit.efl_ui_list_selected_items_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.ListItem>(_ret_var, true, false);
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Requests EFL to call the <see cref="Efl.PackLayout.UpdateLayout"/> method on this object.
+   /// This <see cref="Efl.PackLayout.UpdateLayout"/> may be called asynchronously.</summary>
+   /// <returns></returns>
+   virtual public  void LayoutRequest() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_request_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Implementation of this container&apos;s layout algorithm.
+   /// EFL will call this function whenever the contents of this container need to be re-layed out on the canvas.
+   /// 
+   /// This can be overriden to implement custom layout behaviours.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateLayout() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The mode type for children selection.</summary>
+   /// <returns>Type of selection of children</returns>
+   virtual public Efl.Ui.SelectMode GetSelectMode() {
+       var _ret_var = Efl.Ui.MultiSelectableNativeInherit.efl_ui_select_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The mode type for children selection.</summary>
+   /// <param name="mode">Type of selection of children</param>
+   /// <returns></returns>
+   virtual public  void SetSelectMode( Efl.Ui.SelectMode mode) {
+                         Efl.Ui.MultiSelectableNativeInherit.efl_ui_select_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content position</summary>
+   /// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+   virtual public Eina.Position2D GetContentPos() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The content position</summary>
+   /// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+   /// <returns></returns>
+   virtual public  void SetContentPos( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content size</summary>
+   /// <returns>The content size in pixels.</returns>
+   virtual public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The viewport geometry</summary>
+   /// <returns>It is absolute geometry.</returns>
+   virtual public Eina.Rect GetViewportGeometry() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void GetBounceEnabled( out bool horiz,  out bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void SetBounceEnabled( bool horiz,  bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollFreeze() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollFreeze( bool freeze) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollHold() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollHold( bool hold) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void GetLooping( out bool loop_h,  out bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void SetLooping( bool loop_h,  bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   virtual public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   virtual public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void GetGravity( out double x,  out double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void SetGravity( double x,  double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   virtual public  void SetMatchContent( bool w,  bool h) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_match_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <returns>The step size in pixels</returns>
+   virtual public Eina.Position2D GetStepSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <param name="step">The step size in pixels</param>
+   /// <returns></returns>
+   virtual public  void SetStepSize( Eina.Position2D step) {
+       var _in_step = Eina.Position2D_StructConversion.ToInternal(step);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+   /// <param name="rect">The position where to scroll. and The size user want to see</param>
+   /// <param name="animation">Whether to scroll with animation or not</param>
+   /// <returns></returns>
+   virtual public  void Scroll( Eina.Rect rect,  bool animation) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                    Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+   /// <param name="width">Value between 0.0 and 1.0</param>
+   /// <param name="height">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarSize( out double width,  out double height) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out width,  out height);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarPosition( out double posx,  out double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out posx,  out posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void SetBarPosition( double posx,  double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), posx,  posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Update bar visibility.
+   /// The object will call this function whenever the bar need to be shown or hidden.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateBarVisibility() {
+       Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Property data of last selected item.</summary>
+/// <value>last selected item of list.</value>
+   public Efl.Ui.ListItem LastSelectedItem {
+      get { return GetLastSelectedItem(); }
+   }
+   /// <summary>The mode type for children selection.</summary>
+/// <value>Type of selection of children</value>
+   public Efl.Ui.SelectMode SelectMode {
+      get { return GetSelectMode(); }
+      set { SetSelectMode( value); }
+   }
+   /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   public Eina.Position2D ContentPos {
+      get { return GetContentPos(); }
+      set { SetContentPos( value); }
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   public Eina.Rect ViewportGeometry {
+      get { return GetViewportGeometry(); }
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool ScrollFreeze {
+      get { return GetScrollFreeze(); }
+      set { SetScrollFreeze( value); }
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool ScrollHold {
+      get { return GetScrollHold(); }
+      set { SetScrollHold( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   public Eina.Position2D StepSize {
+      get { return GetStepSize(); }
+      set { SetStepSize( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.List.efl_ui_list_class_get();
+   }
+}
+public class ListNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_list_last_selected_item_get_static_delegate == null)
+      efl_ui_list_last_selected_item_get_static_delegate = new efl_ui_list_last_selected_item_get_delegate(last_selected_item_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_last_selected_item_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_last_selected_item_get_static_delegate)});
+      if (efl_ui_list_item_scroll_static_delegate == null)
+      efl_ui_list_item_scroll_static_delegate = new efl_ui_list_item_scroll_delegate(item_scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_item_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_item_scroll_static_delegate)});
+      if (efl_ui_list_item_scroll_align_static_delegate == null)
+      efl_ui_list_item_scroll_align_static_delegate = new efl_ui_list_item_scroll_align_delegate(item_scroll_align);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_item_scroll_align"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_item_scroll_align_static_delegate)});
+      if (efl_ui_list_selected_items_get_static_delegate == null)
+      efl_ui_list_selected_items_get_static_delegate = new efl_ui_list_selected_items_get_delegate(selected_items_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_selected_items_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_selected_items_get_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_layout_request_static_delegate == null)
+      efl_pack_layout_request_static_delegate = new efl_pack_layout_request_delegate(layout_request);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_request"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_request_static_delegate)});
+      if (efl_pack_layout_update_static_delegate == null)
+      efl_pack_layout_update_static_delegate = new efl_pack_layout_update_delegate(layout_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_update"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_update_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_ui_select_mode_get_static_delegate == null)
+      efl_ui_select_mode_get_static_delegate = new efl_ui_select_mode_get_delegate(select_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_select_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_select_mode_get_static_delegate)});
+      if (efl_ui_select_mode_set_static_delegate == null)
+      efl_ui_select_mode_set_static_delegate = new efl_ui_select_mode_set_delegate(select_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_select_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_select_mode_set_static_delegate)});
+      if (efl_ui_scrollable_content_pos_get_static_delegate == null)
+      efl_ui_scrollable_content_pos_get_static_delegate = new efl_ui_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_get_static_delegate)});
+      if (efl_ui_scrollable_content_pos_set_static_delegate == null)
+      efl_ui_scrollable_content_pos_set_static_delegate = new efl_ui_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_set_static_delegate)});
+      if (efl_ui_scrollable_content_size_get_static_delegate == null)
+      efl_ui_scrollable_content_size_get_static_delegate = new efl_ui_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_scrollable_viewport_geometry_get_static_delegate == null)
+      efl_ui_scrollable_viewport_geometry_get_static_delegate = new efl_ui_scrollable_viewport_geometry_get_delegate(viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_viewport_geometry_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_get_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_get_static_delegate = new efl_ui_scrollable_bounce_enabled_get_delegate(bounce_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_set_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_set_static_delegate = new efl_ui_scrollable_bounce_enabled_set_delegate(bounce_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_get_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_get_static_delegate = new efl_ui_scrollable_scroll_freeze_get_delegate(scroll_freeze_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_set_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_set_static_delegate = new efl_ui_scrollable_scroll_freeze_set_delegate(scroll_freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_get_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_get_static_delegate = new efl_ui_scrollable_scroll_hold_get_delegate(scroll_hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_set_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_set_static_delegate = new efl_ui_scrollable_scroll_hold_set_delegate(scroll_hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_set_static_delegate)});
+      if (efl_ui_scrollable_looping_get_static_delegate == null)
+      efl_ui_scrollable_looping_get_static_delegate = new efl_ui_scrollable_looping_get_delegate(looping_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_get_static_delegate)});
+      if (efl_ui_scrollable_looping_set_static_delegate == null)
+      efl_ui_scrollable_looping_set_static_delegate = new efl_ui_scrollable_looping_set_delegate(looping_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_set_static_delegate)});
+      if (efl_ui_scrollable_movement_block_get_static_delegate == null)
+      efl_ui_scrollable_movement_block_get_static_delegate = new efl_ui_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_get_static_delegate)});
+      if (efl_ui_scrollable_movement_block_set_static_delegate == null)
+      efl_ui_scrollable_movement_block_set_static_delegate = new efl_ui_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_set_static_delegate)});
+      if (efl_ui_scrollable_gravity_get_static_delegate == null)
+      efl_ui_scrollable_gravity_get_static_delegate = new efl_ui_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_get_static_delegate)});
+      if (efl_ui_scrollable_gravity_set_static_delegate == null)
+      efl_ui_scrollable_gravity_set_static_delegate = new efl_ui_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_set_static_delegate)});
+      if (efl_ui_scrollable_match_content_set_static_delegate == null)
+      efl_ui_scrollable_match_content_set_static_delegate = new efl_ui_scrollable_match_content_set_delegate(match_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_match_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_match_content_set_static_delegate)});
+      if (efl_ui_scrollable_step_size_get_static_delegate == null)
+      efl_ui_scrollable_step_size_get_static_delegate = new efl_ui_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_get_static_delegate)});
+      if (efl_ui_scrollable_step_size_set_static_delegate == null)
+      efl_ui_scrollable_step_size_set_static_delegate = new efl_ui_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_static_delegate == null)
+      efl_ui_scrollable_scroll_static_delegate = new efl_ui_scrollable_scroll_delegate(scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_get_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_get_static_delegate = new efl_ui_scrollbar_bar_mode_get_delegate(bar_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_set_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_set_static_delegate = new efl_ui_scrollbar_bar_mode_set_delegate(bar_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_size_get_static_delegate == null)
+      efl_ui_scrollbar_bar_size_get_static_delegate = new efl_ui_scrollbar_bar_size_get_delegate(bar_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_size_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_get_static_delegate == null)
+      efl_ui_scrollbar_bar_position_get_static_delegate = new efl_ui_scrollbar_bar_position_get_delegate(bar_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_set_static_delegate == null)
+      efl_ui_scrollbar_bar_position_set_static_delegate = new efl_ui_scrollbar_bar_position_set_delegate(bar_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_visibility_update_static_delegate == null)
+      efl_ui_scrollbar_bar_visibility_update_static_delegate = new efl_ui_scrollbar_bar_visibility_update_delegate(bar_visibility_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_visibility_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_visibility_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.List.efl_ui_list_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.List.efl_ui_list_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.ListItem, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.ListItem efl_ui_list_last_selected_item_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.ListItem, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.ListItem efl_ui_list_last_selected_item_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_last_selected_item_get_api_delegate> efl_ui_list_last_selected_item_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_last_selected_item_get_api_delegate>(_Module, "efl_ui_list_last_selected_item_get");
+    private static Efl.Ui.ListItem last_selected_item_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_last_selected_item_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ListItem _ret_var = default(Efl.Ui.ListItem);
+         try {
+            _ret_var = ((List)wrapper).GetLastSelectedItem();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_list_last_selected_item_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_last_selected_item_get_delegate efl_ui_list_last_selected_item_get_static_delegate;
+
+
+    private delegate  void efl_ui_list_item_scroll_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.ListItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.ListItem item,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_list_item_scroll_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.ListItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.ListItem item,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_item_scroll_api_delegate> efl_ui_list_item_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_item_scroll_api_delegate>(_Module, "efl_ui_list_item_scroll");
+    private static  void item_scroll(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ListItem item,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_list_item_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).ItemScroll( item,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_list_item_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item,  animation);
+      }
+   }
+   private static efl_ui_list_item_scroll_delegate efl_ui_list_item_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_list_item_scroll_align_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.ListItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.ListItem item,   double align,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_list_item_scroll_align_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.ListItem, Efl.Eo.NonOwnTag>))]  Efl.Ui.ListItem item,   double align,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_item_scroll_align_api_delegate> efl_ui_list_item_scroll_align_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_item_scroll_align_api_delegate>(_Module, "efl_ui_list_item_scroll_align");
+    private static  void item_scroll_align(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ListItem item,  double align,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_list_item_scroll_align was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((List)wrapper).ItemScrollAlign( item,  align,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_list_item_scroll_align_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item,  align,  animation);
+      }
+   }
+   private static efl_ui_list_item_scroll_align_delegate efl_ui_list_item_scroll_align_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_list_selected_items_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_list_selected_items_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_selected_items_get_api_delegate> efl_ui_list_selected_items_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_selected_items_get_api_delegate>(_Module, "efl_ui_list_selected_items_get");
+    private static  System.IntPtr selected_items_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_selected_items_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.ListItem> _ret_var = default(Eina.Iterator<Efl.Ui.ListItem>);
+         try {
+            _ret_var = ((List)wrapper).GetSelectedItems();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_ui_list_selected_items_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_selected_items_get_delegate efl_ui_list_selected_items_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((List)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((List)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((List)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    private delegate  void efl_pack_layout_request_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_request_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate> efl_pack_layout_request_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate>(_Module, "efl_pack_layout_request");
+    private static  void layout_request(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_request was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((List)wrapper).LayoutRequest();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_request_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_request_delegate efl_pack_layout_request_static_delegate;
+
+
+    private delegate  void efl_pack_layout_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate> efl_pack_layout_update_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate>(_Module, "efl_pack_layout_update");
+    private static  void layout_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((List)wrapper).UpdateLayout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_update_delegate efl_pack_layout_update_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((List)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((List)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((List)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    private delegate Efl.Ui.SelectMode efl_ui_select_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.SelectMode efl_ui_select_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_select_mode_get_api_delegate> efl_ui_select_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_select_mode_get_api_delegate>(_Module, "efl_ui_select_mode_get");
+    private static Efl.Ui.SelectMode select_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_select_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.SelectMode _ret_var = default(Efl.Ui.SelectMode);
+         try {
+            _ret_var = ((List)wrapper).GetSelectMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_select_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_select_mode_get_delegate efl_ui_select_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_select_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectMode mode);
+
+
+    public delegate  void efl_ui_select_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_select_mode_set_api_delegate> efl_ui_select_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_select_mode_set_api_delegate>(_Module, "efl_ui_select_mode_set");
+    private static  void select_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_select_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((List)wrapper).SetSelectMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_select_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_select_mode_set_delegate efl_ui_select_mode_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate> efl_ui_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate>(_Module, "efl_ui_scrollable_content_pos_get");
+    private static Eina.Position2D_StructInternal content_pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((List)wrapper).GetContentPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_pos_get_delegate efl_ui_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_ui_scrollable_content_pos_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate> efl_ui_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate>(_Module, "efl_ui_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((List)wrapper).SetContentPos( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_ui_scrollable_content_pos_set_delegate efl_ui_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate> efl_ui_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_scrollable_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((List)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_size_get_delegate efl_ui_scrollable_content_size_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate> efl_ui_scrollable_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate>(_Module, "efl_ui_scrollable_viewport_geometry_get");
+    private static Eina.Rect_StructInternal viewport_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((List)wrapper).GetViewportGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_viewport_geometry_get_delegate efl_ui_scrollable_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate> efl_ui_scrollable_bounce_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_get");
+    private static  void bounce_enabled_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((List)wrapper).GetBounceEnabled( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_get_delegate efl_ui_scrollable_bounce_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate> efl_ui_scrollable_bounce_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_set");
+    private static  void bounce_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).SetBounceEnabled( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_set_delegate efl_ui_scrollable_bounce_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_freeze_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_freeze_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate> efl_ui_scrollable_scroll_freeze_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_get");
+    private static bool scroll_freeze_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).GetScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_get_delegate efl_ui_scrollable_scroll_freeze_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void efl_ui_scrollable_scroll_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate> efl_ui_scrollable_scroll_freeze_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_set");
+    private static  void scroll_freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((List)wrapper).SetScrollFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_set_delegate efl_ui_scrollable_scroll_freeze_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate> efl_ui_scrollable_scroll_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_get");
+    private static bool scroll_hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((List)wrapper).GetScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_get_delegate efl_ui_scrollable_scroll_hold_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void efl_ui_scrollable_scroll_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate> efl_ui_scrollable_scroll_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_set");
+    private static  void scroll_hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((List)wrapper).SetScrollHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_set_delegate efl_ui_scrollable_scroll_hold_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate> efl_ui_scrollable_looping_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate>(_Module, "efl_ui_scrollable_looping_get");
+    private static  void looping_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((List)wrapper).GetLooping( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_get_delegate efl_ui_scrollable_looping_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate> efl_ui_scrollable_looping_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate>(_Module, "efl_ui_scrollable_looping_set");
+    private static  void looping_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).SetLooping( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_set_delegate efl_ui_scrollable_looping_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate> efl_ui_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate>(_Module, "efl_ui_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((List)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_movement_block_get_delegate efl_ui_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void efl_ui_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate> efl_ui_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate>(_Module, "efl_ui_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((List)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static efl_ui_scrollable_movement_block_set_delegate efl_ui_scrollable_movement_block_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate> efl_ui_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate>(_Module, "efl_ui_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((List)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_get_delegate efl_ui_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate> efl_ui_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate>(_Module, "efl_ui_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_set_delegate efl_ui_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_match_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void efl_ui_scrollable_match_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate> efl_ui_scrollable_match_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate>(_Module, "efl_ui_scrollable_match_content_set");
+    private static  void match_content_set(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_match_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).SetMatchContent( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_match_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static efl_ui_scrollable_match_content_set_delegate efl_ui_scrollable_match_content_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate> efl_ui_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate>(_Module, "efl_ui_scrollable_step_size_get");
+    private static Eina.Position2D_StructInternal step_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((List)wrapper).GetStepSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_step_size_get_delegate efl_ui_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal step);
+
+
+    public delegate  void efl_ui_scrollable_step_size_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate> efl_ui_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate>(_Module, "efl_ui_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal step)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_step = Eina.Position2D_StructConversion.ToManaged(step);
+                     
+         try {
+            ((List)wrapper).SetStepSize( _in_step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_scrollable_step_size_set_delegate efl_ui_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_scrollable_scroll_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate> efl_ui_scrollable_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate>(_Module, "efl_ui_scrollable_scroll");
+    private static  void scroll(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                       
+         try {
+            ((List)wrapper).Scroll( _in_rect,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  animation);
+      }
+   }
+   private static efl_ui_scrollable_scroll_delegate efl_ui_scrollable_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_get_api_delegate(System.IntPtr obj,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate> efl_ui_scrollbar_bar_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_get");
+    private static  void bar_mode_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Efl.Ui.ScrollbarMode);      vbar = default(Efl.Ui.ScrollbarMode);                     
+         try {
+            ((List)wrapper).GetBarMode( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_get_delegate efl_ui_scrollbar_bar_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate> efl_ui_scrollbar_bar_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_set");
+    private static  void bar_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).SetBarMode( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_set_delegate efl_ui_scrollbar_bar_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double width,   out double height);
+
+
+    public delegate  void efl_ui_scrollbar_bar_size_get_api_delegate(System.IntPtr obj,   out double width,   out double height);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate> efl_ui_scrollbar_bar_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_size_get");
+    private static  void bar_size_get(System.IntPtr obj, System.IntPtr pd,  out double width,  out double height)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           width = default(double);      height = default(double);                     
+         try {
+            ((List)wrapper).GetBarSize( out width,  out height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out width,  out height);
+      }
+   }
+   private static efl_ui_scrollbar_bar_size_get_delegate efl_ui_scrollbar_bar_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double posx,   out double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_get_api_delegate(System.IntPtr obj,   out double posx,   out double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate> efl_ui_scrollbar_bar_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_get");
+    private static  void bar_position_get(System.IntPtr obj, System.IntPtr pd,  out double posx,  out double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           posx = default(double);      posy = default(double);                     
+         try {
+            ((List)wrapper).GetBarPosition( out posx,  out posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out posx,  out posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_get_delegate efl_ui_scrollbar_bar_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   double posx,   double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_set_api_delegate(System.IntPtr obj,   double posx,   double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate> efl_ui_scrollbar_bar_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_set");
+    private static  void bar_position_set(System.IntPtr obj, System.IntPtr pd,  double posx,  double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((List)wrapper).SetBarPosition( posx,  posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  posx,  posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_set_delegate efl_ui_scrollbar_bar_position_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_visibility_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_scrollbar_bar_visibility_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate> efl_ui_scrollbar_bar_visibility_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate>(_Module, "efl_ui_scrollbar_bar_visibility_update");
+    private static  void bar_visibility_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_visibility_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((List)wrapper).UpdateBarVisibility();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollbar_bar_visibility_update_delegate efl_ui_scrollbar_bar_visibility_update_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_default_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_default_item.eo.cs
new file mode 100755 (executable)
index 0000000..5211cb9
--- /dev/null
@@ -0,0 +1,406 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>List Default Item class. This class need to be sub object of list widget. text and contents can be appliable by efl_text, efl_content or efl_part APIs.</summary>
+[ListDefaultItemNativeInherit]
+public class ListDefaultItem : Efl.Ui.ListItem, Efl.Eo.IWrapper,Efl.Content,Efl.Text,Efl.TextMarkup
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListDefaultItemNativeInherit nativeInherit = new Efl.Ui.ListDefaultItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListDefaultItem))
+            return Efl.Ui.ListDefaultItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_default_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public ListDefaultItem(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_list_default_item_class_get(), typeof(ListDefaultItem), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListDefaultItem(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ListDefaultItem(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ListDefaultItem static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListDefaultItem(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   virtual public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListDefaultItem.efl_ui_list_default_item_class_get();
+   }
+}
+public class ListDefaultItemNativeInherit : Efl.Ui.ListItemNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListDefaultItem.efl_ui_list_default_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListDefaultItem.efl_ui_list_default_item_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListDefaultItem)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListDefaultItem)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListDefaultItem)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ListDefaultItem)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListDefaultItem)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ListDefaultItem)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListDefaultItem)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_default_item_part_end.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_default_item_part_end.eo.cs
new file mode 100755 (executable)
index 0000000..da7ca5d
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>List Default Item internal content of end part class</summary>
+[ListDefaultItemPartEndNativeInherit]
+public class ListDefaultItemPartEnd : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListDefaultItemPartEndNativeInherit nativeInherit = new Efl.Ui.ListDefaultItemPartEndNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListDefaultItemPartEnd))
+            return Efl.Ui.ListDefaultItemPartEndNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_default_item_part_end_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ListDefaultItemPartEnd(Efl.Object parent= null
+         ) :
+      base(efl_ui_list_default_item_part_end_class_get(), typeof(ListDefaultItemPartEnd), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListDefaultItemPartEnd(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ListDefaultItemPartEnd(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ListDefaultItemPartEnd static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListDefaultItemPartEnd(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListDefaultItemPartEnd.efl_ui_list_default_item_part_end_class_get();
+   }
+}
+public class ListDefaultItemPartEndNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListDefaultItemPartEnd.efl_ui_list_default_item_part_end_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListDefaultItemPartEnd.efl_ui_list_default_item_part_end_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListDefaultItemPartEnd)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListDefaultItemPartEnd)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListDefaultItemPartEnd)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_default_item_part_icon.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_default_item_part_icon.eo.cs
new file mode 100755 (executable)
index 0000000..c7388c8
--- /dev/null
@@ -0,0 +1,249 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>List Default Item internal content of icon part class</summary>
+[ListDefaultItemPartIconNativeInherit]
+public class ListDefaultItemPartIcon : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListDefaultItemPartIconNativeInherit nativeInherit = new Efl.Ui.ListDefaultItemPartIconNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListDefaultItemPartIcon))
+            return Efl.Ui.ListDefaultItemPartIconNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_default_item_part_icon_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ListDefaultItemPartIcon(Efl.Object parent= null
+         ) :
+      base(efl_ui_list_default_item_part_icon_class_get(), typeof(ListDefaultItemPartIcon), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListDefaultItemPartIcon(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ListDefaultItemPartIcon(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ListDefaultItemPartIcon static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListDefaultItemPartIcon(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListDefaultItemPartIcon.efl_ui_list_default_item_part_icon_class_get();
+   }
+}
+public class ListDefaultItemPartIconNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListDefaultItemPartIcon.efl_ui_list_default_item_part_icon_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListDefaultItemPartIcon.efl_ui_list_default_item_part_icon_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListDefaultItemPartIcon)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListDefaultItemPartIcon)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListDefaultItemPartIcon)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_empty_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_empty_item.eo.cs
new file mode 100755 (executable)
index 0000000..906f46b
--- /dev/null
@@ -0,0 +1,252 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>List Empty Item class. This item have only one swallow space, thus user can decorate item by filling the swallow with any kind of container.</summary>
+[ListEmptyItemNativeInherit]
+public class ListEmptyItem : Efl.Ui.ListItem, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListEmptyItemNativeInherit nativeInherit = new Efl.Ui.ListEmptyItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListEmptyItem))
+            return Efl.Ui.ListEmptyItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_empty_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public ListEmptyItem(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_list_empty_item_class_get(), typeof(ListEmptyItem), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListEmptyItem(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ListEmptyItem(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ListEmptyItem static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListEmptyItem(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListEmptyItem.efl_ui_list_empty_item_class_get();
+   }
+}
+public class ListEmptyItemNativeInherit : Efl.Ui.ListItemNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListEmptyItem.efl_ui_list_empty_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListEmptyItem.efl_ui_list_empty_item_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListEmptyItem)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListEmptyItem)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ListEmptyItem)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_item.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_item.eo.cs
new file mode 100755 (executable)
index 0000000..40447cc
--- /dev/null
@@ -0,0 +1,94 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[ListItemNativeInherit]
+public class ListItem : Efl.Ui.Item, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListItemNativeInherit nativeInherit = new Efl.Ui.ListItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListItem))
+            return Efl.Ui.ListItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public ListItem(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_list_item_class_get(), typeof(ListItem), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListItem(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ListItem(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ListItem static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListItem(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListItem.efl_ui_list_item_class_get();
+   }
+}
+public class ListItemNativeInherit : Efl.Ui.ItemNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListItem.efl_ui_list_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListItem.efl_ui_list_item_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_view.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_view.eo.cs
new file mode 100755 (executable)
index 0000000..0165c70
--- /dev/null
@@ -0,0 +1,5343 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemRealizedEvt"/>.</summary>
+public class ListViewItemRealizedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemUnrealizedEvt"/>.</summary>
+public class ListViewItemUnrealizedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemFocusedEvt"/>.</summary>
+public class ListViewItemFocusedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemUnfocusedEvt"/>.</summary>
+public class ListViewItemUnfocusedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemHighlightedEvt"/>.</summary>
+public class ListViewItemHighlightedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemUnhighlightedEvt"/>.</summary>
+public class ListViewItemUnhighlightedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemSelectedEvt"/>.</summary>
+public class ListViewItemSelectedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.ListView.ItemUnselectedEvt"/>.</summary>
+public class ListViewItemUnselectedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ListViewItemEvent arg { get; set; }
+}
+/// <summary></summary>
+[ListViewNativeInherit]
+public class ListView : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Access.Selection,Efl.Ui.Clickable,Efl.Ui.ListViewModel,Efl.Ui.Scrollable,Efl.Ui.ScrollableInteractive,Efl.Ui.Scrollbar,Efl.Ui.Selectable,Efl.Ui.WidgetFocusManager,Efl.Ui.Focus.Composition,Efl.Ui.Focus.Manager,Efl.Ui.Focus.ManagerSub
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListViewNativeInherit nativeInherit = new Efl.Ui.ListViewNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListView))
+            return Efl.Ui.ListViewNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_view_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public ListView(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_list_view_class_get(), typeof(ListView), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListView(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ListView(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ListView static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListView(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ItemRealizedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemRealizedEvt_Args> ItemRealizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_REALIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemRealizedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemRealizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_REALIZED";
+            if (remove_cpp_event_handler(key, this.evt_ItemRealizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemRealizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemRealizedEvt.</summary>
+   public void On_ItemRealizedEvt(Efl.Ui.ListViewItemRealizedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemRealizedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemRealizedEvt_Args>)eventHandlers[ItemRealizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemRealizedEvt_delegate;
+   private void on_ItemRealizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemRealizedEvt_Args args = new Efl.Ui.ListViewItemRealizedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemRealizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemUnrealizedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemUnrealizedEvt_Args> ItemUnrealizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNREALIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemUnrealizedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemUnrealizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNREALIZED";
+            if (remove_cpp_event_handler(key, this.evt_ItemUnrealizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemUnrealizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemUnrealizedEvt.</summary>
+   public void On_ItemUnrealizedEvt(Efl.Ui.ListViewItemUnrealizedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemUnrealizedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemUnrealizedEvt_Args>)eventHandlers[ItemUnrealizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemUnrealizedEvt_delegate;
+   private void on_ItemUnrealizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemUnrealizedEvt_Args args = new Efl.Ui.ListViewItemUnrealizedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemUnrealizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemFocusedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemFocusedEvt_Args> ItemFocusedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_FOCUSED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemFocusedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemFocusedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_FOCUSED";
+            if (remove_cpp_event_handler(key, this.evt_ItemFocusedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemFocusedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemFocusedEvt.</summary>
+   public void On_ItemFocusedEvt(Efl.Ui.ListViewItemFocusedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemFocusedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemFocusedEvt_Args>)eventHandlers[ItemFocusedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemFocusedEvt_delegate;
+   private void on_ItemFocusedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemFocusedEvt_Args args = new Efl.Ui.ListViewItemFocusedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemFocusedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemUnfocusedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemUnfocusedEvt_Args> ItemUnfocusedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNFOCUSED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemUnfocusedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemUnfocusedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNFOCUSED";
+            if (remove_cpp_event_handler(key, this.evt_ItemUnfocusedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemUnfocusedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemUnfocusedEvt.</summary>
+   public void On_ItemUnfocusedEvt(Efl.Ui.ListViewItemUnfocusedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemUnfocusedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemUnfocusedEvt_Args>)eventHandlers[ItemUnfocusedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemUnfocusedEvt_delegate;
+   private void on_ItemUnfocusedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemUnfocusedEvt_Args args = new Efl.Ui.ListViewItemUnfocusedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemUnfocusedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemHighlightedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemHighlightedEvt_Args> ItemHighlightedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_HIGHLIGHTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemHighlightedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemHighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_HIGHLIGHTED";
+            if (remove_cpp_event_handler(key, this.evt_ItemHighlightedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemHighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemHighlightedEvt.</summary>
+   public void On_ItemHighlightedEvt(Efl.Ui.ListViewItemHighlightedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemHighlightedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemHighlightedEvt_Args>)eventHandlers[ItemHighlightedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemHighlightedEvt_delegate;
+   private void on_ItemHighlightedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemHighlightedEvt_Args args = new Efl.Ui.ListViewItemHighlightedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemHighlightedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemUnhighlightedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemUnhighlightedEvt_Args> ItemUnhighlightedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNHIGHLIGHTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemUnhighlightedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemUnhighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNHIGHLIGHTED";
+            if (remove_cpp_event_handler(key, this.evt_ItemUnhighlightedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemUnhighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemUnhighlightedEvt.</summary>
+   public void On_ItemUnhighlightedEvt(Efl.Ui.ListViewItemUnhighlightedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemUnhighlightedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemUnhighlightedEvt_Args>)eventHandlers[ItemUnhighlightedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemUnhighlightedEvt_delegate;
+   private void on_ItemUnhighlightedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemUnhighlightedEvt_Args args = new Efl.Ui.ListViewItemUnhighlightedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemUnhighlightedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemSelectedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemSelectedEvt_Args> ItemSelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemSelectedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemSelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_ItemSelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemSelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemSelectedEvt.</summary>
+   public void On_ItemSelectedEvt(Efl.Ui.ListViewItemSelectedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemSelectedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemSelectedEvt_Args>)eventHandlers[ItemSelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemSelectedEvt_delegate;
+   private void on_ItemSelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemSelectedEvt_Args args = new Efl.Ui.ListViewItemSelectedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemSelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemUnselectedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler<Efl.Ui.ListViewItemUnselectedEvt_Args> ItemUnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemUnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemUnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_LIST_VIEW_EVENT_ITEM_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_ItemUnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemUnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemUnselectedEvt.</summary>
+   public void On_ItemUnselectedEvt(Efl.Ui.ListViewItemUnselectedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ListViewItemUnselectedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ListViewItemUnselectedEvt_Args>)eventHandlers[ItemUnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemUnselectedEvt_delegate;
+   private void on_ItemUnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ListViewItemUnselectedEvt_Args args = new Efl.Ui.ListViewItemUnselectedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ItemUnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Access_Selection_SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection has been changed.</summary>
+    event EventHandler Efl.Access.Selection.SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Efl_Access_Selection_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Access_Selection_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_SELECTION_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Access_Selection_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Access_Selection_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Access_Selection_SelectionChangedEvt.</summary>
+   public void On_Efl_Access_Selection_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Efl_Access_Selection_SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Access_Selection_SelectionChangedEvt_delegate;
+   private void on_Efl_Access_Selection_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Efl_Access_Selection_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPressEvtKey = new object();
+   /// <summary>Called when bar is pressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPressEvt_delegate)) {
+               eventHandlers.AddHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarPressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPressEvt.</summary>
+   public void On_BarPressEvt(Efl.Ui.ScrollbarBarPressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args>)eventHandlers[BarPressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPressEvt_delegate;
+   private void on_BarPressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarPressEvt_Args args = new Efl.Ui.ScrollbarBarPressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarPressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarUnpressEvtKey = new object();
+   /// <summary>Called when bar is unpressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarUnpressEvt_delegate)) {
+               eventHandlers.AddHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarUnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarUnpressEvt.</summary>
+   public void On_BarUnpressEvt(Efl.Ui.ScrollbarBarUnpressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args>)eventHandlers[BarUnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarUnpressEvt_delegate;
+   private void on_BarUnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarUnpressEvt_Args args = new Efl.Ui.ScrollbarBarUnpressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarUnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarDragEvtKey = new object();
+   /// <summary>Called when bar is dragged</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarDragEvt_delegate)) {
+               eventHandlers.AddHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_BarDragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarDragEvt.</summary>
+   public void On_BarDragEvt(Efl.Ui.ScrollbarBarDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args>)eventHandlers[BarDragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarDragEvt_delegate;
+   private void on_BarDragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarDragEvt_Args args = new Efl.Ui.ScrollbarBarDragEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarDragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarSizeChangedEvtKey = new object();
+   /// <summary>Called when bar size is changed</summary>
+   public event EventHandler BarSizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarSizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarSizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarSizeChangedEvt.</summary>
+   public void On_BarSizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarSizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarSizeChangedEvt_delegate;
+   private void on_BarSizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarSizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPosChangedEvtKey = new object();
+   /// <summary>Called when bar position is changed</summary>
+   public event EventHandler BarPosChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPosChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarPosChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPosChangedEvt.</summary>
+   public void On_BarPosChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarPosChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPosChangedEvt_delegate;
+   private void on_BarPosChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarPosChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarShowEvtKey = new object();
+   /// <summary>Callend when bar is shown</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarShowEvt_delegate)) {
+               eventHandlers.AddHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (remove_cpp_event_handler(key, this.evt_BarShowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarShowEvt.</summary>
+   public void On_BarShowEvt(Efl.Ui.ScrollbarBarShowEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args>)eventHandlers[BarShowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarShowEvt_delegate;
+   private void on_BarShowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarShowEvt_Args args = new Efl.Ui.ScrollbarBarShowEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarShowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarHideEvtKey = new object();
+   /// <summary>Called when bar is hidden</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarHideEvt_delegate)) {
+               eventHandlers.AddHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (remove_cpp_event_handler(key, this.evt_BarHideEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarHideEvt.</summary>
+   public void On_BarHideEvt(Efl.Ui.ScrollbarBarHideEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args>)eventHandlers[BarHideEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarHideEvt_delegate;
+   private void on_BarHideEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarHideEvt_Args args = new Efl.Ui.ScrollbarBarHideEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarHideEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectedEvtKey = new object();
+   /// <summary>Called when selected</summary>
+   public event EventHandler SelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_SelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectedEvt.</summary>
+   public void On_SelectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectedEvt_delegate;
+   private void on_SelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnselectedEvtKey = new object();
+   /// <summary>Called when no longer selected</summary>
+   public event EventHandler UnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_UnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnselectedEvt.</summary>
+   public void On_UnselectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnselectedEvt_delegate;
+   private void on_UnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionPasteEvtKey = new object();
+   /// <summary>Called when selection is pasted</summary>
+   public event EventHandler SelectionPasteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionPasteEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (remove_cpp_event_handler(key, this.evt_SelectionPasteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionPasteEvt.</summary>
+   public void On_SelectionPasteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionPasteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionPasteEvt_delegate;
+   private void on_SelectionPasteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionPasteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCopyEvtKey = new object();
+   /// <summary>Called when selection is copied</summary>
+   public event EventHandler SelectionCopyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCopyEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCopyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCopyEvt.</summary>
+   public void On_SelectionCopyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCopyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCopyEvt_delegate;
+   private void on_SelectionCopyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCopyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCutEvtKey = new object();
+   /// <summary>Called when selection is cut</summary>
+   public event EventHandler SelectionCutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCutEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCutEvt.</summary>
+   public void On_SelectionCutEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCutEvt_delegate;
+   private void on_SelectionCutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionStartEvtKey = new object();
+   /// <summary>Called at selection start</summary>
+   public event EventHandler SelectionStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionStartEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (remove_cpp_event_handler(key, this.evt_SelectionStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionStartEvt.</summary>
+   public void On_SelectionStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionStartEvt_delegate;
+   private void on_SelectionStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Ui_Selectable_SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection is changed</summary>
+    event EventHandler Efl.Ui.Selectable.SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Ui_Selectable_SelectionChangedEvt.</summary>
+   public void On_Efl_Ui_Selectable_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Efl_Ui_Selectable_SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate;
+   private void on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Efl_Ui_Selectable_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionClearedEvtKey = new object();
+   /// <summary>Called when selection is cleared</summary>
+   public event EventHandler SelectionClearedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionClearedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionClearedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionClearedEvt.</summary>
+   public void On_SelectionClearedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionClearedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionClearedEvt_delegate;
+   private void on_SelectionClearedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionClearedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ItemRealizedEvt_delegate = new Efl.EventCb(on_ItemRealizedEvt_NativeCallback);
+      evt_ItemUnrealizedEvt_delegate = new Efl.EventCb(on_ItemUnrealizedEvt_NativeCallback);
+      evt_ItemFocusedEvt_delegate = new Efl.EventCb(on_ItemFocusedEvt_NativeCallback);
+      evt_ItemUnfocusedEvt_delegate = new Efl.EventCb(on_ItemUnfocusedEvt_NativeCallback);
+      evt_ItemHighlightedEvt_delegate = new Efl.EventCb(on_ItemHighlightedEvt_NativeCallback);
+      evt_ItemUnhighlightedEvt_delegate = new Efl.EventCb(on_ItemUnhighlightedEvt_NativeCallback);
+      evt_ItemSelectedEvt_delegate = new Efl.EventCb(on_ItemSelectedEvt_NativeCallback);
+      evt_ItemUnselectedEvt_delegate = new Efl.EventCb(on_ItemUnselectedEvt_NativeCallback);
+      evt_Efl_Access_Selection_SelectionChangedEvt_delegate = new Efl.EventCb(on_Efl_Access_Selection_SelectionChangedEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_BarPressEvt_delegate = new Efl.EventCb(on_BarPressEvt_NativeCallback);
+      evt_BarUnpressEvt_delegate = new Efl.EventCb(on_BarUnpressEvt_NativeCallback);
+      evt_BarDragEvt_delegate = new Efl.EventCb(on_BarDragEvt_NativeCallback);
+      evt_BarSizeChangedEvt_delegate = new Efl.EventCb(on_BarSizeChangedEvt_NativeCallback);
+      evt_BarPosChangedEvt_delegate = new Efl.EventCb(on_BarPosChangedEvt_NativeCallback);
+      evt_BarShowEvt_delegate = new Efl.EventCb(on_BarShowEvt_NativeCallback);
+      evt_BarHideEvt_delegate = new Efl.EventCb(on_BarHideEvt_NativeCallback);
+      evt_SelectedEvt_delegate = new Efl.EventCb(on_SelectedEvt_NativeCallback);
+      evt_UnselectedEvt_delegate = new Efl.EventCb(on_UnselectedEvt_NativeCallback);
+      evt_SelectionPasteEvt_delegate = new Efl.EventCb(on_SelectionPasteEvt_NativeCallback);
+      evt_SelectionCopyEvt_delegate = new Efl.EventCb(on_SelectionCopyEvt_NativeCallback);
+      evt_SelectionCutEvt_delegate = new Efl.EventCb(on_SelectionCutEvt_NativeCallback);
+      evt_SelectionStartEvt_delegate = new Efl.EventCb(on_SelectionStartEvt_NativeCallback);
+      evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate = new Efl.EventCb(on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback);
+      evt_SelectionClearedEvt_delegate = new Efl.EventCb(on_SelectionClearedEvt_NativeCallback);
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>Get whether the homogeneous mode is enabled.</summary>
+   /// <returns>Assume the items within the genlist are of the same height and width. Default is <c>false</c>.</returns>
+   virtual public bool GetHomogeneous() {
+       var _ret_var = Efl.Ui.ListViewNativeInherit.efl_ui_list_view_homogeneous_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable/disable homogeneous mode.</summary>
+   /// <param name="homogeneous">Assume the items within the genlist are of the same height and width. Default is <c>false</c>.</param>
+   /// <returns></returns>
+   virtual public  void SetHomogeneous( bool homogeneous) {
+                         Efl.Ui.ListViewNativeInherit.efl_ui_list_view_homogeneous_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), homogeneous);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Listview select mode.</summary>
+   /// <returns>The select mode.</returns>
+   virtual public Elm.Object.SelectMode GetSelectMode() {
+       var _ret_var = Efl.Ui.ListViewNativeInherit.efl_ui_list_view_select_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Listview select mode.</summary>
+   /// <param name="mode">The select mode.</param>
+   /// <returns></returns>
+   virtual public  void SetSelectMode( Elm.Object.SelectMode mode) {
+                         Efl.Ui.ListViewNativeInherit.efl_ui_list_view_select_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public  System.String GetDefaultStyle() {
+       var _ret_var = Efl.Ui.ListViewNativeInherit.efl_ui_list_view_default_style_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="style"></param>
+   /// <returns></returns>
+   virtual public  void SetDefaultStyle(  System.String style) {
+                         Efl.Ui.ListViewNativeInherit.efl_ui_list_view_default_style_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Listview layout factory set.</summary>
+   /// <param name="factory">The factory.</param>
+   /// <returns></returns>
+   virtual public  void SetLayoutFactory( Efl.Ui.Factory factory) {
+                         Efl.Ui.ListViewNativeInherit.efl_ui_list_view_layout_factory_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), factory);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the number of currently selected children</summary>
+   /// <returns>Number of currently selected children</returns>
+   virtual public  int GetSelectedChildrenCount() {
+       var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_selected_children_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets child for given child index</summary>
+   /// <param name="selected_child_index">Index of child</param>
+   /// <returns>Child object</returns>
+   virtual public Efl.Object GetSelectedChild(  int selected_child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_selected_child_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), selected_child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds selection for given child index</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if selection was added, <c>false</c> otherwise</returns>
+   virtual public bool ChildSelect(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_child_select_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Removes selection for given child index</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+   virtual public bool SelectedChildDeselect(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_selected_child_deselect_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Determines if child specified by index is selected</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if child is selected, <c>false</c> otherwise</returns>
+   virtual public bool IsChildSelected(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_is_child_selected_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds selection for all children</summary>
+   /// <returns><c>true</c> if selection was added to all children, <c>false</c> otherwise</returns>
+   virtual public bool AllChildrenSelect() {
+       var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_all_children_select_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Clears the current selection</summary>
+   /// <returns><c>true</c> if selection was cleared, <c>false</c> otherwise</returns>
+   virtual public bool ClearAccessSelection() {
+       var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes selection for given child index</summary>
+   /// <param name="child_index">Index of child</param>
+   /// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+   virtual public bool ChildDeselect(  int child_index) {
+                         var _ret_var = Efl.Access.SelectionNativeInherit.efl_access_selection_child_deselect_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child_index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="first"></param>
+   /// <param name="count"></param>
+   /// <returns></returns>
+   virtual public  void SetLoadRange(  int first,   int count) {
+                                           Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_load_range_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), first,  count);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public  int GetModelSize() {
+       var _ret_var = Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Minimal content size.</summary>
+   /// <returns></returns>
+   virtual public Eina.Size2D GetMinSize() {
+       var _ret_var = Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_min_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Minimal content size.</summary>
+   /// <param name="min"></param>
+   /// <returns></returns>
+   virtual public  void SetMinSize( Eina.Size2D min) {
+       var _in_min = Eina.Size2D_StructConversion.ToInternal(min);
+                  Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_min_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_min);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="item"></param>
+   /// <returns></returns>
+   virtual public Efl.Ui.ListViewLayoutItem Realize( ref Efl.Ui.ListViewLayoutItem item) {
+       var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(item);
+                  var _ret_var = Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_realize_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref _in_item);
+      Eina.Error.RaiseIfUnhandledException();
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(_in_item);
+      var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.ListViewLayoutItem>(_ret_var);
+      
+      return __ret_tmp;
+ }
+   /// <summary></summary>
+   /// <param name="item"></param>
+   /// <returns></returns>
+   virtual public  void Unrealize( ref Efl.Ui.ListViewLayoutItem item) {
+       var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(item);
+                  Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_unrealize_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref _in_item);
+      Eina.Error.RaiseIfUnhandledException();
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(_in_item);
+       }
+   /// <summary>The content position</summary>
+   /// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+   virtual public Eina.Position2D GetContentPos() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The content position</summary>
+   /// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+   /// <returns></returns>
+   virtual public  void SetContentPos( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content size</summary>
+   /// <returns>The content size in pixels.</returns>
+   virtual public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The viewport geometry</summary>
+   /// <returns>It is absolute geometry.</returns>
+   virtual public Eina.Rect GetViewportGeometry() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void GetBounceEnabled( out bool horiz,  out bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void SetBounceEnabled( bool horiz,  bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollFreeze() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollFreeze( bool freeze) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollHold() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollHold( bool hold) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void GetLooping( out bool loop_h,  out bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void SetLooping( bool loop_h,  bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   virtual public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   virtual public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void GetGravity( out double x,  out double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void SetGravity( double x,  double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   virtual public  void SetMatchContent( bool w,  bool h) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_match_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <returns>The step size in pixels</returns>
+   virtual public Eina.Position2D GetStepSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <param name="step">The step size in pixels</param>
+   /// <returns></returns>
+   virtual public  void SetStepSize( Eina.Position2D step) {
+       var _in_step = Eina.Position2D_StructConversion.ToInternal(step);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+   /// <param name="rect">The position where to scroll. and The size user want to see</param>
+   /// <param name="animation">Whether to scroll with animation or not</param>
+   /// <returns></returns>
+   virtual public  void Scroll( Eina.Rect rect,  bool animation) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                    Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+   /// <param name="width">Value between 0.0 and 1.0</param>
+   /// <param name="height">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarSize( out double width,  out double height) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out width,  out height);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarPosition( out double posx,  out double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out posx,  out posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void SetBarPosition( double posx,  double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), posx,  posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Update bar visibility.
+   /// The object will call this function whenever the bar need to be shown or hidden.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateBarVisibility() {
+       Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   virtual public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <returns>The order to use</returns>
+   virtual public Eina.List<Efl.Gfx.Entity> GetCompositionElements() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <param name="logical_order">The order to use</param>
+   /// <returns></returns>
+   virtual public  void SetCompositionElements( Eina.List<Efl.Gfx.Entity> logical_order) {
+       var _in_logical_order = logical_order.Handle;
+logical_order.Own = false;
+                  Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_logical_order);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <returns><c>true</c> or <c>false</c></returns>
+   virtual public bool GetLogicalMode() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <param name="logical_mode"><c>true</c> or <c>false</c></param>
+   /// <returns></returns>
+   virtual public  void SetLogicalMode( bool logical_mode) {
+                         Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), logical_mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Mark this widget as dirty, the children can be considered to be changed after that call</summary>
+   /// <returns></returns>
+   virtual public  void Dirty() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_dirty_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>A call to prepare the children of this element, called if marked as dirty
+   /// You can use this function to call composition_elements.</summary>
+   /// <returns></returns>
+   virtual public  void Prepare() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_prepare_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   virtual public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get whether the homogeneous mode is enabled.</summary>
+/// <value>Assume the items within the genlist are of the same height and width. Default is <c>false</c>.</value>
+   public bool Homogeneous {
+      get { return GetHomogeneous(); }
+      set { SetHomogeneous( value); }
+   }
+   /// <summary>Listview select mode.</summary>
+/// <value>The select mode.</value>
+   public Elm.Object.SelectMode SelectMode {
+      get { return GetSelectMode(); }
+      set { SetSelectMode( value); }
+   }
+   /// <summary></summary>
+/// <value></value>
+   public  System.String DefaultStyle {
+      get { return GetDefaultStyle(); }
+      set { SetDefaultStyle( value); }
+   }
+   /// <summary>Listview layout factory set.</summary>
+/// <value>The factory.</value>
+   public Efl.Ui.Factory LayoutFactory {
+      set { SetLayoutFactory( value); }
+   }
+   /// <summary>Gets the number of currently selected children</summary>
+/// <value>Number of currently selected children</value>
+   public  int SelectedChildrenCount {
+      get { return GetSelectedChildrenCount(); }
+   }
+   /// <summary></summary>
+/// <value></value>
+   public  int ModelSize {
+      get { return GetModelSize(); }
+   }
+   /// <summary>Minimal content size.</summary>
+/// <value></value>
+   public Eina.Size2D MinSize {
+      get { return GetMinSize(); }
+      set { SetMinSize( value); }
+   }
+   /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   public Eina.Position2D ContentPos {
+      get { return GetContentPos(); }
+      set { SetContentPos( value); }
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   public Eina.Rect ViewportGeometry {
+      get { return GetViewportGeometry(); }
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool ScrollFreeze {
+      get { return GetScrollFreeze(); }
+      set { SetScrollFreeze( value); }
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool ScrollHold {
+      get { return GetScrollHold(); }
+      set { SetScrollHold( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   public Eina.Position2D StepSize {
+      get { return GetStepSize(); }
+      set { SetStepSize( value); }
+   }
+   /// <summary>Set the order of elements that will be used for composition
+/// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+/// 
+/// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+/// 
+/// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+/// 
+/// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+/// <value>The order to use</value>
+   public Eina.List<Efl.Gfx.Entity> CompositionElements {
+      get { return GetCompositionElements(); }
+      set { SetCompositionElements( value); }
+   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+/// <value><c>true</c> or <c>false</c></value>
+   public bool LogicalMode {
+      get { return GetLogicalMode(); }
+      set { SetLogicalMode( value); }
+   }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListView.efl_ui_list_view_class_get();
+   }
+}
+public class ListViewNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_list_view_homogeneous_get_static_delegate == null)
+      efl_ui_list_view_homogeneous_get_static_delegate = new efl_ui_list_view_homogeneous_get_delegate(homogeneous_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_homogeneous_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_homogeneous_get_static_delegate)});
+      if (efl_ui_list_view_homogeneous_set_static_delegate == null)
+      efl_ui_list_view_homogeneous_set_static_delegate = new efl_ui_list_view_homogeneous_set_delegate(homogeneous_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_homogeneous_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_homogeneous_set_static_delegate)});
+      if (efl_ui_list_view_select_mode_get_static_delegate == null)
+      efl_ui_list_view_select_mode_get_static_delegate = new efl_ui_list_view_select_mode_get_delegate(select_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_select_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_select_mode_get_static_delegate)});
+      if (efl_ui_list_view_select_mode_set_static_delegate == null)
+      efl_ui_list_view_select_mode_set_static_delegate = new efl_ui_list_view_select_mode_set_delegate(select_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_select_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_select_mode_set_static_delegate)});
+      if (efl_ui_list_view_default_style_get_static_delegate == null)
+      efl_ui_list_view_default_style_get_static_delegate = new efl_ui_list_view_default_style_get_delegate(default_style_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_default_style_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_default_style_get_static_delegate)});
+      if (efl_ui_list_view_default_style_set_static_delegate == null)
+      efl_ui_list_view_default_style_set_static_delegate = new efl_ui_list_view_default_style_set_delegate(default_style_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_default_style_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_default_style_set_static_delegate)});
+      if (efl_ui_list_view_layout_factory_set_static_delegate == null)
+      efl_ui_list_view_layout_factory_set_static_delegate = new efl_ui_list_view_layout_factory_set_delegate(layout_factory_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_layout_factory_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_layout_factory_set_static_delegate)});
+      if (efl_access_selection_selected_children_count_get_static_delegate == null)
+      efl_access_selection_selected_children_count_get_static_delegate = new efl_access_selection_selected_children_count_get_delegate(selected_children_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_selected_children_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_selected_children_count_get_static_delegate)});
+      if (efl_access_selection_selected_child_get_static_delegate == null)
+      efl_access_selection_selected_child_get_static_delegate = new efl_access_selection_selected_child_get_delegate(selected_child_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_selected_child_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_selected_child_get_static_delegate)});
+      if (efl_access_selection_child_select_static_delegate == null)
+      efl_access_selection_child_select_static_delegate = new efl_access_selection_child_select_delegate(child_select);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_child_select"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_child_select_static_delegate)});
+      if (efl_access_selection_selected_child_deselect_static_delegate == null)
+      efl_access_selection_selected_child_deselect_static_delegate = new efl_access_selection_selected_child_deselect_delegate(selected_child_deselect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_selected_child_deselect"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_selected_child_deselect_static_delegate)});
+      if (efl_access_selection_is_child_selected_static_delegate == null)
+      efl_access_selection_is_child_selected_static_delegate = new efl_access_selection_is_child_selected_delegate(is_child_selected);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_is_child_selected"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_is_child_selected_static_delegate)});
+      if (efl_access_selection_all_children_select_static_delegate == null)
+      efl_access_selection_all_children_select_static_delegate = new efl_access_selection_all_children_select_delegate(all_children_select);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_all_children_select"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_all_children_select_static_delegate)});
+      if (efl_access_selection_clear_static_delegate == null)
+      efl_access_selection_clear_static_delegate = new efl_access_selection_clear_delegate(access_selection_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_clear_static_delegate)});
+      if (efl_access_selection_child_deselect_static_delegate == null)
+      efl_access_selection_child_deselect_static_delegate = new efl_access_selection_child_deselect_delegate(child_deselect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_selection_child_deselect"), func = Marshal.GetFunctionPointerForDelegate(efl_access_selection_child_deselect_static_delegate)});
+      if (efl_ui_list_view_model_load_range_set_static_delegate == null)
+      efl_ui_list_view_model_load_range_set_static_delegate = new efl_ui_list_view_model_load_range_set_delegate(load_range_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_load_range_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_load_range_set_static_delegate)});
+      if (efl_ui_list_view_model_size_get_static_delegate == null)
+      efl_ui_list_view_model_size_get_static_delegate = new efl_ui_list_view_model_size_get_delegate(model_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_size_get_static_delegate)});
+      if (efl_ui_list_view_model_min_size_get_static_delegate == null)
+      efl_ui_list_view_model_min_size_get_static_delegate = new efl_ui_list_view_model_min_size_get_delegate(min_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_min_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_min_size_get_static_delegate)});
+      if (efl_ui_list_view_model_min_size_set_static_delegate == null)
+      efl_ui_list_view_model_min_size_set_static_delegate = new efl_ui_list_view_model_min_size_set_delegate(min_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_min_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_min_size_set_static_delegate)});
+      if (efl_ui_list_view_model_realize_static_delegate == null)
+      efl_ui_list_view_model_realize_static_delegate = new efl_ui_list_view_model_realize_delegate(realize);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_realize"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_realize_static_delegate)});
+      if (efl_ui_list_view_model_unrealize_static_delegate == null)
+      efl_ui_list_view_model_unrealize_static_delegate = new efl_ui_list_view_model_unrealize_delegate(unrealize);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_unrealize"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_unrealize_static_delegate)});
+      if (efl_ui_scrollable_content_pos_get_static_delegate == null)
+      efl_ui_scrollable_content_pos_get_static_delegate = new efl_ui_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_get_static_delegate)});
+      if (efl_ui_scrollable_content_pos_set_static_delegate == null)
+      efl_ui_scrollable_content_pos_set_static_delegate = new efl_ui_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_set_static_delegate)});
+      if (efl_ui_scrollable_content_size_get_static_delegate == null)
+      efl_ui_scrollable_content_size_get_static_delegate = new efl_ui_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_scrollable_viewport_geometry_get_static_delegate == null)
+      efl_ui_scrollable_viewport_geometry_get_static_delegate = new efl_ui_scrollable_viewport_geometry_get_delegate(viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_viewport_geometry_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_get_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_get_static_delegate = new efl_ui_scrollable_bounce_enabled_get_delegate(bounce_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_set_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_set_static_delegate = new efl_ui_scrollable_bounce_enabled_set_delegate(bounce_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_get_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_get_static_delegate = new efl_ui_scrollable_scroll_freeze_get_delegate(scroll_freeze_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_set_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_set_static_delegate = new efl_ui_scrollable_scroll_freeze_set_delegate(scroll_freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_get_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_get_static_delegate = new efl_ui_scrollable_scroll_hold_get_delegate(scroll_hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_set_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_set_static_delegate = new efl_ui_scrollable_scroll_hold_set_delegate(scroll_hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_set_static_delegate)});
+      if (efl_ui_scrollable_looping_get_static_delegate == null)
+      efl_ui_scrollable_looping_get_static_delegate = new efl_ui_scrollable_looping_get_delegate(looping_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_get_static_delegate)});
+      if (efl_ui_scrollable_looping_set_static_delegate == null)
+      efl_ui_scrollable_looping_set_static_delegate = new efl_ui_scrollable_looping_set_delegate(looping_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_set_static_delegate)});
+      if (efl_ui_scrollable_movement_block_get_static_delegate == null)
+      efl_ui_scrollable_movement_block_get_static_delegate = new efl_ui_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_get_static_delegate)});
+      if (efl_ui_scrollable_movement_block_set_static_delegate == null)
+      efl_ui_scrollable_movement_block_set_static_delegate = new efl_ui_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_set_static_delegate)});
+      if (efl_ui_scrollable_gravity_get_static_delegate == null)
+      efl_ui_scrollable_gravity_get_static_delegate = new efl_ui_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_get_static_delegate)});
+      if (efl_ui_scrollable_gravity_set_static_delegate == null)
+      efl_ui_scrollable_gravity_set_static_delegate = new efl_ui_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_set_static_delegate)});
+      if (efl_ui_scrollable_match_content_set_static_delegate == null)
+      efl_ui_scrollable_match_content_set_static_delegate = new efl_ui_scrollable_match_content_set_delegate(match_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_match_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_match_content_set_static_delegate)});
+      if (efl_ui_scrollable_step_size_get_static_delegate == null)
+      efl_ui_scrollable_step_size_get_static_delegate = new efl_ui_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_get_static_delegate)});
+      if (efl_ui_scrollable_step_size_set_static_delegate == null)
+      efl_ui_scrollable_step_size_set_static_delegate = new efl_ui_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_static_delegate == null)
+      efl_ui_scrollable_scroll_static_delegate = new efl_ui_scrollable_scroll_delegate(scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_get_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_get_static_delegate = new efl_ui_scrollbar_bar_mode_get_delegate(bar_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_set_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_set_static_delegate = new efl_ui_scrollbar_bar_mode_set_delegate(bar_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_size_get_static_delegate == null)
+      efl_ui_scrollbar_bar_size_get_static_delegate = new efl_ui_scrollbar_bar_size_get_delegate(bar_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_size_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_get_static_delegate == null)
+      efl_ui_scrollbar_bar_position_get_static_delegate = new efl_ui_scrollbar_bar_position_get_delegate(bar_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_set_static_delegate == null)
+      efl_ui_scrollbar_bar_position_set_static_delegate = new efl_ui_scrollbar_bar_position_set_delegate(bar_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_visibility_update_static_delegate == null)
+      efl_ui_scrollbar_bar_visibility_update_static_delegate = new efl_ui_scrollbar_bar_visibility_update_delegate(bar_visibility_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_visibility_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_visibility_update_static_delegate)});
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_composition_elements_get_static_delegate == null)
+      efl_ui_focus_composition_elements_get_static_delegate = new efl_ui_focus_composition_elements_get_delegate(composition_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_get_static_delegate)});
+      if (efl_ui_focus_composition_elements_set_static_delegate == null)
+      efl_ui_focus_composition_elements_set_static_delegate = new efl_ui_focus_composition_elements_set_delegate(composition_elements_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_set_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_get_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_get_static_delegate = new efl_ui_focus_composition_logical_mode_get_delegate(logical_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_get_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_set_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_set_static_delegate = new efl_ui_focus_composition_logical_mode_set_delegate(logical_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_set_static_delegate)});
+      if (efl_ui_focus_composition_dirty_static_delegate == null)
+      efl_ui_focus_composition_dirty_static_delegate = new efl_ui_focus_composition_dirty_delegate(dirty);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_dirty"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_dirty_static_delegate)});
+      if (efl_ui_focus_composition_prepare_static_delegate == null)
+      efl_ui_focus_composition_prepare_static_delegate = new efl_ui_focus_composition_prepare_delegate(prepare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_prepare"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_prepare_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListView.efl_ui_list_view_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListView.efl_ui_list_view_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_list_view_homogeneous_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_list_view_homogeneous_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_homogeneous_get_api_delegate> efl_ui_list_view_homogeneous_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_homogeneous_get_api_delegate>(_Module, "efl_ui_list_view_homogeneous_get");
+    private static bool homogeneous_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_homogeneous_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).GetHomogeneous();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_list_view_homogeneous_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_view_homogeneous_get_delegate efl_ui_list_view_homogeneous_get_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_homogeneous_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool homogeneous);
+
+
+    public delegate  void efl_ui_list_view_homogeneous_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool homogeneous);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_homogeneous_set_api_delegate> efl_ui_list_view_homogeneous_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_homogeneous_set_api_delegate>(_Module, "efl_ui_list_view_homogeneous_set");
+    private static  void homogeneous_set(System.IntPtr obj, System.IntPtr pd,  bool homogeneous)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_homogeneous_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetHomogeneous( homogeneous);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_list_view_homogeneous_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  homogeneous);
+      }
+   }
+   private static efl_ui_list_view_homogeneous_set_delegate efl_ui_list_view_homogeneous_set_static_delegate;
+
+
+    private delegate Elm.Object.SelectMode efl_ui_list_view_select_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Object.SelectMode efl_ui_list_view_select_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_select_mode_get_api_delegate> efl_ui_list_view_select_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_select_mode_get_api_delegate>(_Module, "efl_ui_list_view_select_mode_get");
+    private static Elm.Object.SelectMode select_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_select_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Object.SelectMode _ret_var = default(Elm.Object.SelectMode);
+         try {
+            _ret_var = ((ListView)wrapper).GetSelectMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_list_view_select_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_view_select_mode_get_delegate efl_ui_list_view_select_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_select_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Object.SelectMode mode);
+
+
+    public delegate  void efl_ui_list_view_select_mode_set_api_delegate(System.IntPtr obj,   Elm.Object.SelectMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_select_mode_set_api_delegate> efl_ui_list_view_select_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_select_mode_set_api_delegate>(_Module, "efl_ui_list_view_select_mode_set");
+    private static  void select_mode_set(System.IntPtr obj, System.IntPtr pd,  Elm.Object.SelectMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_select_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetSelectMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_list_view_select_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_list_view_select_mode_set_delegate efl_ui_list_view_select_mode_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))] private delegate  System.String efl_ui_list_view_default_style_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))] public delegate  System.String efl_ui_list_view_default_style_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_default_style_get_api_delegate> efl_ui_list_view_default_style_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_default_style_get_api_delegate>(_Module, "efl_ui_list_view_default_style_get");
+    private static  System.String default_style_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_default_style_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ListView)wrapper).GetDefaultStyle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_list_view_default_style_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_view_default_style_get_delegate efl_ui_list_view_default_style_get_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_default_style_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String style);
+
+
+    public delegate  void efl_ui_list_view_default_style_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_default_style_set_api_delegate> efl_ui_list_view_default_style_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_default_style_set_api_delegate>(_Module, "efl_ui_list_view_default_style_set");
+    private static  void default_style_set(System.IntPtr obj, System.IntPtr pd,   System.String style)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_default_style_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetDefaultStyle( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_list_view_default_style_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_ui_list_view_default_style_set_delegate efl_ui_list_view_default_style_set_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_layout_factory_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+
+
+    public delegate  void efl_ui_list_view_layout_factory_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_layout_factory_set_api_delegate> efl_ui_list_view_layout_factory_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_layout_factory_set_api_delegate>(_Module, "efl_ui_list_view_layout_factory_set");
+    private static  void layout_factory_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Factory factory)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_layout_factory_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetLayoutFactory( factory);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_list_view_layout_factory_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  factory);
+      }
+   }
+   private static efl_ui_list_view_layout_factory_set_delegate efl_ui_list_view_layout_factory_set_static_delegate;
+
+
+    private delegate  int efl_access_selection_selected_children_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_selection_selected_children_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_selected_children_count_get_api_delegate> efl_access_selection_selected_children_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_selected_children_count_get_api_delegate>(_Module, "efl_access_selection_selected_children_count_get");
+    private static  int selected_children_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_selection_selected_children_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((ListView)wrapper).GetSelectedChildrenCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_selection_selected_children_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_selection_selected_children_count_get_delegate efl_access_selection_selected_children_count_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_selection_selected_child_get_delegate(System.IntPtr obj, System.IntPtr pd,    int selected_child_index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_selection_selected_child_get_api_delegate(System.IntPtr obj,    int selected_child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_get_api_delegate> efl_access_selection_selected_child_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_get_api_delegate>(_Module, "efl_access_selection_selected_child_get");
+    private static Efl.Object selected_child_get(System.IntPtr obj, System.IntPtr pd,   int selected_child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_selected_child_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((ListView)wrapper).GetSelectedChild( selected_child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_selected_child_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selected_child_index);
+      }
+   }
+   private static efl_access_selection_selected_child_get_delegate efl_access_selection_selected_child_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_child_select_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_child_select_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_child_select_api_delegate> efl_access_selection_child_select_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_child_select_api_delegate>(_Module, "efl_access_selection_child_select");
+    private static bool child_select(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_child_select was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).ChildSelect( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_child_select_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_child_select_delegate efl_access_selection_child_select_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_selected_child_deselect_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_selected_child_deselect_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_deselect_api_delegate> efl_access_selection_selected_child_deselect_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_selected_child_deselect_api_delegate>(_Module, "efl_access_selection_selected_child_deselect");
+    private static bool selected_child_deselect(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_selected_child_deselect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).SelectedChildDeselect( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_selected_child_deselect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_selected_child_deselect_delegate efl_access_selection_selected_child_deselect_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_is_child_selected_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_is_child_selected_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_is_child_selected_api_delegate> efl_access_selection_is_child_selected_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_is_child_selected_api_delegate>(_Module, "efl_access_selection_is_child_selected");
+    private static bool is_child_selected(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_is_child_selected was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).IsChildSelected( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_is_child_selected_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_is_child_selected_delegate efl_access_selection_is_child_selected_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_all_children_select_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_all_children_select_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_all_children_select_api_delegate> efl_access_selection_all_children_select_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_all_children_select_api_delegate>(_Module, "efl_access_selection_all_children_select");
+    private static bool all_children_select(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_selection_all_children_select was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).AllChildrenSelect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_selection_all_children_select_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_selection_all_children_select_delegate efl_access_selection_all_children_select_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_clear_api_delegate> efl_access_selection_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_clear_api_delegate>(_Module, "efl_access_selection_clear");
+    private static bool access_selection_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_selection_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).ClearAccessSelection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_selection_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_selection_clear_delegate efl_access_selection_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_selection_child_deselect_delegate(System.IntPtr obj, System.IntPtr pd,    int child_index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_selection_child_deselect_api_delegate(System.IntPtr obj,    int child_index);
+    public static Efl.Eo.FunctionWrapper<efl_access_selection_child_deselect_api_delegate> efl_access_selection_child_deselect_ptr = new Efl.Eo.FunctionWrapper<efl_access_selection_child_deselect_api_delegate>(_Module, "efl_access_selection_child_deselect");
+    private static bool child_deselect(System.IntPtr obj, System.IntPtr pd,   int child_index)
+   {
+      Eina.Log.Debug("function efl_access_selection_child_deselect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).ChildDeselect( child_index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_selection_child_deselect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_index);
+      }
+   }
+   private static efl_access_selection_child_deselect_delegate efl_access_selection_child_deselect_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_model_load_range_set_delegate(System.IntPtr obj, System.IntPtr pd,    int first,    int count);
+
+
+    public delegate  void efl_ui_list_view_model_load_range_set_api_delegate(System.IntPtr obj,    int first,    int count);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_load_range_set_api_delegate> efl_ui_list_view_model_load_range_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_load_range_set_api_delegate>(_Module, "efl_ui_list_view_model_load_range_set");
+    private static  void load_range_set(System.IntPtr obj, System.IntPtr pd,   int first,   int count)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_load_range_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetLoadRange( first,  count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_list_view_model_load_range_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  first,  count);
+      }
+   }
+   private static efl_ui_list_view_model_load_range_set_delegate efl_ui_list_view_model_load_range_set_static_delegate;
+
+
+    private delegate  int efl_ui_list_view_model_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_list_view_model_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_size_get_api_delegate> efl_ui_list_view_model_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_size_get_api_delegate>(_Module, "efl_ui_list_view_model_size_get");
+    private static  int model_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((ListView)wrapper).GetModelSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_list_view_model_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_view_model_size_get_delegate efl_ui_list_view_model_size_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_list_view_model_min_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_list_view_model_min_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_get_api_delegate> efl_ui_list_view_model_min_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_get_api_delegate>(_Module, "efl_ui_list_view_model_min_size_get");
+    private static Eina.Size2D_StructInternal min_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_min_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ListView)wrapper).GetMinSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_list_view_model_min_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_view_model_min_size_get_delegate efl_ui_list_view_model_min_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_model_min_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal min);
+
+
+    public delegate  void efl_ui_list_view_model_min_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal min);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_set_api_delegate> efl_ui_list_view_model_min_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_set_api_delegate>(_Module, "efl_ui_list_view_model_min_size_set");
+    private static  void min_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal min)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_min_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_min = Eina.Size2D_StructConversion.ToManaged(min);
+                     
+         try {
+            ((ListView)wrapper).SetMinSize( _in_min);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_list_view_model_min_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min);
+      }
+   }
+   private static efl_ui_list_view_model_min_size_set_delegate efl_ui_list_view_model_min_size_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_list_view_model_realize_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+
+
+    public delegate  System.IntPtr efl_ui_list_view_model_realize_api_delegate(System.IntPtr obj,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_realize_api_delegate> efl_ui_list_view_model_realize_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_realize_api_delegate>(_Module, "efl_ui_list_view_model_realize");
+    private static  System.IntPtr realize(System.IntPtr obj, System.IntPtr pd,  ref Efl.Ui.ListViewLayoutItem_StructInternal item)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_realize was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(item);
+                     Efl.Ui.ListViewLayoutItem _ret_var = default(Efl.Ui.ListViewLayoutItem);
+         try {
+            _ret_var = ((ListView)wrapper).Realize( ref _in_item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(_in_item);
+      return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_list_view_model_realize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref item);
+      }
+   }
+   private static efl_ui_list_view_model_realize_delegate efl_ui_list_view_model_realize_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_model_unrealize_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+
+
+    public delegate  void efl_ui_list_view_model_unrealize_api_delegate(System.IntPtr obj,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_unrealize_api_delegate> efl_ui_list_view_model_unrealize_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_unrealize_api_delegate>(_Module, "efl_ui_list_view_model_unrealize");
+    private static  void unrealize(System.IntPtr obj, System.IntPtr pd,  ref Efl.Ui.ListViewLayoutItem_StructInternal item)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_unrealize was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(item);
+                     
+         try {
+            ((ListView)wrapper).Unrealize( ref _in_item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(_in_item);
+            } else {
+         efl_ui_list_view_model_unrealize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref item);
+      }
+   }
+   private static efl_ui_list_view_model_unrealize_delegate efl_ui_list_view_model_unrealize_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate> efl_ui_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate>(_Module, "efl_ui_scrollable_content_pos_get");
+    private static Eina.Position2D_StructInternal content_pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((ListView)wrapper).GetContentPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_pos_get_delegate efl_ui_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_ui_scrollable_content_pos_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate> efl_ui_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate>(_Module, "efl_ui_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((ListView)wrapper).SetContentPos( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_ui_scrollable_content_pos_set_delegate efl_ui_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate> efl_ui_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_scrollable_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ListView)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_size_get_delegate efl_ui_scrollable_content_size_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate> efl_ui_scrollable_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate>(_Module, "efl_ui_scrollable_viewport_geometry_get");
+    private static Eina.Rect_StructInternal viewport_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ListView)wrapper).GetViewportGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_viewport_geometry_get_delegate efl_ui_scrollable_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate> efl_ui_scrollable_bounce_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_get");
+    private static  void bounce_enabled_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((ListView)wrapper).GetBounceEnabled( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_get_delegate efl_ui_scrollable_bounce_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate> efl_ui_scrollable_bounce_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_set");
+    private static  void bounce_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetBounceEnabled( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_set_delegate efl_ui_scrollable_bounce_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_freeze_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_freeze_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate> efl_ui_scrollable_scroll_freeze_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_get");
+    private static bool scroll_freeze_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).GetScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_get_delegate efl_ui_scrollable_scroll_freeze_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void efl_ui_scrollable_scroll_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate> efl_ui_scrollable_scroll_freeze_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_set");
+    private static  void scroll_freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetScrollFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_set_delegate efl_ui_scrollable_scroll_freeze_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate> efl_ui_scrollable_scroll_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_get");
+    private static bool scroll_hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).GetScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_get_delegate efl_ui_scrollable_scroll_hold_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void efl_ui_scrollable_scroll_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate> efl_ui_scrollable_scroll_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_set");
+    private static  void scroll_hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetScrollHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_set_delegate efl_ui_scrollable_scroll_hold_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate> efl_ui_scrollable_looping_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate>(_Module, "efl_ui_scrollable_looping_get");
+    private static  void looping_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((ListView)wrapper).GetLooping( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_get_delegate efl_ui_scrollable_looping_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate> efl_ui_scrollable_looping_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate>(_Module, "efl_ui_scrollable_looping_set");
+    private static  void looping_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetLooping( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_set_delegate efl_ui_scrollable_looping_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate> efl_ui_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate>(_Module, "efl_ui_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((ListView)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_movement_block_get_delegate efl_ui_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void efl_ui_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate> efl_ui_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate>(_Module, "efl_ui_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static efl_ui_scrollable_movement_block_set_delegate efl_ui_scrollable_movement_block_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate> efl_ui_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate>(_Module, "efl_ui_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((ListView)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_get_delegate efl_ui_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate> efl_ui_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate>(_Module, "efl_ui_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_set_delegate efl_ui_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_match_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void efl_ui_scrollable_match_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate> efl_ui_scrollable_match_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate>(_Module, "efl_ui_scrollable_match_content_set");
+    private static  void match_content_set(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_match_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetMatchContent( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_match_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static efl_ui_scrollable_match_content_set_delegate efl_ui_scrollable_match_content_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate> efl_ui_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate>(_Module, "efl_ui_scrollable_step_size_get");
+    private static Eina.Position2D_StructInternal step_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((ListView)wrapper).GetStepSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_step_size_get_delegate efl_ui_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal step);
+
+
+    public delegate  void efl_ui_scrollable_step_size_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate> efl_ui_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate>(_Module, "efl_ui_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal step)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_step = Eina.Position2D_StructConversion.ToManaged(step);
+                     
+         try {
+            ((ListView)wrapper).SetStepSize( _in_step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_scrollable_step_size_set_delegate efl_ui_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_scrollable_scroll_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate> efl_ui_scrollable_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate>(_Module, "efl_ui_scrollable_scroll");
+    private static  void scroll(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                       
+         try {
+            ((ListView)wrapper).Scroll( _in_rect,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  animation);
+      }
+   }
+   private static efl_ui_scrollable_scroll_delegate efl_ui_scrollable_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_get_api_delegate(System.IntPtr obj,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate> efl_ui_scrollbar_bar_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_get");
+    private static  void bar_mode_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Efl.Ui.ScrollbarMode);      vbar = default(Efl.Ui.ScrollbarMode);                     
+         try {
+            ((ListView)wrapper).GetBarMode( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_get_delegate efl_ui_scrollbar_bar_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate> efl_ui_scrollbar_bar_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_set");
+    private static  void bar_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetBarMode( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_set_delegate efl_ui_scrollbar_bar_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double width,   out double height);
+
+
+    public delegate  void efl_ui_scrollbar_bar_size_get_api_delegate(System.IntPtr obj,   out double width,   out double height);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate> efl_ui_scrollbar_bar_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_size_get");
+    private static  void bar_size_get(System.IntPtr obj, System.IntPtr pd,  out double width,  out double height)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           width = default(double);      height = default(double);                     
+         try {
+            ((ListView)wrapper).GetBarSize( out width,  out height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out width,  out height);
+      }
+   }
+   private static efl_ui_scrollbar_bar_size_get_delegate efl_ui_scrollbar_bar_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double posx,   out double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_get_api_delegate(System.IntPtr obj,   out double posx,   out double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate> efl_ui_scrollbar_bar_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_get");
+    private static  void bar_position_get(System.IntPtr obj, System.IntPtr pd,  out double posx,  out double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           posx = default(double);      posy = default(double);                     
+         try {
+            ((ListView)wrapper).GetBarPosition( out posx,  out posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out posx,  out posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_get_delegate efl_ui_scrollbar_bar_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   double posx,   double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_set_api_delegate(System.IntPtr obj,   double posx,   double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate> efl_ui_scrollbar_bar_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_set");
+    private static  void bar_position_set(System.IntPtr obj, System.IntPtr pd,  double posx,  double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetBarPosition( posx,  posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  posx,  posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_set_delegate efl_ui_scrollbar_bar_position_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_visibility_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_scrollbar_bar_visibility_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate> efl_ui_scrollbar_bar_visibility_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate>(_Module, "efl_ui_scrollbar_bar_visibility_update");
+    private static  void bar_visibility_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_visibility_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ListView)wrapper).UpdateBarVisibility();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollbar_bar_visibility_update_delegate efl_ui_scrollbar_bar_visibility_update_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((ListView)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_composition_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_composition_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate> efl_ui_focus_composition_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate>(_Module, "efl_ui_focus_composition_elements_get");
+    private static  System.IntPtr composition_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Gfx.Entity> _ret_var = default(Eina.List<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((ListView)wrapper).GetCompositionElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_composition_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_elements_get_delegate efl_ui_focus_composition_elements_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_elements_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr logical_order);
+
+
+    public delegate  void efl_ui_focus_composition_elements_set_api_delegate(System.IntPtr obj,    System.IntPtr logical_order);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate> efl_ui_focus_composition_elements_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate>(_Module, "efl_ui_focus_composition_elements_set");
+    private static  void composition_elements_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr logical_order)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_logical_order = new Eina.List<Efl.Gfx.Entity>(logical_order, true, false);
+                     
+         try {
+            ((ListView)wrapper).SetCompositionElements( _in_logical_order);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_elements_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_order);
+      }
+   }
+   private static efl_ui_focus_composition_elements_set_delegate efl_ui_focus_composition_elements_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_composition_logical_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_composition_logical_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate> efl_ui_focus_composition_logical_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_get");
+    private static bool logical_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).GetLogicalMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_get_delegate efl_ui_focus_composition_logical_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_logical_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+
+
+    public delegate  void efl_ui_focus_composition_logical_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate> efl_ui_focus_composition_logical_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_set");
+    private static  void logical_mode_set(System.IntPtr obj, System.IntPtr pd,  bool logical_mode)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetLogicalMode( logical_mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_mode);
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_set_delegate efl_ui_focus_composition_logical_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_dirty_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_dirty_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate> efl_ui_focus_composition_dirty_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate>(_Module, "efl_ui_focus_composition_dirty");
+    private static  void dirty(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_dirty was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ListView)wrapper).Dirty();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_dirty_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_dirty_delegate efl_ui_focus_composition_dirty_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_prepare_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_prepare_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate> efl_ui_focus_composition_prepare_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate>(_Module, "efl_ui_focus_composition_prepare");
+    private static  void prepare(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_prepare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ListView)wrapper).Prepare();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_prepare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_prepare_delegate efl_ui_focus_composition_prepare_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ListView)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((ListView)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ListView)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((ListView)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((ListView)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ListView)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ListView)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ListView)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ListView)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((ListView)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((ListView)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((ListView)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ListView)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ListView)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListView)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ListView)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((ListView)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ListViewItemEvent
+{
+   /// <summary></summary>
+   public Efl.Ui.Layout Layout;
+   /// <summary></summary>
+   public Efl.Model Child;
+   /// <summary></summary>
+   public  int Index;
+   ///<summary>Constructor for ListViewItemEvent.</summary>
+   public ListViewItemEvent(
+      Efl.Ui.Layout Layout=default(Efl.Ui.Layout),
+      Efl.Model Child=default(Efl.Model),
+       int Index=default( int)   )
+   {
+      this.Layout = Layout;
+      this.Child = Child;
+      this.Index = Index;
+   }
+public static implicit operator ListViewItemEvent(IntPtr ptr)
+   {
+      var tmp = (ListViewItemEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(ListViewItemEvent_StructInternal));
+      return ListViewItemEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ListViewItemEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ListViewItemEvent_StructInternal
+{
+///<summary>Internal wrapper for field Layout</summary>
+public System.IntPtr Layout;
+///<summary>Internal wrapper for field Child</summary>
+public System.IntPtr Child;
+   
+   public  int Index;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ListViewItemEvent(ListViewItemEvent_StructInternal struct_)
+   {
+      return ListViewItemEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ListViewItemEvent_StructInternal(ListViewItemEvent struct_)
+   {
+      return ListViewItemEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ListViewItemEvent</summary>
+public static class ListViewItemEvent_StructConversion
+{
+   internal static ListViewItemEvent_StructInternal ToInternal(ListViewItemEvent _external_struct)
+   {
+      var _internal_struct = new ListViewItemEvent_StructInternal();
+
+      _internal_struct.Layout = _external_struct.Layout.NativeHandle;
+      _internal_struct.Child = _external_struct.Child.NativeHandle;
+      _internal_struct.Index = _external_struct.Index;
+
+      return _internal_struct;
+   }
+
+   internal static ListViewItemEvent ToManaged(ListViewItemEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new ListViewItemEvent();
+
+
+      _external_struct.Layout = (Efl.Ui.Layout) System.Activator.CreateInstance(typeof(Efl.Ui.Layout), new System.Object[] {_internal_struct.Layout});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Layout);
+
+
+      _external_struct.Child = (Efl.ModelConcrete) System.Activator.CreateInstance(typeof(Efl.ModelConcrete), new System.Object[] {_internal_struct.Child});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Child);
+
+      _external_struct.Index = _internal_struct.Index;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_view_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_view_model.eo.cs
new file mode 100755 (executable)
index 0000000..24e19b8
--- /dev/null
@@ -0,0 +1,372 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[ListViewModelNativeInherit]
+public interface ListViewModel : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary></summary>
+/// <param name="first"></param>
+/// <param name="count"></param>
+/// <returns></returns>
+ void SetLoadRange(  int first,   int count);
+   /// <summary></summary>
+/// <returns></returns>
+ int GetModelSize();
+   /// <summary>Minimal content size.</summary>
+/// <returns></returns>
+Eina.Size2D GetMinSize();
+   /// <summary>Minimal content size.</summary>
+/// <param name="min"></param>
+/// <returns></returns>
+ void SetMinSize( Eina.Size2D min);
+   /// <summary></summary>
+/// <param name="item"></param>
+/// <returns></returns>
+Efl.Ui.ListViewLayoutItem Realize( ref Efl.Ui.ListViewLayoutItem item);
+   /// <summary></summary>
+/// <param name="item"></param>
+/// <returns></returns>
+ void Unrealize( ref Efl.Ui.ListViewLayoutItem item);
+                     /// <summary></summary>
+/// <value></value>
+    int ModelSize {
+      get ;
+   }
+   /// <summary>Minimal content size.</summary>
+/// <value></value>
+   Eina.Size2D MinSize {
+      get ;
+      set ;
+   }
+}
+/// <summary></summary>
+sealed public class ListViewModelConcrete : 
+
+ListViewModel
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListViewModelConcrete))
+            return Efl.Ui.ListViewModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_view_model_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListViewModelConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ListViewModelConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ListViewModelConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListViewModelConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary></summary>
+   /// <param name="first"></param>
+   /// <param name="count"></param>
+   /// <returns></returns>
+   public  void SetLoadRange(  int first,   int count) {
+                                           Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_load_range_set_ptr.Value.Delegate(this.NativeHandle, first,  count);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+   /// <returns></returns>
+   public  int GetModelSize() {
+       var _ret_var = Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Minimal content size.</summary>
+   /// <returns></returns>
+   public Eina.Size2D GetMinSize() {
+       var _ret_var = Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_min_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Minimal content size.</summary>
+   /// <param name="min"></param>
+   /// <returns></returns>
+   public  void SetMinSize( Eina.Size2D min) {
+       var _in_min = Eina.Size2D_StructConversion.ToInternal(min);
+                  Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_min_size_set_ptr.Value.Delegate(this.NativeHandle, _in_min);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="item"></param>
+   /// <returns></returns>
+   public Efl.Ui.ListViewLayoutItem Realize( ref Efl.Ui.ListViewLayoutItem item) {
+       var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(item);
+                  var _ret_var = Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_realize_ptr.Value.Delegate(this.NativeHandle, ref _in_item);
+      Eina.Error.RaiseIfUnhandledException();
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(_in_item);
+      var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.ListViewLayoutItem>(_ret_var);
+      
+      return __ret_tmp;
+ }
+   /// <summary></summary>
+   /// <param name="item"></param>
+   /// <returns></returns>
+   public  void Unrealize( ref Efl.Ui.ListViewLayoutItem item) {
+       var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(item);
+                  Efl.Ui.ListViewModelNativeInherit.efl_ui_list_view_model_unrealize_ptr.Value.Delegate(this.NativeHandle, ref _in_item);
+      Eina.Error.RaiseIfUnhandledException();
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(_in_item);
+       }
+   /// <summary></summary>
+/// <value></value>
+   public  int ModelSize {
+      get { return GetModelSize(); }
+   }
+   /// <summary>Minimal content size.</summary>
+/// <value></value>
+   public Eina.Size2D MinSize {
+      get { return GetMinSize(); }
+      set { SetMinSize( value); }
+   }
+}
+public class ListViewModelNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_list_view_model_load_range_set_static_delegate == null)
+      efl_ui_list_view_model_load_range_set_static_delegate = new efl_ui_list_view_model_load_range_set_delegate(load_range_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_load_range_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_load_range_set_static_delegate)});
+      if (efl_ui_list_view_model_size_get_static_delegate == null)
+      efl_ui_list_view_model_size_get_static_delegate = new efl_ui_list_view_model_size_get_delegate(model_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_size_get_static_delegate)});
+      if (efl_ui_list_view_model_min_size_get_static_delegate == null)
+      efl_ui_list_view_model_min_size_get_static_delegate = new efl_ui_list_view_model_min_size_get_delegate(min_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_min_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_min_size_get_static_delegate)});
+      if (efl_ui_list_view_model_min_size_set_static_delegate == null)
+      efl_ui_list_view_model_min_size_set_static_delegate = new efl_ui_list_view_model_min_size_set_delegate(min_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_min_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_min_size_set_static_delegate)});
+      if (efl_ui_list_view_model_realize_static_delegate == null)
+      efl_ui_list_view_model_realize_static_delegate = new efl_ui_list_view_model_realize_delegate(realize);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_realize"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_realize_static_delegate)});
+      if (efl_ui_list_view_model_unrealize_static_delegate == null)
+      efl_ui_list_view_model_unrealize_static_delegate = new efl_ui_list_view_model_unrealize_delegate(unrealize);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_list_view_model_unrealize"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_list_view_model_unrealize_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListViewModelConcrete.efl_ui_list_view_model_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListViewModelConcrete.efl_ui_list_view_model_interface_get();
+   }
+
+
+    private delegate  void efl_ui_list_view_model_load_range_set_delegate(System.IntPtr obj, System.IntPtr pd,    int first,    int count);
+
+
+    public delegate  void efl_ui_list_view_model_load_range_set_api_delegate(System.IntPtr obj,    int first,    int count);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_load_range_set_api_delegate> efl_ui_list_view_model_load_range_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_load_range_set_api_delegate>(_Module, "efl_ui_list_view_model_load_range_set");
+    private static  void load_range_set(System.IntPtr obj, System.IntPtr pd,   int first,   int count)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_load_range_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ListViewModel)wrapper).SetLoadRange( first,  count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_list_view_model_load_range_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  first,  count);
+      }
+   }
+   private static efl_ui_list_view_model_load_range_set_delegate efl_ui_list_view_model_load_range_set_static_delegate;
+
+
+    private delegate  int efl_ui_list_view_model_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_list_view_model_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_size_get_api_delegate> efl_ui_list_view_model_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_size_get_api_delegate>(_Module, "efl_ui_list_view_model_size_get");
+    private static  int model_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((ListViewModel)wrapper).GetModelSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_list_view_model_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_view_model_size_get_delegate efl_ui_list_view_model_size_get_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_list_view_model_min_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_list_view_model_min_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_get_api_delegate> efl_ui_list_view_model_min_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_get_api_delegate>(_Module, "efl_ui_list_view_model_min_size_get");
+    private static Eina.Size2D_StructInternal min_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_min_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ListViewModel)wrapper).GetMinSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_list_view_model_min_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_list_view_model_min_size_get_delegate efl_ui_list_view_model_min_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_model_min_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal min);
+
+
+    public delegate  void efl_ui_list_view_model_min_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal min);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_set_api_delegate> efl_ui_list_view_model_min_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_min_size_set_api_delegate>(_Module, "efl_ui_list_view_model_min_size_set");
+    private static  void min_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal min)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_min_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_min = Eina.Size2D_StructConversion.ToManaged(min);
+                     
+         try {
+            ((ListViewModel)wrapper).SetMinSize( _in_min);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_list_view_model_min_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min);
+      }
+   }
+   private static efl_ui_list_view_model_min_size_set_delegate efl_ui_list_view_model_min_size_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_list_view_model_realize_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+
+
+    public delegate  System.IntPtr efl_ui_list_view_model_realize_api_delegate(System.IntPtr obj,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_realize_api_delegate> efl_ui_list_view_model_realize_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_realize_api_delegate>(_Module, "efl_ui_list_view_model_realize");
+    private static  System.IntPtr realize(System.IntPtr obj, System.IntPtr pd,  ref Efl.Ui.ListViewLayoutItem_StructInternal item)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_realize was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(item);
+                     Efl.Ui.ListViewLayoutItem _ret_var = default(Efl.Ui.ListViewLayoutItem);
+         try {
+            _ret_var = ((ListViewModel)wrapper).Realize( ref _in_item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(_in_item);
+      return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_list_view_model_realize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref item);
+      }
+   }
+   private static efl_ui_list_view_model_realize_delegate efl_ui_list_view_model_realize_static_delegate;
+
+
+    private delegate  void efl_ui_list_view_model_unrealize_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+
+
+    public delegate  void efl_ui_list_view_model_unrealize_api_delegate(System.IntPtr obj,   ref Efl.Ui.ListViewLayoutItem_StructInternal item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_list_view_model_unrealize_api_delegate> efl_ui_list_view_model_unrealize_ptr = new Efl.Eo.FunctionWrapper<efl_ui_list_view_model_unrealize_api_delegate>(_Module, "efl_ui_list_view_model_unrealize");
+    private static  void unrealize(System.IntPtr obj, System.IntPtr pd,  ref Efl.Ui.ListViewLayoutItem_StructInternal item)
+   {
+      Eina.Log.Debug("function efl_ui_list_view_model_unrealize was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_item = Efl.Ui.ListViewLayoutItem_StructConversion.ToManaged(item);
+                     
+         try {
+            ((ListViewModel)wrapper).Unrealize( ref _in_item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            item = Efl.Ui.ListViewLayoutItem_StructConversion.ToInternal(_in_item);
+            } else {
+         efl_ui_list_view_model_unrealize_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref item);
+      }
+   }
+   private static efl_ui_list_view_model_unrealize_delegate efl_ui_list_view_model_unrealize_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_view_pan.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_view_pan.eo.cs
new file mode 100755 (executable)
index 0000000..070bd26
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary Efl_Ui_List_View pan class</summary>
+[ListViewPanNativeInherit]
+public class ListViewPan : Efl.Ui.Pan, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ListViewPanNativeInherit nativeInherit = new Efl.Ui.ListViewPanNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ListViewPan))
+            return Efl.Ui.ListViewPanNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_list_view_pan_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ListViewPan(Efl.Object parent= null
+         ) :
+      base(efl_ui_list_view_pan_class_get(), typeof(ListViewPan), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ListViewPan(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ListViewPan(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ListViewPan static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ListViewPan(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListViewPan.efl_ui_list_view_pan_class_get();
+   }
+}
+public class ListViewPanNativeInherit : Efl.Ui.PanNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ListViewPan.efl_ui_list_view_pan_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ListViewPan.efl_ui_list_view_pan_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_list_view_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_ui_list_view_types.eot.cs
new file mode 100755 (executable)
index 0000000..957b910
--- /dev/null
@@ -0,0 +1,177 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ListViewLayoutItem
+{
+   /// <summary></summary>
+   public Efl.Ui.Layout Layout;
+   /// <summary></summary>
+   public  Eina.Future Layout_request;
+   /// <summary></summary>
+   public Efl.Model Children;
+   /// <summary></summary>
+   public  int Index_offset;
+   /// <summary></summary>
+   public  System.IntPtr Tree_node;
+   /// <summary></summary>
+   public Eina.Size2D Min;
+   /// <summary></summary>
+   public Eina.Size2D Size;
+   /// <summary></summary>
+   public Eina.Position2D Pos;
+   ///<summary>Constructor for ListViewLayoutItem.</summary>
+   public ListViewLayoutItem(
+      Efl.Ui.Layout Layout=default(Efl.Ui.Layout),
+       Eina.Future Layout_request=default( Eina.Future),
+      Efl.Model Children=default(Efl.Model),
+       int Index_offset=default( int),
+       System.IntPtr Tree_node=default( System.IntPtr),
+      Eina.Size2D Min=default(Eina.Size2D),
+      Eina.Size2D Size=default(Eina.Size2D),
+      Eina.Position2D Pos=default(Eina.Position2D)   )
+   {
+      this.Layout = Layout;
+      this.Layout_request = Layout_request;
+      this.Children = Children;
+      this.Index_offset = Index_offset;
+      this.Tree_node = Tree_node;
+      this.Min = Min;
+      this.Size = Size;
+      this.Pos = Pos;
+   }
+public static implicit operator ListViewLayoutItem(IntPtr ptr)
+   {
+      var tmp = (ListViewLayoutItem_StructInternal)Marshal.PtrToStructure(ptr, typeof(ListViewLayoutItem_StructInternal));
+      return ListViewLayoutItem_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ListViewLayoutItem.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ListViewLayoutItem_StructInternal
+{
+///<summary>Internal wrapper for field Layout</summary>
+public System.IntPtr Layout;
+   [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))]
+   public  Eina.Future Layout_request;
+///<summary>Internal wrapper for field Children</summary>
+public System.IntPtr Children;
+   
+   public  int Index_offset;
+   
+   public  System.IntPtr Tree_node;
+   
+   public Eina.Size2D_StructInternal Min;
+   
+   public Eina.Size2D_StructInternal Size;
+   
+   public Eina.Position2D_StructInternal Pos;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ListViewLayoutItem(ListViewLayoutItem_StructInternal struct_)
+   {
+      return ListViewLayoutItem_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ListViewLayoutItem_StructInternal(ListViewLayoutItem struct_)
+   {
+      return ListViewLayoutItem_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ListViewLayoutItem</summary>
+public static class ListViewLayoutItem_StructConversion
+{
+   internal static ListViewLayoutItem_StructInternal ToInternal(ListViewLayoutItem _external_struct)
+   {
+      var _internal_struct = new ListViewLayoutItem_StructInternal();
+
+      _internal_struct.Layout = _external_struct.Layout.NativeHandle;
+      _internal_struct.Layout_request = _external_struct.Layout_request;
+      _internal_struct.Children = _external_struct.Children.NativeHandle;
+      _internal_struct.Index_offset = _external_struct.Index_offset;
+      _internal_struct.Tree_node = _external_struct.Tree_node;
+      _internal_struct.Min = Eina.Size2D_StructConversion.ToInternal(_external_struct.Min);
+      _internal_struct.Size = Eina.Size2D_StructConversion.ToInternal(_external_struct.Size);
+      _internal_struct.Pos = Eina.Position2D_StructConversion.ToInternal(_external_struct.Pos);
+
+      return _internal_struct;
+   }
+
+   internal static ListViewLayoutItem ToManaged(ListViewLayoutItem_StructInternal _internal_struct)
+   {
+      var _external_struct = new ListViewLayoutItem();
+
+
+      _external_struct.Layout = (Efl.Ui.Layout) System.Activator.CreateInstance(typeof(Efl.Ui.Layout), new System.Object[] {_internal_struct.Layout});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Layout);
+
+      _external_struct.Layout_request = _internal_struct.Layout_request;
+
+      _external_struct.Children = (Efl.ModelConcrete) System.Activator.CreateInstance(typeof(Efl.ModelConcrete), new System.Object[] {_internal_struct.Children});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Children);
+
+      _external_struct.Index_offset = _internal_struct.Index_offset;
+      _external_struct.Tree_node = _internal_struct.Tree_node;
+      _external_struct.Min = Eina.Size2D_StructConversion.ToManaged(_internal_struct.Min);
+      _external_struct.Size = Eina.Size2D_StructConversion.ToManaged(_internal_struct.Size);
+      _external_struct.Pos = Eina.Position2D_StructConversion.ToManaged(_internal_struct.Pos);
+
+      return _external_struct;
+   }
+
+}
+} } 
+
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EflUiListViewSegArray
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator EflUiListViewSegArray(IntPtr ptr)
+   {
+      var tmp = (EflUiListViewSegArray_StructInternal)Marshal.PtrToStructure(ptr, typeof(EflUiListViewSegArray_StructInternal));
+      return EflUiListViewSegArray_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct EflUiListViewSegArray.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EflUiListViewSegArray_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator EflUiListViewSegArray(EflUiListViewSegArray_StructInternal struct_)
+   {
+      return EflUiListViewSegArray_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator EflUiListViewSegArray_StructInternal(EflUiListViewSegArray struct_)
+   {
+      return EflUiListViewSegArray_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct EflUiListViewSegArray</summary>
+public static class EflUiListViewSegArray_StructConversion
+{
+   internal static EflUiListViewSegArray_StructInternal ToInternal(EflUiListViewSegArray _external_struct)
+   {
+      var _internal_struct = new EflUiListViewSegArray_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static EflUiListViewSegArray ToManaged(EflUiListViewSegArray_StructInternal _internal_struct)
+   {
+      var _external_struct = new EflUiListViewSegArray();
+
+
+      return _external_struct;
+   }
+
+}
+
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_multi_selectable.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_multi_selectable.eo.cs
new file mode 100755 (executable)
index 0000000..ccc8c09
--- /dev/null
@@ -0,0 +1,208 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Multi selectable interface. The container have to control select property of multiple chidren.</summary>
+[MultiSelectableNativeInherit]
+public interface MultiSelectable : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The mode type for children selection.</summary>
+/// <returns>Type of selection of children</returns>
+Efl.Ui.SelectMode GetSelectMode();
+   /// <summary>The mode type for children selection.</summary>
+/// <param name="mode">Type of selection of children</param>
+/// <returns></returns>
+ void SetSelectMode( Efl.Ui.SelectMode mode);
+         /// <summary>The mode type for children selection.</summary>
+/// <value>Type of selection of children</value>
+   Efl.Ui.SelectMode SelectMode {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl UI Multi selectable interface. The container have to control select property of multiple chidren.</summary>
+sealed public class MultiSelectableConcrete : 
+
+MultiSelectable
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (MultiSelectableConcrete))
+            return Efl.Ui.MultiSelectableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_multi_selectable_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public MultiSelectableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~MultiSelectableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static MultiSelectableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new MultiSelectableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>The mode type for children selection.</summary>
+   /// <returns>Type of selection of children</returns>
+   public Efl.Ui.SelectMode GetSelectMode() {
+       var _ret_var = Efl.Ui.MultiSelectableNativeInherit.efl_ui_select_mode_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The mode type for children selection.</summary>
+   /// <param name="mode">Type of selection of children</param>
+   /// <returns></returns>
+   public  void SetSelectMode( Efl.Ui.SelectMode mode) {
+                         Efl.Ui.MultiSelectableNativeInherit.efl_ui_select_mode_set_ptr.Value.Delegate(this.NativeHandle, mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The mode type for children selection.</summary>
+/// <value>Type of selection of children</value>
+   public Efl.Ui.SelectMode SelectMode {
+      get { return GetSelectMode(); }
+      set { SetSelectMode( value); }
+   }
+}
+public class MultiSelectableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_select_mode_get_static_delegate == null)
+      efl_ui_select_mode_get_static_delegate = new efl_ui_select_mode_get_delegate(select_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_select_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_select_mode_get_static_delegate)});
+      if (efl_ui_select_mode_set_static_delegate == null)
+      efl_ui_select_mode_set_static_delegate = new efl_ui_select_mode_set_delegate(select_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_select_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_select_mode_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.MultiSelectableConcrete.efl_ui_multi_selectable_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.MultiSelectableConcrete.efl_ui_multi_selectable_interface_get();
+   }
+
+
+    private delegate Efl.Ui.SelectMode efl_ui_select_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.SelectMode efl_ui_select_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_select_mode_get_api_delegate> efl_ui_select_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_select_mode_get_api_delegate>(_Module, "efl_ui_select_mode_get");
+    private static Efl.Ui.SelectMode select_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_select_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.SelectMode _ret_var = default(Efl.Ui.SelectMode);
+         try {
+            _ret_var = ((MultiSelectable)wrapper).GetSelectMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_select_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_select_mode_get_delegate efl_ui_select_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_select_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectMode mode);
+
+
+    public delegate  void efl_ui_select_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_select_mode_set_api_delegate> efl_ui_select_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_select_mode_set_api_delegate>(_Module, "efl_ui_select_mode_set");
+    private static  void select_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_select_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((MultiSelectable)wrapper).SetSelectMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_select_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_select_mode_set_delegate efl_ui_select_mode_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Type of multi selectable object.</summary>
+public enum SelectMode
+{
+/// <summary>Only single child is selected. if the child is selected, previous selected child will be unselected.</summary>
+Single = 0,
+/// <summary>Same as single select except, this will be selected in every select calls though child is already been selected.</summary>
+SingleAlways = 1,
+/// <summary>allow multiple selection of children.</summary>
+Multi = 2,
+/// <summary>Last value of select mode. child cannot be selected at all.</summary>
+None = 3,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_navigation_bar.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_navigation_bar.eo.cs
new file mode 100755 (executable)
index 0000000..397e059
--- /dev/null
@@ -0,0 +1,338 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Navigation_Bar widget.
+/// Navigation_Bar widget provides a bar form useful for navigation. Navigation_Bar has a back button which is used to navigate to the previous content in the stack.</summary>
+[NavigationBarNativeInherit]
+public class NavigationBar : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content,Efl.Text
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.NavigationBarNativeInherit nativeInherit = new Efl.Ui.NavigationBarNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (NavigationBar))
+            return Efl.Ui.NavigationBarNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_navigation_bar_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public NavigationBar(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_navigation_bar_class_get(), typeof(NavigationBar), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public NavigationBar(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected NavigationBar(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static NavigationBar static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new NavigationBar(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Back button to navigate to the previous content in the stack.
+/// The back button works only if the Navigation_Bar widget is contained in the Stack widget(Efl.Ui.Stack class). e.g. The Navigation_Bar widget is set in the Navigation_Layout widget and the Navigation_Layout widget is pushed to the Stack widget.
+/// 
+/// The back button is hidden by default and it can be visible. e.g. efl_gfx_entity_visible_set(efl_part(navigation_bar, &quot;back_button&quot;), EINA_TRUE);</summary>
+   public Efl.Ui.NavigationBarPartBackButton BackButton
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "back_button");
+         return Efl.Ui.NavigationBarPartBackButton.static_cast(obj);
+      }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationBar.efl_ui_navigation_bar_class_get();
+   }
+}
+public class NavigationBarNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.NavigationBar.efl_ui_navigation_bar_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationBar.efl_ui_navigation_bar_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((NavigationBar)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((NavigationBar)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((NavigationBar)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((NavigationBar)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((NavigationBar)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_navigation_bar_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_navigation_bar_part.eo.cs
new file mode 100755 (executable)
index 0000000..ca5123f
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Navigation_Bar internal part class</summary>
+[NavigationBarPartNativeInherit]
+public class NavigationBarPart : Efl.Ui.LayoutPartContent, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.NavigationBarPartNativeInherit nativeInherit = new Efl.Ui.NavigationBarPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (NavigationBarPart))
+            return Efl.Ui.NavigationBarPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_navigation_bar_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public NavigationBarPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_navigation_bar_part_class_get(), typeof(NavigationBarPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public NavigationBarPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected NavigationBarPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static NavigationBarPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new NavigationBarPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationBarPart.efl_ui_navigation_bar_part_class_get();
+   }
+}
+public class NavigationBarPartNativeInherit : Efl.Ui.LayoutPartContentNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.NavigationBarPart.efl_ui_navigation_bar_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationBarPart.efl_ui_navigation_bar_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_navigation_bar_part_back_button.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_navigation_bar_part_back_button.eo.cs
new file mode 100755 (executable)
index 0000000..15c6e02
--- /dev/null
@@ -0,0 +1,1213 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl Ui Navigation_Bar internal part back button class</summary>
+[NavigationBarPartBackButtonNativeInherit]
+public class NavigationBarPartBackButton : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content,Efl.Text,Efl.Gfx.Entity,Efl.Ui.Clickable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.NavigationBarPartBackButtonNativeInherit nativeInherit = new Efl.Ui.NavigationBarPartBackButtonNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (NavigationBarPartBackButton))
+            return Efl.Ui.NavigationBarPartBackButtonNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_navigation_bar_part_back_button_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public NavigationBarPartBackButton(Efl.Object parent= null
+         ) :
+      base(efl_ui_navigation_bar_part_back_button_class_get(), typeof(NavigationBarPartBackButton), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public NavigationBarPartBackButton(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected NavigationBarPartBackButton(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static NavigationBarPartBackButton static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new NavigationBarPartBackButton(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object VisibilityChangedEvtKey = new object();
+   /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   public event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_VisibilityChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibilityChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibilityChangedEvt.</summary>
+   public void On_VisibilityChangedEvt(Efl.Gfx.EntityVisibilityChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args>)eventHandlers[VisibilityChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibilityChangedEvt_delegate;
+   private void on_VisibilityChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityVisibilityChangedEvt_Args args = new Efl.Gfx.EntityVisibilityChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_VisibilityChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(Efl.Gfx.EntityPositionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args>)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityPositionChangedEvt_Args args = new Efl.Gfx.EntityPositionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(Efl.Gfx.EntitySizeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args>)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntitySizeChangedEvt_Args args = new Efl.Gfx.EntitySizeChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_VisibilityChangedEvt_delegate = new Efl.EventCb(on_VisibilityChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+   /// <returns>A 2D coordinate in pixel units.</returns>
+   virtual public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+   /// <param name="pos">A 2D coordinate in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+   /// <returns>A 2D size in pixel units.</returns>
+   virtual public Eina.Size2D GetSize() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Changes the size of the given object.
+   /// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+   /// <param name="size">A 2D size in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <returns>The X,Y position and W,H size, in pixels.</returns>
+   virtual public Eina.Rect GetGeometry() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetGeometry( Eina.Rect rect) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+   /// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+   virtual public bool GetVisible() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Shows or hides this object.</summary>
+   /// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetVisible( bool v) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+   /// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+   virtual public double GetScale() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scaling factor of an object.</summary>
+   /// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+   /// <returns></returns>
+   virtual public  void SetScale( double scale) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   public Eina.Size2D Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   public Eina.Rect Geometry {
+      get { return GetGeometry(); }
+      set { SetGeometry( value); }
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   public bool Visible {
+      get { return GetVisible(); }
+      set { SetVisible( value); }
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   public double Scale {
+      get { return GetScale(); }
+      set { SetScale( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationBarPartBackButton.efl_ui_navigation_bar_part_back_button_class_get();
+   }
+}
+public class NavigationBarPartBackButtonNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_gfx_entity_position_get_static_delegate == null)
+      efl_gfx_entity_position_get_static_delegate = new efl_gfx_entity_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_get_static_delegate)});
+      if (efl_gfx_entity_position_set_static_delegate == null)
+      efl_gfx_entity_position_set_static_delegate = new efl_gfx_entity_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_set_static_delegate)});
+      if (efl_gfx_entity_size_get_static_delegate == null)
+      efl_gfx_entity_size_get_static_delegate = new efl_gfx_entity_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_get_static_delegate)});
+      if (efl_gfx_entity_size_set_static_delegate == null)
+      efl_gfx_entity_size_set_static_delegate = new efl_gfx_entity_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_set_static_delegate)});
+      if (efl_gfx_entity_geometry_get_static_delegate == null)
+      efl_gfx_entity_geometry_get_static_delegate = new efl_gfx_entity_geometry_get_delegate(geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_get_static_delegate)});
+      if (efl_gfx_entity_geometry_set_static_delegate == null)
+      efl_gfx_entity_geometry_set_static_delegate = new efl_gfx_entity_geometry_set_delegate(geometry_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_set_static_delegate)});
+      if (efl_gfx_entity_visible_get_static_delegate == null)
+      efl_gfx_entity_visible_get_static_delegate = new efl_gfx_entity_visible_get_delegate(visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_get_static_delegate)});
+      if (efl_gfx_entity_visible_set_static_delegate == null)
+      efl_gfx_entity_visible_set_static_delegate = new efl_gfx_entity_visible_set_delegate(visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_set_static_delegate)});
+      if (efl_gfx_entity_scale_get_static_delegate == null)
+      efl_gfx_entity_scale_get_static_delegate = new efl_gfx_entity_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_get_static_delegate)});
+      if (efl_gfx_entity_scale_set_static_delegate == null)
+      efl_gfx_entity_scale_set_static_delegate = new efl_gfx_entity_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.NavigationBarPartBackButton.efl_ui_navigation_bar_part_back_button_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationBarPartBackButton.efl_ui_navigation_bar_part_back_button_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((NavigationBarPartBackButton)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate> efl_gfx_entity_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate>(_Module, "efl_gfx_entity_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_position_get_delegate efl_gfx_entity_position_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_gfx_entity_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate> efl_gfx_entity_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate>(_Module, "efl_gfx_entity_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((NavigationBarPartBackButton)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_gfx_entity_position_set_delegate efl_gfx_entity_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate> efl_gfx_entity_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate>(_Module, "efl_gfx_entity_size_get");
+    private static Eina.Size2D_StructInternal size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_size_get_delegate efl_gfx_entity_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_entity_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate> efl_gfx_entity_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate>(_Module, "efl_gfx_entity_size_set");
+    private static  void size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((NavigationBarPartBackButton)wrapper).SetSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_entity_size_set_delegate efl_gfx_entity_size_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate> efl_gfx_entity_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate>(_Module, "efl_gfx_entity_geometry_get");
+    private static Eina.Rect_StructInternal geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).GetGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_geometry_get_delegate efl_gfx_entity_geometry_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_geometry_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect);
+
+
+    public delegate  void efl_gfx_entity_geometry_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate> efl_gfx_entity_geometry_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate>(_Module, "efl_gfx_entity_geometry_set");
+    private static  void geometry_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                     
+         try {
+            ((NavigationBarPartBackButton)wrapper).SetGeometry( _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_geometry_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect);
+      }
+   }
+   private static efl_gfx_entity_geometry_set_delegate efl_gfx_entity_geometry_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_entity_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_entity_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate> efl_gfx_entity_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate>(_Module, "efl_gfx_entity_visible_get");
+    private static bool visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).GetVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_visible_get_delegate efl_gfx_entity_visible_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_gfx_entity_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate> efl_gfx_entity_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate>(_Module, "efl_gfx_entity_visible_set");
+    private static  void visible_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((NavigationBarPartBackButton)wrapper).SetVisible( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_gfx_entity_visible_set_delegate efl_gfx_entity_visible_set_static_delegate;
+
+
+    private delegate double efl_gfx_entity_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_entity_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate> efl_gfx_entity_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate>(_Module, "efl_gfx_entity_scale_get");
+    private static double scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((NavigationBarPartBackButton)wrapper).GetScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_scale_get_delegate efl_gfx_entity_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_entity_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate> efl_gfx_entity_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate>(_Module, "efl_gfx_entity_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((NavigationBarPartBackButton)wrapper).SetScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_entity_scale_set_delegate efl_gfx_entity_scale_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_navigation_layout.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_navigation_layout.eo.cs
new file mode 100755 (executable)
index 0000000..ffaaaef
--- /dev/null
@@ -0,0 +1,328 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Navigation_Layout widget.
+/// Navigation_Layout widget provides a layout form useful for navigation. Navigation_Layout widget is used to be pushed to or popped from Stack widget(Efl.Ui.Stack class) as a content.</summary>
+[NavigationLayoutNativeInherit]
+public class NavigationLayout : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.NavigationLayoutNativeInherit nativeInherit = new Efl.Ui.NavigationLayoutNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (NavigationLayout))
+            return Efl.Ui.NavigationLayoutNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_navigation_layout_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public NavigationLayout(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_navigation_layout_class_get(), typeof(NavigationLayout), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public NavigationLayout(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected NavigationLayout(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static NavigationLayout static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new NavigationLayout(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>The bar object which is located at the top area as a title. e.g. Navigation_Bar widget(Efl.Ui.Navigation_Bar) can be used as <c>bar</c>.</summary>
+   /// <returns>The bar object located at the top area of the Navigation Layout.</returns>
+   virtual public Efl.Ui.LayoutBase GetBar() {
+       var _ret_var = Efl.Ui.NavigationLayoutNativeInherit.efl_ui_navigation_layout_bar_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The bar object which is located at the top area as a title. e.g. Navigation_Bar widget(Efl.Ui.Navigation_Bar) can be used as <c>bar</c>.</summary>
+   /// <param name="value">The bar object located at the top area of the Navigation Layout.</param>
+   /// <returns></returns>
+   virtual public  void SetBar( Efl.Ui.LayoutBase value) {
+                         Efl.Ui.NavigationLayoutNativeInherit.efl_ui_navigation_layout_bar_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The bar object which is located at the top area as a title. e.g. Navigation_Bar widget(Efl.Ui.Navigation_Bar) can be used as <c>bar</c>.</summary>
+/// <value>The bar object located at the top area of the Navigation Layout.</value>
+   public Efl.Ui.LayoutBase Bar {
+      get { return GetBar(); }
+      set { SetBar( value); }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationLayout.efl_ui_navigation_layout_class_get();
+   }
+}
+public class NavigationLayoutNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_navigation_layout_bar_get_static_delegate == null)
+      efl_ui_navigation_layout_bar_get_static_delegate = new efl_ui_navigation_layout_bar_get_delegate(bar_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_navigation_layout_bar_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_navigation_layout_bar_get_static_delegate)});
+      if (efl_ui_navigation_layout_bar_set_static_delegate == null)
+      efl_ui_navigation_layout_bar_set_static_delegate = new efl_ui_navigation_layout_bar_set_delegate(bar_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_navigation_layout_bar_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_navigation_layout_bar_set_static_delegate)});
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.NavigationLayout.efl_ui_navigation_layout_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.NavigationLayout.efl_ui_navigation_layout_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.LayoutBase, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.LayoutBase efl_ui_navigation_layout_bar_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.LayoutBase, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.LayoutBase efl_ui_navigation_layout_bar_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_navigation_layout_bar_get_api_delegate> efl_ui_navigation_layout_bar_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_navigation_layout_bar_get_api_delegate>(_Module, "efl_ui_navigation_layout_bar_get");
+    private static Efl.Ui.LayoutBase bar_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_navigation_layout_bar_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.LayoutBase _ret_var = default(Efl.Ui.LayoutBase);
+         try {
+            _ret_var = ((NavigationLayout)wrapper).GetBar();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_navigation_layout_bar_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_navigation_layout_bar_get_delegate efl_ui_navigation_layout_bar_get_static_delegate;
+
+
+    private delegate  void efl_ui_navigation_layout_bar_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.LayoutBase, Efl.Eo.NonOwnTag>))]  Efl.Ui.LayoutBase value);
+
+
+    public delegate  void efl_ui_navigation_layout_bar_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.LayoutBase, Efl.Eo.NonOwnTag>))]  Efl.Ui.LayoutBase value);
+    public static Efl.Eo.FunctionWrapper<efl_ui_navigation_layout_bar_set_api_delegate> efl_ui_navigation_layout_bar_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_navigation_layout_bar_set_api_delegate>(_Module, "efl_ui_navigation_layout_bar_set");
+    private static  void bar_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.LayoutBase value)
+   {
+      Eina.Log.Debug("function efl_ui_navigation_layout_bar_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((NavigationLayout)wrapper).SetBar( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_navigation_layout_bar_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_ui_navigation_layout_bar_set_delegate efl_ui_navigation_layout_bar_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((NavigationLayout)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((NavigationLayout)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((NavigationLayout)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_nstate.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_nstate.eo.cs
new file mode 100755 (executable)
index 0000000..b5b65ef
--- /dev/null
@@ -0,0 +1,322 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI nstate class</summary>
+[NstateNativeInherit]
+public class Nstate : Efl.Ui.Button, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.NstateNativeInherit nativeInherit = new Efl.Ui.NstateNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Nstate))
+            return Efl.Ui.NstateNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_nstate_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Nstate(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_nstate_class_get(), typeof(Nstate), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Nstate(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Nstate(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Nstate static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Nstate(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when the value changed.</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_NSTATE_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_NSTATE_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+   }
+   /// <summary>Maximum number of states</summary>
+   /// <returns>The number of states.</returns>
+   virtual public  int GetCount() {
+       var _ret_var = Efl.Ui.NstateNativeInherit.efl_ui_nstate_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Maximum number of states</summary>
+   /// <param name="nstate">The number of states.</param>
+   /// <returns></returns>
+   virtual public  void SetCount(  int nstate) {
+                         Efl.Ui.NstateNativeInherit.efl_ui_nstate_count_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), nstate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the state value.</summary>
+   /// <returns>The state.</returns>
+   virtual public  int GetValue() {
+       var _ret_var = Efl.Ui.NstateNativeInherit.efl_ui_nstate_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the particular state given in (0...nstate}.</summary>
+   /// <param name="state">The state.</param>
+   /// <returns></returns>
+   virtual public  void SetValue(  int state) {
+                         Efl.Ui.NstateNativeInherit.efl_ui_nstate_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), state);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Activate widget</summary>
+   /// <returns></returns>
+   virtual public  void Activate() {
+       Efl.Ui.NstateNativeInherit.efl_ui_nstate_activate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Maximum number of states</summary>
+/// <value>The number of states.</value>
+   public  int Count {
+      get { return GetCount(); }
+      set { SetCount( value); }
+   }
+   /// <summary>Get the state value.</summary>
+/// <value>The state.</value>
+   public  int Value {
+      get { return GetValue(); }
+      set { SetValue( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Nstate.efl_ui_nstate_class_get();
+   }
+}
+public class NstateNativeInherit : Efl.Ui.ButtonNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_nstate_count_get_static_delegate == null)
+      efl_ui_nstate_count_get_static_delegate = new efl_ui_nstate_count_get_delegate(count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_nstate_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_nstate_count_get_static_delegate)});
+      if (efl_ui_nstate_count_set_static_delegate == null)
+      efl_ui_nstate_count_set_static_delegate = new efl_ui_nstate_count_set_delegate(count_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_nstate_count_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_nstate_count_set_static_delegate)});
+      if (efl_ui_nstate_value_get_static_delegate == null)
+      efl_ui_nstate_value_get_static_delegate = new efl_ui_nstate_value_get_delegate(value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_nstate_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_nstate_value_get_static_delegate)});
+      if (efl_ui_nstate_value_set_static_delegate == null)
+      efl_ui_nstate_value_set_static_delegate = new efl_ui_nstate_value_set_delegate(value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_nstate_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_nstate_value_set_static_delegate)});
+      if (efl_ui_nstate_activate_static_delegate == null)
+      efl_ui_nstate_activate_static_delegate = new efl_ui_nstate_activate_delegate(activate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_nstate_activate"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_nstate_activate_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Nstate.efl_ui_nstate_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Nstate.efl_ui_nstate_class_get();
+   }
+
+
+    private delegate  int efl_ui_nstate_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_nstate_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_nstate_count_get_api_delegate> efl_ui_nstate_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_nstate_count_get_api_delegate>(_Module, "efl_ui_nstate_count_get");
+    private static  int count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_nstate_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Nstate)wrapper).GetCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_nstate_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_nstate_count_get_delegate efl_ui_nstate_count_get_static_delegate;
+
+
+    private delegate  void efl_ui_nstate_count_set_delegate(System.IntPtr obj, System.IntPtr pd,    int nstate);
+
+
+    public delegate  void efl_ui_nstate_count_set_api_delegate(System.IntPtr obj,    int nstate);
+    public static Efl.Eo.FunctionWrapper<efl_ui_nstate_count_set_api_delegate> efl_ui_nstate_count_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_nstate_count_set_api_delegate>(_Module, "efl_ui_nstate_count_set");
+    private static  void count_set(System.IntPtr obj, System.IntPtr pd,   int nstate)
+   {
+      Eina.Log.Debug("function efl_ui_nstate_count_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Nstate)wrapper).SetCount( nstate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_nstate_count_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  nstate);
+      }
+   }
+   private static efl_ui_nstate_count_set_delegate efl_ui_nstate_count_set_static_delegate;
+
+
+    private delegate  int efl_ui_nstate_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_nstate_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_nstate_value_get_api_delegate> efl_ui_nstate_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_nstate_value_get_api_delegate>(_Module, "efl_ui_nstate_value_get");
+    private static  int value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_nstate_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Nstate)wrapper).GetValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_nstate_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_nstate_value_get_delegate efl_ui_nstate_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_nstate_value_set_delegate(System.IntPtr obj, System.IntPtr pd,    int state);
+
+
+    public delegate  void efl_ui_nstate_value_set_api_delegate(System.IntPtr obj,    int state);
+    public static Efl.Eo.FunctionWrapper<efl_ui_nstate_value_set_api_delegate> efl_ui_nstate_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_nstate_value_set_api_delegate>(_Module, "efl_ui_nstate_value_set");
+    private static  void value_set(System.IntPtr obj, System.IntPtr pd,   int state)
+   {
+      Eina.Log.Debug("function efl_ui_nstate_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Nstate)wrapper).SetValue( state);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_nstate_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  state);
+      }
+   }
+   private static efl_ui_nstate_value_set_delegate efl_ui_nstate_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_nstate_activate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_nstate_activate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_nstate_activate_api_delegate> efl_ui_nstate_activate_ptr = new Efl.Eo.FunctionWrapper<efl_ui_nstate_activate_api_delegate>(_Module, "efl_ui_nstate_activate");
+    private static  void activate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_nstate_activate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Nstate)wrapper).Activate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_nstate_activate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_nstate_activate_delegate efl_ui_nstate_activate_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_pager.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_pager.eo.cs
new file mode 100755 (executable)
index 0000000..421d22d
--- /dev/null
@@ -0,0 +1,1151 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Pager widget
+/// A pager contains many pages in a linear fashion and allows users to scroll through pages. Each page is numbered according to linear order and one of the pages is marked as &apos;current page&apos; and displayed in the middle. The way each page is displayed is defined by <see cref="Efl.Page.Transition"/> object, allowing users to adopt different types of transition. The most common use case of this widget is the home screen of mobile devices.</summary>
+[PagerNativeInherit]
+public class Pager : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Pack,Efl.PackLinear
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.PagerNativeInherit nativeInherit = new Efl.Ui.PagerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Pager))
+            return Efl.Ui.PagerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_pager_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Pager(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_pager_class_get(), typeof(Pager), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Pager(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Pager(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Pager static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Pager(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Set a page transition effect</summary>
+   /// <param name="transition">transition effect</param>
+   /// <returns></returns>
+   virtual public  void SetTransition( Efl.Page.Transition transition) {
+                         Efl.Ui.PagerNativeInherit.efl_ui_pager_transition_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), transition);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set a page indicator</summary>
+   /// <param name="indicator">indicator class</param>
+   /// <returns></returns>
+   virtual public  void SetIndicator( Efl.Page.Indicator indicator) {
+                         Efl.Ui.PagerNativeInherit.efl_ui_pager_indicator_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), indicator);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the current page</summary>
+   /// <returns></returns>
+   virtual public  int GetCurrentPage() {
+       var _ret_var = Efl.Ui.PagerNativeInherit.efl_ui_pager_current_page_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set one page as current page</summary>
+   /// <param name="index"></param>
+   /// <returns></returns>
+   virtual public  void SetCurrentPage(  int index) {
+                         Efl.Ui.PagerNativeInherit.efl_ui_pager_current_page_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Pages can be scrolled back and forth by default. This property allows limiting the direction of scrolling, or blocking scroll gesture at all.</summary>
+   /// <param name="prev"></param>
+   /// <param name="next"></param>
+   /// <returns></returns>
+   virtual public  void GetScrollBlock( out bool prev,  out bool next) {
+                                           Efl.Ui.PagerNativeInherit.efl_ui_pager_scroll_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out prev,  out next);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pages can be scrolled back and forth by default. This property allows limiting the direction of scrolling, or blocking scroll gesture at all.</summary>
+   /// <param name="prev"></param>
+   /// <param name="next"></param>
+   /// <returns></returns>
+   virtual public  void SetScrollBlock( bool prev,  bool next) {
+                                           Efl.Ui.PagerNativeInherit.efl_ui_pager_scroll_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), prev,  next);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pager is not scrolled after it&apos;s scrolled to the end by default. This property gives the option to make a loop through pages.</summary>
+   /// <returns></returns>
+   virtual public Efl.Ui.PagerLoop GetLoopMode() {
+       var _ret_var = Efl.Ui.PagerNativeInherit.efl_ui_pager_loop_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Pager is not scrolled after it&apos;s scrolled to the end by default. This property gives the option to make a loop through pages.</summary>
+   /// <param name="loop"></param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetLoopMode( Efl.Ui.PagerLoop loop) {
+                         var _ret_var = Efl.Ui.PagerNativeInherit.efl_ui_pager_loop_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public Eina.Size2D GetPageSize() {
+       var _ret_var = Efl.Ui.PagerNativeInherit.efl_ui_pager_page_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary></summary>
+   /// <param name="size"></param>
+   /// <returns></returns>
+   virtual public  void SetPageSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Ui.PagerNativeInherit.efl_ui_pager_page_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public  int GetPadding() {
+       var _ret_var = Efl.Ui.PagerNativeInherit.efl_ui_pager_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="padding"></param>
+   /// <returns></returns>
+   virtual public  void SetPadding(  int padding) {
+                         Efl.Ui.PagerNativeInherit.efl_ui_pager_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), padding);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Page transition effect
+/// Page transition is in charge of displaying pages in a specific way and invoked every time page layout needs to be updated.</summary>
+/// <value>transition effect</value>
+   public Efl.Page.Transition Transition {
+      set { SetTransition( value); }
+   }
+   /// <summary>Page indicator
+/// Page indicator, located on the top layer of pager widget, helps users to know the number of pages and the current page&apos;s index without scrolling.</summary>
+/// <value>indicator class</value>
+   public Efl.Page.Indicator Indicator {
+      set { SetIndicator( value); }
+   }
+   /// <summary>One page is selected as the current page and mainly displayed.</summary>
+/// <value></value>
+   public  int CurrentPage {
+      get { return GetCurrentPage(); }
+      set { SetCurrentPage( value); }
+   }
+   /// <summary>Pager is not scrolled after it&apos;s scrolled to the end by default. This property gives the option to make a loop through pages.</summary>
+/// <value></value>
+   public Efl.Ui.PagerLoop LoopMode {
+      get { return GetLoopMode(); }
+      set { SetLoopMode( value); }
+   }
+   /// <summary></summary>
+/// <value></value>
+   public Eina.Size2D PageSize {
+      get { return GetPageSize(); }
+      set { SetPageSize( value); }
+   }
+   /// <summary></summary>
+/// <value></value>
+   public  int Padding {
+      get { return GetPadding(); }
+      set { SetPadding( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Pager.efl_ui_pager_class_get();
+   }
+}
+public class PagerNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_pager_transition_set_static_delegate == null)
+      efl_ui_pager_transition_set_static_delegate = new efl_ui_pager_transition_set_delegate(transition_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_transition_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_transition_set_static_delegate)});
+      if (efl_ui_pager_indicator_set_static_delegate == null)
+      efl_ui_pager_indicator_set_static_delegate = new efl_ui_pager_indicator_set_delegate(indicator_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_indicator_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_indicator_set_static_delegate)});
+      if (efl_ui_pager_current_page_get_static_delegate == null)
+      efl_ui_pager_current_page_get_static_delegate = new efl_ui_pager_current_page_get_delegate(current_page_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_current_page_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_current_page_get_static_delegate)});
+      if (efl_ui_pager_current_page_set_static_delegate == null)
+      efl_ui_pager_current_page_set_static_delegate = new efl_ui_pager_current_page_set_delegate(current_page_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_current_page_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_current_page_set_static_delegate)});
+      if (efl_ui_pager_scroll_block_get_static_delegate == null)
+      efl_ui_pager_scroll_block_get_static_delegate = new efl_ui_pager_scroll_block_get_delegate(scroll_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_scroll_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_scroll_block_get_static_delegate)});
+      if (efl_ui_pager_scroll_block_set_static_delegate == null)
+      efl_ui_pager_scroll_block_set_static_delegate = new efl_ui_pager_scroll_block_set_delegate(scroll_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_scroll_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_scroll_block_set_static_delegate)});
+      if (efl_ui_pager_loop_mode_get_static_delegate == null)
+      efl_ui_pager_loop_mode_get_static_delegate = new efl_ui_pager_loop_mode_get_delegate(loop_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_loop_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_loop_mode_get_static_delegate)});
+      if (efl_ui_pager_loop_mode_set_static_delegate == null)
+      efl_ui_pager_loop_mode_set_static_delegate = new efl_ui_pager_loop_mode_set_delegate(loop_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_loop_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_loop_mode_set_static_delegate)});
+      if (efl_ui_pager_page_size_get_static_delegate == null)
+      efl_ui_pager_page_size_get_static_delegate = new efl_ui_pager_page_size_get_delegate(page_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_page_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_page_size_get_static_delegate)});
+      if (efl_ui_pager_page_size_set_static_delegate == null)
+      efl_ui_pager_page_size_set_static_delegate = new efl_ui_pager_page_size_set_delegate(page_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_page_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_page_size_set_static_delegate)});
+      if (efl_ui_pager_padding_get_static_delegate == null)
+      efl_ui_pager_padding_get_static_delegate = new efl_ui_pager_padding_get_delegate(padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_padding_get_static_delegate)});
+      if (efl_ui_pager_padding_set_static_delegate == null)
+      efl_ui_pager_padding_set_static_delegate = new efl_ui_pager_padding_set_delegate(padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pager_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pager_padding_set_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Pager.efl_ui_pager_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Pager.efl_ui_pager_class_get();
+   }
+
+
+    private delegate  void efl_ui_pager_transition_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Page.Transition, Efl.Eo.NonOwnTag>))]  Efl.Page.Transition transition);
+
+
+    public delegate  void efl_ui_pager_transition_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Page.Transition, Efl.Eo.NonOwnTag>))]  Efl.Page.Transition transition);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_transition_set_api_delegate> efl_ui_pager_transition_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_transition_set_api_delegate>(_Module, "efl_ui_pager_transition_set");
+    private static  void transition_set(System.IntPtr obj, System.IntPtr pd,  Efl.Page.Transition transition)
+   {
+      Eina.Log.Debug("function efl_ui_pager_transition_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pager)wrapper).SetTransition( transition);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_pager_transition_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  transition);
+      }
+   }
+   private static efl_ui_pager_transition_set_delegate efl_ui_pager_transition_set_static_delegate;
+
+
+    private delegate  void efl_ui_pager_indicator_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Page.Indicator, Efl.Eo.NonOwnTag>))]  Efl.Page.Indicator indicator);
+
+
+    public delegate  void efl_ui_pager_indicator_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Page.Indicator, Efl.Eo.NonOwnTag>))]  Efl.Page.Indicator indicator);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_indicator_set_api_delegate> efl_ui_pager_indicator_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_indicator_set_api_delegate>(_Module, "efl_ui_pager_indicator_set");
+    private static  void indicator_set(System.IntPtr obj, System.IntPtr pd,  Efl.Page.Indicator indicator)
+   {
+      Eina.Log.Debug("function efl_ui_pager_indicator_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pager)wrapper).SetIndicator( indicator);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_pager_indicator_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  indicator);
+      }
+   }
+   private static efl_ui_pager_indicator_set_delegate efl_ui_pager_indicator_set_static_delegate;
+
+
+    private delegate  int efl_ui_pager_current_page_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_pager_current_page_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_current_page_get_api_delegate> efl_ui_pager_current_page_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_current_page_get_api_delegate>(_Module, "efl_ui_pager_current_page_get");
+    private static  int current_page_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pager_current_page_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Pager)wrapper).GetCurrentPage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_pager_current_page_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pager_current_page_get_delegate efl_ui_pager_current_page_get_static_delegate;
+
+
+    private delegate  void efl_ui_pager_current_page_set_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+    public delegate  void efl_ui_pager_current_page_set_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_current_page_set_api_delegate> efl_ui_pager_current_page_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_current_page_set_api_delegate>(_Module, "efl_ui_pager_current_page_set");
+    private static  void current_page_set(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_ui_pager_current_page_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pager)wrapper).SetCurrentPage( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_pager_current_page_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_ui_pager_current_page_set_delegate efl_ui_pager_current_page_set_static_delegate;
+
+
+    private delegate  void efl_ui_pager_scroll_block_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool prev,  [MarshalAs(UnmanagedType.U1)]  out bool next);
+
+
+    public delegate  void efl_ui_pager_scroll_block_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool prev,  [MarshalAs(UnmanagedType.U1)]  out bool next);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_scroll_block_get_api_delegate> efl_ui_pager_scroll_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_scroll_block_get_api_delegate>(_Module, "efl_ui_pager_scroll_block_get");
+    private static  void scroll_block_get(System.IntPtr obj, System.IntPtr pd,  out bool prev,  out bool next)
+   {
+      Eina.Log.Debug("function efl_ui_pager_scroll_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           prev = default(bool);      next = default(bool);                     
+         try {
+            ((Pager)wrapper).GetScrollBlock( out prev,  out next);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_pager_scroll_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out prev,  out next);
+      }
+   }
+   private static efl_ui_pager_scroll_block_get_delegate efl_ui_pager_scroll_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_pager_scroll_block_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool prev,  [MarshalAs(UnmanagedType.U1)]  bool next);
+
+
+    public delegate  void efl_ui_pager_scroll_block_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool prev,  [MarshalAs(UnmanagedType.U1)]  bool next);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_scroll_block_set_api_delegate> efl_ui_pager_scroll_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_scroll_block_set_api_delegate>(_Module, "efl_ui_pager_scroll_block_set");
+    private static  void scroll_block_set(System.IntPtr obj, System.IntPtr pd,  bool prev,  bool next)
+   {
+      Eina.Log.Debug("function efl_ui_pager_scroll_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Pager)wrapper).SetScrollBlock( prev,  next);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_pager_scroll_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  prev,  next);
+      }
+   }
+   private static efl_ui_pager_scroll_block_set_delegate efl_ui_pager_scroll_block_set_static_delegate;
+
+
+    private delegate Efl.Ui.PagerLoop efl_ui_pager_loop_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.PagerLoop efl_ui_pager_loop_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_loop_mode_get_api_delegate> efl_ui_pager_loop_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_loop_mode_get_api_delegate>(_Module, "efl_ui_pager_loop_mode_get");
+    private static Efl.Ui.PagerLoop loop_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pager_loop_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.PagerLoop _ret_var = default(Efl.Ui.PagerLoop);
+         try {
+            _ret_var = ((Pager)wrapper).GetLoopMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_pager_loop_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pager_loop_mode_get_delegate efl_ui_pager_loop_mode_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_pager_loop_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.PagerLoop loop);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_pager_loop_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.PagerLoop loop);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_loop_mode_set_api_delegate> efl_ui_pager_loop_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_loop_mode_set_api_delegate>(_Module, "efl_ui_pager_loop_mode_set");
+    private static bool loop_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.PagerLoop loop)
+   {
+      Eina.Log.Debug("function efl_ui_pager_loop_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).SetLoopMode( loop);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_pager_loop_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop);
+      }
+   }
+   private static efl_ui_pager_loop_mode_set_delegate efl_ui_pager_loop_mode_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_pager_page_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_pager_page_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_page_size_get_api_delegate> efl_ui_pager_page_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_page_size_get_api_delegate>(_Module, "efl_ui_pager_page_size_get");
+    private static Eina.Size2D_StructInternal page_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pager_page_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Pager)wrapper).GetPageSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_pager_page_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pager_page_size_get_delegate efl_ui_pager_page_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_pager_page_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_ui_pager_page_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_page_size_set_api_delegate> efl_ui_pager_page_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_page_size_set_api_delegate>(_Module, "efl_ui_pager_page_size_set");
+    private static  void page_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_ui_pager_page_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Pager)wrapper).SetPageSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_pager_page_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_ui_pager_page_size_set_delegate efl_ui_pager_page_size_set_static_delegate;
+
+
+    private delegate  int efl_ui_pager_padding_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_pager_padding_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_padding_get_api_delegate> efl_ui_pager_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_padding_get_api_delegate>(_Module, "efl_ui_pager_padding_get");
+    private static  int padding_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pager_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Pager)wrapper).GetPadding();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_pager_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pager_padding_get_delegate efl_ui_pager_padding_get_static_delegate;
+
+
+    private delegate  void efl_ui_pager_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,    int padding);
+
+
+    public delegate  void efl_ui_pager_padding_set_api_delegate(System.IntPtr obj,    int padding);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pager_padding_set_api_delegate> efl_ui_pager_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pager_padding_set_api_delegate>(_Module, "efl_ui_pager_padding_set");
+    private static  void padding_set(System.IntPtr obj, System.IntPtr pd,   int padding)
+   {
+      Eina.Log.Debug("function efl_ui_pager_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Pager)wrapper).SetPadding( padding);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_pager_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  padding);
+      }
+   }
+   private static efl_ui_pager_padding_set_delegate efl_ui_pager_padding_set_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((Pager)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Pager)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((Pager)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Pager)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pager)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Pager)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((Pager)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Pager)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Efl ui pager loop mode</summary>
+public enum PagerLoop
+{
+/// <summary></summary>
+Disabled = 0,
+/// <summary></summary>
+Enabled = 1,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_pan.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_pan.eo.cs
new file mode 100755 (executable)
index 0000000..cf10a69
--- /dev/null
@@ -0,0 +1,581 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary pan class</summary>
+[PanNativeInherit]
+public class Pan : Efl.Canvas.Group, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.PanNativeInherit nativeInherit = new Efl.Ui.PanNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Pan))
+            return Efl.Ui.PanNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_pan_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Pan(Efl.Object parent= null
+         ) :
+      base(efl_ui_pan_class_get(), typeof(Pan), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Pan(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Pan(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Pan static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Pan(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Called when pan content changed</summary>
+   public new event EventHandler ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_PAN_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_PAN_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ViewportChangedEvtKey = new object();
+   /// <summary>Called when pan viewport changed</summary>
+   public event EventHandler ViewportChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_PAN_EVENT_VIEWPORT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ViewportChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ViewportChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_PAN_EVENT_VIEWPORT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ViewportChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ViewportChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ViewportChangedEvt.</summary>
+   public void On_ViewportChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ViewportChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ViewportChangedEvt_delegate;
+   private void on_ViewportChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ViewportChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Called when pan position changed</summary>
+   public new event EventHandler PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_PAN_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_PAN_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Content_ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+    event EventHandler<Efl.ContentContentChangedEvt_Args> Efl.Content.ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Content_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Content_ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Content_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Content_ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Content_ContentChangedEvt.</summary>
+   public void On_Efl_Content_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[Efl_Content_ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Content_ContentChangedEvt_delegate;
+   private void on_Efl_Content_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_Efl_Content_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_ViewportChangedEvt_delegate = new Efl.EventCb(on_ViewportChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_Efl_Content_ContentChangedEvt_delegate = new Efl.EventCb(on_Efl_Content_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Position</summary>
+   /// <returns></returns>
+   virtual public Eina.Position2D GetPanPosition() {
+       var _ret_var = Efl.Ui.PanNativeInherit.efl_ui_pan_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Position</summary>
+   /// <param name="position"></param>
+   /// <returns></returns>
+   virtual public  void SetPanPosition( Eina.Position2D position) {
+       var _in_position = Eina.Position2D_StructConversion.ToInternal(position);
+                  Efl.Ui.PanNativeInherit.efl_ui_pan_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_position);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Content size</summary>
+   /// <returns></returns>
+   virtual public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.PanNativeInherit.efl_ui_pan_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The minimal position to scroll</summary>
+   /// <returns></returns>
+   virtual public Eina.Position2D GetPanPositionMin() {
+       var _ret_var = Efl.Ui.PanNativeInherit.efl_ui_pan_position_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The maximal position to scroll</summary>
+   /// <returns></returns>
+   virtual public Eina.Position2D GetPanPositionMax() {
+       var _ret_var = Efl.Ui.PanNativeInherit.efl_ui_pan_position_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Position</summary>
+/// <value></value>
+   public Eina.Position2D PanPosition {
+      get { return GetPanPosition(); }
+      set { SetPanPosition( value); }
+   }
+   /// <summary>Content size</summary>
+/// <value></value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The minimal position to scroll</summary>
+/// <value></value>
+   public Eina.Position2D PanPositionMin {
+      get { return GetPanPositionMin(); }
+   }
+   /// <summary>The maximal position to scroll</summary>
+/// <value></value>
+   public Eina.Position2D PanPositionMax {
+      get { return GetPanPositionMax(); }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Pan.efl_ui_pan_class_get();
+   }
+}
+public class PanNativeInherit : Efl.Canvas.GroupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_pan_position_get_static_delegate == null)
+      efl_ui_pan_position_get_static_delegate = new efl_ui_pan_position_get_delegate(pan_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pan_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pan_position_get_static_delegate)});
+      if (efl_ui_pan_position_set_static_delegate == null)
+      efl_ui_pan_position_set_static_delegate = new efl_ui_pan_position_set_delegate(pan_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pan_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pan_position_set_static_delegate)});
+      if (efl_ui_pan_content_size_get_static_delegate == null)
+      efl_ui_pan_content_size_get_static_delegate = new efl_ui_pan_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pan_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pan_content_size_get_static_delegate)});
+      if (efl_ui_pan_position_min_get_static_delegate == null)
+      efl_ui_pan_position_min_get_static_delegate = new efl_ui_pan_position_min_get_delegate(pan_position_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pan_position_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pan_position_min_get_static_delegate)});
+      if (efl_ui_pan_position_max_get_static_delegate == null)
+      efl_ui_pan_position_max_get_static_delegate = new efl_ui_pan_position_max_get_delegate(pan_position_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_pan_position_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_pan_position_max_get_static_delegate)});
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Pan.efl_ui_pan_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Pan.efl_ui_pan_class_get();
+   }
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_pan_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_pan_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pan_position_get_api_delegate> efl_ui_pan_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pan_position_get_api_delegate>(_Module, "efl_ui_pan_position_get");
+    private static Eina.Position2D_StructInternal pan_position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pan_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Pan)wrapper).GetPanPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_pan_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pan_position_get_delegate efl_ui_pan_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_pan_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal position);
+
+
+    public delegate  void efl_ui_pan_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal position);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pan_position_set_api_delegate> efl_ui_pan_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pan_position_set_api_delegate>(_Module, "efl_ui_pan_position_set");
+    private static  void pan_position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal position)
+   {
+      Eina.Log.Debug("function efl_ui_pan_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_position = Eina.Position2D_StructConversion.ToManaged(position);
+                     
+         try {
+            ((Pan)wrapper).SetPanPosition( _in_position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_pan_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  position);
+      }
+   }
+   private static efl_ui_pan_position_set_delegate efl_ui_pan_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_pan_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_pan_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pan_content_size_get_api_delegate> efl_ui_pan_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pan_content_size_get_api_delegate>(_Module, "efl_ui_pan_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pan_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Pan)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_pan_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pan_content_size_get_delegate efl_ui_pan_content_size_get_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_pan_position_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_pan_position_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pan_position_min_get_api_delegate> efl_ui_pan_position_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pan_position_min_get_api_delegate>(_Module, "efl_ui_pan_position_min_get");
+    private static Eina.Position2D_StructInternal pan_position_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pan_position_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Pan)wrapper).GetPanPositionMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_pan_position_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pan_position_min_get_delegate efl_ui_pan_position_min_get_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_pan_position_max_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_pan_position_max_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_pan_position_max_get_api_delegate> efl_ui_pan_position_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_pan_position_max_get_api_delegate>(_Module, "efl_ui_pan_position_max_get");
+    private static Eina.Position2D_StructInternal pan_position_max_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_pan_position_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Pan)wrapper).GetPanPositionMax();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_pan_position_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_pan_position_max_get_delegate efl_ui_pan_position_max_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Pan)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Pan)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Pan)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_panel.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_panel.eo.cs
new file mode 100755 (executable)
index 0000000..71584b0
--- /dev/null
@@ -0,0 +1,5512 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary panel class</summary>
+[PanelNativeInherit]
+public class Panel : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content,Efl.Ui.Scrollable,Efl.Ui.WidgetFocusManager,Efl.Ui.Focus.Layer,Efl.Ui.Focus.Manager,Efl.Ui.Focus.ManagerSub,Elm.InterfaceScrollable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.PanelNativeInherit nativeInherit = new Efl.Ui.PanelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Panel))
+            return Efl.Ui.PanelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_panel_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Panel(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_panel_class_get(), typeof(Panel), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Panel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Panel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Panel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Panel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ToggledEvtKey = new object();
+   /// <summary>Called when the hidden state was toggled</summary>
+   public event EventHandler ToggledEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_PANEL_EVENT_TOGGLED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ToggledEvt_delegate)) {
+               eventHandlers.AddHandler(ToggledEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_PANEL_EVENT_TOGGLED";
+            if (remove_cpp_event_handler(key, this.evt_ToggledEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ToggledEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ToggledEvt.</summary>
+   public void On_ToggledEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ToggledEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ToggledEvt_delegate;
+   private void on_ToggledEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ToggledEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when content changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_ELM_INTERFACE_SCROLLABLE_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_ELM_INTERFACE_SCROLLABLE_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ToggledEvt_delegate = new Efl.EventCb(on_ToggledEvt_NativeCallback);
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+   }
+   /// <summary>Gets the orientation of the panel.</summary>
+   /// <returns>The panel orientation.</returns>
+   virtual public Efl.Ui.PanelOrient GetOrient() {
+       var _ret_var = Efl.Ui.PanelNativeInherit.efl_ui_panel_orient_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the orientation of the panel
+   /// Sets from where the panel will (dis)appear.</summary>
+   /// <param name="orient">The panel orientation.</param>
+   /// <returns></returns>
+   virtual public  void SetOrient( Efl.Ui.PanelOrient orient) {
+                         Efl.Ui.PanelNativeInherit.efl_ui_panel_orient_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), orient);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the state of the panel.</summary>
+   /// <returns>If <c>true</c>, the panel will run the animation to disappear.</returns>
+   virtual public bool GetHidden() {
+       var _ret_var = Efl.Ui.PanelNativeInherit.efl_ui_panel_hidden_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the state of the panel.</summary>
+   /// <param name="hidden">If <c>true</c>, the panel will run the animation to disappear.</param>
+   /// <returns></returns>
+   virtual public  void SetHidden( bool hidden) {
+                         Efl.Ui.PanelNativeInherit.efl_ui_panel_hidden_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hidden);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the state of the scrollability.</summary>
+   /// <returns>The scrollable state.</returns>
+   virtual public bool GetScrollable() {
+       var _ret_var = Efl.Ui.PanelNativeInherit.efl_ui_panel_scrollable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scrollability of the panel.</summary>
+   /// <param name="scrollable">The scrollable state.</param>
+   /// <returns></returns>
+   virtual public  void SetScrollable( bool scrollable) {
+                         Efl.Ui.PanelNativeInherit.efl_ui_panel_scrollable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scrollable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the size of the scrollable panel.</summary>
+   /// <returns>Size ratio</returns>
+   virtual public double GetScrollableContentSize() {
+       var _ret_var = Efl.Ui.PanelNativeInherit.efl_ui_panel_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the size of the scrollable panel.</summary>
+   /// <param name="ratio">Size ratio</param>
+   /// <returns></returns>
+   virtual public  void SetScrollableContentSize( double ratio) {
+                         Efl.Ui.PanelNativeInherit.efl_ui_panel_scrollable_content_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ratio);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Toggle the hidden state of the panel from code</summary>
+   /// <returns></returns>
+   virtual public  void Toggle() {
+       Efl.Ui.PanelNativeInherit.efl_ui_panel_toggle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   virtual public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Enable property</summary>
+   /// <returns><c>true</c> to set enable the layer <c>false</c> to disable it</returns>
+   virtual public bool GetEnable() {
+       var _ret_var = Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_enable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable property</summary>
+   /// <param name="v"><c>true</c> to set enable the layer <c>false</c> to disable it</param>
+   /// <returns></returns>
+   virtual public  void SetEnable( bool v) {
+                         Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_enable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+   /// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+   /// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+   /// <returns></returns>
+   virtual public  void GetBehaviour( out bool enable_on_visible,  out bool cycle) {
+                                           Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_behaviour_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out enable_on_visible,  out cycle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+   /// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+   /// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+   /// <returns></returns>
+   virtual public  void SetBehaviour( bool enable_on_visible,  bool cycle) {
+                                           Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_behaviour_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable_on_visible,  cycle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   virtual public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void GetGravity( out double x,  out double y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_gravity_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void SetGravity( double x,  double y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_gravity_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching an edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axis. This API will set if it is enabled for the given axis with the boolean parameters for each axis.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void GetBounceAllow( out bool horiz,  out bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_allow_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching an edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axis. This API will set if it is enabled for the given axis with the boolean parameters for each axis.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void SetBounceAllow( bool horiz,  bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_allow_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+   /// <returns><c>true</c> if wheel is disabled, <c>false</c> otherwise</returns>
+   virtual public bool GetWheelDisabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_wheel_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+   /// <param name="disabled"><c>true</c> if wheel is disabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetWheelDisabled( bool disabled) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_wheel_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+   /// 
+   /// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   virtual public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_movement_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+   /// 
+   /// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   virtual public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_movement_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Momentum animator</summary>
+   /// <returns><c>true</c> if disabled, <c>false</c> otherwise</returns>
+   virtual public bool GetMomentumAnimatorDisabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_momentum_animator_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Momentum animator</summary>
+   /// <param name="disabled"><c>true</c> if disabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetMomentumAnimatorDisabled( bool disabled) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_momentum_animator_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Scrollbar visibility policy
+   /// #ELM_SCROLLER_POLICY_AUTO means the scrollbar is made visible if it is needed, and otherwise kept hidden. #ELM_SCROLLER_POLICY_ON turns it on all the time, and #ELM_SCROLLER_POLICY_OFF always keeps it off. This applies respectively for the horizontal and vertical scrollbars.</summary>
+   /// <param name="hbar">Horizontal scrollbar policy</param>
+   /// <param name="vbar">Vertical scrollbar policy</param>
+   /// <returns></returns>
+   virtual public  void GetPolicy( out Elm.Scroller.Policy hbar,  out Elm.Scroller.Policy vbar) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_policy_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy
+   /// #ELM_SCROLLER_POLICY_AUTO means the scrollbar is made visible if it is needed, and otherwise kept hidden. #ELM_SCROLLER_POLICY_ON turns it on all the time, and #ELM_SCROLLER_POLICY_OFF always keeps it off. This applies respectively for the horizontal and vertical scrollbars.</summary>
+   /// <param name="hbar">Horizontal scrollbar policy</param>
+   /// <param name="vbar">Vertical scrollbar policy</param>
+   /// <returns></returns>
+   virtual public  void SetPolicy( Elm.Scroller.Policy hbar,  Elm.Scroller.Policy vbar) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_policy_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Currently visible content region
+   /// This gets the current region in the content object that is visible through the scroller. The region co-ordinates are returned in the <c>x</c>, <c>y</c>, <c>w</c>, <c>h</c> values pointed to.
+   /// 
+   /// Note: All coordinates are relative to the content.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.ShowContentRegion"/>.</summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   virtual public  void GetContentRegion( out  int x,  out  int y,  out  int w,  out  int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_region_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y,  out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Currently visible content region
+   /// This gets the current region in the content object that is visible through the scroller. The region co-ordinates are returned in the <c>x</c>, <c>y</c>, <c>w</c>, <c>h</c> values pointed to.
+   /// 
+   /// Note: All coordinates are relative to the content.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.ShowContentRegion"/>.</summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   virtual public  void SetContentRegion(  int x,   int y,   int w,   int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_region_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+   /// <returns><c>true</c> if events are propagated, <c>false</c> otherwise</returns>
+   virtual public bool GetContentEvents() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_events_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+   /// <param name="repeat_events"><c>true</c> if events are propagated, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetContentEvents( bool repeat_events) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_events_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), repeat_events);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Scroll page size relative to viewport size.
+   /// The scroller is capable of limiting scrolling by the user to &quot;pages&quot;. That is to jump by and only show a &quot;whole page&quot; at a time as if the continuous area of the scroller content is split into page sized pieces. This sets the size of a page relative to the viewport of the scroller. 1.0 is &quot;1 viewport&quot; is size (horizontally or vertically). 0.0 turns it off in that axis. This is mutually exclusive with page size (see <see cref="Elm.InterfaceScrollable.GetPageSize"/> for more information). Likewise 0.5 is &quot;half a viewport&quot;. Sane usable values are normally between 0.0 and 1.0 including 1.0. If you only want 1 axis to be page &quot;limited&quot;, use 0.0 for the other axis.</summary>
+   /// <param name="x">The horizontal page relative size</param>
+   /// <param name="y">The vertical page relative size</param>
+   /// <returns></returns>
+   virtual public  void GetPageSize( out  int x,  out  int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scroll page size relative to viewport size.
+   /// The scroller is capable of limiting scrolling by the user to &quot;pages&quot;. That is to jump by and only show a &quot;whole page&quot; at a time as if the continuous area of the scroller content is split into page sized pieces. This sets the size of a page relative to the viewport of the scroller. 1.0 is &quot;1 viewport&quot; is size (horizontally or vertically). 0.0 turns it off in that axis. This is mutually exclusive with page size (see <see cref="Elm.InterfaceScrollable.GetPageSize"/> for more information). Likewise 0.5 is &quot;half a viewport&quot;. Sane usable values are normally between 0.0 and 1.0 including 1.0. If you only want 1 axis to be page &quot;limited&quot;, use 0.0 for the other axis.</summary>
+   /// <param name="x">The horizontal page relative size</param>
+   /// <param name="y">The vertical page relative size</param>
+   /// <returns></returns>
+   virtual public  void SetPageSize(  int x,   int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bounce animator</summary>
+   /// <returns><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</returns>
+   virtual public bool GetBounceAnimatorDisabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_animator_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Bounce animator</summary>
+   /// <param name="disabled"><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetBounceAnimatorDisabled( bool disabled) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_animator_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Page scroll limit</summary>
+   /// <param name="page_limit_h">Page limit horizontal</param>
+   /// <param name="page_limit_v">Page limit vertical</param>
+   /// <returns></returns>
+   virtual public  void GetPageScrollLimit( out  int page_limit_h,  out  int page_limit_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_scroll_limit_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out page_limit_h,  out page_limit_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Page scroll limit</summary>
+   /// <param name="page_limit_h">Page limit horizontal</param>
+   /// <param name="page_limit_v">Page limit vertical</param>
+   /// <returns></returns>
+   virtual public  void SetPageScrollLimit(  int page_limit_h,   int page_limit_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_scroll_limit_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), page_limit_h,  page_limit_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Page snapping behavior
+   /// When scrolling, if a scroller is paged (see elm_scroller_page_size_set() and elm_scroller_page_relative_set()), the scroller may snap to pages when being scrolled, i.e., even if it had momentum to scroll further, it will stop at the next page boundaries. This is disabled, by default, for both axis. This function will set if it that is enabled or not, for each axis.
+   /// 
+   /// Note: If <c>obj</c> is not set to have pages, nothing will happen after this call.
+   /// 1.8</summary>
+   /// <param name="horiz">Allow snap horizontally</param>
+   /// <param name="vert">Allow snap vertically</param>
+   /// <returns></returns>
+   virtual public  void GetPageSnapAllow( out bool horiz,  out bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_snap_allow_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Page snapping behavior
+   /// When scrolling, if a scroller is paged (see elm_scroller_page_size_set() and elm_scroller_page_relative_set()), the scroller may snap to pages when being scrolled, i.e., even if it had momentum to scroll further, it will stop at the next page boundaries. This is disabled, by default, for both axis. This function will set if it that is enabled or not, for each axis.
+   /// 
+   /// Note: If <c>obj</c> is not set to have pages, nothing will happen after this call.
+   /// 1.8</summary>
+   /// <param name="horiz">Allow snap horizontally</param>
+   /// <param name="vert">Allow snap vertically</param>
+   /// <returns></returns>
+   virtual public  void SetPageSnapAllow( bool horiz,  bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_snap_allow_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pagin property</summary>
+   /// <param name="pagerel_h">Page relation horizontal</param>
+   /// <param name="pagerel_v">Page relation vertical</param>
+   /// <param name="pagesize_h">Page size horizontal</param>
+   /// <param name="pagesize_v">Page size vertical</param>
+   /// <returns></returns>
+   virtual public  void GetPaging( out double pagerel_h,  out double pagerel_v,  out  int pagesize_h,  out  int pagesize_v) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_paging_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pagerel_h,  out pagerel_v,  out pagesize_h,  out pagesize_v);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Pagin property</summary>
+   /// <param name="pagerel_h">Page relation horizontal</param>
+   /// <param name="pagerel_v">Page relation vertical</param>
+   /// <param name="pagesize_h">Page size horizontal</param>
+   /// <param name="pagesize_v">Page size vertical</param>
+   /// <returns></returns>
+   virtual public  void SetPaging( double pagerel_h,  double pagerel_v,   int pagesize_h,   int pagesize_v) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_paging_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pagerel_h,  pagerel_v,  pagesize_h,  pagesize_v);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Single direction scroll configuration
+   /// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+   /// 
+   /// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+   /// 1.8</summary>
+   /// <returns>The single direction scroll policy</returns>
+   virtual public Elm.Scroller.SingleDirection GetSingleDirection() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_single_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Single direction scroll configuration
+   /// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+   /// 
+   /// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+   /// 1.8</summary>
+   /// <param name="single_dir">The single direction scroll policy</param>
+   /// <returns></returns>
+   virtual public  void SetSingleDirection( Elm.Scroller.SingleDirection single_dir) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_single_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), single_dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Step size</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   virtual public  void GetStepSize( out  int x,  out  int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_step_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Step size</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   virtual public  void SetStepSize(  int x,   int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_step_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.
+   /// 1.14</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void GetContentLoop( out bool loop_h,  out bool loop_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_loop_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.
+   /// 1.14</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void SetContentLoop( bool loop_h,  bool loop_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_loop_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the callback to run when the content has been moved up.</summary>
+   /// <param name="scroll_up_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetScrollUpCb( ElmInterfaceScrollableCb scroll_up_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_up_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll_up_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+   /// <param name="hbar_drag_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetHbarDragCb( ElmInterfaceScrollableCb hbar_drag_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hbar_drag_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar_drag_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when dragging of the contents has started.</summary>
+   /// <param name="drag_start_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetDragStartCb( ElmInterfaceScrollableCb drag_start_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_drag_start_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), drag_start_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when scrolling of the contents has started.</summary>
+   /// <param name="scroll_start_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetScrollStartCb( ElmInterfaceScrollableCb scroll_start_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_start_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll_start_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Freeze property</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetFreeze( bool freeze) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_freeze_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>When the viewport is resized, the callback is called.</summary>
+   /// <param name="viewport_resize_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetContentViewportResizeCb( ElmInterfaceScrollableResizeCb viewport_resize_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_viewport_resize_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), viewport_resize_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the content has been moved to the left</summary>
+   /// <param name="scroll_left_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetScrollLeftCb( ElmInterfaceScrollableCb scroll_left_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_left_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll_left_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the vertical scrollbar is pressed.</summary>
+   /// <param name="vbar_press_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetVbarPressCb( ElmInterfaceScrollableCb vbar_press_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_vbar_press_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), vbar_press_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is pressed.</summary>
+   /// <param name="hbar_press_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetHbarPressCb( ElmInterfaceScrollableCb hbar_press_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hbar_press_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar_press_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+   /// <param name="hbar_unpress_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetHbarUnpressCb( ElmInterfaceScrollableCb hbar_unpress_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hbar_unpress_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar_unpress_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when dragging of the contents has stopped.</summary>
+   /// <param name="drag_stop_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetDragStopCb( ElmInterfaceScrollableCb drag_stop_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_drag_stop_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), drag_stop_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when scrolling of the contents has stopped.</summary>
+   /// <param name="scroll_stop_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetScrollStopCb( ElmInterfaceScrollableCb scroll_stop_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_stop_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll_stop_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Extern pan</summary>
+   /// <param name="pan">Pan object</param>
+   /// <returns></returns>
+   virtual public  void SetExternPan( Efl.Canvas.Object pan) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_extern_pan_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pan);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the visible page changes.</summary>
+   /// <param name="page_change_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetPageChangeCb( ElmInterfaceScrollableCb page_change_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_change_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), page_change_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetHold( bool hold) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the scrolling animation has started.</summary>
+   /// <param name="animate_start_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetAnimateStartCb( ElmInterfaceScrollableCb animate_start_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_animate_start_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), animate_start_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the content has been moved down.</summary>
+   /// <param name="scroll_down_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetScrollDownCb( ElmInterfaceScrollableCb scroll_down_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_down_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll_down_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set scroll page size relative to viewport size.</summary>
+   /// <param name="h_pagerel">Page relation horizontal</param>
+   /// <param name="v_pagerel">Page relation vertical</param>
+   /// <returns></returns>
+   virtual public  void SetPageRelative( double h_pagerel,  double v_pagerel) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_relative_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), h_pagerel,  v_pagerel);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the callback to run when the content has been moved.</summary>
+   /// <param name="scroll_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetScrollCb( ElmInterfaceScrollableCb scroll_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the scrolling animation has stopped.</summary>
+   /// <param name="animate_stop_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetAnimateStopCb( ElmInterfaceScrollableCb animate_stop_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_animate_stop_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), animate_stop_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>set the callback to run on minimal limit content</summary>
+   /// <param name="min_limit_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetContentMinLimitCb( ElmInterfaceScrollableMinLimitCb min_limit_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_min_limit_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), min_limit_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the content has been moved to the right.</summary>
+   /// <param name="scroll_right_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetScrollRightCb( ElmInterfaceScrollableCb scroll_right_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_right_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll_right_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Content property</summary>
+   /// <param name="content">Content object</param>
+   /// <returns></returns>
+   virtual public  void SetScrollableContent( Efl.Canvas.Object content) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the left edge of the content has been reached.</summary>
+   /// <param name="edge_left_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetEdgeLeftCb( ElmInterfaceScrollableCb edge_left_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_left_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), edge_left_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+   /// <param name="vbar_drag_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetVbarDragCb( ElmInterfaceScrollableCb vbar_drag_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_vbar_drag_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), vbar_drag_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+   /// <param name="vbar_unpress_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetVbarUnpressCb( ElmInterfaceScrollableCb vbar_unpress_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_vbar_unpress_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), vbar_unpress_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the bottom edge of the content has been reached.</summary>
+   /// <param name="edge_bottom_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetEdgeBottomCb( ElmInterfaceScrollableCb edge_bottom_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_bottom_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), edge_bottom_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the right edge of the content has been reached.</summary>
+   /// <param name="edge_right_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetEdgeRightCb( ElmInterfaceScrollableCb edge_right_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_right_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), edge_right_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the top edge of the content has been reached.</summary>
+   /// <param name="edge_top_cb">The callback</param>
+   /// <returns></returns>
+   virtual public  void SetEdgeTopCb( ElmInterfaceScrollableCb edge_top_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_top_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), edge_top_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Object property</summary>
+   /// <param name="edje_object">Edje object</param>
+   /// <param name="hit_rectangle">Evas object</param>
+   /// <returns></returns>
+   virtual public  void SetObjects( Efl.Canvas.Object edje_object,  Efl.Canvas.Object hit_rectangle) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_objects_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), edje_object,  hit_rectangle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get scroll last page number.
+   /// The page number starts from 0. 0 is the first page. This returns the last page number among the pages.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.GetCurrentPage"/>, <see cref="Elm.InterfaceScrollable.ShowPage"/> and <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   virtual public  void GetLastPage( out  int pagenumber_h,  out  int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_last_page_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pagenumber_h,  out pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get scroll current page number.
+   /// The page number starts from 0. 0 is the first page. Current page means the page which meets the top-left of the viewport. If there are two or more pages in the viewport, it returns the number of the page which meets the top-left of the viewport.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.GetLastPage"/>, <see cref="Elm.InterfaceScrollable.ShowPage"/> and <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   virtual public  void GetCurrentPage( out  int pagenumber_h,  out  int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_current_page_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pagenumber_h,  out pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Content viewport geometry</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <param name="w">Width</param>
+   /// <param name="h">Height</param>
+   /// <returns></returns>
+   virtual public  void GetContentViewportGeometry( out  int x,  out  int y,  out  int w,  out  int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_viewport_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y,  out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get the size of the content object
+   /// This gets the size of the content object of the scroller.</summary>
+   /// <param name="w">Width of the content object.</param>
+   /// <param name="h">Height of the content object.</param>
+   /// <returns></returns>
+   virtual public  void GetContentSize( out  int w,  out  int h) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Whether scrolling should loop around.</summary>
+   /// <returns>True to enable looping.</returns>
+   virtual public bool GetItemLoopEnabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_item_loop_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether scrolling should loop around.</summary>
+   /// <param name="enable">True to enable looping.</param>
+   /// <returns></returns>
+   virtual public  void SetItemLoopEnabled( bool enable) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_item_loop_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the content position</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <param name="sig">Send signals to the theme corresponding to the scroll direction, or if an edge was reached.</param>
+   /// <returns></returns>
+   virtual public  void SetContentPos(  int x,   int y,  bool sig) {
+                                                             Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  sig);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Get content position</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   virtual public  void GetContentPos( out  int x,  out  int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Show a specific virtual region within the scroller content object by page number.
+   /// 0, 0 of the indicated page is located at the top-left of the viewport. This will jump to the page directly without animation.
+   /// 
+   /// See <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   virtual public  void ShowPage(  int pagenumber_h,   int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_show_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pagenumber_h,  pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. Unlike elm_scroller_region_show(), this allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.
+   /// 
+   /// See <see cref="Elm.InterfaceScrollable.ShowContentRegion"/></summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   virtual public  void RegionBringIn(  int x,   int y,   int w,   int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_region_bring_in_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Show a specific virtual region within the scroller content object by page number.
+   /// 0, 0 of the indicated page is located at the top-left of the viewport. This will slide to the page with animation.
+   /// 
+   /// <see cref="Elm.InterfaceScrollable.ShowPage"/></summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   virtual public  void PageBringIn(  int pagenumber_h,   int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_bring_in_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pagenumber_h,  pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Show a specific virtual region within the scroller content object
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller.</summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   virtual public  void ShowContentRegion(  int x,   int y,   int w,   int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_region_show_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   virtual public  void ContentMinLimit( bool w,  bool h) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_min_limit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   virtual public  void SetWantedRegion(  int x,   int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_wanted_region_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   virtual public  void CustomPanPosAdjust(  int x,   int y) {
+       var _in_x = Eina.PrimitiveConversion.ManagedToPointerAlloc(x);
+      var _in_y = Eina.PrimitiveConversion.ManagedToPointerAlloc(y);
+                              Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_custom_pan_pos_adjust_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_x,  _in_y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets the orientation of the panel.</summary>
+/// <value>The panel orientation.</value>
+   public Efl.Ui.PanelOrient Orient {
+      get { return GetOrient(); }
+      set { SetOrient( value); }
+   }
+   /// <summary>Gets the state of the panel.</summary>
+/// <value>If <c>true</c>, the panel will run the animation to disappear.</value>
+   public bool Hidden {
+      get { return GetHidden(); }
+      set { SetHidden( value); }
+   }
+   /// <summary>Gets the state of the scrollability.</summary>
+/// <value>The scrollable state.</value>
+   public bool Scrollable {
+      get { return GetScrollable(); }
+      set { SetScrollable( value); }
+   }
+   /// <summary>Gets the size of the scrollable panel.</summary>
+/// <value>Size ratio</value>
+   public double ScrollableContentSize {
+      get { return GetScrollableContentSize(); }
+      set { SetScrollableContentSize( value); }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Enable property</summary>
+/// <value><c>true</c> to set enable the layer <c>false</c> to disable it</value>
+   public bool Enable {
+      get { return GetEnable(); }
+      set { SetEnable( value); }
+   }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+/// <value><c>true</c> if wheel is disabled, <c>false</c> otherwise</value>
+   public bool WheelDisabled {
+      get { return GetWheelDisabled(); }
+      set { SetWheelDisabled( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+/// 
+/// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Momentum animator</summary>
+/// <value><c>true</c> if disabled, <c>false</c> otherwise</value>
+   public bool MomentumAnimatorDisabled {
+      get { return GetMomentumAnimatorDisabled(); }
+      set { SetMomentumAnimatorDisabled( value); }
+   }
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+/// <value><c>true</c> if events are propagated, <c>false</c> otherwise</value>
+   public bool ContentEvents {
+      get { return GetContentEvents(); }
+      set { SetContentEvents( value); }
+   }
+   /// <summary>Bounce animator</summary>
+/// <value><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</value>
+   public bool BounceAnimatorDisabled {
+      get { return GetBounceAnimatorDisabled(); }
+      set { SetBounceAnimatorDisabled( value); }
+   }
+   /// <summary>Single direction scroll configuration
+/// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+/// 
+/// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+/// 1.8</summary>
+/// <value>The single direction scroll policy</value>
+   public Elm.Scroller.SingleDirection SingleDirection {
+      get { return GetSingleDirection(); }
+      set { SetSingleDirection( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved up.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollUpCb {
+      set { SetScrollUpCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb HbarDragCb {
+      set { SetHbarDragCb( value); }
+   }
+   /// <summary>Set the callback to run when dragging of the contents has started.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb DragStartCb {
+      set { SetDragStartCb( value); }
+   }
+   /// <summary>Set the callback to run when scrolling of the contents has started.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollStartCb {
+      set { SetScrollStartCb( value); }
+   }
+   /// <summary>Freeze property</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool Freeze {
+      set { SetFreeze( value); }
+   }
+   /// <summary>When the viewport is resized, the callback is called.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableResizeCb ContentViewportResizeCb {
+      set { SetContentViewportResizeCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved to the left</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollLeftCb {
+      set { SetScrollLeftCb( value); }
+   }
+   /// <summary>Set the callback to run when the vertical scrollbar is pressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb VbarPressCb {
+      set { SetVbarPressCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is pressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb HbarPressCb {
+      set { SetHbarPressCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb HbarUnpressCb {
+      set { SetHbarUnpressCb( value); }
+   }
+   /// <summary>Set the callback to run when dragging of the contents has stopped.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb DragStopCb {
+      set { SetDragStopCb( value); }
+   }
+   /// <summary>Set the callback to run when scrolling of the contents has stopped.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollStopCb {
+      set { SetScrollStopCb( value); }
+   }
+   /// <summary>Extern pan</summary>
+/// <value>Pan object</value>
+   public Efl.Canvas.Object ExternPan {
+      set { SetExternPan( value); }
+   }
+   /// <summary>Set the callback to run when the visible page changes.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb PageChangeCb {
+      set { SetPageChangeCb( value); }
+   }
+   /// <summary>Hold property</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool Hold {
+      set { SetHold( value); }
+   }
+   /// <summary>Set the callback to run when the scrolling animation has started.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb AnimateStartCb {
+      set { SetAnimateStartCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved down.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollDownCb {
+      set { SetScrollDownCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollCb {
+      set { SetScrollCb( value); }
+   }
+   /// <summary>Set the callback to run when the scrolling animation has stopped.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb AnimateStopCb {
+      set { SetAnimateStopCb( value); }
+   }
+   /// <summary>set the callback to run on minimal limit content</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableMinLimitCb ContentMinLimitCb {
+      set { SetContentMinLimitCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved to the right.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollRightCb {
+      set { SetScrollRightCb( value); }
+   }
+   /// <summary>Content property</summary>
+/// <value>Content object</value>
+   public Efl.Canvas.Object ScrollableContent {
+      set { SetScrollableContent( value); }
+   }
+   /// <summary>Set the callback to run when the left edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeLeftCb {
+      set { SetEdgeLeftCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb VbarDragCb {
+      set { SetVbarDragCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb VbarUnpressCb {
+      set { SetVbarUnpressCb( value); }
+   }
+   /// <summary>Set the callback to run when the bottom edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeBottomCb {
+      set { SetEdgeBottomCb( value); }
+   }
+   /// <summary>Set the callback to run when the right edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeRightCb {
+      set { SetEdgeRightCb( value); }
+   }
+   /// <summary>Set the callback to run when the top edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeTopCb {
+      set { SetEdgeTopCb( value); }
+   }
+   /// <summary>Whether scrolling should loop around.</summary>
+/// <value>True to enable looping.</value>
+   public bool ItemLoopEnabled {
+      get { return GetItemLoopEnabled(); }
+      set { SetItemLoopEnabled( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Panel.efl_ui_panel_class_get();
+   }
+}
+public class PanelNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_panel_orient_get_static_delegate == null)
+      efl_ui_panel_orient_get_static_delegate = new efl_ui_panel_orient_get_delegate(orient_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_orient_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_orient_get_static_delegate)});
+      if (efl_ui_panel_orient_set_static_delegate == null)
+      efl_ui_panel_orient_set_static_delegate = new efl_ui_panel_orient_set_delegate(orient_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_orient_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_orient_set_static_delegate)});
+      if (efl_ui_panel_hidden_get_static_delegate == null)
+      efl_ui_panel_hidden_get_static_delegate = new efl_ui_panel_hidden_get_delegate(hidden_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_hidden_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_hidden_get_static_delegate)});
+      if (efl_ui_panel_hidden_set_static_delegate == null)
+      efl_ui_panel_hidden_set_static_delegate = new efl_ui_panel_hidden_set_delegate(hidden_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_hidden_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_hidden_set_static_delegate)});
+      if (efl_ui_panel_scrollable_get_static_delegate == null)
+      efl_ui_panel_scrollable_get_static_delegate = new efl_ui_panel_scrollable_get_delegate(scrollable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_scrollable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_scrollable_get_static_delegate)});
+      if (efl_ui_panel_scrollable_set_static_delegate == null)
+      efl_ui_panel_scrollable_set_static_delegate = new efl_ui_panel_scrollable_set_delegate(scrollable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_scrollable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_scrollable_set_static_delegate)});
+      if (efl_ui_panel_scrollable_content_size_get_static_delegate == null)
+      efl_ui_panel_scrollable_content_size_get_static_delegate = new efl_ui_panel_scrollable_content_size_get_delegate(scrollable_content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_panel_scrollable_content_size_set_static_delegate == null)
+      efl_ui_panel_scrollable_content_size_set_static_delegate = new efl_ui_panel_scrollable_content_size_set_delegate(scrollable_content_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_scrollable_content_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_scrollable_content_size_set_static_delegate)});
+      if (efl_ui_panel_toggle_static_delegate == null)
+      efl_ui_panel_toggle_static_delegate = new efl_ui_panel_toggle_delegate(toggle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panel_toggle"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panel_toggle_static_delegate)});
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_layer_enable_get_static_delegate == null)
+      efl_ui_focus_layer_enable_get_static_delegate = new efl_ui_focus_layer_enable_get_delegate(enable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_enable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_enable_get_static_delegate)});
+      if (efl_ui_focus_layer_enable_set_static_delegate == null)
+      efl_ui_focus_layer_enable_set_static_delegate = new efl_ui_focus_layer_enable_set_delegate(enable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_enable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_enable_set_static_delegate)});
+      if (efl_ui_focus_layer_behaviour_get_static_delegate == null)
+      efl_ui_focus_layer_behaviour_get_static_delegate = new efl_ui_focus_layer_behaviour_get_delegate(behaviour_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_behaviour_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_behaviour_get_static_delegate)});
+      if (efl_ui_focus_layer_behaviour_set_static_delegate == null)
+      efl_ui_focus_layer_behaviour_set_static_delegate = new efl_ui_focus_layer_behaviour_set_delegate(behaviour_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_behaviour_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_behaviour_set_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      if (elm_interface_scrollable_gravity_get_static_delegate == null)
+      elm_interface_scrollable_gravity_get_static_delegate = new elm_interface_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_gravity_get_static_delegate)});
+      if (elm_interface_scrollable_gravity_set_static_delegate == null)
+      elm_interface_scrollable_gravity_set_static_delegate = new elm_interface_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_gravity_set_static_delegate)});
+      if (elm_interface_scrollable_bounce_allow_get_static_delegate == null)
+      elm_interface_scrollable_bounce_allow_get_static_delegate = new elm_interface_scrollable_bounce_allow_get_delegate(bounce_allow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_allow_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_allow_get_static_delegate)});
+      if (elm_interface_scrollable_bounce_allow_set_static_delegate == null)
+      elm_interface_scrollable_bounce_allow_set_static_delegate = new elm_interface_scrollable_bounce_allow_set_delegate(bounce_allow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_allow_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_allow_set_static_delegate)});
+      if (elm_interface_scrollable_wheel_disabled_get_static_delegate == null)
+      elm_interface_scrollable_wheel_disabled_get_static_delegate = new elm_interface_scrollable_wheel_disabled_get_delegate(wheel_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_wheel_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_wheel_disabled_get_static_delegate)});
+      if (elm_interface_scrollable_wheel_disabled_set_static_delegate == null)
+      elm_interface_scrollable_wheel_disabled_set_static_delegate = new elm_interface_scrollable_wheel_disabled_set_delegate(wheel_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_wheel_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_wheel_disabled_set_static_delegate)});
+      if (elm_interface_scrollable_movement_block_get_static_delegate == null)
+      elm_interface_scrollable_movement_block_get_static_delegate = new elm_interface_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_movement_block_get_static_delegate)});
+      if (elm_interface_scrollable_movement_block_set_static_delegate == null)
+      elm_interface_scrollable_movement_block_set_static_delegate = new elm_interface_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_movement_block_set_static_delegate)});
+      if (elm_interface_scrollable_momentum_animator_disabled_get_static_delegate == null)
+      elm_interface_scrollable_momentum_animator_disabled_get_static_delegate = new elm_interface_scrollable_momentum_animator_disabled_get_delegate(momentum_animator_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_momentum_animator_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_momentum_animator_disabled_get_static_delegate)});
+      if (elm_interface_scrollable_momentum_animator_disabled_set_static_delegate == null)
+      elm_interface_scrollable_momentum_animator_disabled_set_static_delegate = new elm_interface_scrollable_momentum_animator_disabled_set_delegate(momentum_animator_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_momentum_animator_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_momentum_animator_disabled_set_static_delegate)});
+      if (elm_interface_scrollable_policy_get_static_delegate == null)
+      elm_interface_scrollable_policy_get_static_delegate = new elm_interface_scrollable_policy_get_delegate(policy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_policy_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_policy_get_static_delegate)});
+      if (elm_interface_scrollable_policy_set_static_delegate == null)
+      elm_interface_scrollable_policy_set_static_delegate = new elm_interface_scrollable_policy_set_delegate(policy_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_policy_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_policy_set_static_delegate)});
+      if (elm_interface_scrollable_content_region_get_static_delegate == null)
+      elm_interface_scrollable_content_region_get_static_delegate = new elm_interface_scrollable_content_region_get_delegate(content_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_region_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_region_get_static_delegate)});
+      if (elm_interface_scrollable_content_region_set_static_delegate == null)
+      elm_interface_scrollable_content_region_set_static_delegate = new elm_interface_scrollable_content_region_set_delegate(content_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_region_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_region_set_static_delegate)});
+      if (elm_interface_scrollable_content_events_get_static_delegate == null)
+      elm_interface_scrollable_content_events_get_static_delegate = new elm_interface_scrollable_content_events_get_delegate(content_events_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_events_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_events_get_static_delegate)});
+      if (elm_interface_scrollable_content_events_set_static_delegate == null)
+      elm_interface_scrollable_content_events_set_static_delegate = new elm_interface_scrollable_content_events_set_delegate(content_events_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_events_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_events_set_static_delegate)});
+      if (elm_interface_scrollable_page_size_get_static_delegate == null)
+      elm_interface_scrollable_page_size_get_static_delegate = new elm_interface_scrollable_page_size_get_delegate(page_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_size_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_size_get_static_delegate)});
+      if (elm_interface_scrollable_page_size_set_static_delegate == null)
+      elm_interface_scrollable_page_size_set_static_delegate = new elm_interface_scrollable_page_size_set_delegate(page_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_size_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_size_set_static_delegate)});
+      if (elm_interface_scrollable_bounce_animator_disabled_get_static_delegate == null)
+      elm_interface_scrollable_bounce_animator_disabled_get_static_delegate = new elm_interface_scrollable_bounce_animator_disabled_get_delegate(bounce_animator_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_animator_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_animator_disabled_get_static_delegate)});
+      if (elm_interface_scrollable_bounce_animator_disabled_set_static_delegate == null)
+      elm_interface_scrollable_bounce_animator_disabled_set_static_delegate = new elm_interface_scrollable_bounce_animator_disabled_set_delegate(bounce_animator_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_animator_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_animator_disabled_set_static_delegate)});
+      if (elm_interface_scrollable_page_scroll_limit_get_static_delegate == null)
+      elm_interface_scrollable_page_scroll_limit_get_static_delegate = new elm_interface_scrollable_page_scroll_limit_get_delegate(page_scroll_limit_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_scroll_limit_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_scroll_limit_get_static_delegate)});
+      if (elm_interface_scrollable_page_scroll_limit_set_static_delegate == null)
+      elm_interface_scrollable_page_scroll_limit_set_static_delegate = new elm_interface_scrollable_page_scroll_limit_set_delegate(page_scroll_limit_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_scroll_limit_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_scroll_limit_set_static_delegate)});
+      if (elm_interface_scrollable_page_snap_allow_get_static_delegate == null)
+      elm_interface_scrollable_page_snap_allow_get_static_delegate = new elm_interface_scrollable_page_snap_allow_get_delegate(page_snap_allow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_snap_allow_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_snap_allow_get_static_delegate)});
+      if (elm_interface_scrollable_page_snap_allow_set_static_delegate == null)
+      elm_interface_scrollable_page_snap_allow_set_static_delegate = new elm_interface_scrollable_page_snap_allow_set_delegate(page_snap_allow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_snap_allow_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_snap_allow_set_static_delegate)});
+      if (elm_interface_scrollable_paging_get_static_delegate == null)
+      elm_interface_scrollable_paging_get_static_delegate = new elm_interface_scrollable_paging_get_delegate(paging_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_paging_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_paging_get_static_delegate)});
+      if (elm_interface_scrollable_paging_set_static_delegate == null)
+      elm_interface_scrollable_paging_set_static_delegate = new elm_interface_scrollable_paging_set_delegate(paging_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_paging_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_paging_set_static_delegate)});
+      if (elm_interface_scrollable_single_direction_get_static_delegate == null)
+      elm_interface_scrollable_single_direction_get_static_delegate = new elm_interface_scrollable_single_direction_get_delegate(single_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_single_direction_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_single_direction_get_static_delegate)});
+      if (elm_interface_scrollable_single_direction_set_static_delegate == null)
+      elm_interface_scrollable_single_direction_set_static_delegate = new elm_interface_scrollable_single_direction_set_delegate(single_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_single_direction_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_single_direction_set_static_delegate)});
+      if (elm_interface_scrollable_step_size_get_static_delegate == null)
+      elm_interface_scrollable_step_size_get_static_delegate = new elm_interface_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_step_size_get_static_delegate)});
+      if (elm_interface_scrollable_step_size_set_static_delegate == null)
+      elm_interface_scrollable_step_size_set_static_delegate = new elm_interface_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_step_size_set_static_delegate)});
+      if (elm_interface_scrollable_content_loop_get_static_delegate == null)
+      elm_interface_scrollable_content_loop_get_static_delegate = new elm_interface_scrollable_content_loop_get_delegate(content_loop_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_loop_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_loop_get_static_delegate)});
+      if (elm_interface_scrollable_content_loop_set_static_delegate == null)
+      elm_interface_scrollable_content_loop_set_static_delegate = new elm_interface_scrollable_content_loop_set_delegate(content_loop_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_loop_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_loop_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_up_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_up_cb_set_static_delegate = new elm_interface_scrollable_scroll_up_cb_set_delegate(scroll_up_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_up_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_up_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hbar_drag_cb_set_static_delegate == null)
+      elm_interface_scrollable_hbar_drag_cb_set_static_delegate = new elm_interface_scrollable_hbar_drag_cb_set_delegate(hbar_drag_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hbar_drag_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hbar_drag_cb_set_static_delegate)});
+      if (elm_interface_scrollable_drag_start_cb_set_static_delegate == null)
+      elm_interface_scrollable_drag_start_cb_set_static_delegate = new elm_interface_scrollable_drag_start_cb_set_delegate(drag_start_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_drag_start_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_drag_start_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_start_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_start_cb_set_static_delegate = new elm_interface_scrollable_scroll_start_cb_set_delegate(scroll_start_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_start_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_start_cb_set_static_delegate)});
+      if (elm_interface_scrollable_freeze_set_static_delegate == null)
+      elm_interface_scrollable_freeze_set_static_delegate = new elm_interface_scrollable_freeze_set_delegate(freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_freeze_set_static_delegate)});
+      if (elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate == null)
+      elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate = new elm_interface_scrollable_content_viewport_resize_cb_set_delegate(content_viewport_resize_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_viewport_resize_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_left_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_left_cb_set_static_delegate = new elm_interface_scrollable_scroll_left_cb_set_delegate(scroll_left_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_left_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_left_cb_set_static_delegate)});
+      if (elm_interface_scrollable_vbar_press_cb_set_static_delegate == null)
+      elm_interface_scrollable_vbar_press_cb_set_static_delegate = new elm_interface_scrollable_vbar_press_cb_set_delegate(vbar_press_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_vbar_press_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_vbar_press_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hbar_press_cb_set_static_delegate == null)
+      elm_interface_scrollable_hbar_press_cb_set_static_delegate = new elm_interface_scrollable_hbar_press_cb_set_delegate(hbar_press_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hbar_press_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hbar_press_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hbar_unpress_cb_set_static_delegate == null)
+      elm_interface_scrollable_hbar_unpress_cb_set_static_delegate = new elm_interface_scrollable_hbar_unpress_cb_set_delegate(hbar_unpress_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hbar_unpress_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hbar_unpress_cb_set_static_delegate)});
+      if (elm_interface_scrollable_drag_stop_cb_set_static_delegate == null)
+      elm_interface_scrollable_drag_stop_cb_set_static_delegate = new elm_interface_scrollable_drag_stop_cb_set_delegate(drag_stop_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_drag_stop_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_drag_stop_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_stop_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_stop_cb_set_static_delegate = new elm_interface_scrollable_scroll_stop_cb_set_delegate(scroll_stop_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_stop_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_stop_cb_set_static_delegate)});
+      if (elm_interface_scrollable_extern_pan_set_static_delegate == null)
+      elm_interface_scrollable_extern_pan_set_static_delegate = new elm_interface_scrollable_extern_pan_set_delegate(extern_pan_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_extern_pan_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_extern_pan_set_static_delegate)});
+      if (elm_interface_scrollable_page_change_cb_set_static_delegate == null)
+      elm_interface_scrollable_page_change_cb_set_static_delegate = new elm_interface_scrollable_page_change_cb_set_delegate(page_change_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_change_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_change_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hold_set_static_delegate == null)
+      elm_interface_scrollable_hold_set_static_delegate = new elm_interface_scrollable_hold_set_delegate(hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hold_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hold_set_static_delegate)});
+      if (elm_interface_scrollable_animate_start_cb_set_static_delegate == null)
+      elm_interface_scrollable_animate_start_cb_set_static_delegate = new elm_interface_scrollable_animate_start_cb_set_delegate(animate_start_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_animate_start_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_animate_start_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_down_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_down_cb_set_static_delegate = new elm_interface_scrollable_scroll_down_cb_set_delegate(scroll_down_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_down_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_down_cb_set_static_delegate)});
+      if (elm_interface_scrollable_page_relative_set_static_delegate == null)
+      elm_interface_scrollable_page_relative_set_static_delegate = new elm_interface_scrollable_page_relative_set_delegate(page_relative_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_relative_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_relative_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_cb_set_static_delegate = new elm_interface_scrollable_scroll_cb_set_delegate(scroll_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_cb_set_static_delegate)});
+      if (elm_interface_scrollable_animate_stop_cb_set_static_delegate == null)
+      elm_interface_scrollable_animate_stop_cb_set_static_delegate = new elm_interface_scrollable_animate_stop_cb_set_delegate(animate_stop_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_animate_stop_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_animate_stop_cb_set_static_delegate)});
+      if (elm_interface_scrollable_content_min_limit_cb_set_static_delegate == null)
+      elm_interface_scrollable_content_min_limit_cb_set_static_delegate = new elm_interface_scrollable_content_min_limit_cb_set_delegate(content_min_limit_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_min_limit_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_min_limit_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_right_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_right_cb_set_static_delegate = new elm_interface_scrollable_scroll_right_cb_set_delegate(scroll_right_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_right_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_right_cb_set_static_delegate)});
+      if (elm_interface_scrollable_content_set_static_delegate == null)
+      elm_interface_scrollable_content_set_static_delegate = new elm_interface_scrollable_content_set_delegate(scrollable_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_set_static_delegate)});
+      if (elm_interface_scrollable_edge_left_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_left_cb_set_static_delegate = new elm_interface_scrollable_edge_left_cb_set_delegate(edge_left_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_left_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_left_cb_set_static_delegate)});
+      if (elm_interface_scrollable_vbar_drag_cb_set_static_delegate == null)
+      elm_interface_scrollable_vbar_drag_cb_set_static_delegate = new elm_interface_scrollable_vbar_drag_cb_set_delegate(vbar_drag_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_vbar_drag_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_vbar_drag_cb_set_static_delegate)});
+      if (elm_interface_scrollable_vbar_unpress_cb_set_static_delegate == null)
+      elm_interface_scrollable_vbar_unpress_cb_set_static_delegate = new elm_interface_scrollable_vbar_unpress_cb_set_delegate(vbar_unpress_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_vbar_unpress_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_vbar_unpress_cb_set_static_delegate)});
+      if (elm_interface_scrollable_edge_bottom_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_bottom_cb_set_static_delegate = new elm_interface_scrollable_edge_bottom_cb_set_delegate(edge_bottom_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_bottom_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_bottom_cb_set_static_delegate)});
+      if (elm_interface_scrollable_edge_right_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_right_cb_set_static_delegate = new elm_interface_scrollable_edge_right_cb_set_delegate(edge_right_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_right_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_right_cb_set_static_delegate)});
+      if (elm_interface_scrollable_edge_top_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_top_cb_set_static_delegate = new elm_interface_scrollable_edge_top_cb_set_delegate(edge_top_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_top_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_top_cb_set_static_delegate)});
+      if (elm_interface_scrollable_objects_set_static_delegate == null)
+      elm_interface_scrollable_objects_set_static_delegate = new elm_interface_scrollable_objects_set_delegate(objects_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_objects_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_objects_set_static_delegate)});
+      if (elm_interface_scrollable_last_page_get_static_delegate == null)
+      elm_interface_scrollable_last_page_get_static_delegate = new elm_interface_scrollable_last_page_get_delegate(last_page_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_last_page_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_last_page_get_static_delegate)});
+      if (elm_interface_scrollable_current_page_get_static_delegate == null)
+      elm_interface_scrollable_current_page_get_static_delegate = new elm_interface_scrollable_current_page_get_delegate(current_page_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_current_page_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_current_page_get_static_delegate)});
+      if (elm_interface_scrollable_content_viewport_geometry_get_static_delegate == null)
+      elm_interface_scrollable_content_viewport_geometry_get_static_delegate = new elm_interface_scrollable_content_viewport_geometry_get_delegate(content_viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_viewport_geometry_get_static_delegate)});
+      if (elm_interface_scrollable_content_size_get_static_delegate == null)
+      elm_interface_scrollable_content_size_get_static_delegate = new elm_interface_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_size_get_static_delegate)});
+      if (elm_interface_scrollable_item_loop_enabled_get_static_delegate == null)
+      elm_interface_scrollable_item_loop_enabled_get_static_delegate = new elm_interface_scrollable_item_loop_enabled_get_delegate(item_loop_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_item_loop_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_item_loop_enabled_get_static_delegate)});
+      if (elm_interface_scrollable_item_loop_enabled_set_static_delegate == null)
+      elm_interface_scrollable_item_loop_enabled_set_static_delegate = new elm_interface_scrollable_item_loop_enabled_set_delegate(item_loop_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_item_loop_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_item_loop_enabled_set_static_delegate)});
+      if (elm_interface_scrollable_content_pos_set_static_delegate == null)
+      elm_interface_scrollable_content_pos_set_static_delegate = new elm_interface_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_pos_set_static_delegate)});
+      if (elm_interface_scrollable_content_pos_get_static_delegate == null)
+      elm_interface_scrollable_content_pos_get_static_delegate = new elm_interface_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_pos_get_static_delegate)});
+      if (elm_interface_scrollable_page_show_static_delegate == null)
+      elm_interface_scrollable_page_show_static_delegate = new elm_interface_scrollable_page_show_delegate(page_show);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_show"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_show_static_delegate)});
+      if (elm_interface_scrollable_region_bring_in_static_delegate == null)
+      elm_interface_scrollable_region_bring_in_static_delegate = new elm_interface_scrollable_region_bring_in_delegate(region_bring_in);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_region_bring_in"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_region_bring_in_static_delegate)});
+      if (elm_interface_scrollable_page_bring_in_static_delegate == null)
+      elm_interface_scrollable_page_bring_in_static_delegate = new elm_interface_scrollable_page_bring_in_delegate(page_bring_in);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_bring_in"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_bring_in_static_delegate)});
+      if (elm_interface_scrollable_content_region_show_static_delegate == null)
+      elm_interface_scrollable_content_region_show_static_delegate = new elm_interface_scrollable_content_region_show_delegate(content_region_show);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_region_show"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_region_show_static_delegate)});
+      if (elm_interface_scrollable_content_min_limit_static_delegate == null)
+      elm_interface_scrollable_content_min_limit_static_delegate = new elm_interface_scrollable_content_min_limit_delegate(content_min_limit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_min_limit"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_min_limit_static_delegate)});
+      if (elm_interface_scrollable_wanted_region_set_static_delegate == null)
+      elm_interface_scrollable_wanted_region_set_static_delegate = new elm_interface_scrollable_wanted_region_set_delegate(wanted_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_wanted_region_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_wanted_region_set_static_delegate)});
+      if (elm_interface_scrollable_custom_pan_pos_adjust_static_delegate == null)
+      elm_interface_scrollable_custom_pan_pos_adjust_static_delegate = new elm_interface_scrollable_custom_pan_pos_adjust_delegate(custom_pan_pos_adjust);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_custom_pan_pos_adjust"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_custom_pan_pos_adjust_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Panel.efl_ui_panel_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Panel.efl_ui_panel_class_get();
+   }
+
+
+    private delegate Efl.Ui.PanelOrient efl_ui_panel_orient_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.PanelOrient efl_ui_panel_orient_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_orient_get_api_delegate> efl_ui_panel_orient_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_orient_get_api_delegate>(_Module, "efl_ui_panel_orient_get");
+    private static Efl.Ui.PanelOrient orient_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panel_orient_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.PanelOrient _ret_var = default(Efl.Ui.PanelOrient);
+         try {
+            _ret_var = ((Panel)wrapper).GetOrient();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panel_orient_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panel_orient_get_delegate efl_ui_panel_orient_get_static_delegate;
+
+
+    private delegate  void efl_ui_panel_orient_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.PanelOrient orient);
+
+
+    public delegate  void efl_ui_panel_orient_set_api_delegate(System.IntPtr obj,   Efl.Ui.PanelOrient orient);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_orient_set_api_delegate> efl_ui_panel_orient_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_orient_set_api_delegate>(_Module, "efl_ui_panel_orient_set");
+    private static  void orient_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.PanelOrient orient)
+   {
+      Eina.Log.Debug("function efl_ui_panel_orient_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetOrient( orient);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panel_orient_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  orient);
+      }
+   }
+   private static efl_ui_panel_orient_set_delegate efl_ui_panel_orient_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_panel_hidden_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_panel_hidden_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_hidden_get_api_delegate> efl_ui_panel_hidden_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_hidden_get_api_delegate>(_Module, "efl_ui_panel_hidden_get");
+    private static bool hidden_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panel_hidden_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetHidden();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panel_hidden_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panel_hidden_get_delegate efl_ui_panel_hidden_get_static_delegate;
+
+
+    private delegate  void efl_ui_panel_hidden_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hidden);
+
+
+    public delegate  void efl_ui_panel_hidden_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hidden);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_hidden_set_api_delegate> efl_ui_panel_hidden_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_hidden_set_api_delegate>(_Module, "efl_ui_panel_hidden_set");
+    private static  void hidden_set(System.IntPtr obj, System.IntPtr pd,  bool hidden)
+   {
+      Eina.Log.Debug("function efl_ui_panel_hidden_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetHidden( hidden);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panel_hidden_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hidden);
+      }
+   }
+   private static efl_ui_panel_hidden_set_delegate efl_ui_panel_hidden_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_panel_scrollable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_panel_scrollable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_get_api_delegate> efl_ui_panel_scrollable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_get_api_delegate>(_Module, "efl_ui_panel_scrollable_get");
+    private static bool scrollable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panel_scrollable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetScrollable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panel_scrollable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panel_scrollable_get_delegate efl_ui_panel_scrollable_get_static_delegate;
+
+
+    private delegate  void efl_ui_panel_scrollable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool scrollable);
+
+
+    public delegate  void efl_ui_panel_scrollable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool scrollable);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_set_api_delegate> efl_ui_panel_scrollable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_set_api_delegate>(_Module, "efl_ui_panel_scrollable_set");
+    private static  void scrollable_set(System.IntPtr obj, System.IntPtr pd,  bool scrollable)
+   {
+      Eina.Log.Debug("function efl_ui_panel_scrollable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollable( scrollable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panel_scrollable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scrollable);
+      }
+   }
+   private static efl_ui_panel_scrollable_set_delegate efl_ui_panel_scrollable_set_static_delegate;
+
+
+    private delegate double efl_ui_panel_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_panel_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_content_size_get_api_delegate> efl_ui_panel_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_panel_scrollable_content_size_get");
+    private static double scrollable_content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panel_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Panel)wrapper).GetScrollableContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panel_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panel_scrollable_content_size_get_delegate efl_ui_panel_scrollable_content_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_panel_scrollable_content_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ratio);
+
+
+    public delegate  void efl_ui_panel_scrollable_content_size_set_api_delegate(System.IntPtr obj,   double ratio);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_content_size_set_api_delegate> efl_ui_panel_scrollable_content_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_scrollable_content_size_set_api_delegate>(_Module, "efl_ui_panel_scrollable_content_size_set");
+    private static  void scrollable_content_size_set(System.IntPtr obj, System.IntPtr pd,  double ratio)
+   {
+      Eina.Log.Debug("function efl_ui_panel_scrollable_content_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollableContentSize( ratio);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panel_scrollable_content_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ratio);
+      }
+   }
+   private static efl_ui_panel_scrollable_content_size_set_delegate efl_ui_panel_scrollable_content_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_panel_toggle_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_panel_toggle_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panel_toggle_api_delegate> efl_ui_panel_toggle_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panel_toggle_api_delegate>(_Module, "efl_ui_panel_toggle");
+    private static  void toggle(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panel_toggle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Panel)wrapper).Toggle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_panel_toggle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panel_toggle_delegate efl_ui_panel_toggle_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Panel)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Panel)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Panel)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_layer_enable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_layer_enable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_get_api_delegate> efl_ui_focus_layer_enable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_get_api_delegate>(_Module, "efl_ui_focus_layer_enable_get");
+    private static bool enable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_enable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetEnable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_layer_enable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_layer_enable_get_delegate efl_ui_focus_layer_enable_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_enable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_ui_focus_layer_enable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_set_api_delegate> efl_ui_focus_layer_enable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_set_api_delegate>(_Module, "efl_ui_focus_layer_enable_set");
+    private static  void enable_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_enable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetEnable( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_layer_enable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_ui_focus_layer_enable_set_delegate efl_ui_focus_layer_enable_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_behaviour_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  out bool cycle);
+
+
+    public delegate  void efl_ui_focus_layer_behaviour_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  out bool cycle);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_get_api_delegate> efl_ui_focus_layer_behaviour_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_get_api_delegate>(_Module, "efl_ui_focus_layer_behaviour_get");
+    private static  void behaviour_get(System.IntPtr obj, System.IntPtr pd,  out bool enable_on_visible,  out bool cycle)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_behaviour_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           enable_on_visible = default(bool);      cycle = default(bool);                     
+         try {
+            ((Panel)wrapper).GetBehaviour( out enable_on_visible,  out cycle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_layer_behaviour_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out enable_on_visible,  out cycle);
+      }
+   }
+   private static efl_ui_focus_layer_behaviour_get_delegate efl_ui_focus_layer_behaviour_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_behaviour_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  bool cycle);
+
+
+    public delegate  void efl_ui_focus_layer_behaviour_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  bool cycle);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_set_api_delegate> efl_ui_focus_layer_behaviour_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_set_api_delegate>(_Module, "efl_ui_focus_layer_behaviour_set");
+    private static  void behaviour_set(System.IntPtr obj, System.IntPtr pd,  bool enable_on_visible,  bool cycle)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_behaviour_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetBehaviour( enable_on_visible,  cycle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_layer_behaviour_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable_on_visible,  cycle);
+      }
+   }
+   private static efl_ui_focus_layer_behaviour_set_delegate efl_ui_focus_layer_behaviour_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Panel)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Panel)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Panel)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Panel)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Panel)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Panel)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Panel)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Panel)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((Panel)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((Panel)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Panel)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Panel)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Panel)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Panel)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void elm_interface_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_get_api_delegate> elm_interface_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_get_api_delegate>(_Module, "elm_interface_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Panel)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_gravity_get_delegate elm_interface_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void elm_interface_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_set_api_delegate> elm_interface_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_set_api_delegate>(_Module, "elm_interface_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_gravity_set_delegate elm_interface_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_bounce_allow_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void elm_interface_scrollable_bounce_allow_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_get_api_delegate> elm_interface_scrollable_bounce_allow_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_get_api_delegate>(_Module, "elm_interface_scrollable_bounce_allow_get");
+    private static  void bounce_allow_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_allow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((Panel)wrapper).GetBounceAllow( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_bounce_allow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static elm_interface_scrollable_bounce_allow_get_delegate elm_interface_scrollable_bounce_allow_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_bounce_allow_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void elm_interface_scrollable_bounce_allow_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_set_api_delegate> elm_interface_scrollable_bounce_allow_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_set_api_delegate>(_Module, "elm_interface_scrollable_bounce_allow_set");
+    private static  void bounce_allow_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_allow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetBounceAllow( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_bounce_allow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static elm_interface_scrollable_bounce_allow_set_delegate elm_interface_scrollable_bounce_allow_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_wheel_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_wheel_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_get_api_delegate> elm_interface_scrollable_wheel_disabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_get_api_delegate>(_Module, "elm_interface_scrollable_wheel_disabled_get");
+    private static bool wheel_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_wheel_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetWheelDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_wheel_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_wheel_disabled_get_delegate elm_interface_scrollable_wheel_disabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_wheel_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void elm_interface_scrollable_wheel_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_set_api_delegate> elm_interface_scrollable_wheel_disabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_set_api_delegate>(_Module, "elm_interface_scrollable_wheel_disabled_set");
+    private static  void wheel_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_wheel_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetWheelDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_wheel_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static elm_interface_scrollable_wheel_disabled_set_delegate elm_interface_scrollable_wheel_disabled_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock elm_interface_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock elm_interface_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_get_api_delegate> elm_interface_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_get_api_delegate>(_Module, "elm_interface_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((Panel)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_movement_block_get_delegate elm_interface_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void elm_interface_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_set_api_delegate> elm_interface_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_set_api_delegate>(_Module, "elm_interface_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static elm_interface_scrollable_movement_block_set_delegate elm_interface_scrollable_movement_block_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_momentum_animator_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_momentum_animator_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_get_api_delegate> elm_interface_scrollable_momentum_animator_disabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_get_api_delegate>(_Module, "elm_interface_scrollable_momentum_animator_disabled_get");
+    private static bool momentum_animator_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_momentum_animator_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetMomentumAnimatorDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_momentum_animator_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_momentum_animator_disabled_get_delegate elm_interface_scrollable_momentum_animator_disabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_momentum_animator_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void elm_interface_scrollable_momentum_animator_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_set_api_delegate> elm_interface_scrollable_momentum_animator_disabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_set_api_delegate>(_Module, "elm_interface_scrollable_momentum_animator_disabled_set");
+    private static  void momentum_animator_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_momentum_animator_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetMomentumAnimatorDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_momentum_animator_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static elm_interface_scrollable_momentum_animator_disabled_set_delegate elm_interface_scrollable_momentum_animator_disabled_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_policy_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Elm.Scroller.Policy hbar,   out Elm.Scroller.Policy vbar);
+
+
+    public delegate  void elm_interface_scrollable_policy_get_api_delegate(System.IntPtr obj,   out Elm.Scroller.Policy hbar,   out Elm.Scroller.Policy vbar);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_get_api_delegate> elm_interface_scrollable_policy_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_get_api_delegate>(_Module, "elm_interface_scrollable_policy_get");
+    private static  void policy_get(System.IntPtr obj, System.IntPtr pd,  out Elm.Scroller.Policy hbar,  out Elm.Scroller.Policy vbar)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_policy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Elm.Scroller.Policy);      vbar = default(Elm.Scroller.Policy);                     
+         try {
+            ((Panel)wrapper).GetPolicy( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_policy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static elm_interface_scrollable_policy_get_delegate elm_interface_scrollable_policy_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_policy_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Scroller.Policy hbar,   Elm.Scroller.Policy vbar);
+
+
+    public delegate  void elm_interface_scrollable_policy_set_api_delegate(System.IntPtr obj,   Elm.Scroller.Policy hbar,   Elm.Scroller.Policy vbar);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_set_api_delegate> elm_interface_scrollable_policy_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_set_api_delegate>(_Module, "elm_interface_scrollable_policy_set");
+    private static  void policy_set(System.IntPtr obj, System.IntPtr pd,  Elm.Scroller.Policy hbar,  Elm.Scroller.Policy vbar)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_policy_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetPolicy( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_policy_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static elm_interface_scrollable_policy_set_delegate elm_interface_scrollable_policy_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_region_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y,   out  int w,   out  int h);
+
+
+    public delegate  void elm_interface_scrollable_content_region_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_get_api_delegate> elm_interface_scrollable_content_region_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_get_api_delegate>(_Module, "elm_interface_scrollable_content_region_get");
+    private static  void content_region_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       x = default( int);      y = default( int);      w = default( int);      h = default( int);                                 
+         try {
+            ((Panel)wrapper).GetContentRegion( out x,  out y,  out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y,  out w,  out h);
+      }
+   }
+   private static elm_interface_scrollable_content_region_get_delegate elm_interface_scrollable_content_region_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_region_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,    int w,    int h);
+
+
+    public delegate  void elm_interface_scrollable_content_region_set_api_delegate(System.IntPtr obj,    int x,    int y,    int w,    int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_set_api_delegate> elm_interface_scrollable_content_region_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_set_api_delegate>(_Module, "elm_interface_scrollable_content_region_set");
+    private static  void content_region_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y,   int w,   int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Panel)wrapper).SetContentRegion( x,  y,  w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_content_region_set_delegate elm_interface_scrollable_content_region_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_content_events_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_content_events_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_get_api_delegate> elm_interface_scrollable_content_events_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_get_api_delegate>(_Module, "elm_interface_scrollable_content_events_get");
+    private static bool content_events_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_events_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetContentEvents();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_content_events_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_content_events_get_delegate elm_interface_scrollable_content_events_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_events_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool repeat_events);
+
+
+    public delegate  void elm_interface_scrollable_content_events_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool repeat_events);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_set_api_delegate> elm_interface_scrollable_content_events_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_set_api_delegate>(_Module, "elm_interface_scrollable_content_events_set");
+    private static  void content_events_set(System.IntPtr obj, System.IntPtr pd,  bool repeat_events)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_events_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetContentEvents( repeat_events);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_events_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repeat_events);
+      }
+   }
+   private static elm_interface_scrollable_content_events_set_delegate elm_interface_scrollable_content_events_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void elm_interface_scrollable_page_size_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_get_api_delegate> elm_interface_scrollable_page_size_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_get_api_delegate>(_Module, "elm_interface_scrollable_page_size_get");
+    private static  void page_size_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((Panel)wrapper).GetPageSize( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_page_size_get_delegate elm_interface_scrollable_page_size_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void elm_interface_scrollable_page_size_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_set_api_delegate> elm_interface_scrollable_page_size_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_set_api_delegate>(_Module, "elm_interface_scrollable_page_size_set");
+    private static  void page_size_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetPageSize( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_page_size_set_delegate elm_interface_scrollable_page_size_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_bounce_animator_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_bounce_animator_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_get_api_delegate> elm_interface_scrollable_bounce_animator_disabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_get_api_delegate>(_Module, "elm_interface_scrollable_bounce_animator_disabled_get");
+    private static bool bounce_animator_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_animator_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetBounceAnimatorDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_bounce_animator_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_bounce_animator_disabled_get_delegate elm_interface_scrollable_bounce_animator_disabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_bounce_animator_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void elm_interface_scrollable_bounce_animator_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_set_api_delegate> elm_interface_scrollable_bounce_animator_disabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_set_api_delegate>(_Module, "elm_interface_scrollable_bounce_animator_disabled_set");
+    private static  void bounce_animator_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_animator_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetBounceAnimatorDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_bounce_animator_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static elm_interface_scrollable_bounce_animator_disabled_set_delegate elm_interface_scrollable_bounce_animator_disabled_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_scroll_limit_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int page_limit_h,   out  int page_limit_v);
+
+
+    public delegate  void elm_interface_scrollable_page_scroll_limit_get_api_delegate(System.IntPtr obj,   out  int page_limit_h,   out  int page_limit_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_get_api_delegate> elm_interface_scrollable_page_scroll_limit_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_get_api_delegate>(_Module, "elm_interface_scrollable_page_scroll_limit_get");
+    private static  void page_scroll_limit_get(System.IntPtr obj, System.IntPtr pd,  out  int page_limit_h,  out  int page_limit_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_scroll_limit_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           page_limit_h = default( int);      page_limit_v = default( int);                     
+         try {
+            ((Panel)wrapper).GetPageScrollLimit( out page_limit_h,  out page_limit_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_scroll_limit_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out page_limit_h,  out page_limit_v);
+      }
+   }
+   private static elm_interface_scrollable_page_scroll_limit_get_delegate elm_interface_scrollable_page_scroll_limit_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_scroll_limit_set_delegate(System.IntPtr obj, System.IntPtr pd,    int page_limit_h,    int page_limit_v);
+
+
+    public delegate  void elm_interface_scrollable_page_scroll_limit_set_api_delegate(System.IntPtr obj,    int page_limit_h,    int page_limit_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_set_api_delegate> elm_interface_scrollable_page_scroll_limit_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_set_api_delegate>(_Module, "elm_interface_scrollable_page_scroll_limit_set");
+    private static  void page_scroll_limit_set(System.IntPtr obj, System.IntPtr pd,   int page_limit_h,   int page_limit_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_scroll_limit_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetPageScrollLimit( page_limit_h,  page_limit_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_scroll_limit_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  page_limit_h,  page_limit_v);
+      }
+   }
+   private static elm_interface_scrollable_page_scroll_limit_set_delegate elm_interface_scrollable_page_scroll_limit_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_snap_allow_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void elm_interface_scrollable_page_snap_allow_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_get_api_delegate> elm_interface_scrollable_page_snap_allow_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_get_api_delegate>(_Module, "elm_interface_scrollable_page_snap_allow_get");
+    private static  void page_snap_allow_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_snap_allow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((Panel)wrapper).GetPageSnapAllow( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_snap_allow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static elm_interface_scrollable_page_snap_allow_get_delegate elm_interface_scrollable_page_snap_allow_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_snap_allow_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void elm_interface_scrollable_page_snap_allow_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_set_api_delegate> elm_interface_scrollable_page_snap_allow_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_set_api_delegate>(_Module, "elm_interface_scrollable_page_snap_allow_set");
+    private static  void page_snap_allow_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_snap_allow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetPageSnapAllow( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_snap_allow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static elm_interface_scrollable_page_snap_allow_set_delegate elm_interface_scrollable_page_snap_allow_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_paging_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pagerel_h,   out double pagerel_v,   out  int pagesize_h,   out  int pagesize_v);
+
+
+    public delegate  void elm_interface_scrollable_paging_get_api_delegate(System.IntPtr obj,   out double pagerel_h,   out double pagerel_v,   out  int pagesize_h,   out  int pagesize_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_get_api_delegate> elm_interface_scrollable_paging_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_get_api_delegate>(_Module, "elm_interface_scrollable_paging_get");
+    private static  void paging_get(System.IntPtr obj, System.IntPtr pd,  out double pagerel_h,  out double pagerel_v,  out  int pagesize_h,  out  int pagesize_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_paging_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       pagerel_h = default(double);      pagerel_v = default(double);      pagesize_h = default( int);      pagesize_v = default( int);                                 
+         try {
+            ((Panel)wrapper).GetPaging( out pagerel_h,  out pagerel_v,  out pagesize_h,  out pagesize_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_paging_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pagerel_h,  out pagerel_v,  out pagesize_h,  out pagesize_v);
+      }
+   }
+   private static elm_interface_scrollable_paging_get_delegate elm_interface_scrollable_paging_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_paging_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pagerel_h,   double pagerel_v,    int pagesize_h,    int pagesize_v);
+
+
+    public delegate  void elm_interface_scrollable_paging_set_api_delegate(System.IntPtr obj,   double pagerel_h,   double pagerel_v,    int pagesize_h,    int pagesize_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_set_api_delegate> elm_interface_scrollable_paging_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_set_api_delegate>(_Module, "elm_interface_scrollable_paging_set");
+    private static  void paging_set(System.IntPtr obj, System.IntPtr pd,  double pagerel_h,  double pagerel_v,   int pagesize_h,   int pagesize_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_paging_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Panel)wrapper).SetPaging( pagerel_h,  pagerel_v,  pagesize_h,  pagesize_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_paging_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pagerel_h,  pagerel_v,  pagesize_h,  pagesize_v);
+      }
+   }
+   private static elm_interface_scrollable_paging_set_delegate elm_interface_scrollable_paging_set_static_delegate;
+
+
+    private delegate Elm.Scroller.SingleDirection elm_interface_scrollable_single_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Scroller.SingleDirection elm_interface_scrollable_single_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_get_api_delegate> elm_interface_scrollable_single_direction_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_get_api_delegate>(_Module, "elm_interface_scrollable_single_direction_get");
+    private static Elm.Scroller.SingleDirection single_direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_single_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Scroller.SingleDirection _ret_var = default(Elm.Scroller.SingleDirection);
+         try {
+            _ret_var = ((Panel)wrapper).GetSingleDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_single_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_single_direction_get_delegate elm_interface_scrollable_single_direction_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_single_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Scroller.SingleDirection single_dir);
+
+
+    public delegate  void elm_interface_scrollable_single_direction_set_api_delegate(System.IntPtr obj,   Elm.Scroller.SingleDirection single_dir);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_set_api_delegate> elm_interface_scrollable_single_direction_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_set_api_delegate>(_Module, "elm_interface_scrollable_single_direction_set");
+    private static  void single_direction_set(System.IntPtr obj, System.IntPtr pd,  Elm.Scroller.SingleDirection single_dir)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_single_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetSingleDirection( single_dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_single_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  single_dir);
+      }
+   }
+   private static elm_interface_scrollable_single_direction_set_delegate elm_interface_scrollable_single_direction_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void elm_interface_scrollable_step_size_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_get_api_delegate> elm_interface_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_get_api_delegate>(_Module, "elm_interface_scrollable_step_size_get");
+    private static  void step_size_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((Panel)wrapper).GetStepSize( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_step_size_get_delegate elm_interface_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void elm_interface_scrollable_step_size_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_set_api_delegate> elm_interface_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_set_api_delegate>(_Module, "elm_interface_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetStepSize( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_step_size_set_delegate elm_interface_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_loop_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void elm_interface_scrollable_content_loop_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_get_api_delegate> elm_interface_scrollable_content_loop_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_get_api_delegate>(_Module, "elm_interface_scrollable_content_loop_get");
+    private static  void content_loop_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_loop_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((Panel)wrapper).GetContentLoop( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_loop_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static elm_interface_scrollable_content_loop_get_delegate elm_interface_scrollable_content_loop_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_loop_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void elm_interface_scrollable_content_loop_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_set_api_delegate> elm_interface_scrollable_content_loop_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_set_api_delegate>(_Module, "elm_interface_scrollable_content_loop_set");
+    private static  void content_loop_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_loop_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetContentLoop( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_loop_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static elm_interface_scrollable_content_loop_set_delegate elm_interface_scrollable_content_loop_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_up_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_up_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_up_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_up_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_up_cb_set_api_delegate> elm_interface_scrollable_scroll_up_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_up_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_up_cb_set");
+    private static  void scroll_up_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_up_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_up_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollUpCb( scroll_up_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_up_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_up_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_up_cb_set_delegate elm_interface_scrollable_scroll_up_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hbar_drag_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb hbar_drag_cb);
+
+
+    public delegate  void elm_interface_scrollable_hbar_drag_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb hbar_drag_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_drag_cb_set_api_delegate> elm_interface_scrollable_hbar_drag_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_drag_cb_set_api_delegate>(_Module, "elm_interface_scrollable_hbar_drag_cb_set");
+    private static  void hbar_drag_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb hbar_drag_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hbar_drag_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetHbarDragCb( hbar_drag_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hbar_drag_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar_drag_cb);
+      }
+   }
+   private static elm_interface_scrollable_hbar_drag_cb_set_delegate elm_interface_scrollable_hbar_drag_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_drag_start_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb drag_start_cb);
+
+
+    public delegate  void elm_interface_scrollable_drag_start_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb drag_start_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_start_cb_set_api_delegate> elm_interface_scrollable_drag_start_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_start_cb_set_api_delegate>(_Module, "elm_interface_scrollable_drag_start_cb_set");
+    private static  void drag_start_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb drag_start_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_drag_start_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetDragStartCb( drag_start_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_drag_start_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  drag_start_cb);
+      }
+   }
+   private static elm_interface_scrollable_drag_start_cb_set_delegate elm_interface_scrollable_drag_start_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_start_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_start_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_start_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_start_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_start_cb_set_api_delegate> elm_interface_scrollable_scroll_start_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_start_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_start_cb_set");
+    private static  void scroll_start_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_start_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_start_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollStartCb( scroll_start_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_start_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_start_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_start_cb_set_delegate elm_interface_scrollable_scroll_start_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void elm_interface_scrollable_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_freeze_set_api_delegate> elm_interface_scrollable_freeze_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_freeze_set_api_delegate>(_Module, "elm_interface_scrollable_freeze_set");
+    private static  void freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static elm_interface_scrollable_freeze_set_delegate elm_interface_scrollable_freeze_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_viewport_resize_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableResizeCb viewport_resize_cb);
+
+
+    public delegate  void elm_interface_scrollable_content_viewport_resize_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableResizeCb viewport_resize_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_resize_cb_set_api_delegate> elm_interface_scrollable_content_viewport_resize_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_resize_cb_set_api_delegate>(_Module, "elm_interface_scrollable_content_viewport_resize_cb_set");
+    private static  void content_viewport_resize_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableResizeCb viewport_resize_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_viewport_resize_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetContentViewportResizeCb( viewport_resize_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_viewport_resize_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport_resize_cb);
+      }
+   }
+   private static elm_interface_scrollable_content_viewport_resize_cb_set_delegate elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_left_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_left_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_left_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_left_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_left_cb_set_api_delegate> elm_interface_scrollable_scroll_left_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_left_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_left_cb_set");
+    private static  void scroll_left_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_left_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_left_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollLeftCb( scroll_left_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_left_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_left_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_left_cb_set_delegate elm_interface_scrollable_scroll_left_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_vbar_press_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb vbar_press_cb);
+
+
+    public delegate  void elm_interface_scrollable_vbar_press_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb vbar_press_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_press_cb_set_api_delegate> elm_interface_scrollable_vbar_press_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_press_cb_set_api_delegate>(_Module, "elm_interface_scrollable_vbar_press_cb_set");
+    private static  void vbar_press_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb vbar_press_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_vbar_press_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetVbarPressCb( vbar_press_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_vbar_press_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  vbar_press_cb);
+      }
+   }
+   private static elm_interface_scrollable_vbar_press_cb_set_delegate elm_interface_scrollable_vbar_press_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hbar_press_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb hbar_press_cb);
+
+
+    public delegate  void elm_interface_scrollable_hbar_press_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb hbar_press_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_press_cb_set_api_delegate> elm_interface_scrollable_hbar_press_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_press_cb_set_api_delegate>(_Module, "elm_interface_scrollable_hbar_press_cb_set");
+    private static  void hbar_press_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb hbar_press_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hbar_press_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetHbarPressCb( hbar_press_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hbar_press_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar_press_cb);
+      }
+   }
+   private static elm_interface_scrollable_hbar_press_cb_set_delegate elm_interface_scrollable_hbar_press_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hbar_unpress_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb hbar_unpress_cb);
+
+
+    public delegate  void elm_interface_scrollable_hbar_unpress_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb hbar_unpress_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_unpress_cb_set_api_delegate> elm_interface_scrollable_hbar_unpress_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_unpress_cb_set_api_delegate>(_Module, "elm_interface_scrollable_hbar_unpress_cb_set");
+    private static  void hbar_unpress_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb hbar_unpress_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hbar_unpress_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetHbarUnpressCb( hbar_unpress_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hbar_unpress_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar_unpress_cb);
+      }
+   }
+   private static elm_interface_scrollable_hbar_unpress_cb_set_delegate elm_interface_scrollable_hbar_unpress_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_drag_stop_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb drag_stop_cb);
+
+
+    public delegate  void elm_interface_scrollable_drag_stop_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb drag_stop_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_stop_cb_set_api_delegate> elm_interface_scrollable_drag_stop_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_stop_cb_set_api_delegate>(_Module, "elm_interface_scrollable_drag_stop_cb_set");
+    private static  void drag_stop_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb drag_stop_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_drag_stop_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetDragStopCb( drag_stop_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_drag_stop_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  drag_stop_cb);
+      }
+   }
+   private static elm_interface_scrollable_drag_stop_cb_set_delegate elm_interface_scrollable_drag_stop_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_stop_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_stop_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_stop_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_stop_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_stop_cb_set_api_delegate> elm_interface_scrollable_scroll_stop_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_stop_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_stop_cb_set");
+    private static  void scroll_stop_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_stop_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_stop_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollStopCb( scroll_stop_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_stop_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_stop_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_stop_cb_set_delegate elm_interface_scrollable_scroll_stop_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_extern_pan_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pan);
+
+
+    public delegate  void elm_interface_scrollable_extern_pan_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pan);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_extern_pan_set_api_delegate> elm_interface_scrollable_extern_pan_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_extern_pan_set_api_delegate>(_Module, "elm_interface_scrollable_extern_pan_set");
+    private static  void extern_pan_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object pan)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_extern_pan_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetExternPan( pan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_extern_pan_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pan);
+      }
+   }
+   private static elm_interface_scrollable_extern_pan_set_delegate elm_interface_scrollable_extern_pan_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_change_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb page_change_cb);
+
+
+    public delegate  void elm_interface_scrollable_page_change_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb page_change_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_change_cb_set_api_delegate> elm_interface_scrollable_page_change_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_change_cb_set_api_delegate>(_Module, "elm_interface_scrollable_page_change_cb_set");
+    private static  void page_change_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb page_change_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_change_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetPageChangeCb( page_change_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_page_change_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  page_change_cb);
+      }
+   }
+   private static elm_interface_scrollable_page_change_cb_set_delegate elm_interface_scrollable_page_change_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void elm_interface_scrollable_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hold_set_api_delegate> elm_interface_scrollable_hold_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hold_set_api_delegate>(_Module, "elm_interface_scrollable_hold_set");
+    private static  void hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static elm_interface_scrollable_hold_set_delegate elm_interface_scrollable_hold_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_animate_start_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb animate_start_cb);
+
+
+    public delegate  void elm_interface_scrollable_animate_start_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb animate_start_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_start_cb_set_api_delegate> elm_interface_scrollable_animate_start_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_start_cb_set_api_delegate>(_Module, "elm_interface_scrollable_animate_start_cb_set");
+    private static  void animate_start_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb animate_start_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_animate_start_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetAnimateStartCb( animate_start_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_animate_start_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animate_start_cb);
+      }
+   }
+   private static elm_interface_scrollable_animate_start_cb_set_delegate elm_interface_scrollable_animate_start_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_down_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_down_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_down_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_down_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_down_cb_set_api_delegate> elm_interface_scrollable_scroll_down_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_down_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_down_cb_set");
+    private static  void scroll_down_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_down_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_down_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollDownCb( scroll_down_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_down_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_down_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_down_cb_set_delegate elm_interface_scrollable_scroll_down_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_relative_set_delegate(System.IntPtr obj, System.IntPtr pd,   double h_pagerel,   double v_pagerel);
+
+
+    public delegate  void elm_interface_scrollable_page_relative_set_api_delegate(System.IntPtr obj,   double h_pagerel,   double v_pagerel);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_relative_set_api_delegate> elm_interface_scrollable_page_relative_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_relative_set_api_delegate>(_Module, "elm_interface_scrollable_page_relative_set");
+    private static  void page_relative_set(System.IntPtr obj, System.IntPtr pd,  double h_pagerel,  double v_pagerel)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_relative_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetPageRelative( h_pagerel,  v_pagerel);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_relative_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  h_pagerel,  v_pagerel);
+      }
+   }
+   private static elm_interface_scrollable_page_relative_set_delegate elm_interface_scrollable_page_relative_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_cb_set_api_delegate> elm_interface_scrollable_scroll_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_cb_set");
+    private static  void scroll_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollCb( scroll_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_cb_set_delegate elm_interface_scrollable_scroll_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_animate_stop_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb animate_stop_cb);
+
+
+    public delegate  void elm_interface_scrollable_animate_stop_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb animate_stop_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_stop_cb_set_api_delegate> elm_interface_scrollable_animate_stop_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_stop_cb_set_api_delegate>(_Module, "elm_interface_scrollable_animate_stop_cb_set");
+    private static  void animate_stop_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb animate_stop_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_animate_stop_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetAnimateStopCb( animate_stop_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_animate_stop_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animate_stop_cb);
+      }
+   }
+   private static elm_interface_scrollable_animate_stop_cb_set_delegate elm_interface_scrollable_animate_stop_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_min_limit_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableMinLimitCb min_limit_cb);
+
+
+    public delegate  void elm_interface_scrollable_content_min_limit_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableMinLimitCb min_limit_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_cb_set_api_delegate> elm_interface_scrollable_content_min_limit_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_cb_set_api_delegate>(_Module, "elm_interface_scrollable_content_min_limit_cb_set");
+    private static  void content_min_limit_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableMinLimitCb min_limit_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_min_limit_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetContentMinLimitCb( min_limit_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_min_limit_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min_limit_cb);
+      }
+   }
+   private static elm_interface_scrollable_content_min_limit_cb_set_delegate elm_interface_scrollable_content_min_limit_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_right_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_right_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_right_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_right_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_right_cb_set_api_delegate> elm_interface_scrollable_scroll_right_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_right_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_right_cb_set");
+    private static  void scroll_right_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_right_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_right_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollRightCb( scroll_right_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_right_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_right_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_right_cb_set_delegate elm_interface_scrollable_scroll_right_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void elm_interface_scrollable_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_set_api_delegate> elm_interface_scrollable_content_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_set_api_delegate>(_Module, "elm_interface_scrollable_content_set");
+    private static  void scrollable_content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetScrollableContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static elm_interface_scrollable_content_set_delegate elm_interface_scrollable_content_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_left_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_left_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_left_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_left_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_left_cb_set_api_delegate> elm_interface_scrollable_edge_left_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_left_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_left_cb_set");
+    private static  void edge_left_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_left_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_left_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetEdgeLeftCb( edge_left_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_left_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_left_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_left_cb_set_delegate elm_interface_scrollable_edge_left_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_vbar_drag_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb vbar_drag_cb);
+
+
+    public delegate  void elm_interface_scrollable_vbar_drag_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb vbar_drag_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_drag_cb_set_api_delegate> elm_interface_scrollable_vbar_drag_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_drag_cb_set_api_delegate>(_Module, "elm_interface_scrollable_vbar_drag_cb_set");
+    private static  void vbar_drag_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb vbar_drag_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_vbar_drag_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetVbarDragCb( vbar_drag_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_vbar_drag_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  vbar_drag_cb);
+      }
+   }
+   private static elm_interface_scrollable_vbar_drag_cb_set_delegate elm_interface_scrollable_vbar_drag_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_vbar_unpress_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb vbar_unpress_cb);
+
+
+    public delegate  void elm_interface_scrollable_vbar_unpress_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb vbar_unpress_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_unpress_cb_set_api_delegate> elm_interface_scrollable_vbar_unpress_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_unpress_cb_set_api_delegate>(_Module, "elm_interface_scrollable_vbar_unpress_cb_set");
+    private static  void vbar_unpress_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb vbar_unpress_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_vbar_unpress_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetVbarUnpressCb( vbar_unpress_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_vbar_unpress_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  vbar_unpress_cb);
+      }
+   }
+   private static elm_interface_scrollable_vbar_unpress_cb_set_delegate elm_interface_scrollable_vbar_unpress_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_bottom_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_bottom_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_bottom_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_bottom_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_bottom_cb_set_api_delegate> elm_interface_scrollable_edge_bottom_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_bottom_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_bottom_cb_set");
+    private static  void edge_bottom_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_bottom_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_bottom_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetEdgeBottomCb( edge_bottom_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_bottom_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_bottom_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_bottom_cb_set_delegate elm_interface_scrollable_edge_bottom_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_right_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_right_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_right_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_right_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_right_cb_set_api_delegate> elm_interface_scrollable_edge_right_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_right_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_right_cb_set");
+    private static  void edge_right_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_right_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_right_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetEdgeRightCb( edge_right_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_right_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_right_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_right_cb_set_delegate elm_interface_scrollable_edge_right_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_top_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_top_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_top_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_top_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_top_cb_set_api_delegate> elm_interface_scrollable_edge_top_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_top_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_top_cb_set");
+    private static  void edge_top_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_top_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_top_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetEdgeTopCb( edge_top_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_top_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_top_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_top_cb_set_delegate elm_interface_scrollable_edge_top_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_objects_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object edje_object, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object hit_rectangle);
+
+
+    public delegate  void elm_interface_scrollable_objects_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object edje_object, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object hit_rectangle);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_objects_set_api_delegate> elm_interface_scrollable_objects_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_objects_set_api_delegate>(_Module, "elm_interface_scrollable_objects_set");
+    private static  void objects_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object edje_object,  Efl.Canvas.Object hit_rectangle)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_objects_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetObjects( edje_object,  hit_rectangle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_objects_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edje_object,  hit_rectangle);
+      }
+   }
+   private static elm_interface_scrollable_objects_set_delegate elm_interface_scrollable_objects_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_last_page_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int pagenumber_h,   out  int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_last_page_get_api_delegate(System.IntPtr obj,   out  int pagenumber_h,   out  int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_last_page_get_api_delegate> elm_interface_scrollable_last_page_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_last_page_get_api_delegate>(_Module, "elm_interface_scrollable_last_page_get");
+    private static  void last_page_get(System.IntPtr obj, System.IntPtr pd,  out  int pagenumber_h,  out  int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_last_page_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           pagenumber_h = default( int);      pagenumber_v = default( int);                     
+         try {
+            ((Panel)wrapper).GetLastPage( out pagenumber_h,  out pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_last_page_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pagenumber_h,  out pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_last_page_get_delegate elm_interface_scrollable_last_page_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_current_page_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int pagenumber_h,   out  int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_current_page_get_api_delegate(System.IntPtr obj,   out  int pagenumber_h,   out  int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_current_page_get_api_delegate> elm_interface_scrollable_current_page_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_current_page_get_api_delegate>(_Module, "elm_interface_scrollable_current_page_get");
+    private static  void current_page_get(System.IntPtr obj, System.IntPtr pd,  out  int pagenumber_h,  out  int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_current_page_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           pagenumber_h = default( int);      pagenumber_v = default( int);                     
+         try {
+            ((Panel)wrapper).GetCurrentPage( out pagenumber_h,  out pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_current_page_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pagenumber_h,  out pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_current_page_get_delegate elm_interface_scrollable_current_page_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y,   out  int w,   out  int h);
+
+
+    public delegate  void elm_interface_scrollable_content_viewport_geometry_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_geometry_get_api_delegate> elm_interface_scrollable_content_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_geometry_get_api_delegate>(_Module, "elm_interface_scrollable_content_viewport_geometry_get");
+    private static  void content_viewport_geometry_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       x = default( int);      y = default( int);      w = default( int);      h = default( int);                                 
+         try {
+            ((Panel)wrapper).GetContentViewportGeometry( out x,  out y,  out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y,  out w,  out h);
+      }
+   }
+   private static elm_interface_scrollable_content_viewport_geometry_get_delegate elm_interface_scrollable_content_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int w,   out  int h);
+
+
+    public delegate  void elm_interface_scrollable_content_size_get_api_delegate(System.IntPtr obj,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_size_get_api_delegate> elm_interface_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_size_get_api_delegate>(_Module, "elm_interface_scrollable_content_size_get");
+    private static  void content_size_get(System.IntPtr obj, System.IntPtr pd,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           w = default( int);      h = default( int);                     
+         try {
+            ((Panel)wrapper).GetContentSize( out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out w,  out h);
+      }
+   }
+   private static elm_interface_scrollable_content_size_get_delegate elm_interface_scrollable_content_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_item_loop_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_item_loop_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_get_api_delegate> elm_interface_scrollable_item_loop_enabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_get_api_delegate>(_Module, "elm_interface_scrollable_item_loop_enabled_get");
+    private static bool item_loop_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_item_loop_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panel)wrapper).GetItemLoopEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_item_loop_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_item_loop_enabled_get_delegate elm_interface_scrollable_item_loop_enabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_item_loop_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void elm_interface_scrollable_item_loop_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_set_api_delegate> elm_interface_scrollable_item_loop_enabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_set_api_delegate>(_Module, "elm_interface_scrollable_item_loop_enabled_set");
+    private static  void item_loop_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_item_loop_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panel)wrapper).SetItemLoopEnabled( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_item_loop_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static elm_interface_scrollable_item_loop_enabled_set_delegate elm_interface_scrollable_item_loop_enabled_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool sig);
+
+
+    public delegate  void elm_interface_scrollable_content_pos_set_api_delegate(System.IntPtr obj,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool sig);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_set_api_delegate> elm_interface_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_set_api_delegate>(_Module, "elm_interface_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y,  bool sig)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Panel)wrapper).SetContentPos( x,  y,  sig);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         elm_interface_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  sig);
+      }
+   }
+   private static elm_interface_scrollable_content_pos_set_delegate elm_interface_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void elm_interface_scrollable_content_pos_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_get_api_delegate> elm_interface_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_get_api_delegate>(_Module, "elm_interface_scrollable_content_pos_get");
+    private static  void content_pos_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((Panel)wrapper).GetContentPos( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_content_pos_get_delegate elm_interface_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_show_delegate(System.IntPtr obj, System.IntPtr pd,    int pagenumber_h,    int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_page_show_api_delegate(System.IntPtr obj,    int pagenumber_h,    int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_show_api_delegate> elm_interface_scrollable_page_show_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_show_api_delegate>(_Module, "elm_interface_scrollable_page_show");
+    private static  void page_show(System.IntPtr obj, System.IntPtr pd,   int pagenumber_h,   int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_show was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).ShowPage( pagenumber_h,  pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_show_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pagenumber_h,  pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_page_show_delegate elm_interface_scrollable_page_show_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_region_bring_in_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,    int w,    int h);
+
+
+    public delegate  void elm_interface_scrollable_region_bring_in_api_delegate(System.IntPtr obj,    int x,    int y,    int w,    int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_region_bring_in_api_delegate> elm_interface_scrollable_region_bring_in_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_region_bring_in_api_delegate>(_Module, "elm_interface_scrollable_region_bring_in");
+    private static  void region_bring_in(System.IntPtr obj, System.IntPtr pd,   int x,   int y,   int w,   int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_region_bring_in was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Panel)wrapper).RegionBringIn( x,  y,  w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_region_bring_in_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_region_bring_in_delegate elm_interface_scrollable_region_bring_in_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_bring_in_delegate(System.IntPtr obj, System.IntPtr pd,    int pagenumber_h,    int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_page_bring_in_api_delegate(System.IntPtr obj,    int pagenumber_h,    int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_bring_in_api_delegate> elm_interface_scrollable_page_bring_in_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_bring_in_api_delegate>(_Module, "elm_interface_scrollable_page_bring_in");
+    private static  void page_bring_in(System.IntPtr obj, System.IntPtr pd,   int pagenumber_h,   int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_bring_in was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).PageBringIn( pagenumber_h,  pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_bring_in_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pagenumber_h,  pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_page_bring_in_delegate elm_interface_scrollable_page_bring_in_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_region_show_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,    int w,    int h);
+
+
+    public delegate  void elm_interface_scrollable_content_region_show_api_delegate(System.IntPtr obj,    int x,    int y,    int w,    int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_show_api_delegate> elm_interface_scrollable_content_region_show_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_show_api_delegate>(_Module, "elm_interface_scrollable_content_region_show");
+    private static  void content_region_show(System.IntPtr obj, System.IntPtr pd,   int x,   int y,   int w,   int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_region_show was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Panel)wrapper).ShowContentRegion( x,  y,  w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_region_show_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_content_region_show_delegate elm_interface_scrollable_content_region_show_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_min_limit_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void elm_interface_scrollable_content_min_limit_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_api_delegate> elm_interface_scrollable_content_min_limit_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_api_delegate>(_Module, "elm_interface_scrollable_content_min_limit");
+    private static  void content_min_limit(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_min_limit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).ContentMinLimit( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_min_limit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_content_min_limit_delegate elm_interface_scrollable_content_min_limit_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_wanted_region_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void elm_interface_scrollable_wanted_region_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_wanted_region_set_api_delegate> elm_interface_scrollable_wanted_region_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_wanted_region_set_api_delegate>(_Module, "elm_interface_scrollable_wanted_region_set");
+    private static  void wanted_region_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_wanted_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Panel)wrapper).SetWantedRegion( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_wanted_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_wanted_region_set_delegate elm_interface_scrollable_wanted_region_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_custom_pan_pos_adjust_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr x,    System.IntPtr y);
+
+
+    public delegate  void elm_interface_scrollable_custom_pan_pos_adjust_api_delegate(System.IntPtr obj,    System.IntPtr x,    System.IntPtr y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_custom_pan_pos_adjust_api_delegate> elm_interface_scrollable_custom_pan_pos_adjust_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_custom_pan_pos_adjust_api_delegate>(_Module, "elm_interface_scrollable_custom_pan_pos_adjust");
+    private static  void custom_pan_pos_adjust(System.IntPtr obj, System.IntPtr pd,   System.IntPtr x,   System.IntPtr y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_custom_pan_pos_adjust was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_x = Eina.PrimitiveConversion.PointerToManaged< int>(x);
+      var _in_y = Eina.PrimitiveConversion.PointerToManaged< int>(y);
+                                 
+         try {
+            ((Panel)wrapper).CustomPanPosAdjust( _in_x,  _in_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_custom_pan_pos_adjust_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_custom_pan_pos_adjust_delegate elm_interface_scrollable_custom_pan_pos_adjust_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Panel orientation mode</summary>
+public enum PanelOrient
+{
+/// <summary>Panel (dis)appears from the top</summary>
+Top = 0,
+/// <summary>Panel (dis)appears from the bottom</summary>
+Bottom = 1,
+/// <summary>Panel (dis)appears from the left</summary>
+Left = 2,
+/// <summary>Panel (dis)appears from the right</summary>
+Right = 3,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Panel scroll information</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct PanelScrollInfo
+{
+   /// <summary>content scrolled position (0.0 ~ 1.0) in the panel</summary>
+   public double Rel_x;
+   /// <summary>content scrolled position (0.0 ~ 1.0) in the panel</summary>
+   public double Rel_y;
+   ///<summary>Constructor for PanelScrollInfo.</summary>
+   public PanelScrollInfo(
+      double Rel_x=default(double),
+      double Rel_y=default(double)   )
+   {
+      this.Rel_x = Rel_x;
+      this.Rel_y = Rel_y;
+   }
+public static implicit operator PanelScrollInfo(IntPtr ptr)
+   {
+      var tmp = (PanelScrollInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(PanelScrollInfo_StructInternal));
+      return PanelScrollInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct PanelScrollInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct PanelScrollInfo_StructInternal
+{
+   
+   public double Rel_x;
+   
+   public double Rel_y;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator PanelScrollInfo(PanelScrollInfo_StructInternal struct_)
+   {
+      return PanelScrollInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator PanelScrollInfo_StructInternal(PanelScrollInfo struct_)
+   {
+      return PanelScrollInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct PanelScrollInfo</summary>
+public static class PanelScrollInfo_StructConversion
+{
+   internal static PanelScrollInfo_StructInternal ToInternal(PanelScrollInfo _external_struct)
+   {
+      var _internal_struct = new PanelScrollInfo_StructInternal();
+
+      _internal_struct.Rel_x = _external_struct.Rel_x;
+      _internal_struct.Rel_y = _external_struct.Rel_y;
+
+      return _internal_struct;
+   }
+
+   internal static PanelScrollInfo ToManaged(PanelScrollInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new PanelScrollInfo();
+
+      _external_struct.Rel_x = _internal_struct.Rel_x;
+      _external_struct.Rel_y = _internal_struct.Rel_y;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_panes.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_panes.eo.cs
new file mode 100755 (executable)
index 0000000..d26d054
--- /dev/null
@@ -0,0 +1,824 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary panes class</summary>
+[PanesNativeInherit]
+public class Panes : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Ui.Clickable,Efl.Ui.Direction
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.PanesNativeInherit nativeInherit = new Efl.Ui.PanesNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Panes))
+            return Efl.Ui.PanesNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_panes_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Panes(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_panes_class_get(), typeof(Panes), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Panes(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Panes(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Panes static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Panes(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PressEvtKey = new object();
+   /// <summary>Called when panes got pressed</summary>
+   public event EventHandler PressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_ELM_PANES_EVENT_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PressEvt_delegate)) {
+               eventHandlers.AddHandler(PressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_ELM_PANES_EVENT_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_PressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressEvt.</summary>
+   public void On_PressEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressEvt_delegate;
+   private void on_PressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressEvtKey = new object();
+   /// <summary>Called when panes are no longer pressed</summary>
+   public event EventHandler UnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_ELM_PANES_EVENT_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_UnpressEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_ELM_PANES_EVENT_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_UnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressEvt.</summary>
+   public void On_UnpressEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressEvt_delegate;
+   private void on_UnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PressEvt_delegate = new Efl.EventCb(on_PressEvt_NativeCallback);
+      evt_UnpressEvt_delegate = new Efl.EventCb(on_UnpressEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+   }
+   /// <summary>The second half of the panes widget (right or bottom)</summary>
+   public Efl.Ui.PanesPart Second
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "second");
+         return Efl.Ui.PanesPart.static_cast(obj);
+      }
+   }
+   /// <summary>The first half of the panes widget (left or top)</summary>
+   public Efl.Ui.PanesPart First
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "first");
+         return Efl.Ui.PanesPart.static_cast(obj);
+      }
+   }
+   /// <summary>Set the split ratio between panes widget first and second parts.
+   /// By default it&apos;s homogeneous, i.e., both sides have the same size.
+   /// 
+   /// If something different is required, it can be set with this function. For example, if the first content should be displayed over 75% of the panes size, <c>ratio</c> should be passed as 0.75. This way, second content will be resized to 25% of panes size.
+   /// 
+   /// If displayed vertically, first content is displayed at top, and second content at bottom.
+   /// 
+   /// Note: This ratio will change when user drags the panes bar.</summary>
+   /// <returns>Value between 0.0 and 1.0 representing split ratio between panes first and second parts.</returns>
+   virtual public double GetSplitRatio() {
+       var _ret_var = Efl.Ui.PanesNativeInherit.efl_ui_panes_split_ratio_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the split ratio between panes widget first and second parts.
+   /// By default it&apos;s homogeneous, i.e., both sides have the same size.
+   /// 
+   /// If something different is required, it can be set with this function. For example, if the first content should be displayed over 75% of the panes size, <c>ratio</c> should be passed as 0.75. This way, second content will be resized to 25% of panes size.
+   /// 
+   /// If displayed vertically, first content is displayed at top, and second content at bottom.
+   /// 
+   /// Note: This ratio will change when user drags the panes bar.</summary>
+   /// <param name="ratio">Value between 0.0 and 1.0 representing split ratio between panes first and second parts.</param>
+   /// <returns></returns>
+   virtual public  void SetSplitRatio( double ratio) {
+                         Efl.Ui.PanesNativeInherit.efl_ui_panes_split_ratio_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ratio);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set whether the left and right panes can be resized by user interaction.
+   /// By default panes&apos; contents are resizable by user interaction.</summary>
+   /// <returns>Use <c>true</c> to fix the left and right panes sizes and make them not to be resized by user interaction. Use <c>false</c> to make them resizable.</returns>
+   virtual public bool GetFixed() {
+       var _ret_var = Efl.Ui.PanesNativeInherit.efl_ui_panes_fixed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether the left and right panes can be resized by user interaction.
+   /// By default panes&apos; contents are resizable by user interaction.</summary>
+   /// <param name="kw_fixed">Use <c>true</c> to fix the left and right panes sizes and make them not to be resized by user interaction. Use <c>false</c> to make them resizable.</param>
+   /// <returns></returns>
+   virtual public  void SetFixed( bool kw_fixed) {
+                         Efl.Ui.PanesNativeInherit.efl_ui_panes_fixed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_fixed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the split ratio between panes widget first and second parts.
+/// By default it&apos;s homogeneous, i.e., both sides have the same size.
+/// 
+/// If something different is required, it can be set with this function. For example, if the first content should be displayed over 75% of the panes size, <c>ratio</c> should be passed as 0.75. This way, second content will be resized to 25% of panes size.
+/// 
+/// If displayed vertically, first content is displayed at top, and second content at bottom.
+/// 
+/// Note: This ratio will change when user drags the panes bar.</summary>
+/// <value>Value between 0.0 and 1.0 representing split ratio between panes first and second parts.</value>
+   public double SplitRatio {
+      get { return GetSplitRatio(); }
+      set { SetSplitRatio( value); }
+   }
+   /// <summary>Set whether the left and right panes can be resized by user interaction.
+/// By default panes&apos; contents are resizable by user interaction.</summary>
+/// <value>Use <c>true</c> to fix the left and right panes sizes and make them not to be resized by user interaction. Use <c>false</c> to make them resizable.</value>
+   public bool Fixed {
+      get { return GetFixed(); }
+      set { SetFixed( value); }
+   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Panes.efl_ui_panes_class_get();
+   }
+}
+public class PanesNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_panes_split_ratio_get_static_delegate == null)
+      efl_ui_panes_split_ratio_get_static_delegate = new efl_ui_panes_split_ratio_get_delegate(split_ratio_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_split_ratio_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_split_ratio_get_static_delegate)});
+      if (efl_ui_panes_split_ratio_set_static_delegate == null)
+      efl_ui_panes_split_ratio_set_static_delegate = new efl_ui_panes_split_ratio_set_delegate(split_ratio_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_split_ratio_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_split_ratio_set_static_delegate)});
+      if (efl_ui_panes_fixed_get_static_delegate == null)
+      efl_ui_panes_fixed_get_static_delegate = new efl_ui_panes_fixed_get_delegate(fixed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_fixed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_fixed_get_static_delegate)});
+      if (efl_ui_panes_fixed_set_static_delegate == null)
+      efl_ui_panes_fixed_set_static_delegate = new efl_ui_panes_fixed_set_delegate(fixed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_fixed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_fixed_set_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Panes.efl_ui_panes_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Panes.efl_ui_panes_class_get();
+   }
+
+
+    private delegate double efl_ui_panes_split_ratio_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_panes_split_ratio_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_split_ratio_get_api_delegate> efl_ui_panes_split_ratio_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_split_ratio_get_api_delegate>(_Module, "efl_ui_panes_split_ratio_get");
+    private static double split_ratio_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panes_split_ratio_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Panes)wrapper).GetSplitRatio();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panes_split_ratio_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panes_split_ratio_get_delegate efl_ui_panes_split_ratio_get_static_delegate;
+
+
+    private delegate  void efl_ui_panes_split_ratio_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ratio);
+
+
+    public delegate  void efl_ui_panes_split_ratio_set_api_delegate(System.IntPtr obj,   double ratio);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_split_ratio_set_api_delegate> efl_ui_panes_split_ratio_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_split_ratio_set_api_delegate>(_Module, "efl_ui_panes_split_ratio_set");
+    private static  void split_ratio_set(System.IntPtr obj, System.IntPtr pd,  double ratio)
+   {
+      Eina.Log.Debug("function efl_ui_panes_split_ratio_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panes)wrapper).SetSplitRatio( ratio);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panes_split_ratio_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ratio);
+      }
+   }
+   private static efl_ui_panes_split_ratio_set_delegate efl_ui_panes_split_ratio_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_panes_fixed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_panes_fixed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_fixed_get_api_delegate> efl_ui_panes_fixed_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_fixed_get_api_delegate>(_Module, "efl_ui_panes_fixed_get");
+    private static bool fixed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panes_fixed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Panes)wrapper).GetFixed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panes_fixed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panes_fixed_get_delegate efl_ui_panes_fixed_get_static_delegate;
+
+
+    private delegate  void efl_ui_panes_fixed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool kw_fixed);
+
+
+    public delegate  void efl_ui_panes_fixed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool kw_fixed);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_fixed_set_api_delegate> efl_ui_panes_fixed_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_fixed_set_api_delegate>(_Module, "efl_ui_panes_fixed_set");
+    private static  void fixed_set(System.IntPtr obj, System.IntPtr pd,  bool kw_fixed)
+   {
+      Eina.Log.Debug("function efl_ui_panes_fixed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panes)wrapper).SetFixed( kw_fixed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panes_fixed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_fixed);
+      }
+   }
+   private static efl_ui_panes_fixed_set_delegate efl_ui_panes_fixed_set_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((Panes)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Panes)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_panes_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_panes_part.eo.cs
new file mode 100755 (executable)
index 0000000..61d3a48
--- /dev/null
@@ -0,0 +1,244 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary Panes internal part class</summary>
+[PanesPartNativeInherit]
+public class PanesPart : Efl.Ui.LayoutPartContent, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.PanesPartNativeInherit nativeInherit = new Efl.Ui.PanesPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PanesPart))
+            return Efl.Ui.PanesPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_panes_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public PanesPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_panes_part_class_get(), typeof(PanesPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PanesPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected PanesPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static PanesPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PanesPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Allows the user to set size hints to be respected and ignored combined with a minimum size. If this flag is set, the minimum size set by <see cref="Efl.Gfx.Hint.SetHintSizeMin"/> is respected forcefully.</summary>
+   /// <returns>If <c>true</c> minimum size is forced</returns>
+   virtual public bool GetHintMinAllow() {
+       var _ret_var = Efl.Ui.PanesPartNativeInherit.efl_ui_panes_part_hint_min_allow_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Allows the user to set size hints to be respected and ignored combined with a minimum size. If this flag is set, the minimum size set by <see cref="Efl.Gfx.Hint.SetHintSizeMin"/> is respected forcefully.</summary>
+   /// <param name="allow">If <c>true</c> minimum size is forced</param>
+   /// <returns></returns>
+   virtual public  void SetHintMinAllow( bool allow) {
+                         Efl.Ui.PanesPartNativeInherit.efl_ui_panes_part_hint_min_allow_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), allow);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls the relative minimum size of panes widget&apos;s part.
+   /// If <see cref="Efl.Gfx.Hint.SetHintSizeMin"/> is also used along with <see cref="Efl.Ui.PanesPart.SetSplitRatioMin"/>, maximum value is set as minimum size to part.</summary>
+   /// <returns>Value between 0.0 and 1.0 representing size proportion of first part&apos;s minimum size.</returns>
+   virtual public double GetSplitRatioMin() {
+       var _ret_var = Efl.Ui.PanesPartNativeInherit.efl_ui_panes_part_split_ratio_min_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Controls the relative minimum size of panes widget&apos;s part.
+   /// If <see cref="Efl.Gfx.Hint.SetHintSizeMin"/> is also used along with <see cref="Efl.Ui.PanesPart.SetSplitRatioMin"/>, maximum value is set as minimum size to part.</summary>
+   /// <param name="size">Value between 0.0 and 1.0 representing size proportion of first part&apos;s minimum size.</param>
+   /// <returns></returns>
+   virtual public  void SetSplitRatioMin( double size) {
+                         Efl.Ui.PanesPartNativeInherit.efl_ui_panes_part_split_ratio_min_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Allows the user to set size hints to be respected and ignored combined with a minimum size. If this flag is set, the minimum size set by <see cref="Efl.Gfx.Hint.SetHintSizeMin"/> is respected forcefully.</summary>
+/// <value>If <c>true</c> minimum size is forced</value>
+   public bool HintMinAllow {
+      get { return GetHintMinAllow(); }
+      set { SetHintMinAllow( value); }
+   }
+   /// <summary>Controls the relative minimum size of panes widget&apos;s part.
+/// If <see cref="Efl.Gfx.Hint.SetHintSizeMin"/> is also used along with <see cref="Efl.Ui.PanesPart.SetSplitRatioMin"/>, maximum value is set as minimum size to part.</summary>
+/// <value>Value between 0.0 and 1.0 representing size proportion of first part&apos;s minimum size.</value>
+   public double SplitRatioMin {
+      get { return GetSplitRatioMin(); }
+      set { SetSplitRatioMin( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.PanesPart.efl_ui_panes_part_class_get();
+   }
+}
+public class PanesPartNativeInherit : Efl.Ui.LayoutPartContentNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_panes_part_hint_min_allow_get_static_delegate == null)
+      efl_ui_panes_part_hint_min_allow_get_static_delegate = new efl_ui_panes_part_hint_min_allow_get_delegate(hint_min_allow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_part_hint_min_allow_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_part_hint_min_allow_get_static_delegate)});
+      if (efl_ui_panes_part_hint_min_allow_set_static_delegate == null)
+      efl_ui_panes_part_hint_min_allow_set_static_delegate = new efl_ui_panes_part_hint_min_allow_set_delegate(hint_min_allow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_part_hint_min_allow_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_part_hint_min_allow_set_static_delegate)});
+      if (efl_ui_panes_part_split_ratio_min_get_static_delegate == null)
+      efl_ui_panes_part_split_ratio_min_get_static_delegate = new efl_ui_panes_part_split_ratio_min_get_delegate(split_ratio_min_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_part_split_ratio_min_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_part_split_ratio_min_get_static_delegate)});
+      if (efl_ui_panes_part_split_ratio_min_set_static_delegate == null)
+      efl_ui_panes_part_split_ratio_min_set_static_delegate = new efl_ui_panes_part_split_ratio_min_set_delegate(split_ratio_min_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_panes_part_split_ratio_min_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_panes_part_split_ratio_min_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.PanesPart.efl_ui_panes_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.PanesPart.efl_ui_panes_part_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_panes_part_hint_min_allow_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_panes_part_hint_min_allow_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_part_hint_min_allow_get_api_delegate> efl_ui_panes_part_hint_min_allow_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_part_hint_min_allow_get_api_delegate>(_Module, "efl_ui_panes_part_hint_min_allow_get");
+    private static bool hint_min_allow_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panes_part_hint_min_allow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PanesPart)wrapper).GetHintMinAllow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panes_part_hint_min_allow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panes_part_hint_min_allow_get_delegate efl_ui_panes_part_hint_min_allow_get_static_delegate;
+
+
+    private delegate  void efl_ui_panes_part_hint_min_allow_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool allow);
+
+
+    public delegate  void efl_ui_panes_part_hint_min_allow_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool allow);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_part_hint_min_allow_set_api_delegate> efl_ui_panes_part_hint_min_allow_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_part_hint_min_allow_set_api_delegate>(_Module, "efl_ui_panes_part_hint_min_allow_set");
+    private static  void hint_min_allow_set(System.IntPtr obj, System.IntPtr pd,  bool allow)
+   {
+      Eina.Log.Debug("function efl_ui_panes_part_hint_min_allow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PanesPart)wrapper).SetHintMinAllow( allow);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panes_part_hint_min_allow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  allow);
+      }
+   }
+   private static efl_ui_panes_part_hint_min_allow_set_delegate efl_ui_panes_part_hint_min_allow_set_static_delegate;
+
+
+    private delegate double efl_ui_panes_part_split_ratio_min_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_panes_part_split_ratio_min_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_part_split_ratio_min_get_api_delegate> efl_ui_panes_part_split_ratio_min_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_part_split_ratio_min_get_api_delegate>(_Module, "efl_ui_panes_part_split_ratio_min_get");
+    private static double split_ratio_min_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_panes_part_split_ratio_min_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((PanesPart)wrapper).GetSplitRatioMin();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_panes_part_split_ratio_min_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_panes_part_split_ratio_min_get_delegate efl_ui_panes_part_split_ratio_min_get_static_delegate;
+
+
+    private delegate  void efl_ui_panes_part_split_ratio_min_set_delegate(System.IntPtr obj, System.IntPtr pd,   double size);
+
+
+    public delegate  void efl_ui_panes_part_split_ratio_min_set_api_delegate(System.IntPtr obj,   double size);
+    public static Efl.Eo.FunctionWrapper<efl_ui_panes_part_split_ratio_min_set_api_delegate> efl_ui_panes_part_split_ratio_min_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_panes_part_split_ratio_min_set_api_delegate>(_Module, "efl_ui_panes_part_split_ratio_min_set");
+    private static  void split_ratio_min_set(System.IntPtr obj, System.IntPtr pd,  double size)
+   {
+      Eina.Log.Debug("function efl_ui_panes_part_split_ratio_min_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PanesPart)wrapper).SetSplitRatioMin( size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_panes_part_split_ratio_min_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_ui_panes_part_split_ratio_min_set_delegate efl_ui_panes_part_split_ratio_min_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_popup.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_popup.eo.cs
new file mode 100755 (executable)
index 0000000..f000977
--- /dev/null
@@ -0,0 +1,1736 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>EFL UI popup class</summary>
+[PopupNativeInherit]
+public class Popup : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content,Efl.Ui.WidgetFocusManager,Efl.Ui.Focus.Layer,Efl.Ui.Focus.Manager
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.PopupNativeInherit nativeInherit = new Efl.Ui.PopupNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Popup))
+            return Efl.Ui.PopupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_popup_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Popup(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_popup_class_get(), typeof(Popup), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Popup(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Popup(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Popup static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Popup(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object BackwallClickedEvtKey = new object();
+   /// <summary>This is called whenever the user clicks back wall of popup.</summary>
+   public event EventHandler BackwallClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_POPUP_EVENT_BACKWALL_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_BackwallClickedEvt_delegate)) {
+               eventHandlers.AddHandler(BackwallClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_POPUP_EVENT_BACKWALL_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_BackwallClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BackwallClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BackwallClickedEvt.</summary>
+   public void On_BackwallClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BackwallClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BackwallClickedEvt_delegate;
+   private void on_BackwallClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BackwallClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object TimeoutEvtKey = new object();
+   /// <summary>This is called when popup times out.</summary>
+   public event EventHandler TimeoutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_POPUP_EVENT_TIMEOUT";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_TimeoutEvt_delegate)) {
+               eventHandlers.AddHandler(TimeoutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_POPUP_EVENT_TIMEOUT";
+            if (remove_cpp_event_handler(key, this.evt_TimeoutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(TimeoutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event TimeoutEvt.</summary>
+   public void On_TimeoutEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[TimeoutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_TimeoutEvt_delegate;
+   private void on_TimeoutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_TimeoutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_BackwallClickedEvt_delegate = new Efl.EventCb(on_BackwallClickedEvt_NativeCallback);
+      evt_TimeoutEvt_delegate = new Efl.EventCb(on_TimeoutEvt_NativeCallback);
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>A backwall behind the popup.</summary>
+   public Efl.Ui.PopupPartBackwall Backwall
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "backwall");
+         return Efl.Ui.PopupPartBackwall.static_cast(obj);
+      }
+   }
+   /// <summary>Get the current popup alignment.</summary>
+   /// <returns>Alignment type</returns>
+   virtual public Efl.Ui.PopupAlign GetAlign() {
+       var _ret_var = Efl.Ui.PopupNativeInherit.efl_ui_popup_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the popup alignment.</summary>
+   /// <param name="type">Alignment type</param>
+   /// <returns></returns>
+   virtual public  void SetAlign( Efl.Ui.PopupAlign type) {
+                         Efl.Ui.PopupNativeInherit.efl_ui_popup_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the currently set timeout seconds.</summary>
+   /// <returns>Timeout in seconds</returns>
+   virtual public double GetTimeout() {
+       var _ret_var = Efl.Ui.PopupNativeInherit.efl_ui_popup_timeout_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the timeout seconds. After timeout seconds, popup will be deleted automatically.</summary>
+   /// <param name="time">Timeout in seconds</param>
+   /// <returns></returns>
+   virtual public  void SetTimeout( double time) {
+                         Efl.Ui.PopupNativeInherit.efl_ui_popup_timeout_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), time);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>get the current popup size.</summary>
+   /// <returns></returns>
+   virtual public Eina.Size2D GetPopupSize() {
+       var _ret_var = Efl.Ui.PopupNativeInherit.efl_ui_popup_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Set the popup size.</summary>
+   /// <param name="size"></param>
+   /// <returns></returns>
+   virtual public  void SetPopupSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Ui.PopupNativeInherit.efl_ui_popup_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   virtual public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Enable property</summary>
+   /// <returns><c>true</c> to set enable the layer <c>false</c> to disable it</returns>
+   virtual public bool GetEnable() {
+       var _ret_var = Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_enable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable property</summary>
+   /// <param name="v"><c>true</c> to set enable the layer <c>false</c> to disable it</param>
+   /// <returns></returns>
+   virtual public  void SetEnable( bool v) {
+                         Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_enable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+   /// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+   /// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+   /// <returns></returns>
+   virtual public  void GetBehaviour( out bool enable_on_visible,  out bool cycle) {
+                                           Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_behaviour_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out enable_on_visible,  out cycle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Constructor for setting the behaviour of the layer</summary>
+   /// <param name="enable_on_visible"><c>true</c> means layer will set itself once the inheriting widget becomes visible, <c>false</c> means the layer isn&apos;t enabled automatically</param>
+   /// <param name="cycle">If <c>true</c> the focus will cycle in the layer, if <c>false</c></param>
+   /// <returns></returns>
+   virtual public  void SetBehaviour( bool enable_on_visible,  bool cycle) {
+                                           Efl.Ui.Focus.LayerNativeInherit.efl_ui_focus_layer_behaviour_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable_on_visible,  cycle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   virtual public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the current popup alignment.</summary>
+/// <value>Alignment type</value>
+   public Efl.Ui.PopupAlign Align {
+      get { return GetAlign(); }
+      set { SetAlign( value); }
+   }
+   /// <summary>Get the currently set timeout seconds.</summary>
+/// <value>Timeout in seconds</value>
+   public double Timeout {
+      get { return GetTimeout(); }
+      set { SetTimeout( value); }
+   }
+   /// <summary>get the current popup size.</summary>
+/// <value></value>
+   public Eina.Size2D PopupSize {
+      get { return GetPopupSize(); }
+      set { SetPopupSize( value); }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Enable property</summary>
+/// <value><c>true</c> to set enable the layer <c>false</c> to disable it</value>
+   public bool Enable {
+      get { return GetEnable(); }
+      set { SetEnable( value); }
+   }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Popup.efl_ui_popup_class_get();
+   }
+}
+public class PopupNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_popup_align_get_static_delegate == null)
+      efl_ui_popup_align_get_static_delegate = new efl_ui_popup_align_get_delegate(align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_align_get_static_delegate)});
+      if (efl_ui_popup_align_set_static_delegate == null)
+      efl_ui_popup_align_set_static_delegate = new efl_ui_popup_align_set_delegate(align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_align_set_static_delegate)});
+      if (efl_ui_popup_timeout_get_static_delegate == null)
+      efl_ui_popup_timeout_get_static_delegate = new efl_ui_popup_timeout_get_delegate(timeout_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_timeout_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_timeout_get_static_delegate)});
+      if (efl_ui_popup_timeout_set_static_delegate == null)
+      efl_ui_popup_timeout_set_static_delegate = new efl_ui_popup_timeout_set_delegate(timeout_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_timeout_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_timeout_set_static_delegate)});
+      if (efl_ui_popup_size_get_static_delegate == null)
+      efl_ui_popup_size_get_static_delegate = new efl_ui_popup_size_get_delegate(popup_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_size_get_static_delegate)});
+      if (efl_ui_popup_size_set_static_delegate == null)
+      efl_ui_popup_size_set_static_delegate = new efl_ui_popup_size_set_delegate(popup_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_size_set_static_delegate)});
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_layer_enable_get_static_delegate == null)
+      efl_ui_focus_layer_enable_get_static_delegate = new efl_ui_focus_layer_enable_get_delegate(enable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_enable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_enable_get_static_delegate)});
+      if (efl_ui_focus_layer_enable_set_static_delegate == null)
+      efl_ui_focus_layer_enable_set_static_delegate = new efl_ui_focus_layer_enable_set_delegate(enable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_enable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_enable_set_static_delegate)});
+      if (efl_ui_focus_layer_behaviour_get_static_delegate == null)
+      efl_ui_focus_layer_behaviour_get_static_delegate = new efl_ui_focus_layer_behaviour_get_delegate(behaviour_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_behaviour_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_behaviour_get_static_delegate)});
+      if (efl_ui_focus_layer_behaviour_set_static_delegate == null)
+      efl_ui_focus_layer_behaviour_set_static_delegate = new efl_ui_focus_layer_behaviour_set_delegate(behaviour_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_layer_behaviour_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_layer_behaviour_set_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Popup.efl_ui_popup_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Popup.efl_ui_popup_class_get();
+   }
+
+
+    private delegate Efl.Ui.PopupAlign efl_ui_popup_align_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.PopupAlign efl_ui_popup_align_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_align_get_api_delegate> efl_ui_popup_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_align_get_api_delegate>(_Module, "efl_ui_popup_align_get");
+    private static Efl.Ui.PopupAlign align_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_popup_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.PopupAlign _ret_var = default(Efl.Ui.PopupAlign);
+         try {
+            _ret_var = ((Popup)wrapper).GetAlign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_popup_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_popup_align_get_delegate efl_ui_popup_align_get_static_delegate;
+
+
+    private delegate  void efl_ui_popup_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.PopupAlign type);
+
+
+    public delegate  void efl_ui_popup_align_set_api_delegate(System.IntPtr obj,   Efl.Ui.PopupAlign type);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_align_set_api_delegate> efl_ui_popup_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_align_set_api_delegate>(_Module, "efl_ui_popup_align_set");
+    private static  void align_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.PopupAlign type)
+   {
+      Eina.Log.Debug("function efl_ui_popup_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Popup)wrapper).SetAlign( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_popup_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_ui_popup_align_set_delegate efl_ui_popup_align_set_static_delegate;
+
+
+    private delegate double efl_ui_popup_timeout_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_popup_timeout_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_timeout_get_api_delegate> efl_ui_popup_timeout_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_timeout_get_api_delegate>(_Module, "efl_ui_popup_timeout_get");
+    private static double timeout_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_popup_timeout_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Popup)wrapper).GetTimeout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_popup_timeout_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_popup_timeout_get_delegate efl_ui_popup_timeout_get_static_delegate;
+
+
+    private delegate  void efl_ui_popup_timeout_set_delegate(System.IntPtr obj, System.IntPtr pd,   double time);
+
+
+    public delegate  void efl_ui_popup_timeout_set_api_delegate(System.IntPtr obj,   double time);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_timeout_set_api_delegate> efl_ui_popup_timeout_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_timeout_set_api_delegate>(_Module, "efl_ui_popup_timeout_set");
+    private static  void timeout_set(System.IntPtr obj, System.IntPtr pd,  double time)
+   {
+      Eina.Log.Debug("function efl_ui_popup_timeout_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Popup)wrapper).SetTimeout( time);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_popup_timeout_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  time);
+      }
+   }
+   private static efl_ui_popup_timeout_set_delegate efl_ui_popup_timeout_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_popup_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_popup_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_size_get_api_delegate> efl_ui_popup_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_size_get_api_delegate>(_Module, "efl_ui_popup_size_get");
+    private static Eina.Size2D_StructInternal popup_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_popup_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Popup)wrapper).GetPopupSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_popup_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_popup_size_get_delegate efl_ui_popup_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_popup_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_ui_popup_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_size_set_api_delegate> efl_ui_popup_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_size_set_api_delegate>(_Module, "efl_ui_popup_size_set");
+    private static  void popup_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_ui_popup_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Popup)wrapper).SetPopupSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_popup_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_ui_popup_size_set_delegate efl_ui_popup_size_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Popup)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Popup)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Popup)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Popup)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_layer_enable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_layer_enable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_get_api_delegate> efl_ui_focus_layer_enable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_get_api_delegate>(_Module, "efl_ui_focus_layer_enable_get");
+    private static bool enable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_enable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Popup)wrapper).GetEnable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_layer_enable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_layer_enable_get_delegate efl_ui_focus_layer_enable_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_enable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_ui_focus_layer_enable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_set_api_delegate> efl_ui_focus_layer_enable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_enable_set_api_delegate>(_Module, "efl_ui_focus_layer_enable_set");
+    private static  void enable_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_enable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Popup)wrapper).SetEnable( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_layer_enable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_ui_focus_layer_enable_set_delegate efl_ui_focus_layer_enable_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_behaviour_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  out bool cycle);
+
+
+    public delegate  void efl_ui_focus_layer_behaviour_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  out bool cycle);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_get_api_delegate> efl_ui_focus_layer_behaviour_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_get_api_delegate>(_Module, "efl_ui_focus_layer_behaviour_get");
+    private static  void behaviour_get(System.IntPtr obj, System.IntPtr pd,  out bool enable_on_visible,  out bool cycle)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_behaviour_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           enable_on_visible = default(bool);      cycle = default(bool);                     
+         try {
+            ((Popup)wrapper).GetBehaviour( out enable_on_visible,  out cycle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_layer_behaviour_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out enable_on_visible,  out cycle);
+      }
+   }
+   private static efl_ui_focus_layer_behaviour_get_delegate efl_ui_focus_layer_behaviour_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_layer_behaviour_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  bool cycle);
+
+
+    public delegate  void efl_ui_focus_layer_behaviour_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable_on_visible,  [MarshalAs(UnmanagedType.U1)]  bool cycle);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_set_api_delegate> efl_ui_focus_layer_behaviour_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_layer_behaviour_set_api_delegate>(_Module, "efl_ui_focus_layer_behaviour_set");
+    private static  void behaviour_set(System.IntPtr obj, System.IntPtr pd,  bool enable_on_visible,  bool cycle)
+   {
+      Eina.Log.Debug("function efl_ui_focus_layer_behaviour_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Popup)wrapper).SetBehaviour( enable_on_visible,  cycle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_layer_behaviour_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable_on_visible,  cycle);
+      }
+   }
+   private static efl_ui_focus_layer_behaviour_set_delegate efl_ui_focus_layer_behaviour_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Popup)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Popup)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Popup)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Popup)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Popup)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Popup)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Popup)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Popup)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Popup)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Popup)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Popup)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((Popup)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((Popup)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Popup)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Popup)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Popup)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Popup)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Popup)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Popup alignment type</summary>
+public enum PopupAlign
+{
+/// <summary>Popup not aligned</summary>
+None = 0,
+/// <summary>Popup aligned to center</summary>
+Center = 1,
+/// <summary>Popup aligned to left</summary>
+Left = 2,
+/// <summary>Popup aligned to right</summary>
+Right = 3,
+/// <summary>Popup aligned to top</summary>
+Top = 4,
+/// <summary>Popup aligned to bottom</summary>
+Bottom = 5,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_popup_part_backwall.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_popup_part_backwall.eo.cs
new file mode 100755 (executable)
index 0000000..c3adb73
--- /dev/null
@@ -0,0 +1,523 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Popup internal part backwall class</summary>
+[PopupPartBackwallNativeInherit]
+public class PopupPartBackwall : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.File
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.PopupPartBackwallNativeInherit nativeInherit = new Efl.Ui.PopupPartBackwallNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PopupPartBackwall))
+            return Efl.Ui.PopupPartBackwallNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_popup_part_backwall_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public PopupPartBackwall(Efl.Object parent= null
+         ) :
+      base(efl_ui_popup_part_backwall_class_get(), typeof(PopupPartBackwall), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PopupPartBackwall(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected PopupPartBackwall(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static PopupPartBackwall static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PopupPartBackwall(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Determine whether backwall is set to repeat events.</summary>
+   /// <returns>Whether <c>obj</c> is to repeat events (<c>true</c>) or not (<c>false</c>).</returns>
+   virtual public bool GetRepeatEvents() {
+       var _ret_var = Efl.Ui.PopupPartBackwallNativeInherit.efl_ui_popup_part_backwall_repeat_events_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether backwall is to repeat events.
+   /// If <c>repeat</c> is <c>true</c>, it will make events on <c>obj</c> to also be repeated for the next lower object in the objects&apos; stack (see <see cref="Efl.Gfx.Stack.GetBelow"/>).
+   /// 
+   /// If <c>repeat</c> is <c>false</c>, events occurring on <c>obj</c> will be processed only on it.</summary>
+   /// <param name="repeat">Whether <c>obj</c> is to repeat events (<c>true</c>) or not (<c>false</c>).</param>
+   /// <returns></returns>
+   virtual public  void SetRepeatEvents( bool repeat) {
+                         Efl.Ui.PopupPartBackwallNativeInherit.efl_ui_popup_part_backwall_repeat_events_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), repeat);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Determine whether backwall is set to repeat events.</summary>
+/// <value>Whether <c>obj</c> is to repeat events (<c>true</c>) or not (<c>false</c>).</value>
+   public bool RepeatEvents {
+      get { return GetRepeatEvents(); }
+      set { SetRepeatEvents( value); }
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.PopupPartBackwall.efl_ui_popup_part_backwall_class_get();
+   }
+}
+public class PopupPartBackwallNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_popup_part_backwall_repeat_events_get_static_delegate == null)
+      efl_ui_popup_part_backwall_repeat_events_get_static_delegate = new efl_ui_popup_part_backwall_repeat_events_get_delegate(repeat_events_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_part_backwall_repeat_events_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_part_backwall_repeat_events_get_static_delegate)});
+      if (efl_ui_popup_part_backwall_repeat_events_set_static_delegate == null)
+      efl_ui_popup_part_backwall_repeat_events_set_static_delegate = new efl_ui_popup_part_backwall_repeat_events_set_delegate(repeat_events_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_popup_part_backwall_repeat_events_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_popup_part_backwall_repeat_events_set_static_delegate)});
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.PopupPartBackwall.efl_ui_popup_part_backwall_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.PopupPartBackwall.efl_ui_popup_part_backwall_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_popup_part_backwall_repeat_events_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_popup_part_backwall_repeat_events_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_part_backwall_repeat_events_get_api_delegate> efl_ui_popup_part_backwall_repeat_events_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_part_backwall_repeat_events_get_api_delegate>(_Module, "efl_ui_popup_part_backwall_repeat_events_get");
+    private static bool repeat_events_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_popup_part_backwall_repeat_events_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).GetRepeatEvents();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_popup_part_backwall_repeat_events_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_popup_part_backwall_repeat_events_get_delegate efl_ui_popup_part_backwall_repeat_events_get_static_delegate;
+
+
+    private delegate  void efl_ui_popup_part_backwall_repeat_events_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool repeat);
+
+
+    public delegate  void efl_ui_popup_part_backwall_repeat_events_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool repeat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_popup_part_backwall_repeat_events_set_api_delegate> efl_ui_popup_part_backwall_repeat_events_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_popup_part_backwall_repeat_events_set_api_delegate>(_Module, "efl_ui_popup_part_backwall_repeat_events_set");
+    private static  void repeat_events_set(System.IntPtr obj, System.IntPtr pd,  bool repeat)
+   {
+      Eina.Log.Debug("function efl_ui_popup_part_backwall_repeat_events_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PopupPartBackwall)wrapper).SetRepeatEvents( repeat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_popup_part_backwall_repeat_events_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repeat);
+      }
+   }
+   private static efl_ui_popup_part_backwall_repeat_events_set_delegate efl_ui_popup_part_backwall_repeat_events_set_static_delegate;
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((PopupPartBackwall)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((PopupPartBackwall)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((PopupPartBackwall)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_progressbar.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_progressbar.eo.cs
new file mode 100755 (executable)
index 0000000..04aff75
--- /dev/null
@@ -0,0 +1,1134 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary progressbar class</summary>
+[ProgressbarNativeInherit]
+public class Progressbar : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content,Efl.Text,Efl.TextMarkup,Efl.Access.Value,Efl.Ui.Direction,Efl.Ui.Format,Efl.Ui.RangeDisplay
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ProgressbarNativeInherit nativeInherit = new Efl.Ui.ProgressbarNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Progressbar))
+            return Efl.Ui.ProgressbarNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_progressbar_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Progressbar(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_progressbar_class_get(), typeof(Progressbar), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Progressbar(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Progressbar(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Progressbar static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Progressbar(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when progressbar changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_PROGRESSBAR_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_PROGRESSBAR_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Control whether a given progress bar widget is at &quot;pulsing mode&quot; or not.
+   /// By default progress bars display values from low to high boundaries. There are situations however in which the progress of a given task is unknown. In these cases, you can set a progress bar widget to a &quot;pulsing state&quot; to give the user an idea that some computation is being done without showing the precise progress rate. In the default theme, it will animate the bar with content, switching constantly between filling it and back to non-filled in a loop. To start and stop this pulsing animation you need to explicitly call efl_ui_progressbar_pulse_set().
+   /// 1.20</summary>
+   /// <returns><c>true</c> to put <c>obj</c> in pulsing mode, <c>false</c> to put it back to its default one</returns>
+   virtual public bool GetPulseMode() {
+       var _ret_var = Efl.Ui.ProgressbarNativeInherit.efl_ui_progressbar_pulse_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control whether a given progress bar widget is at &quot;pulsing mode&quot; or not.
+   /// By default progress bars display values from low to high boundaries. There are situations however in which the progress of a given task is unknown. In these cases, you can set a progress bar widget to a &quot;pulsing state&quot; to give the user an idea that some computation is being done without showing the precise progress rate. In the default theme, it will animate the bar with content, switching constantly between filling it and back to non-filled in a loop. To start and stop this pulsing animation you need to explicitly call efl_ui_progressbar_pulse_set().
+   /// 1.20</summary>
+   /// <param name="pulse"><c>true</c> to put <c>obj</c> in pulsing mode, <c>false</c> to put it back to its default one</param>
+   /// <returns></returns>
+   virtual public  void SetPulseMode( bool pulse) {
+                         Efl.Ui.ProgressbarNativeInherit.efl_ui_progressbar_pulse_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pulse);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the pulsing state on a given progressbar widget.
+   /// 1.20</summary>
+   /// <returns><c>true</c>, to start the pulsing animation, <c>false</c> to stop it</returns>
+   virtual public bool GetPulse() {
+       var _ret_var = Efl.Ui.ProgressbarNativeInherit.efl_ui_progressbar_pulse_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start/stop a given progress bar &quot;pulsing&quot; animation, if its under that mode
+   /// Note: This call won&apos;t do anything if <c>obj</c> is not under &quot;pulsing mode&quot;.
+   /// 1.20</summary>
+   /// <param name="state"><c>true</c>, to start the pulsing animation, <c>false</c> to stop it</param>
+   /// <returns></returns>
+   virtual public  void SetPulse( bool state) {
+                         Efl.Ui.ProgressbarNativeInherit.efl_ui_progressbar_pulse_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), state);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <returns>The markup-text representation set to this text.
+   /// 1.21</returns>
+   virtual public  System.String GetMarkup() {
+       var _ret_var = Efl.TextMarkupNativeInherit.efl_text_markup_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Markup property
+   /// 1.21</summary>
+   /// <param name="markup">The markup-text representation set to this text.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetMarkup(  System.String markup) {
+                         Efl.TextMarkupNativeInherit.efl_text_markup_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), markup);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets value displayed by a accessible widget.</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns></returns>
+   virtual public  void GetValueAndText( out double value,  out  System.String text) {
+                                           Efl.Access.ValueNativeInherit.efl_access_value_and_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out value,  out text);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Value and text property</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns><c>true</c> if setting widgets value has succeeded, otherwise <c>false</c> .</returns>
+   virtual public bool SetValueAndText( double value,   System.String text) {
+                                           var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_and_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value,  text);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets a range of all possible values and its description</summary>
+   /// <param name="lower_limit">Lower limit of the range</param>
+   /// <param name="upper_limit">Upper limit of the range</param>
+   /// <param name="description">Description of the range</param>
+   /// <returns></returns>
+   virtual public  void GetRange( out double lower_limit,  out double upper_limit,  out  System.String description) {
+                                                             Efl.Access.ValueNativeInherit.efl_access_value_range_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out lower_limit,  out upper_limit,  out description);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Gets an minimal incrementation value</summary>
+   /// <returns>Minimal incrementation value</returns>
+   virtual public double GetIncrement() {
+       var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_increment_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+   /// <param name="func">The format function callback</param>
+   /// <returns></returns>
+   virtual public  void SetFormatCb( Efl.Ui.FormatFuncCb func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.Ui.FormatNativeInherit.efl_ui_format_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), Efl.Ui.FormatFuncCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <returns>The format string for <c>obj</c>&apos;s units label.</returns>
+   virtual public  System.String GetFormatString() {
+       var _ret_var = Efl.Ui.FormatNativeInherit.efl_ui_format_string_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <param name="units">The format string for <c>obj</c>&apos;s units label.</param>
+   /// <returns></returns>
+   virtual public  void SetFormatString(  System.String units) {
+                         Efl.Ui.FormatNativeInherit.efl_ui_format_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), units);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <returns>The range value (must be between $0.0 and 1.0)</returns>
+   virtual public double GetRangeValue() {
+       var _ret_var = Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <param name="val">The range value (must be between $0.0 and 1.0)</param>
+   /// <returns></returns>
+   virtual public  void SetRangeValue( double val) {
+                         Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimum and maximum values of the given range widget.
+   /// Note: If only one value is needed, the other pointer can be passed as <c>null</c>.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void GetRangeMinMax( out double min,  out double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out min,  out max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the minimum and maximum values for given range widget.
+   /// Define the allowed range of values to be selected by the user.
+   /// 
+   /// If actual value is less than <c>min</c>, it will be updated to <c>min</c>. If it is bigger then <c>max</c>, will be updated to <c>max</c>. The actual value can be obtained with <see cref="Efl.Ui.RangeDisplay.GetRangeValue"/>
+   /// 
+   /// The minimum and maximum values may be different for each class.
+   /// 
+   /// Warning: maximum must be greater than minimum, otherwise behavior is undefined.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void SetRangeMinMax( double min,  double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), min,  max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control whether a given progress bar widget is at &quot;pulsing mode&quot; or not.
+/// By default progress bars display values from low to high boundaries. There are situations however in which the progress of a given task is unknown. In these cases, you can set a progress bar widget to a &quot;pulsing state&quot; to give the user an idea that some computation is being done without showing the precise progress rate. In the default theme, it will animate the bar with content, switching constantly between filling it and back to non-filled in a loop. To start and stop this pulsing animation you need to explicitly call efl_ui_progressbar_pulse_set().
+/// 1.20</summary>
+/// <value><c>true</c> to put <c>obj</c> in pulsing mode, <c>false</c> to put it back to its default one</value>
+   public bool PulseMode {
+      get { return GetPulseMode(); }
+      set { SetPulseMode( value); }
+   }
+   /// <summary>Get the pulsing state on a given progressbar widget.
+/// 1.20</summary>
+/// <value><c>true</c>, to start the pulsing animation, <c>false</c> to stop it</value>
+   public bool Pulse {
+      get { return GetPulse(); }
+      set { SetPulse( value); }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Markup property
+/// 1.21</summary>
+/// <value>The markup-text representation set to this text.
+/// 1.21</value>
+   public  System.String Markup {
+      get { return GetMarkup(); }
+      set { SetMarkup( value); }
+   }
+   /// <summary>Gets an minimal incrementation value</summary>
+/// <value>Minimal incrementation value</value>
+   public double Increment {
+      get { return GetIncrement(); }
+   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+/// <value>The format function callback</value>
+   public Efl.Ui.FormatFuncCb FormatCb {
+      set { SetFormatCb( value); }
+   }
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <value>The format string for <c>obj</c>&apos;s units label.</value>
+   public  System.String FormatString {
+      get { return GetFormatString(); }
+      set { SetFormatString( value); }
+   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <value>The range value (must be between $0.0 and 1.0)</value>
+   public double RangeValue {
+      get { return GetRangeValue(); }
+      set { SetRangeValue( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Progressbar.efl_ui_progressbar_class_get();
+   }
+}
+public class ProgressbarNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_progressbar_pulse_mode_get_static_delegate == null)
+      efl_ui_progressbar_pulse_mode_get_static_delegate = new efl_ui_progressbar_pulse_mode_get_delegate(pulse_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_progressbar_pulse_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_progressbar_pulse_mode_get_static_delegate)});
+      if (efl_ui_progressbar_pulse_mode_set_static_delegate == null)
+      efl_ui_progressbar_pulse_mode_set_static_delegate = new efl_ui_progressbar_pulse_mode_set_delegate(pulse_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_progressbar_pulse_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_progressbar_pulse_mode_set_static_delegate)});
+      if (efl_ui_progressbar_pulse_get_static_delegate == null)
+      efl_ui_progressbar_pulse_get_static_delegate = new efl_ui_progressbar_pulse_get_delegate(pulse_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_progressbar_pulse_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_progressbar_pulse_get_static_delegate)});
+      if (efl_ui_progressbar_pulse_set_static_delegate == null)
+      efl_ui_progressbar_pulse_set_static_delegate = new efl_ui_progressbar_pulse_set_delegate(pulse_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_progressbar_pulse_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_progressbar_pulse_set_static_delegate)});
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_markup_get_static_delegate == null)
+      efl_text_markup_get_static_delegate = new efl_text_markup_get_delegate(markup_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_get_static_delegate)});
+      if (efl_text_markup_set_static_delegate == null)
+      efl_text_markup_set_static_delegate = new efl_text_markup_set_delegate(markup_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_markup_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_markup_set_static_delegate)});
+      if (efl_access_value_and_text_get_static_delegate == null)
+      efl_access_value_and_text_get_static_delegate = new efl_access_value_and_text_get_delegate(value_and_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_get_static_delegate)});
+      if (efl_access_value_and_text_set_static_delegate == null)
+      efl_access_value_and_text_set_static_delegate = new efl_access_value_and_text_set_delegate(value_and_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_set_static_delegate)});
+      if (efl_access_value_range_get_static_delegate == null)
+      efl_access_value_range_get_static_delegate = new efl_access_value_range_get_delegate(range_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_range_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_range_get_static_delegate)});
+      if (efl_access_value_increment_get_static_delegate == null)
+      efl_access_value_increment_get_static_delegate = new efl_access_value_increment_get_delegate(increment_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_increment_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_increment_get_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      if (efl_ui_format_cb_set_static_delegate == null)
+      efl_ui_format_cb_set_static_delegate = new efl_ui_format_cb_set_delegate(format_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_cb_set_static_delegate)});
+      if (efl_ui_format_string_get_static_delegate == null)
+      efl_ui_format_string_get_static_delegate = new efl_ui_format_string_get_delegate(format_string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_get_static_delegate)});
+      if (efl_ui_format_string_set_static_delegate == null)
+      efl_ui_format_string_set_static_delegate = new efl_ui_format_string_set_delegate(format_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_set_static_delegate)});
+      if (efl_ui_range_value_get_static_delegate == null)
+      efl_ui_range_value_get_static_delegate = new efl_ui_range_value_get_delegate(range_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_get_static_delegate)});
+      if (efl_ui_range_value_set_static_delegate == null)
+      efl_ui_range_value_set_static_delegate = new efl_ui_range_value_set_delegate(range_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_set_static_delegate)});
+      if (efl_ui_range_min_max_get_static_delegate == null)
+      efl_ui_range_min_max_get_static_delegate = new efl_ui_range_min_max_get_delegate(range_min_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_get_static_delegate)});
+      if (efl_ui_range_min_max_set_static_delegate == null)
+      efl_ui_range_min_max_set_static_delegate = new efl_ui_range_min_max_set_delegate(range_min_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Progressbar.efl_ui_progressbar_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Progressbar.efl_ui_progressbar_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_progressbar_pulse_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_progressbar_pulse_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_mode_get_api_delegate> efl_ui_progressbar_pulse_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_mode_get_api_delegate>(_Module, "efl_ui_progressbar_pulse_mode_get");
+    private static bool pulse_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_progressbar_pulse_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetPulseMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_progressbar_pulse_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_progressbar_pulse_mode_get_delegate efl_ui_progressbar_pulse_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_progressbar_pulse_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool pulse);
+
+
+    public delegate  void efl_ui_progressbar_pulse_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool pulse);
+    public static Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_mode_set_api_delegate> efl_ui_progressbar_pulse_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_mode_set_api_delegate>(_Module, "efl_ui_progressbar_pulse_mode_set");
+    private static  void pulse_mode_set(System.IntPtr obj, System.IntPtr pd,  bool pulse)
+   {
+      Eina.Log.Debug("function efl_ui_progressbar_pulse_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Progressbar)wrapper).SetPulseMode( pulse);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_progressbar_pulse_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pulse);
+      }
+   }
+   private static efl_ui_progressbar_pulse_mode_set_delegate efl_ui_progressbar_pulse_mode_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_progressbar_pulse_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_progressbar_pulse_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_get_api_delegate> efl_ui_progressbar_pulse_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_get_api_delegate>(_Module, "efl_ui_progressbar_pulse_get");
+    private static bool pulse_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_progressbar_pulse_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetPulse();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_progressbar_pulse_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_progressbar_pulse_get_delegate efl_ui_progressbar_pulse_get_static_delegate;
+
+
+    private delegate  void efl_ui_progressbar_pulse_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool state);
+
+
+    public delegate  void efl_ui_progressbar_pulse_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool state);
+    public static Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_set_api_delegate> efl_ui_progressbar_pulse_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_progressbar_pulse_set_api_delegate>(_Module, "efl_ui_progressbar_pulse_set");
+    private static  void pulse_set(System.IntPtr obj, System.IntPtr pd,  bool state)
+   {
+      Eina.Log.Debug("function efl_ui_progressbar_pulse_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Progressbar)wrapper).SetPulse( state);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_progressbar_pulse_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  state);
+      }
+   }
+   private static efl_ui_progressbar_pulse_set_delegate efl_ui_progressbar_pulse_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Progressbar)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Progressbar)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Progressbar)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_markup_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_markup_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate> efl_text_markup_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_get_api_delegate>(_Module, "efl_text_markup_get");
+    private static  System.String markup_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_markup_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetMarkup();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_markup_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_markup_get_delegate efl_text_markup_get_static_delegate;
+
+
+    private delegate  void efl_text_markup_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+
+
+    public delegate  void efl_text_markup_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String markup);
+    public static Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate> efl_text_markup_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_markup_set_api_delegate>(_Module, "efl_text_markup_set");
+    private static  void markup_set(System.IntPtr obj, System.IntPtr pd,   System.String markup)
+   {
+      Eina.Log.Debug("function efl_text_markup_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Progressbar)wrapper).SetMarkup( markup);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_markup_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  markup);
+      }
+   }
+   private static efl_text_markup_set_delegate efl_text_markup_set_static_delegate;
+
+
+    private delegate  void efl_access_value_and_text_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+
+
+    public delegate  void efl_access_value_and_text_get_api_delegate(System.IntPtr obj,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate> efl_access_value_and_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate>(_Module, "efl_access_value_and_text_get");
+    private static  void value_and_text_get(System.IntPtr obj, System.IntPtr pd,  out double value,  out  System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           value = default(double);       System.String _out_text = default( System.String);
+                     
+         try {
+            ((Progressbar)wrapper).GetValueAndText( out value,  out _out_text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            text = _out_text;
+                        } else {
+         efl_access_value_and_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out value,  out text);
+      }
+   }
+   private static efl_access_value_and_text_get_delegate efl_access_value_and_text_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_value_and_text_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_value_and_text_set_api_delegate(System.IntPtr obj,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate> efl_access_value_and_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate>(_Module, "efl_access_value_and_text_set");
+    private static bool value_and_text_set(System.IntPtr obj, System.IntPtr pd,  double value,   System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Progressbar)wrapper).SetValueAndText( value,  text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_value_and_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value,  text);
+      }
+   }
+   private static efl_access_value_and_text_set_delegate efl_access_value_and_text_set_static_delegate;
+
+
+    private delegate  void efl_access_value_range_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+
+
+    public delegate  void efl_access_value_range_get_api_delegate(System.IntPtr obj,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate> efl_access_value_range_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate>(_Module, "efl_access_value_range_get");
+    private static  void range_get(System.IntPtr obj, System.IntPtr pd,  out double lower_limit,  out double upper_limit,  out  System.String description)
+   {
+      Eina.Log.Debug("function efl_access_value_range_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 lower_limit = default(double);      upper_limit = default(double);       System.String _out_description = default( System.String);
+                           
+         try {
+            ((Progressbar)wrapper).GetRange( out lower_limit,  out upper_limit,  out _out_description);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  description = _out_description;
+                              } else {
+         efl_access_value_range_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out lower_limit,  out upper_limit,  out description);
+      }
+   }
+   private static efl_access_value_range_get_delegate efl_access_value_range_get_static_delegate;
+
+
+    private delegate double efl_access_value_increment_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_access_value_increment_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate> efl_access_value_increment_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate>(_Module, "efl_access_value_increment_get");
+    private static double increment_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_value_increment_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetIncrement();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_value_increment_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_value_increment_get_delegate efl_access_value_increment_get_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Progressbar)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+
+
+    private delegate  void efl_ui_format_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_ui_format_cb_set_api_delegate(System.IntPtr obj,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate> efl_ui_format_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate>(_Module, "efl_ui_format_cb_set");
+    private static  void format_cb_set(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_ui_format_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              Efl.Ui.FormatFuncCbWrapper func_wrapper = new Efl.Ui.FormatFuncCbWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((Progressbar)wrapper).SetFormatCb( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_ui_format_cb_set_delegate efl_ui_format_cb_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_format_string_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_format_string_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate> efl_ui_format_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate>(_Module, "efl_ui_format_string_get");
+    private static  System.String format_string_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetFormatString();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_format_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_format_string_get_delegate efl_ui_format_string_get_static_delegate;
+
+
+    private delegate  void efl_ui_format_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+
+
+    public delegate  void efl_ui_format_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate> efl_ui_format_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate>(_Module, "efl_ui_format_string_set");
+    private static  void format_string_set(System.IntPtr obj, System.IntPtr pd,   System.String units)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Progressbar)wrapper).SetFormatString( units);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  units);
+      }
+   }
+   private static efl_ui_format_string_set_delegate efl_ui_format_string_set_static_delegate;
+
+
+    private delegate double efl_ui_range_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate> efl_ui_range_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate>(_Module, "efl_ui_range_value_get");
+    private static double range_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Progressbar)wrapper).GetRangeValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_value_get_delegate efl_ui_range_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double val);
+
+
+    public delegate  void efl_ui_range_value_set_api_delegate(System.IntPtr obj,   double val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate> efl_ui_range_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate>(_Module, "efl_ui_range_value_set");
+    private static  void range_value_set(System.IntPtr obj, System.IntPtr pd,  double val)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Progressbar)wrapper).SetRangeValue( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_range_value_set_delegate efl_ui_range_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double min,   out double max);
+
+
+    public delegate  void efl_ui_range_min_max_get_api_delegate(System.IntPtr obj,   out double min,   out double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate> efl_ui_range_min_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate>(_Module, "efl_ui_range_min_max_get");
+    private static  void range_min_max_get(System.IntPtr obj, System.IntPtr pd,  out double min,  out double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           min = default(double);      max = default(double);                     
+         try {
+            ((Progressbar)wrapper).GetRangeMinMax( out min,  out max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out min,  out max);
+      }
+   }
+   private static efl_ui_range_min_max_get_delegate efl_ui_range_min_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   double min,   double max);
+
+
+    public delegate  void efl_ui_range_min_max_set_api_delegate(System.IntPtr obj,   double min,   double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate> efl_ui_range_min_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate>(_Module, "efl_ui_range_min_max_set");
+    private static  void range_min_max_set(System.IntPtr obj, System.IntPtr pd,  double min,  double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Progressbar)wrapper).SetRangeMinMax( min,  max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min,  max);
+      }
+   }
+   private static efl_ui_range_min_max_set_delegate efl_ui_range_min_max_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_progressbar_legacy_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_progressbar_legacy_part.eo.cs
new file mode 100755 (executable)
index 0000000..2912102
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary progressbar internal part class</summary>
+[ProgressbarLegacyPartNativeInherit]
+public class ProgressbarLegacyPart : Efl.Ui.LayoutPartContent, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ProgressbarLegacyPartNativeInherit nativeInherit = new Efl.Ui.ProgressbarLegacyPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ProgressbarLegacyPart))
+            return Efl.Ui.ProgressbarLegacyPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_progressbar_legacy_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ProgressbarLegacyPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_progressbar_legacy_part_class_get(), typeof(ProgressbarLegacyPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ProgressbarLegacyPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ProgressbarLegacyPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ProgressbarLegacyPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ProgressbarLegacyPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ProgressbarLegacyPart.efl_ui_progressbar_legacy_part_class_get();
+   }
+}
+public class ProgressbarLegacyPartNativeInherit : Efl.Ui.LayoutPartContentNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ProgressbarLegacyPart.efl_ui_progressbar_legacy_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ProgressbarLegacyPart.efl_ui_progressbar_legacy_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_progressbar_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_progressbar_part.eo.cs
new file mode 100755 (executable)
index 0000000..810b17a
--- /dev/null
@@ -0,0 +1,253 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary progressbar internal part class</summary>
+[ProgressbarPartNativeInherit]
+public class ProgressbarPart : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Ui.RangeDisplay
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ProgressbarPartNativeInherit nativeInherit = new Efl.Ui.ProgressbarPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ProgressbarPart))
+            return Efl.Ui.ProgressbarPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_progressbar_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ProgressbarPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_progressbar_part_class_get(), typeof(ProgressbarPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ProgressbarPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ProgressbarPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ProgressbarPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ProgressbarPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <returns>The range value (must be between $0.0 and 1.0)</returns>
+   virtual public double GetRangeValue() {
+       var _ret_var = Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <param name="val">The range value (must be between $0.0 and 1.0)</param>
+   /// <returns></returns>
+   virtual public  void SetRangeValue( double val) {
+                         Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimum and maximum values of the given range widget.
+   /// Note: If only one value is needed, the other pointer can be passed as <c>null</c>.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void GetRangeMinMax( out double min,  out double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out min,  out max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the minimum and maximum values for given range widget.
+   /// Define the allowed range of values to be selected by the user.
+   /// 
+   /// If actual value is less than <c>min</c>, it will be updated to <c>min</c>. If it is bigger then <c>max</c>, will be updated to <c>max</c>. The actual value can be obtained with <see cref="Efl.Ui.RangeDisplay.GetRangeValue"/>
+   /// 
+   /// The minimum and maximum values may be different for each class.
+   /// 
+   /// Warning: maximum must be greater than minimum, otherwise behavior is undefined.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void SetRangeMinMax( double min,  double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), min,  max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <value>The range value (must be between $0.0 and 1.0)</value>
+   public double RangeValue {
+      get { return GetRangeValue(); }
+      set { SetRangeValue( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ProgressbarPart.efl_ui_progressbar_part_class_get();
+   }
+}
+public class ProgressbarPartNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_range_value_get_static_delegate == null)
+      efl_ui_range_value_get_static_delegate = new efl_ui_range_value_get_delegate(range_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_get_static_delegate)});
+      if (efl_ui_range_value_set_static_delegate == null)
+      efl_ui_range_value_set_static_delegate = new efl_ui_range_value_set_delegate(range_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_set_static_delegate)});
+      if (efl_ui_range_min_max_get_static_delegate == null)
+      efl_ui_range_min_max_get_static_delegate = new efl_ui_range_min_max_get_delegate(range_min_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_get_static_delegate)});
+      if (efl_ui_range_min_max_set_static_delegate == null)
+      efl_ui_range_min_max_set_static_delegate = new efl_ui_range_min_max_set_delegate(range_min_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ProgressbarPart.efl_ui_progressbar_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ProgressbarPart.efl_ui_progressbar_part_class_get();
+   }
+
+
+    private delegate double efl_ui_range_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate> efl_ui_range_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate>(_Module, "efl_ui_range_value_get");
+    private static double range_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((ProgressbarPart)wrapper).GetRangeValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_value_get_delegate efl_ui_range_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double val);
+
+
+    public delegate  void efl_ui_range_value_set_api_delegate(System.IntPtr obj,   double val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate> efl_ui_range_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate>(_Module, "efl_ui_range_value_set");
+    private static  void range_value_set(System.IntPtr obj, System.IntPtr pd,  double val)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ProgressbarPart)wrapper).SetRangeValue( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_range_value_set_delegate efl_ui_range_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double min,   out double max);
+
+
+    public delegate  void efl_ui_range_min_max_get_api_delegate(System.IntPtr obj,   out double min,   out double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate> efl_ui_range_min_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate>(_Module, "efl_ui_range_min_max_get");
+    private static  void range_min_max_get(System.IntPtr obj, System.IntPtr pd,  out double min,  out double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           min = default(double);      max = default(double);                     
+         try {
+            ((ProgressbarPart)wrapper).GetRangeMinMax( out min,  out max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out min,  out max);
+      }
+   }
+   private static efl_ui_range_min_max_get_delegate efl_ui_range_min_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   double min,   double max);
+
+
+    public delegate  void efl_ui_range_min_max_set_api_delegate(System.IntPtr obj,   double min,   double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate> efl_ui_range_min_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate>(_Module, "efl_ui_range_min_max_set");
+    private static  void range_min_max_set(System.IntPtr obj, System.IntPtr pd,  double min,  double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ProgressbarPart)wrapper).SetRangeMinMax( min,  max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min,  max);
+      }
+   }
+   private static efl_ui_range_min_max_set_delegate efl_ui_range_min_max_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_property_bind.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_property_bind.eo.cs
new file mode 100755 (executable)
index 0000000..48f9832
--- /dev/null
@@ -0,0 +1,146 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Property_Bind interface. view object can have <see cref="Efl.Model"/> to manage the data, the interface can help loading and tracking child data from the model property. see <see cref="Efl.Model"/> see <see cref="Efl.Ui.Factory"/></summary>
+[PropertyBindNativeInherit]
+public interface PropertyBind : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>bind property data with the given key string. when the data is ready or changed, bind the data to the key action and process promised work.</summary>
+/// <param name="key">key string for bind model property data</param>
+/// <param name="property">Model property name</param>
+/// <returns></returns>
+ void PropertyBind(  System.String key,   System.String property);
+   }
+/// <summary>Efl UI Property_Bind interface. view object can have <see cref="Efl.Model"/> to manage the data, the interface can help loading and tracking child data from the model property. see <see cref="Efl.Model"/> see <see cref="Efl.Ui.Factory"/></summary>
+sealed public class PropertyBindConcrete : 
+
+PropertyBind
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (PropertyBindConcrete))
+            return Efl.Ui.PropertyBindNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_property_bind_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public PropertyBindConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~PropertyBindConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static PropertyBindConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new PropertyBindConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>bind property data with the given key string. when the data is ready or changed, bind the data to the key action and process promised work.</summary>
+   /// <param name="key">key string for bind model property data</param>
+   /// <param name="property">Model property name</param>
+   /// <returns></returns>
+   public  void PropertyBind(  System.String key,   System.String property) {
+                                           Efl.Ui.PropertyBindNativeInherit.efl_ui_property_bind_ptr.Value.Delegate(this.NativeHandle, key,  property);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+}
+public class PropertyBindNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_property_bind_static_delegate == null)
+      efl_ui_property_bind_static_delegate = new efl_ui_property_bind_delegate(property_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_property_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_property_bind_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.PropertyBindConcrete.efl_ui_property_bind_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.PropertyBindConcrete.efl_ui_property_bind_interface_get();
+   }
+
+
+    private delegate  void efl_ui_property_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    public delegate  void efl_ui_property_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate> efl_ui_property_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate>(_Module, "efl_ui_property_bind");
+    private static  void property_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String property)
+   {
+      Eina.Log.Debug("function efl_ui_property_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((PropertyBind)wrapper).PropertyBind( key,  property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_property_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  property);
+      }
+   }
+   private static efl_ui_property_bind_delegate efl_ui_property_bind_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_radio.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_radio.eo.cs
new file mode 100755 (executable)
index 0000000..dd09e97
--- /dev/null
@@ -0,0 +1,290 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary radio class</summary>
+[RadioNativeInherit]
+public class Radio : Efl.Ui.Check, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.RadioNativeInherit nativeInherit = new Efl.Ui.RadioNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Radio))
+            return Efl.Ui.RadioNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_radio_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Radio(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_radio_class_get(), typeof(Radio), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Radio(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Radio(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Radio static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Radio(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get the integer value that this radio object represents.
+   /// This gets the value of the radio.</summary>
+   /// <returns>The value to use if this radio object is selected.</returns>
+   virtual public  int GetStateValue() {
+       var _ret_var = Efl.Ui.RadioNativeInherit.efl_ui_radio_state_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the integer value that this radio object represents.
+   /// This sets the value of the radio.</summary>
+   /// <param name="value">The value to use if this radio object is selected.</param>
+   /// <returns></returns>
+   virtual public  void SetStateValue(  int value) {
+                         Efl.Ui.RadioNativeInherit.efl_ui_radio_state_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set a convenience pointer to an integer, which changes when radio group value changes.
+   /// This sets a pointer to an integer that in addition to the radio object state will also be modified directly. To stop setting the object pointed to, simply use NULL as the valuep argument. If valuep is not NULL then when called, the radio object state will also be modified to reflect the value of the integer valuep points to, just like calling elm_radio_value_set().</summary>
+   /// <param name="valuep">Pointer to the integer to modify</param>
+   /// <returns></returns>
+   virtual public  void SetValuePointer(  int valuep) {
+       var _in_valuep = Eina.PrimitiveConversion.ManagedToPointerAlloc(valuep);
+                  Efl.Ui.RadioNativeInherit.efl_ui_radio_value_pointer_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_valuep);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the selected radio object.</summary>
+   /// <returns>The selected radio object</returns>
+   virtual public Efl.Canvas.Object GetSelectedObject() {
+       var _ret_var = Efl.Ui.RadioNativeInherit.efl_ui_radio_selected_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add this radio to a group of other radio objects
+   /// Radio objects work in groups. Each member should have a different integer value assigned. In order to have them work as a group, they need to know about each other. This adds the given radio object to the group of which the group object indicated is a member.</summary>
+   /// <param name="group">Any radio object whose group the obj is to join.</param>
+   /// <returns></returns>
+   virtual public  void AddGroup( Efl.Ui.Radio group) {
+                         Efl.Ui.RadioNativeInherit.efl_ui_radio_group_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), group);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the integer value that this radio object represents.
+/// This gets the value of the radio.</summary>
+/// <value>The value to use if this radio object is selected.</value>
+   public  int StateValue {
+      get { return GetStateValue(); }
+      set { SetStateValue( value); }
+   }
+   /// <summary>Set a convenience pointer to an integer, which changes when radio group value changes.
+/// This sets a pointer to an integer that in addition to the radio object state will also be modified directly. To stop setting the object pointed to, simply use NULL as the valuep argument. If valuep is not NULL then when called, the radio object state will also be modified to reflect the value of the integer valuep points to, just like calling elm_radio_value_set().</summary>
+/// <value>Pointer to the integer to modify</value>
+   public  int ValuePointer {
+      set { SetValuePointer( value); }
+   }
+   /// <summary>Get the selected radio object.</summary>
+/// <value>The selected radio object</value>
+   public Efl.Canvas.Object SelectedObject {
+      get { return GetSelectedObject(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Radio.efl_ui_radio_class_get();
+   }
+}
+public class RadioNativeInherit : Efl.Ui.CheckNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_radio_state_value_get_static_delegate == null)
+      efl_ui_radio_state_value_get_static_delegate = new efl_ui_radio_state_value_get_delegate(state_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_radio_state_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_radio_state_value_get_static_delegate)});
+      if (efl_ui_radio_state_value_set_static_delegate == null)
+      efl_ui_radio_state_value_set_static_delegate = new efl_ui_radio_state_value_set_delegate(state_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_radio_state_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_radio_state_value_set_static_delegate)});
+      if (efl_ui_radio_value_pointer_set_static_delegate == null)
+      efl_ui_radio_value_pointer_set_static_delegate = new efl_ui_radio_value_pointer_set_delegate(value_pointer_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_radio_value_pointer_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_radio_value_pointer_set_static_delegate)});
+      if (efl_ui_radio_selected_object_get_static_delegate == null)
+      efl_ui_radio_selected_object_get_static_delegate = new efl_ui_radio_selected_object_get_delegate(selected_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_radio_selected_object_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_radio_selected_object_get_static_delegate)});
+      if (efl_ui_radio_group_add_static_delegate == null)
+      efl_ui_radio_group_add_static_delegate = new efl_ui_radio_group_add_delegate(group_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_radio_group_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_radio_group_add_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Radio.efl_ui_radio_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Radio.efl_ui_radio_class_get();
+   }
+
+
+    private delegate  int efl_ui_radio_state_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_radio_state_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_radio_state_value_get_api_delegate> efl_ui_radio_state_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_radio_state_value_get_api_delegate>(_Module, "efl_ui_radio_state_value_get");
+    private static  int state_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_radio_state_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Radio)wrapper).GetStateValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_radio_state_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_radio_state_value_get_delegate efl_ui_radio_state_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_radio_state_value_set_delegate(System.IntPtr obj, System.IntPtr pd,    int value);
+
+
+    public delegate  void efl_ui_radio_state_value_set_api_delegate(System.IntPtr obj,    int value);
+    public static Efl.Eo.FunctionWrapper<efl_ui_radio_state_value_set_api_delegate> efl_ui_radio_state_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_radio_state_value_set_api_delegate>(_Module, "efl_ui_radio_state_value_set");
+    private static  void state_value_set(System.IntPtr obj, System.IntPtr pd,   int value)
+   {
+      Eina.Log.Debug("function efl_ui_radio_state_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Radio)wrapper).SetStateValue( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_radio_state_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_ui_radio_state_value_set_delegate efl_ui_radio_state_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_radio_value_pointer_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr valuep);
+
+
+    public delegate  void efl_ui_radio_value_pointer_set_api_delegate(System.IntPtr obj,    System.IntPtr valuep);
+    public static Efl.Eo.FunctionWrapper<efl_ui_radio_value_pointer_set_api_delegate> efl_ui_radio_value_pointer_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_radio_value_pointer_set_api_delegate>(_Module, "efl_ui_radio_value_pointer_set");
+    private static  void value_pointer_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr valuep)
+   {
+      Eina.Log.Debug("function efl_ui_radio_value_pointer_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_valuep = Eina.PrimitiveConversion.PointerToManaged< int>(valuep);
+                     
+         try {
+            ((Radio)wrapper).SetValuePointer( _in_valuep);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_radio_value_pointer_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  valuep);
+      }
+   }
+   private static efl_ui_radio_value_pointer_set_delegate efl_ui_radio_value_pointer_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_radio_selected_object_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_radio_selected_object_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_radio_selected_object_get_api_delegate> efl_ui_radio_selected_object_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_radio_selected_object_get_api_delegate>(_Module, "efl_ui_radio_selected_object_get");
+    private static Efl.Canvas.Object selected_object_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_radio_selected_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Radio)wrapper).GetSelectedObject();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_radio_selected_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_radio_selected_object_get_delegate efl_ui_radio_selected_object_get_static_delegate;
+
+
+    private delegate  void efl_ui_radio_group_add_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Radio, Efl.Eo.NonOwnTag>))]  Efl.Ui.Radio group);
+
+
+    public delegate  void efl_ui_radio_group_add_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Radio, Efl.Eo.NonOwnTag>))]  Efl.Ui.Radio group);
+    public static Efl.Eo.FunctionWrapper<efl_ui_radio_group_add_api_delegate> efl_ui_radio_group_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_radio_group_add_api_delegate>(_Module, "efl_ui_radio_group_add");
+    private static  void group_add(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Radio group)
+   {
+      Eina.Log.Debug("function efl_ui_radio_group_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Radio)wrapper).AddGroup( group);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_radio_group_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  group);
+      }
+   }
+   private static efl_ui_radio_group_add_delegate efl_ui_radio_group_add_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_radio_legacy_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_radio_legacy_part.eo.cs
new file mode 100755 (executable)
index 0000000..8bc4d0a
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary radio internal part class</summary>
+[RadioLegacyPartNativeInherit]
+public class RadioLegacyPart : Efl.Ui.LayoutPartContent, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.RadioLegacyPartNativeInherit nativeInherit = new Efl.Ui.RadioLegacyPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (RadioLegacyPart))
+            return Efl.Ui.RadioLegacyPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_radio_legacy_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public RadioLegacyPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_radio_legacy_part_class_get(), typeof(RadioLegacyPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public RadioLegacyPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected RadioLegacyPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static RadioLegacyPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new RadioLegacyPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.RadioLegacyPart.efl_ui_radio_legacy_part_class_get();
+   }
+}
+public class RadioLegacyPartNativeInherit : Efl.Ui.LayoutPartContentNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.RadioLegacyPart.efl_ui_radio_legacy_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.RadioLegacyPart.efl_ui_radio_legacy_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_range_display.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_range_display.eo.cs
new file mode 100755 (executable)
index 0000000..fb049ca
--- /dev/null
@@ -0,0 +1,308 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Interface that contains properties regarding the displaying of a range.</summary>
+[RangeDisplayNativeInherit]
+public interface RangeDisplay : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <returns>The range value (must be between $0.0 and 1.0)</returns>
+double GetRangeValue();
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <param name="val">The range value (must be between $0.0 and 1.0)</param>
+/// <returns></returns>
+ void SetRangeValue( double val);
+   /// <summary>Get the minimum and maximum values of the given range widget.
+/// Note: If only one value is needed, the other pointer can be passed as <c>null</c>.</summary>
+/// <param name="min">The minimum value.</param>
+/// <param name="max">The maximum value.</param>
+/// <returns></returns>
+ void GetRangeMinMax( out double min,  out double max);
+   /// <summary>Set the minimum and maximum values for given range widget.
+/// Define the allowed range of values to be selected by the user.
+/// 
+/// If actual value is less than <c>min</c>, it will be updated to <c>min</c>. If it is bigger then <c>max</c>, will be updated to <c>max</c>. The actual value can be obtained with <see cref="Efl.Ui.RangeDisplay.GetRangeValue"/>
+/// 
+/// The minimum and maximum values may be different for each class.
+/// 
+/// Warning: maximum must be greater than minimum, otherwise behavior is undefined.</summary>
+/// <param name="min">The minimum value.</param>
+/// <param name="max">The maximum value.</param>
+/// <returns></returns>
+ void SetRangeMinMax( double min,  double max);
+               /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <value>The range value (must be between $0.0 and 1.0)</value>
+   double RangeValue {
+      get ;
+      set ;
+   }
+}
+/// <summary>Interface that contains properties regarding the displaying of a range.</summary>
+sealed public class RangeDisplayConcrete : 
+
+RangeDisplay
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (RangeDisplayConcrete))
+            return Efl.Ui.RangeDisplayNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_range_display_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public RangeDisplayConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~RangeDisplayConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static RangeDisplayConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new RangeDisplayConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <returns>The range value (must be between $0.0 and 1.0)</returns>
+   public double GetRangeValue() {
+       var _ret_var = Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <param name="val">The range value (must be between $0.0 and 1.0)</param>
+   /// <returns></returns>
+   public  void SetRangeValue( double val) {
+                         Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_set_ptr.Value.Delegate(this.NativeHandle, val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimum and maximum values of the given range widget.
+   /// Note: If only one value is needed, the other pointer can be passed as <c>null</c>.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   public  void GetRangeMinMax( out double min,  out double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_get_ptr.Value.Delegate(this.NativeHandle, out min,  out max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the minimum and maximum values for given range widget.
+   /// Define the allowed range of values to be selected by the user.
+   /// 
+   /// If actual value is less than <c>min</c>, it will be updated to <c>min</c>. If it is bigger then <c>max</c>, will be updated to <c>max</c>. The actual value can be obtained with <see cref="Efl.Ui.RangeDisplay.GetRangeValue"/>
+   /// 
+   /// The minimum and maximum values may be different for each class.
+   /// 
+   /// Warning: maximum must be greater than minimum, otherwise behavior is undefined.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   public  void SetRangeMinMax( double min,  double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_set_ptr.Value.Delegate(this.NativeHandle, min,  max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <value>The range value (must be between $0.0 and 1.0)</value>
+   public double RangeValue {
+      get { return GetRangeValue(); }
+      set { SetRangeValue( value); }
+   }
+}
+public class RangeDisplayNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_range_value_get_static_delegate == null)
+      efl_ui_range_value_get_static_delegate = new efl_ui_range_value_get_delegate(range_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_get_static_delegate)});
+      if (efl_ui_range_value_set_static_delegate == null)
+      efl_ui_range_value_set_static_delegate = new efl_ui_range_value_set_delegate(range_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_set_static_delegate)});
+      if (efl_ui_range_min_max_get_static_delegate == null)
+      efl_ui_range_min_max_get_static_delegate = new efl_ui_range_min_max_get_delegate(range_min_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_get_static_delegate)});
+      if (efl_ui_range_min_max_set_static_delegate == null)
+      efl_ui_range_min_max_set_static_delegate = new efl_ui_range_min_max_set_delegate(range_min_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.RangeDisplayConcrete.efl_ui_range_display_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.RangeDisplayConcrete.efl_ui_range_display_interface_get();
+   }
+
+
+    private delegate double efl_ui_range_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate> efl_ui_range_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate>(_Module, "efl_ui_range_value_get");
+    private static double range_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((RangeDisplay)wrapper).GetRangeValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_value_get_delegate efl_ui_range_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double val);
+
+
+    public delegate  void efl_ui_range_value_set_api_delegate(System.IntPtr obj,   double val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate> efl_ui_range_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate>(_Module, "efl_ui_range_value_set");
+    private static  void range_value_set(System.IntPtr obj, System.IntPtr pd,  double val)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((RangeDisplay)wrapper).SetRangeValue( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_range_value_set_delegate efl_ui_range_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double min,   out double max);
+
+
+    public delegate  void efl_ui_range_min_max_get_api_delegate(System.IntPtr obj,   out double min,   out double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate> efl_ui_range_min_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate>(_Module, "efl_ui_range_min_max_get");
+    private static  void range_min_max_get(System.IntPtr obj, System.IntPtr pd,  out double min,  out double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           min = default(double);      max = default(double);                     
+         try {
+            ((RangeDisplay)wrapper).GetRangeMinMax( out min,  out max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out min,  out max);
+      }
+   }
+   private static efl_ui_range_min_max_get_delegate efl_ui_range_min_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   double min,   double max);
+
+
+    public delegate  void efl_ui_range_min_max_set_api_delegate(System.IntPtr obj,   double min,   double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate> efl_ui_range_min_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate>(_Module, "efl_ui_range_min_max_set");
+    private static  void range_min_max_set(System.IntPtr obj, System.IntPtr pd,  double min,  double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((RangeDisplay)wrapper).SetRangeMinMax( min,  max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min,  max);
+      }
+   }
+   private static efl_ui_range_min_max_set_delegate efl_ui_range_min_max_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_range_interactive.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_range_interactive.eo.cs
new file mode 100755 (executable)
index 0000000..41e23ce
--- /dev/null
@@ -0,0 +1,389 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Interface that extends the normal displaying properties with usage properties.
+/// The properties defined here are used to manipulate the way a user interacts with a displayed range.</summary>
+[RangeInteractiveNativeInherit]
+public interface RangeInteractive : 
+   Efl.Ui.RangeDisplay ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Control the step used to increment or decrement values for given widget.
+/// This value will be incremented or decremented to the displayed value.
+/// 
+/// By default step value is equal to 1.
+/// 
+/// Warning: The step value should be bigger than 0.</summary>
+/// <returns>The step value.</returns>
+double GetRangeStep();
+   /// <summary>Control the step used to increment or decrement values for given widget.
+/// This value will be incremented or decremented to the displayed value.
+/// 
+/// By default step value is equal to 1.
+/// 
+/// Warning: The step value should be bigger than 0.</summary>
+/// <param name="step">The step value.</param>
+/// <returns></returns>
+ void SetRangeStep( double step);
+         /// <summary>Control the step used to increment or decrement values for given widget.
+/// This value will be incremented or decremented to the displayed value.
+/// 
+/// By default step value is equal to 1.
+/// 
+/// Warning: The step value should be bigger than 0.</summary>
+/// <value>The step value.</value>
+   double RangeStep {
+      get ;
+      set ;
+   }
+}
+/// <summary>Interface that extends the normal displaying properties with usage properties.
+/// The properties defined here are used to manipulate the way a user interacts with a displayed range.</summary>
+sealed public class RangeInteractiveConcrete : 
+
+RangeInteractive
+   , Efl.Ui.RangeDisplay
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (RangeInteractiveConcrete))
+            return Efl.Ui.RangeInteractiveNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_range_interactive_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public RangeInteractiveConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~RangeInteractiveConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static RangeInteractiveConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new RangeInteractiveConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+   /// This value will be incremented or decremented to the displayed value.
+   /// 
+   /// By default step value is equal to 1.
+   /// 
+   /// Warning: The step value should be bigger than 0.</summary>
+   /// <returns>The step value.</returns>
+   public double GetRangeStep() {
+       var _ret_var = Efl.Ui.RangeInteractiveNativeInherit.efl_ui_range_step_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+   /// This value will be incremented or decremented to the displayed value.
+   /// 
+   /// By default step value is equal to 1.
+   /// 
+   /// Warning: The step value should be bigger than 0.</summary>
+   /// <param name="step">The step value.</param>
+   /// <returns></returns>
+   public  void SetRangeStep( double step) {
+                         Efl.Ui.RangeInteractiveNativeInherit.efl_ui_range_step_set_ptr.Value.Delegate(this.NativeHandle, step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <returns>The range value (must be between $0.0 and 1.0)</returns>
+   public double GetRangeValue() {
+       var _ret_var = Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <param name="val">The range value (must be between $0.0 and 1.0)</param>
+   /// <returns></returns>
+   public  void SetRangeValue( double val) {
+                         Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_set_ptr.Value.Delegate(this.NativeHandle, val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimum and maximum values of the given range widget.
+   /// Note: If only one value is needed, the other pointer can be passed as <c>null</c>.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   public  void GetRangeMinMax( out double min,  out double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_get_ptr.Value.Delegate(this.NativeHandle, out min,  out max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the minimum and maximum values for given range widget.
+   /// Define the allowed range of values to be selected by the user.
+   /// 
+   /// If actual value is less than <c>min</c>, it will be updated to <c>min</c>. If it is bigger then <c>max</c>, will be updated to <c>max</c>. The actual value can be obtained with <see cref="Efl.Ui.RangeDisplay.GetRangeValue"/>
+   /// 
+   /// The minimum and maximum values may be different for each class.
+   /// 
+   /// Warning: maximum must be greater than minimum, otherwise behavior is undefined.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   public  void SetRangeMinMax( double min,  double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_set_ptr.Value.Delegate(this.NativeHandle, min,  max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+/// This value will be incremented or decremented to the displayed value.
+/// 
+/// By default step value is equal to 1.
+/// 
+/// Warning: The step value should be bigger than 0.</summary>
+/// <value>The step value.</value>
+   public double RangeStep {
+      get { return GetRangeStep(); }
+      set { SetRangeStep( value); }
+   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <value>The range value (must be between $0.0 and 1.0)</value>
+   public double RangeValue {
+      get { return GetRangeValue(); }
+      set { SetRangeValue( value); }
+   }
+}
+public class RangeInteractiveNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_range_step_get_static_delegate == null)
+      efl_ui_range_step_get_static_delegate = new efl_ui_range_step_get_delegate(range_step_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_step_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_step_get_static_delegate)});
+      if (efl_ui_range_step_set_static_delegate == null)
+      efl_ui_range_step_set_static_delegate = new efl_ui_range_step_set_delegate(range_step_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_step_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_step_set_static_delegate)});
+      if (efl_ui_range_value_get_static_delegate == null)
+      efl_ui_range_value_get_static_delegate = new efl_ui_range_value_get_delegate(range_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_get_static_delegate)});
+      if (efl_ui_range_value_set_static_delegate == null)
+      efl_ui_range_value_set_static_delegate = new efl_ui_range_value_set_delegate(range_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_set_static_delegate)});
+      if (efl_ui_range_min_max_get_static_delegate == null)
+      efl_ui_range_min_max_get_static_delegate = new efl_ui_range_min_max_get_delegate(range_min_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_get_static_delegate)});
+      if (efl_ui_range_min_max_set_static_delegate == null)
+      efl_ui_range_min_max_set_static_delegate = new efl_ui_range_min_max_set_delegate(range_min_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.RangeInteractiveConcrete.efl_ui_range_interactive_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.RangeInteractiveConcrete.efl_ui_range_interactive_interface_get();
+   }
+
+
+    private delegate double efl_ui_range_step_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_step_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_step_get_api_delegate> efl_ui_range_step_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_step_get_api_delegate>(_Module, "efl_ui_range_step_get");
+    private static double range_step_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_step_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((RangeInteractive)wrapper).GetRangeStep();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_step_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_step_get_delegate efl_ui_range_step_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_step_set_delegate(System.IntPtr obj, System.IntPtr pd,   double step);
+
+
+    public delegate  void efl_ui_range_step_set_api_delegate(System.IntPtr obj,   double step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_step_set_api_delegate> efl_ui_range_step_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_step_set_api_delegate>(_Module, "efl_ui_range_step_set");
+    private static  void range_step_set(System.IntPtr obj, System.IntPtr pd,  double step)
+   {
+      Eina.Log.Debug("function efl_ui_range_step_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((RangeInteractive)wrapper).SetRangeStep( step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_step_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_range_step_set_delegate efl_ui_range_step_set_static_delegate;
+
+
+    private delegate double efl_ui_range_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate> efl_ui_range_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate>(_Module, "efl_ui_range_value_get");
+    private static double range_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((RangeInteractive)wrapper).GetRangeValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_value_get_delegate efl_ui_range_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double val);
+
+
+    public delegate  void efl_ui_range_value_set_api_delegate(System.IntPtr obj,   double val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate> efl_ui_range_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate>(_Module, "efl_ui_range_value_set");
+    private static  void range_value_set(System.IntPtr obj, System.IntPtr pd,  double val)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((RangeInteractive)wrapper).SetRangeValue( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_range_value_set_delegate efl_ui_range_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double min,   out double max);
+
+
+    public delegate  void efl_ui_range_min_max_get_api_delegate(System.IntPtr obj,   out double min,   out double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate> efl_ui_range_min_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate>(_Module, "efl_ui_range_min_max_get");
+    private static  void range_min_max_get(System.IntPtr obj, System.IntPtr pd,  out double min,  out double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           min = default(double);      max = default(double);                     
+         try {
+            ((RangeInteractive)wrapper).GetRangeMinMax( out min,  out max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out min,  out max);
+      }
+   }
+   private static efl_ui_range_min_max_get_delegate efl_ui_range_min_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   double min,   double max);
+
+
+    public delegate  void efl_ui_range_min_max_set_api_delegate(System.IntPtr obj,   double min,   double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate> efl_ui_range_min_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate>(_Module, "efl_ui_range_min_max_set");
+    private static  void range_min_max_set(System.IntPtr obj, System.IntPtr pd,  double min,  double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((RangeInteractive)wrapper).SetRangeMinMax( min,  max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min,  max);
+      }
+   }
+   private static efl_ui_range_min_max_set_delegate efl_ui_range_min_max_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_relative_layout.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_relative_layout.eo.cs
new file mode 100755 (executable)
index 0000000..807aad1
--- /dev/null
@@ -0,0 +1,600 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>The relative layout class.
+/// A relative layout calculates the size and position of all the children based on their relationship to each other.</summary>
+[RelativeLayoutNativeInherit]
+public class RelativeLayout : Efl.Ui.Widget, Efl.Eo.IWrapper,Efl.PackLayout
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.RelativeLayoutNativeInherit nativeInherit = new Efl.Ui.RelativeLayoutNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (RelativeLayout))
+            return Efl.Ui.RelativeLayoutNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_relative_layout_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public RelativeLayout(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_relative_layout_class_get(), typeof(RelativeLayout), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public RelativeLayout(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected RelativeLayout(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static RelativeLayout static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new RelativeLayout(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object LayoutUpdatedEvtKey = new object();
+   /// <summary>Sent after the layout was updated.</summary>
+   public event EventHandler LayoutUpdatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LayoutUpdatedEvt_delegate)) {
+               eventHandlers.AddHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (remove_cpp_event_handler(key, this.evt_LayoutUpdatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LayoutUpdatedEvt.</summary>
+   public void On_LayoutUpdatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LayoutUpdatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LayoutUpdatedEvt_delegate;
+   private void on_LayoutUpdatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LayoutUpdatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_LayoutUpdatedEvt_delegate = new Efl.EventCb(on_LayoutUpdatedEvt_NativeCallback);
+   }
+   /// <summary>Specifies the left side edge of the child relative to the target. By default, target is parent and relative is 0.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between left and right of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void GetRelationLeft( Efl.Object child,  out Efl.Object target,  out double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_left_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  out target,  out relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Specifies the left side edge of the child relative to the target. By default, target is parent and relative is 0.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between left and right of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void SetRelationLeft( Efl.Object child,  Efl.Object target,  double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_left_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  target,  relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Specifies the right side edge of the child relative to the target. By default, target is parent and relative is 1.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between left and right of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void GetRelationRight( Efl.Object child,  out Efl.Object target,  out double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_right_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  out target,  out relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Specifies the right side edge of the child relative to the target. By default, target is parent and relative is 1.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between left and right of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void SetRelationRight( Efl.Object child,  Efl.Object target,  double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_right_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  target,  relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Specifies the top side edge of the child relative to the target. By default, target is parent and relative is 0.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between top and bottom of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void GetRelationTop( Efl.Object child,  out Efl.Object target,  out double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_top_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  out target,  out relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Specifies the top side edge of the child relative to the target. By default, target is parent and relative is 0.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between top and bottom of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void SetRelationTop( Efl.Object child,  Efl.Object target,  double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_top_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  target,  relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Specifies the bottom side edge of the child relative to the target. By default, target is parent and relative is 1.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between top and bottom of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void GetRelationBottom( Efl.Object child,  out Efl.Object target,  out double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_bottom_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  out target,  out relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Specifies the bottom side edge of the child relative to the target. By default, target is parent and relative is 1.0.</summary>
+   /// <param name="child">The child to specify relation.</param>
+   /// <param name="target">The relative target.</param>
+   /// <param name="relative">The ratio between top and bottom of the target, ranging from 0.0 to 1.0.</param>
+   /// <returns></returns>
+   virtual public  void SetRelationBottom( Efl.Object child,  Efl.Object target,  double relative) {
+                                                             Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_relation_bottom_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  target,  relative);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Remove all relations of the child.</summary>
+   /// <param name="child">The child to unregister</param>
+   /// <returns></returns>
+   virtual public  void Unregister( Efl.Object child) {
+                         Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_unregister_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Remove all relations from the registered children.</summary>
+   /// <returns></returns>
+   virtual public  void UnregisterAll() {
+       Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_unregister_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Begin iterating over this object&apos;s children.</summary>
+   /// <returns>Iterator to object children.</returns>
+   virtual public Eina.Iterator<Efl.Object> ChildrenIterate() {
+       var _ret_var = Efl.Ui.RelativeLayoutNativeInherit.efl_ui_relative_layout_children_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Object>(_ret_var, true, false);
+ }
+   /// <summary>Requests EFL to call the <see cref="Efl.PackLayout.UpdateLayout"/> method on this object.
+   /// This <see cref="Efl.PackLayout.UpdateLayout"/> may be called asynchronously.</summary>
+   /// <returns></returns>
+   virtual public  void LayoutRequest() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_request_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Implementation of this container&apos;s layout algorithm.
+   /// EFL will call this function whenever the contents of this container need to be re-layed out on the canvas.
+   /// 
+   /// This can be overriden to implement custom layout behaviours.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateLayout() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.RelativeLayout.efl_ui_relative_layout_class_get();
+   }
+}
+public class RelativeLayoutNativeInherit : Efl.Ui.WidgetNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_relative_layout_relation_left_get_static_delegate == null)
+      efl_ui_relative_layout_relation_left_get_static_delegate = new efl_ui_relative_layout_relation_left_get_delegate(relation_left_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_left_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_left_get_static_delegate)});
+      if (efl_ui_relative_layout_relation_left_set_static_delegate == null)
+      efl_ui_relative_layout_relation_left_set_static_delegate = new efl_ui_relative_layout_relation_left_set_delegate(relation_left_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_left_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_left_set_static_delegate)});
+      if (efl_ui_relative_layout_relation_right_get_static_delegate == null)
+      efl_ui_relative_layout_relation_right_get_static_delegate = new efl_ui_relative_layout_relation_right_get_delegate(relation_right_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_right_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_right_get_static_delegate)});
+      if (efl_ui_relative_layout_relation_right_set_static_delegate == null)
+      efl_ui_relative_layout_relation_right_set_static_delegate = new efl_ui_relative_layout_relation_right_set_delegate(relation_right_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_right_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_right_set_static_delegate)});
+      if (efl_ui_relative_layout_relation_top_get_static_delegate == null)
+      efl_ui_relative_layout_relation_top_get_static_delegate = new efl_ui_relative_layout_relation_top_get_delegate(relation_top_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_top_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_top_get_static_delegate)});
+      if (efl_ui_relative_layout_relation_top_set_static_delegate == null)
+      efl_ui_relative_layout_relation_top_set_static_delegate = new efl_ui_relative_layout_relation_top_set_delegate(relation_top_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_top_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_top_set_static_delegate)});
+      if (efl_ui_relative_layout_relation_bottom_get_static_delegate == null)
+      efl_ui_relative_layout_relation_bottom_get_static_delegate = new efl_ui_relative_layout_relation_bottom_get_delegate(relation_bottom_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_bottom_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_bottom_get_static_delegate)});
+      if (efl_ui_relative_layout_relation_bottom_set_static_delegate == null)
+      efl_ui_relative_layout_relation_bottom_set_static_delegate = new efl_ui_relative_layout_relation_bottom_set_delegate(relation_bottom_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_relation_bottom_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_relation_bottom_set_static_delegate)});
+      if (efl_ui_relative_layout_unregister_static_delegate == null)
+      efl_ui_relative_layout_unregister_static_delegate = new efl_ui_relative_layout_unregister_delegate(unregister);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_unregister"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_unregister_static_delegate)});
+      if (efl_ui_relative_layout_unregister_all_static_delegate == null)
+      efl_ui_relative_layout_unregister_all_static_delegate = new efl_ui_relative_layout_unregister_all_delegate(unregister_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_unregister_all"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_unregister_all_static_delegate)});
+      if (efl_ui_relative_layout_children_iterate_static_delegate == null)
+      efl_ui_relative_layout_children_iterate_static_delegate = new efl_ui_relative_layout_children_iterate_delegate(children_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_relative_layout_children_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_relative_layout_children_iterate_static_delegate)});
+      if (efl_pack_layout_request_static_delegate == null)
+      efl_pack_layout_request_static_delegate = new efl_pack_layout_request_delegate(layout_request);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_request"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_request_static_delegate)});
+      if (efl_pack_layout_update_static_delegate == null)
+      efl_pack_layout_update_static_delegate = new efl_pack_layout_update_delegate(layout_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_update"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.RelativeLayout.efl_ui_relative_layout_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.RelativeLayout.efl_ui_relative_layout_class_get();
+   }
+
+
+    private delegate  void efl_ui_relative_layout_relation_left_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_left_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_left_get_api_delegate> efl_ui_relative_layout_relation_left_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_left_get_api_delegate>(_Module, "efl_ui_relative_layout_relation_left_get");
+    private static  void relation_left_get(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  out Efl.Object target,  out double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_left_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       target = default(Efl.Object);      relative = default(double);                           
+         try {
+            ((RelativeLayout)wrapper).GetRelationLeft( child,  out target,  out relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_left_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  out target,  out relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_left_get_delegate efl_ui_relative_layout_relation_left_get_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_relation_left_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_left_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_left_set_api_delegate> efl_ui_relative_layout_relation_left_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_left_set_api_delegate>(_Module, "efl_ui_relative_layout_relation_left_set");
+    private static  void relation_left_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  Efl.Object target,  double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_left_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((RelativeLayout)wrapper).SetRelationLeft( child,  target,  relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_left_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  target,  relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_left_set_delegate efl_ui_relative_layout_relation_left_set_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_relation_right_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_right_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_right_get_api_delegate> efl_ui_relative_layout_relation_right_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_right_get_api_delegate>(_Module, "efl_ui_relative_layout_relation_right_get");
+    private static  void relation_right_get(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  out Efl.Object target,  out double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_right_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       target = default(Efl.Object);      relative = default(double);                           
+         try {
+            ((RelativeLayout)wrapper).GetRelationRight( child,  out target,  out relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_right_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  out target,  out relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_right_get_delegate efl_ui_relative_layout_relation_right_get_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_relation_right_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_right_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_right_set_api_delegate> efl_ui_relative_layout_relation_right_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_right_set_api_delegate>(_Module, "efl_ui_relative_layout_relation_right_set");
+    private static  void relation_right_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  Efl.Object target,  double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_right_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((RelativeLayout)wrapper).SetRelationRight( child,  target,  relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_right_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  target,  relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_right_set_delegate efl_ui_relative_layout_relation_right_set_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_relation_top_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_top_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_top_get_api_delegate> efl_ui_relative_layout_relation_top_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_top_get_api_delegate>(_Module, "efl_ui_relative_layout_relation_top_get");
+    private static  void relation_top_get(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  out Efl.Object target,  out double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_top_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       target = default(Efl.Object);      relative = default(double);                           
+         try {
+            ((RelativeLayout)wrapper).GetRelationTop( child,  out target,  out relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_top_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  out target,  out relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_top_get_delegate efl_ui_relative_layout_relation_top_get_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_relation_top_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_top_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_top_set_api_delegate> efl_ui_relative_layout_relation_top_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_top_set_api_delegate>(_Module, "efl_ui_relative_layout_relation_top_set");
+    private static  void relation_top_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  Efl.Object target,  double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_top_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((RelativeLayout)wrapper).SetRelationTop( child,  target,  relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_top_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  target,  relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_top_set_delegate efl_ui_relative_layout_relation_top_set_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_relation_bottom_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_bottom_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  out Efl.Object target,   out double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_bottom_get_api_delegate> efl_ui_relative_layout_relation_bottom_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_bottom_get_api_delegate>(_Module, "efl_ui_relative_layout_relation_bottom_get");
+    private static  void relation_bottom_get(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  out Efl.Object target,  out double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_bottom_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       target = default(Efl.Object);      relative = default(double);                           
+         try {
+            ((RelativeLayout)wrapper).GetRelationBottom( child,  out target,  out relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_bottom_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  out target,  out relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_bottom_get_delegate efl_ui_relative_layout_relation_bottom_get_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_relation_bottom_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+
+
+    public delegate  void efl_ui_relative_layout_relation_bottom_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object target,   double relative);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_bottom_set_api_delegate> efl_ui_relative_layout_relation_bottom_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_relation_bottom_set_api_delegate>(_Module, "efl_ui_relative_layout_relation_bottom_set");
+    private static  void relation_bottom_set(System.IntPtr obj, System.IntPtr pd,  Efl.Object child,  Efl.Object target,  double relative)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_relation_bottom_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((RelativeLayout)wrapper).SetRelationBottom( child,  target,  relative);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_relative_layout_relation_bottom_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  target,  relative);
+      }
+   }
+   private static efl_ui_relative_layout_relation_bottom_set_delegate efl_ui_relative_layout_relation_bottom_set_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_unregister_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child);
+
+
+    public delegate  void efl_ui_relative_layout_unregister_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_unregister_api_delegate> efl_ui_relative_layout_unregister_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_unregister_api_delegate>(_Module, "efl_ui_relative_layout_unregister");
+    private static  void unregister(System.IntPtr obj, System.IntPtr pd,  Efl.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_unregister was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((RelativeLayout)wrapper).Unregister( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_relative_layout_unregister_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_relative_layout_unregister_delegate efl_ui_relative_layout_unregister_static_delegate;
+
+
+    private delegate  void efl_ui_relative_layout_unregister_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_relative_layout_unregister_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_unregister_all_api_delegate> efl_ui_relative_layout_unregister_all_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_unregister_all_api_delegate>(_Module, "efl_ui_relative_layout_unregister_all");
+    private static  void unregister_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_unregister_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((RelativeLayout)wrapper).UnregisterAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_relative_layout_unregister_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_relative_layout_unregister_all_delegate efl_ui_relative_layout_unregister_all_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_relative_layout_children_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_relative_layout_children_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_relative_layout_children_iterate_api_delegate> efl_ui_relative_layout_children_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_ui_relative_layout_children_iterate_api_delegate>(_Module, "efl_ui_relative_layout_children_iterate");
+    private static  System.IntPtr children_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_relative_layout_children_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Object> _ret_var = default(Eina.Iterator<Efl.Object>);
+         try {
+            _ret_var = ((RelativeLayout)wrapper).ChildrenIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_ui_relative_layout_children_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_relative_layout_children_iterate_delegate efl_ui_relative_layout_children_iterate_static_delegate;
+
+
+    private delegate  void efl_pack_layout_request_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_request_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate> efl_pack_layout_request_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate>(_Module, "efl_pack_layout_request");
+    private static  void layout_request(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_request was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((RelativeLayout)wrapper).LayoutRequest();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_request_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_request_delegate efl_pack_layout_request_static_delegate;
+
+
+    private delegate  void efl_pack_layout_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate> efl_pack_layout_update_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate>(_Module, "efl_pack_layout_update");
+    private static  void layout_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((RelativeLayout)wrapper).UpdateLayout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_update_delegate efl_pack_layout_update_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_scroll_alert_popup.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_scroll_alert_popup.eo.cs
new file mode 100755 (executable)
index 0000000..9a0e521
--- /dev/null
@@ -0,0 +1,174 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>EFL UI Scroll Alert Popup class</summary>
+[ScrollAlertPopupNativeInherit]
+public class ScrollAlertPopup : Efl.Ui.AlertPopup, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ScrollAlertPopupNativeInherit nativeInherit = new Efl.Ui.ScrollAlertPopupNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ScrollAlertPopup))
+            return Efl.Ui.ScrollAlertPopupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_scroll_alert_popup_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public ScrollAlertPopup(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_scroll_alert_popup_class_get(), typeof(ScrollAlertPopup), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ScrollAlertPopup(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ScrollAlertPopup(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ScrollAlertPopup static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ScrollAlertPopup(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get the expandable max size of popup.
+   /// If the given max_size is -1, then popup appears with its size. However, if the given max_size is bigger than 0 the popup size is up to the given max_size. If popup content&apos;s min size is bigger than the given max_size the scroller appears in the popup content area.</summary>
+   /// <returns>A 2D max size in pixel units.</returns>
+   virtual public Eina.Size2D GetExpandable() {
+       var _ret_var = Efl.Ui.ScrollAlertPopupNativeInherit.efl_ui_scroll_alert_popup_expandable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Set the expandable max size of popup.
+   /// If the given max_size is -1, then a popup appears with its size. However, if the given max_size is bigger than 0 the popup size is up to the given max_size. If popup content&apos;s min size is bigger than the given max_size the scroller appears in the popup content area.</summary>
+   /// <param name="max_size">A 2D max size in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetExpandable( Eina.Size2D max_size) {
+       var _in_max_size = Eina.Size2D_StructConversion.ToInternal(max_size);
+                  Efl.Ui.ScrollAlertPopupNativeInherit.efl_ui_scroll_alert_popup_expandable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_max_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the expandable max size of popup.
+/// If the given max_size is -1, then popup appears with its size. However, if the given max_size is bigger than 0 the popup size is up to the given max_size. If popup content&apos;s min size is bigger than the given max_size the scroller appears in the popup content area.</summary>
+/// <value>A 2D max size in pixel units.</value>
+   public Eina.Size2D Expandable {
+      get { return GetExpandable(); }
+      set { SetExpandable( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ScrollAlertPopup.efl_ui_scroll_alert_popup_class_get();
+   }
+}
+public class ScrollAlertPopupNativeInherit : Efl.Ui.AlertPopupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_scroll_alert_popup_expandable_get_static_delegate == null)
+      efl_ui_scroll_alert_popup_expandable_get_static_delegate = new efl_ui_scroll_alert_popup_expandable_get_delegate(expandable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scroll_alert_popup_expandable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scroll_alert_popup_expandable_get_static_delegate)});
+      if (efl_ui_scroll_alert_popup_expandable_set_static_delegate == null)
+      efl_ui_scroll_alert_popup_expandable_set_static_delegate = new efl_ui_scroll_alert_popup_expandable_set_delegate(expandable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scroll_alert_popup_expandable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scroll_alert_popup_expandable_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ScrollAlertPopup.efl_ui_scroll_alert_popup_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ScrollAlertPopup.efl_ui_scroll_alert_popup_class_get();
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scroll_alert_popup_expandable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scroll_alert_popup_expandable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scroll_alert_popup_expandable_get_api_delegate> efl_ui_scroll_alert_popup_expandable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scroll_alert_popup_expandable_get_api_delegate>(_Module, "efl_ui_scroll_alert_popup_expandable_get");
+    private static Eina.Size2D_StructInternal expandable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scroll_alert_popup_expandable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ScrollAlertPopup)wrapper).GetExpandable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scroll_alert_popup_expandable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scroll_alert_popup_expandable_get_delegate efl_ui_scroll_alert_popup_expandable_get_static_delegate;
+
+
+    private delegate  void efl_ui_scroll_alert_popup_expandable_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal max_size);
+
+
+    public delegate  void efl_ui_scroll_alert_popup_expandable_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal max_size);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scroll_alert_popup_expandable_set_api_delegate> efl_ui_scroll_alert_popup_expandable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scroll_alert_popup_expandable_set_api_delegate>(_Module, "efl_ui_scroll_alert_popup_expandable_set");
+    private static  void expandable_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal max_size)
+   {
+      Eina.Log.Debug("function efl_ui_scroll_alert_popup_expandable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_max_size = Eina.Size2D_StructConversion.ToManaged(max_size);
+                     
+         try {
+            ((ScrollAlertPopup)wrapper).SetExpandable( _in_max_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scroll_alert_popup_expandable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  max_size);
+      }
+   }
+   private static efl_ui_scroll_alert_popup_expandable_set_delegate efl_ui_scroll_alert_popup_expandable_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_scroll_alert_popup_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_scroll_alert_popup_part.eo.cs
new file mode 100755 (executable)
index 0000000..8669fbb
--- /dev/null
@@ -0,0 +1,322 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Scroll Alert Popup internal part class</summary>
+[ScrollAlertPopupPartNativeInherit]
+public class ScrollAlertPopupPart : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content,Efl.Text
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ScrollAlertPopupPartNativeInherit nativeInherit = new Efl.Ui.ScrollAlertPopupPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ScrollAlertPopupPart))
+            return Efl.Ui.ScrollAlertPopupPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_scroll_alert_popup_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public ScrollAlertPopupPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_scroll_alert_popup_part_class_get(), typeof(ScrollAlertPopupPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ScrollAlertPopupPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ScrollAlertPopupPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ScrollAlertPopupPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ScrollAlertPopupPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ScrollAlertPopupPart.efl_ui_scroll_alert_popup_part_class_get();
+   }
+}
+public class ScrollAlertPopupPartNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ScrollAlertPopupPart.efl_ui_scroll_alert_popup_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ScrollAlertPopupPart.efl_ui_scroll_alert_popup_part_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ScrollAlertPopupPart)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ScrollAlertPopupPart)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((ScrollAlertPopupPart)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((ScrollAlertPopupPart)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ScrollAlertPopupPart)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_scroll_manager.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_scroll_manager.eo.cs
new file mode 100755 (executable)
index 0000000..6e4c35a
--- /dev/null
@@ -0,0 +1,2338 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace Scroll { 
+/// <summary>Efl ui scroll manager class</summary>
+[ManagerNativeInherit]
+public class Manager : Efl.Object, Efl.Eo.IWrapper,Efl.Ui.I18n,Efl.Ui.Scrollable,Efl.Ui.ScrollableInteractive,Efl.Ui.Scrollbar
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.Scroll.ManagerNativeInherit nativeInherit = new Efl.Ui.Scroll.ManagerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Manager))
+            return Efl.Ui.Scroll.ManagerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_scroll_manager_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Manager(Efl.Object parent= null
+         ) :
+      base(efl_ui_scroll_manager_class_get(), typeof(Manager), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Manager(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Manager(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Manager static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Manager(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPressEvtKey = new object();
+   /// <summary>Called when bar is pressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPressEvt_delegate)) {
+               eventHandlers.AddHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarPressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPressEvt.</summary>
+   public void On_BarPressEvt(Efl.Ui.ScrollbarBarPressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args>)eventHandlers[BarPressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPressEvt_delegate;
+   private void on_BarPressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarPressEvt_Args args = new Efl.Ui.ScrollbarBarPressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarPressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarUnpressEvtKey = new object();
+   /// <summary>Called when bar is unpressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarUnpressEvt_delegate)) {
+               eventHandlers.AddHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarUnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarUnpressEvt.</summary>
+   public void On_BarUnpressEvt(Efl.Ui.ScrollbarBarUnpressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args>)eventHandlers[BarUnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarUnpressEvt_delegate;
+   private void on_BarUnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarUnpressEvt_Args args = new Efl.Ui.ScrollbarBarUnpressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarUnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarDragEvtKey = new object();
+   /// <summary>Called when bar is dragged</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarDragEvt_delegate)) {
+               eventHandlers.AddHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_BarDragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarDragEvt.</summary>
+   public void On_BarDragEvt(Efl.Ui.ScrollbarBarDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args>)eventHandlers[BarDragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarDragEvt_delegate;
+   private void on_BarDragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarDragEvt_Args args = new Efl.Ui.ScrollbarBarDragEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarDragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarSizeChangedEvtKey = new object();
+   /// <summary>Called when bar size is changed</summary>
+   public event EventHandler BarSizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarSizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarSizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarSizeChangedEvt.</summary>
+   public void On_BarSizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarSizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarSizeChangedEvt_delegate;
+   private void on_BarSizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarSizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPosChangedEvtKey = new object();
+   /// <summary>Called when bar position is changed</summary>
+   public event EventHandler BarPosChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPosChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarPosChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPosChangedEvt.</summary>
+   public void On_BarPosChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarPosChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPosChangedEvt_delegate;
+   private void on_BarPosChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarPosChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarShowEvtKey = new object();
+   /// <summary>Callend when bar is shown</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarShowEvt_delegate)) {
+               eventHandlers.AddHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (remove_cpp_event_handler(key, this.evt_BarShowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarShowEvt.</summary>
+   public void On_BarShowEvt(Efl.Ui.ScrollbarBarShowEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args>)eventHandlers[BarShowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarShowEvt_delegate;
+   private void on_BarShowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarShowEvt_Args args = new Efl.Ui.ScrollbarBarShowEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarShowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarHideEvtKey = new object();
+   /// <summary>Called when bar is hidden</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarHideEvt_delegate)) {
+               eventHandlers.AddHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (remove_cpp_event_handler(key, this.evt_BarHideEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarHideEvt.</summary>
+   public void On_BarHideEvt(Efl.Ui.ScrollbarBarHideEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args>)eventHandlers[BarHideEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarHideEvt_delegate;
+   private void on_BarHideEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarHideEvt_Args args = new Efl.Ui.ScrollbarBarHideEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarHideEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_BarPressEvt_delegate = new Efl.EventCb(on_BarPressEvt_NativeCallback);
+      evt_BarUnpressEvt_delegate = new Efl.EventCb(on_BarUnpressEvt_NativeCallback);
+      evt_BarDragEvt_delegate = new Efl.EventCb(on_BarDragEvt_NativeCallback);
+      evt_BarSizeChangedEvt_delegate = new Efl.EventCb(on_BarSizeChangedEvt_NativeCallback);
+      evt_BarPosChangedEvt_delegate = new Efl.EventCb(on_BarPosChangedEvt_NativeCallback);
+      evt_BarShowEvt_delegate = new Efl.EventCb(on_BarShowEvt_NativeCallback);
+      evt_BarHideEvt_delegate = new Efl.EventCb(on_BarHideEvt_NativeCallback);
+   }
+   /// <summary>This is the internal pan object managed by scroll manager.
+   /// This property is protected as it is meant for scrollable object implementations only, to set and access the internal pan object. If pan is set to NULL, scrolling does not work.</summary>
+   /// <param name="pan">Pan object</param>
+   /// <returns></returns>
+   virtual public  void SetPan( Efl.Ui.Pan pan) {
+                         Efl.Ui.Scroll.ManagerNativeInherit.efl_ui_scroll_manager_pan_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pan);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether this object should be mirrored.
+   /// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+   /// <returns><c>true</c> for RTL, <c>false</c> for LTR (default).</returns>
+   virtual public bool GetMirrored() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_mirrored_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether this object should be mirrored.
+   /// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+   /// <param name="rtl"><c>true</c> for RTL, <c>false</c> for LTR (default).</param>
+   /// <returns></returns>
+   virtual public  void SetMirrored( bool rtl) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_mirrored_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), rtl);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+   /// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+   /// 
+   /// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+   /// <returns>Whether the widget uses automatic mirroring</returns>
+   virtual public bool GetMirroredAutomatic() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_mirrored_automatic_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+   /// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+   /// 
+   /// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+   /// <param name="automatic">Whether the widget uses automatic mirroring</param>
+   /// <returns></returns>
+   virtual public  void SetMirroredAutomatic( bool automatic) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_mirrored_automatic_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), automatic);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the language for this object.</summary>
+   /// <returns>The current language.</returns>
+   virtual public  System.String GetLanguage() {
+       var _ret_var = Efl.Ui.I18nNativeInherit.efl_ui_language_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the language for this object.</summary>
+   /// <param name="language">The current language.</param>
+   /// <returns></returns>
+   virtual public  void SetLanguage(  System.String language) {
+                         Efl.Ui.I18nNativeInherit.efl_ui_language_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), language);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content position</summary>
+   /// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+   virtual public Eina.Position2D GetContentPos() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The content position</summary>
+   /// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+   /// <returns></returns>
+   virtual public  void SetContentPos( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content size</summary>
+   /// <returns>The content size in pixels.</returns>
+   virtual public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The viewport geometry</summary>
+   /// <returns>It is absolute geometry.</returns>
+   virtual public Eina.Rect GetViewportGeometry() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void GetBounceEnabled( out bool horiz,  out bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void SetBounceEnabled( bool horiz,  bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollFreeze() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollFreeze( bool freeze) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollHold() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollHold( bool hold) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void GetLooping( out bool loop_h,  out bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void SetLooping( bool loop_h,  bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   virtual public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   virtual public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void GetGravity( out double x,  out double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void SetGravity( double x,  double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   virtual public  void SetMatchContent( bool w,  bool h) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_match_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <returns>The step size in pixels</returns>
+   virtual public Eina.Position2D GetStepSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <param name="step">The step size in pixels</param>
+   /// <returns></returns>
+   virtual public  void SetStepSize( Eina.Position2D step) {
+       var _in_step = Eina.Position2D_StructConversion.ToInternal(step);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+   /// <param name="rect">The position where to scroll. and The size user want to see</param>
+   /// <param name="animation">Whether to scroll with animation or not</param>
+   /// <returns></returns>
+   virtual public  void Scroll( Eina.Rect rect,  bool animation) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                    Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+   /// <param name="width">Value between 0.0 and 1.0</param>
+   /// <param name="height">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarSize( out double width,  out double height) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out width,  out height);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarPosition( out double posx,  out double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out posx,  out posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void SetBarPosition( double posx,  double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), posx,  posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Update bar visibility.
+   /// The object will call this function whenever the bar need to be shown or hidden.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateBarVisibility() {
+       Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This is the internal pan object managed by scroll manager.
+/// This property is protected as it is meant for scrollable object implementations only, to set and access the internal pan object. If pan is set to NULL, scrolling does not work.</summary>
+/// <value>Pan object</value>
+   public Efl.Ui.Pan Pan {
+      set { SetPan( value); }
+   }
+   /// <summary>Whether this object should be mirrored.
+/// If mirrored, an object is in RTL (right to left) mode instead of LTR (left to right).</summary>
+/// <value><c>true</c> for RTL, <c>false</c> for LTR (default).</value>
+   public bool Mirrored {
+      get { return GetMirrored(); }
+      set { SetMirrored( value); }
+   }
+   /// <summary>Whether the property <see cref="Efl.Ui.I18n.Mirrored"/> should be set automatically.
+/// If enabled, the system or application configuration will be used to set the value of <see cref="Efl.Ui.I18n.Mirrored"/>.
+/// 
+/// This property may be implemented by high-level widgets (in Efl.Ui) but not by low-level widgets (in <see cref="Efl.Canvas.Scene"/>) as the configuration should affect only high-level widgets.</summary>
+/// <value>Whether the widget uses automatic mirroring</value>
+   public bool MirroredAutomatic {
+      get { return GetMirroredAutomatic(); }
+      set { SetMirroredAutomatic( value); }
+   }
+   /// <summary>The (human) language for this object.</summary>
+/// <value>The current language.</value>
+   public  System.String Language {
+      get { return GetLanguage(); }
+      set { SetLanguage( value); }
+   }
+   /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   public Eina.Position2D ContentPos {
+      get { return GetContentPos(); }
+      set { SetContentPos( value); }
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   public Eina.Rect ViewportGeometry {
+      get { return GetViewportGeometry(); }
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool ScrollFreeze {
+      get { return GetScrollFreeze(); }
+      set { SetScrollFreeze( value); }
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool ScrollHold {
+      get { return GetScrollHold(); }
+      set { SetScrollHold( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   public Eina.Position2D StepSize {
+      get { return GetStepSize(); }
+      set { SetStepSize( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Scroll.Manager.efl_ui_scroll_manager_class_get();
+   }
+}
+public class ManagerNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_scroll_manager_pan_set_static_delegate == null)
+      efl_ui_scroll_manager_pan_set_static_delegate = new efl_ui_scroll_manager_pan_set_delegate(pan_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scroll_manager_pan_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scroll_manager_pan_set_static_delegate)});
+      if (efl_ui_mirrored_get_static_delegate == null)
+      efl_ui_mirrored_get_static_delegate = new efl_ui_mirrored_get_delegate(mirrored_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_get_static_delegate)});
+      if (efl_ui_mirrored_set_static_delegate == null)
+      efl_ui_mirrored_set_static_delegate = new efl_ui_mirrored_set_delegate(mirrored_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_set_static_delegate)});
+      if (efl_ui_mirrored_automatic_get_static_delegate == null)
+      efl_ui_mirrored_automatic_get_static_delegate = new efl_ui_mirrored_automatic_get_delegate(mirrored_automatic_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_automatic_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_automatic_get_static_delegate)});
+      if (efl_ui_mirrored_automatic_set_static_delegate == null)
+      efl_ui_mirrored_automatic_set_static_delegate = new efl_ui_mirrored_automatic_set_delegate(mirrored_automatic_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_mirrored_automatic_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_mirrored_automatic_set_static_delegate)});
+      if (efl_ui_language_get_static_delegate == null)
+      efl_ui_language_get_static_delegate = new efl_ui_language_get_delegate(language_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_language_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_language_get_static_delegate)});
+      if (efl_ui_language_set_static_delegate == null)
+      efl_ui_language_set_static_delegate = new efl_ui_language_set_delegate(language_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_language_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_language_set_static_delegate)});
+      if (efl_ui_scrollable_content_pos_get_static_delegate == null)
+      efl_ui_scrollable_content_pos_get_static_delegate = new efl_ui_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_get_static_delegate)});
+      if (efl_ui_scrollable_content_pos_set_static_delegate == null)
+      efl_ui_scrollable_content_pos_set_static_delegate = new efl_ui_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_set_static_delegate)});
+      if (efl_ui_scrollable_content_size_get_static_delegate == null)
+      efl_ui_scrollable_content_size_get_static_delegate = new efl_ui_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_scrollable_viewport_geometry_get_static_delegate == null)
+      efl_ui_scrollable_viewport_geometry_get_static_delegate = new efl_ui_scrollable_viewport_geometry_get_delegate(viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_viewport_geometry_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_get_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_get_static_delegate = new efl_ui_scrollable_bounce_enabled_get_delegate(bounce_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_set_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_set_static_delegate = new efl_ui_scrollable_bounce_enabled_set_delegate(bounce_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_get_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_get_static_delegate = new efl_ui_scrollable_scroll_freeze_get_delegate(scroll_freeze_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_set_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_set_static_delegate = new efl_ui_scrollable_scroll_freeze_set_delegate(scroll_freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_get_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_get_static_delegate = new efl_ui_scrollable_scroll_hold_get_delegate(scroll_hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_set_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_set_static_delegate = new efl_ui_scrollable_scroll_hold_set_delegate(scroll_hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_set_static_delegate)});
+      if (efl_ui_scrollable_looping_get_static_delegate == null)
+      efl_ui_scrollable_looping_get_static_delegate = new efl_ui_scrollable_looping_get_delegate(looping_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_get_static_delegate)});
+      if (efl_ui_scrollable_looping_set_static_delegate == null)
+      efl_ui_scrollable_looping_set_static_delegate = new efl_ui_scrollable_looping_set_delegate(looping_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_set_static_delegate)});
+      if (efl_ui_scrollable_movement_block_get_static_delegate == null)
+      efl_ui_scrollable_movement_block_get_static_delegate = new efl_ui_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_get_static_delegate)});
+      if (efl_ui_scrollable_movement_block_set_static_delegate == null)
+      efl_ui_scrollable_movement_block_set_static_delegate = new efl_ui_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_set_static_delegate)});
+      if (efl_ui_scrollable_gravity_get_static_delegate == null)
+      efl_ui_scrollable_gravity_get_static_delegate = new efl_ui_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_get_static_delegate)});
+      if (efl_ui_scrollable_gravity_set_static_delegate == null)
+      efl_ui_scrollable_gravity_set_static_delegate = new efl_ui_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_set_static_delegate)});
+      if (efl_ui_scrollable_match_content_set_static_delegate == null)
+      efl_ui_scrollable_match_content_set_static_delegate = new efl_ui_scrollable_match_content_set_delegate(match_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_match_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_match_content_set_static_delegate)});
+      if (efl_ui_scrollable_step_size_get_static_delegate == null)
+      efl_ui_scrollable_step_size_get_static_delegate = new efl_ui_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_get_static_delegate)});
+      if (efl_ui_scrollable_step_size_set_static_delegate == null)
+      efl_ui_scrollable_step_size_set_static_delegate = new efl_ui_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_static_delegate == null)
+      efl_ui_scrollable_scroll_static_delegate = new efl_ui_scrollable_scroll_delegate(scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_get_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_get_static_delegate = new efl_ui_scrollbar_bar_mode_get_delegate(bar_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_set_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_set_static_delegate = new efl_ui_scrollbar_bar_mode_set_delegate(bar_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_size_get_static_delegate == null)
+      efl_ui_scrollbar_bar_size_get_static_delegate = new efl_ui_scrollbar_bar_size_get_delegate(bar_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_size_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_get_static_delegate == null)
+      efl_ui_scrollbar_bar_position_get_static_delegate = new efl_ui_scrollbar_bar_position_get_delegate(bar_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_set_static_delegate == null)
+      efl_ui_scrollbar_bar_position_set_static_delegate = new efl_ui_scrollbar_bar_position_set_delegate(bar_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_visibility_update_static_delegate == null)
+      efl_ui_scrollbar_bar_visibility_update_static_delegate = new efl_ui_scrollbar_bar_visibility_update_delegate(bar_visibility_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_visibility_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_visibility_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Scroll.Manager.efl_ui_scroll_manager_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Scroll.Manager.efl_ui_scroll_manager_class_get();
+   }
+
+
+    private delegate  void efl_ui_scroll_manager_pan_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Pan, Efl.Eo.NonOwnTag>))]  Efl.Ui.Pan pan);
+
+
+    public delegate  void efl_ui_scroll_manager_pan_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Pan, Efl.Eo.NonOwnTag>))]  Efl.Ui.Pan pan);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scroll_manager_pan_set_api_delegate> efl_ui_scroll_manager_pan_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scroll_manager_pan_set_api_delegate>(_Module, "efl_ui_scroll_manager_pan_set");
+    private static  void pan_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Pan pan)
+   {
+      Eina.Log.Debug("function efl_ui_scroll_manager_pan_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetPan( pan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scroll_manager_pan_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pan);
+      }
+   }
+   private static efl_ui_scroll_manager_pan_set_delegate efl_ui_scroll_manager_pan_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_mirrored_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_mirrored_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_get_api_delegate> efl_ui_mirrored_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_get_api_delegate>(_Module, "efl_ui_mirrored_get");
+    private static bool mirrored_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Manager)wrapper).GetMirrored();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_mirrored_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_mirrored_get_delegate efl_ui_mirrored_get_static_delegate;
+
+
+    private delegate  void efl_ui_mirrored_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool rtl);
+
+
+    public delegate  void efl_ui_mirrored_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool rtl);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_set_api_delegate> efl_ui_mirrored_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_set_api_delegate>(_Module, "efl_ui_mirrored_set");
+    private static  void mirrored_set(System.IntPtr obj, System.IntPtr pd,  bool rtl)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetMirrored( rtl);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_mirrored_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rtl);
+      }
+   }
+   private static efl_ui_mirrored_set_delegate efl_ui_mirrored_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_mirrored_automatic_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_mirrored_automatic_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_get_api_delegate> efl_ui_mirrored_automatic_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_get_api_delegate>(_Module, "efl_ui_mirrored_automatic_get");
+    private static bool mirrored_automatic_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_automatic_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Manager)wrapper).GetMirroredAutomatic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_mirrored_automatic_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_mirrored_automatic_get_delegate efl_ui_mirrored_automatic_get_static_delegate;
+
+
+    private delegate  void efl_ui_mirrored_automatic_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+
+
+    public delegate  void efl_ui_mirrored_automatic_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+    public static Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_set_api_delegate> efl_ui_mirrored_automatic_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_mirrored_automatic_set_api_delegate>(_Module, "efl_ui_mirrored_automatic_set");
+    private static  void mirrored_automatic_set(System.IntPtr obj, System.IntPtr pd,  bool automatic)
+   {
+      Eina.Log.Debug("function efl_ui_mirrored_automatic_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetMirroredAutomatic( automatic);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_mirrored_automatic_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  automatic);
+      }
+   }
+   private static efl_ui_mirrored_automatic_set_delegate efl_ui_mirrored_automatic_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_language_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_language_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_language_get_api_delegate> efl_ui_language_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_language_get_api_delegate>(_Module, "efl_ui_language_get");
+    private static  System.String language_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_language_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Manager)wrapper).GetLanguage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_language_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_language_get_delegate efl_ui_language_get_static_delegate;
+
+
+    private delegate  void efl_ui_language_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String language);
+
+
+    public delegate  void efl_ui_language_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String language);
+    public static Efl.Eo.FunctionWrapper<efl_ui_language_set_api_delegate> efl_ui_language_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_language_set_api_delegate>(_Module, "efl_ui_language_set");
+    private static  void language_set(System.IntPtr obj, System.IntPtr pd,   System.String language)
+   {
+      Eina.Log.Debug("function efl_ui_language_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetLanguage( language);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_language_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  language);
+      }
+   }
+   private static efl_ui_language_set_delegate efl_ui_language_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate> efl_ui_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate>(_Module, "efl_ui_scrollable_content_pos_get");
+    private static Eina.Position2D_StructInternal content_pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Manager)wrapper).GetContentPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_pos_get_delegate efl_ui_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_ui_scrollable_content_pos_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate> efl_ui_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate>(_Module, "efl_ui_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Manager)wrapper).SetContentPos( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_ui_scrollable_content_pos_set_delegate efl_ui_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate> efl_ui_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_scrollable_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Manager)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_size_get_delegate efl_ui_scrollable_content_size_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate> efl_ui_scrollable_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate>(_Module, "efl_ui_scrollable_viewport_geometry_get");
+    private static Eina.Rect_StructInternal viewport_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Manager)wrapper).GetViewportGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_viewport_geometry_get_delegate efl_ui_scrollable_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate> efl_ui_scrollable_bounce_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_get");
+    private static  void bounce_enabled_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((Manager)wrapper).GetBounceEnabled( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_get_delegate efl_ui_scrollable_bounce_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate> efl_ui_scrollable_bounce_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_set");
+    private static  void bounce_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Manager)wrapper).SetBounceEnabled( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_set_delegate efl_ui_scrollable_bounce_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_freeze_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_freeze_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate> efl_ui_scrollable_scroll_freeze_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_get");
+    private static bool scroll_freeze_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Manager)wrapper).GetScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_get_delegate efl_ui_scrollable_scroll_freeze_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void efl_ui_scrollable_scroll_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate> efl_ui_scrollable_scroll_freeze_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_set");
+    private static  void scroll_freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetScrollFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_set_delegate efl_ui_scrollable_scroll_freeze_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate> efl_ui_scrollable_scroll_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_get");
+    private static bool scroll_hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Manager)wrapper).GetScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_get_delegate efl_ui_scrollable_scroll_hold_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void efl_ui_scrollable_scroll_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate> efl_ui_scrollable_scroll_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_set");
+    private static  void scroll_hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetScrollHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_set_delegate efl_ui_scrollable_scroll_hold_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate> efl_ui_scrollable_looping_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate>(_Module, "efl_ui_scrollable_looping_get");
+    private static  void looping_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((Manager)wrapper).GetLooping( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_get_delegate efl_ui_scrollable_looping_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate> efl_ui_scrollable_looping_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate>(_Module, "efl_ui_scrollable_looping_set");
+    private static  void looping_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Manager)wrapper).SetLooping( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_set_delegate efl_ui_scrollable_looping_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate> efl_ui_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate>(_Module, "efl_ui_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((Manager)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_movement_block_get_delegate efl_ui_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void efl_ui_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate> efl_ui_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate>(_Module, "efl_ui_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Manager)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static efl_ui_scrollable_movement_block_set_delegate efl_ui_scrollable_movement_block_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate> efl_ui_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate>(_Module, "efl_ui_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Manager)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_get_delegate efl_ui_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate> efl_ui_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate>(_Module, "efl_ui_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Manager)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_set_delegate efl_ui_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_match_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void efl_ui_scrollable_match_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate> efl_ui_scrollable_match_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate>(_Module, "efl_ui_scrollable_match_content_set");
+    private static  void match_content_set(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_match_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Manager)wrapper).SetMatchContent( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_match_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static efl_ui_scrollable_match_content_set_delegate efl_ui_scrollable_match_content_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate> efl_ui_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate>(_Module, "efl_ui_scrollable_step_size_get");
+    private static Eina.Position2D_StructInternal step_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Manager)wrapper).GetStepSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_step_size_get_delegate efl_ui_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal step);
+
+
+    public delegate  void efl_ui_scrollable_step_size_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate> efl_ui_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate>(_Module, "efl_ui_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal step)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_step = Eina.Position2D_StructConversion.ToManaged(step);
+                     
+         try {
+            ((Manager)wrapper).SetStepSize( _in_step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_scrollable_step_size_set_delegate efl_ui_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_scrollable_scroll_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate> efl_ui_scrollable_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate>(_Module, "efl_ui_scrollable_scroll");
+    private static  void scroll(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                       
+         try {
+            ((Manager)wrapper).Scroll( _in_rect,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  animation);
+      }
+   }
+   private static efl_ui_scrollable_scroll_delegate efl_ui_scrollable_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_get_api_delegate(System.IntPtr obj,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate> efl_ui_scrollbar_bar_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_get");
+    private static  void bar_mode_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Efl.Ui.ScrollbarMode);      vbar = default(Efl.Ui.ScrollbarMode);                     
+         try {
+            ((Manager)wrapper).GetBarMode( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_get_delegate efl_ui_scrollbar_bar_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate> efl_ui_scrollbar_bar_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_set");
+    private static  void bar_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Manager)wrapper).SetBarMode( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_set_delegate efl_ui_scrollbar_bar_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double width,   out double height);
+
+
+    public delegate  void efl_ui_scrollbar_bar_size_get_api_delegate(System.IntPtr obj,   out double width,   out double height);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate> efl_ui_scrollbar_bar_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_size_get");
+    private static  void bar_size_get(System.IntPtr obj, System.IntPtr pd,  out double width,  out double height)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           width = default(double);      height = default(double);                     
+         try {
+            ((Manager)wrapper).GetBarSize( out width,  out height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out width,  out height);
+      }
+   }
+   private static efl_ui_scrollbar_bar_size_get_delegate efl_ui_scrollbar_bar_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double posx,   out double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_get_api_delegate(System.IntPtr obj,   out double posx,   out double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate> efl_ui_scrollbar_bar_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_get");
+    private static  void bar_position_get(System.IntPtr obj, System.IntPtr pd,  out double posx,  out double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           posx = default(double);      posy = default(double);                     
+         try {
+            ((Manager)wrapper).GetBarPosition( out posx,  out posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out posx,  out posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_get_delegate efl_ui_scrollbar_bar_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   double posx,   double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_set_api_delegate(System.IntPtr obj,   double posx,   double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate> efl_ui_scrollbar_bar_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_set");
+    private static  void bar_position_set(System.IntPtr obj, System.IntPtr pd,  double posx,  double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Manager)wrapper).SetBarPosition( posx,  posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  posx,  posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_set_delegate efl_ui_scrollbar_bar_position_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_visibility_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_scrollbar_bar_visibility_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate> efl_ui_scrollbar_bar_visibility_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate>(_Module, "efl_ui_scrollbar_bar_visibility_update");
+    private static  void bar_visibility_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_visibility_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Manager)wrapper).UpdateBarVisibility();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollbar_bar_visibility_update_delegate efl_ui_scrollbar_bar_visibility_update_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_scrollable.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_scrollable.eo.cs
new file mode 100755 (executable)
index 0000000..9b2dc1a
--- /dev/null
@@ -0,0 +1,871 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI scrollable interface</summary>
+[ScrollableNativeInherit]
+public interface Scrollable : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Called when scroll operation starts</summary>
+   event EventHandler ScrollStartEvt;
+   /// <summary>Called when scrolling</summary>
+   event EventHandler ScrollEvt;
+   /// <summary>Called when scroll operation stops</summary>
+   event EventHandler ScrollStopEvt;
+   /// <summary>Called when scrolling upwards</summary>
+   event EventHandler ScrollUpEvt;
+   /// <summary>Called when scrolling downwards</summary>
+   event EventHandler ScrollDownEvt;
+   /// <summary>Called when scrolling left</summary>
+   event EventHandler ScrollLeftEvt;
+   /// <summary>Called when scrolling right</summary>
+   event EventHandler ScrollRightEvt;
+   /// <summary>Called when hitting the top edge</summary>
+   event EventHandler EdgeUpEvt;
+   /// <summary>Called when hitting the bottom edge</summary>
+   event EventHandler EdgeDownEvt;
+   /// <summary>Called when hitting the left edge</summary>
+   event EventHandler EdgeLeftEvt;
+   /// <summary>Called when hitting the right edge</summary>
+   event EventHandler EdgeRightEvt;
+   /// <summary>Called when scroll animation starts</summary>
+   event EventHandler ScrollAnimStartEvt;
+   /// <summary>Called when scroll animation stopps</summary>
+   event EventHandler ScrollAnimStopEvt;
+   /// <summary>Called when scroll drag starts</summary>
+   event EventHandler ScrollDragStartEvt;
+   /// <summary>Called when scroll drag stops</summary>
+   event EventHandler ScrollDragStopEvt;
+}
+/// <summary>Efl UI scrollable interface</summary>
+sealed public class ScrollableConcrete : 
+
+Scrollable
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ScrollableConcrete))
+            return Efl.Ui.ScrollableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_scrollable_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ScrollableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ScrollableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ScrollableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ScrollableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+   }
+}
+public class ScrollableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ScrollableConcrete.efl_ui_scrollable_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ScrollableConcrete.efl_ui_scrollable_interface_get();
+   }
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Direction in which a scroller should be blocked.
+/// Note: These options may be effective only in case of thumbscroll (i.e. when scrolling by dragging).
+/// 1.21</summary>
+public enum ScrollBlock
+{
+/// <summary>Don&apos;t block any movement.</summary>
+None = 0,
+/// <summary>Block vertical movement.</summary>
+Vertical = 1,
+/// <summary>Block horizontal movement.</summary>
+Horizontal = 2,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_scrollable_interactive.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_scrollable_interactive.eo.cs
new file mode 100755 (executable)
index 0000000..cdd0130
--- /dev/null
@@ -0,0 +1,1738 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[ScrollableInteractiveNativeInherit]
+public interface ScrollableInteractive : 
+   Efl.Ui.Scrollable ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>The content position</summary>
+/// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+Eina.Position2D GetContentPos();
+   /// <summary>The content position</summary>
+/// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+/// <returns></returns>
+ void SetContentPos( Eina.Position2D pos);
+   /// <summary>The content size</summary>
+/// <returns>The content size in pixels.</returns>
+Eina.Size2D GetContentSize();
+   /// <summary>The viewport geometry</summary>
+/// <returns>It is absolute geometry.</returns>
+Eina.Rect GetViewportGeometry();
+   /// <summary>Bouncing behavior
+/// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+/// <param name="horiz">Horizontal bounce policy.</param>
+/// <param name="vert">Vertical bounce policy.</param>
+/// <returns></returns>
+ void GetBounceEnabled( out bool horiz,  out bool vert);
+   /// <summary>Bouncing behavior
+/// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+/// <param name="horiz">Horizontal bounce policy.</param>
+/// <param name="vert">Vertical bounce policy.</param>
+/// <returns></returns>
+ void SetBounceEnabled( bool horiz,  bool vert);
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+bool GetScrollFreeze();
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetScrollFreeze( bool freeze);
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+bool GetScrollHold();
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetScrollHold( bool hold);
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+/// <param name="loop_h">The scrolling horizontal loop</param>
+/// <param name="loop_v">The Scrolling vertical loop</param>
+/// <returns></returns>
+ void GetLooping( out bool loop_h,  out bool loop_v);
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+/// <param name="loop_h">The scrolling horizontal loop</param>
+/// <param name="loop_v">The Scrolling vertical loop</param>
+/// <returns></returns>
+ void SetLooping( bool loop_h,  bool loop_v);
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <returns>Which axis (or axes) to block</returns>
+Efl.Ui.ScrollBlock GetMovementBlock();
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <param name="block">Which axis (or axes) to block</param>
+/// <returns></returns>
+ void SetMovementBlock( Efl.Ui.ScrollBlock block);
+   /// <summary>Control scrolling gravity on the scrollable
+/// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+/// 
+/// The scroller will adjust the view to glue itself as follows.
+/// 
+/// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+/// 
+/// Default values for x and y are 0.0</summary>
+/// <param name="x">Horizontal scrolling gravity</param>
+/// <param name="y">Vertical scrolling gravity</param>
+/// <returns></returns>
+ void GetGravity( out double x,  out double y);
+   /// <summary>Control scrolling gravity on the scrollable
+/// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+/// 
+/// The scroller will adjust the view to glue itself as follows.
+/// 
+/// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+/// 
+/// Default values for x and y are 0.0</summary>
+/// <param name="x">Horizontal scrolling gravity</param>
+/// <param name="y">Vertical scrolling gravity</param>
+/// <returns></returns>
+ void SetGravity( double x,  double y);
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+/// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+/// <param name="w">Whether to limit the minimum horizontal size</param>
+/// <param name="h">Whether to limit the minimum vertical size</param>
+/// <returns></returns>
+ void SetMatchContent( bool w,  bool h);
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <returns>The step size in pixels</returns>
+Eina.Position2D GetStepSize();
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <param name="step">The step size in pixels</param>
+/// <returns></returns>
+ void SetStepSize( Eina.Position2D step);
+   /// <summary>Show a specific virtual region within the scroller content object.
+/// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+/// <param name="rect">The position where to scroll. and The size user want to see</param>
+/// <param name="animation">Whether to scroll with animation or not</param>
+/// <returns></returns>
+ void Scroll( Eina.Rect rect,  bool animation);
+                                                               /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   Eina.Position2D ContentPos {
+      get ;
+      set ;
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   Eina.Size2D ContentSize {
+      get ;
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   Eina.Rect ViewportGeometry {
+      get ;
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   bool ScrollFreeze {
+      get ;
+      set ;
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   bool ScrollHold {
+      get ;
+      set ;
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   Efl.Ui.ScrollBlock MovementBlock {
+      get ;
+      set ;
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   Eina.Position2D StepSize {
+      get ;
+      set ;
+   }
+}
+/// <summary></summary>
+sealed public class ScrollableInteractiveConcrete : 
+
+ScrollableInteractive
+   , Efl.Ui.Scrollable
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ScrollableInteractiveConcrete))
+            return Efl.Ui.ScrollableInteractiveNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_scrollable_interactive_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ScrollableInteractiveConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ScrollableInteractiveConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ScrollableInteractiveConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ScrollableInteractiveConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+   }
+   /// <summary>The content position</summary>
+   /// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+   public Eina.Position2D GetContentPos() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The content position</summary>
+   /// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+   /// <returns></returns>
+   public  void SetContentPos( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(this.NativeHandle, _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content size</summary>
+   /// <returns>The content size in pixels.</returns>
+   public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The viewport geometry</summary>
+   /// <returns>It is absolute geometry.</returns>
+   public Eina.Rect GetViewportGeometry() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   public  void GetBounceEnabled( out bool horiz,  out bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(this.NativeHandle, out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   public  void SetBounceEnabled( bool horiz,  bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(this.NativeHandle, horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+   public bool GetScrollFreeze() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetScrollFreeze( bool freeze) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(this.NativeHandle, freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+   public bool GetScrollHold() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetScrollHold( bool hold) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(this.NativeHandle, hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   public  void GetLooping( out bool loop_h,  out bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_get_ptr.Value.Delegate(this.NativeHandle, out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   public  void SetLooping( bool loop_h,  bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_set_ptr.Value.Delegate(this.NativeHandle, loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(this.NativeHandle, block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   public  void GetGravity( out double x,  out double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   public  void SetGravity( double x,  double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   public  void SetMatchContent( bool w,  bool h) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_match_content_set_ptr.Value.Delegate(this.NativeHandle, w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <returns>The step size in pixels</returns>
+   public Eina.Position2D GetStepSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <param name="step">The step size in pixels</param>
+   /// <returns></returns>
+   public  void SetStepSize( Eina.Position2D step) {
+       var _in_step = Eina.Position2D_StructConversion.ToInternal(step);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_set_ptr.Value.Delegate(this.NativeHandle, _in_step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+   /// <param name="rect">The position where to scroll. and The size user want to see</param>
+   /// <param name="animation">Whether to scroll with animation or not</param>
+   /// <returns></returns>
+   public  void Scroll( Eina.Rect rect,  bool animation) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                    Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_ptr.Value.Delegate(this.NativeHandle, _in_rect,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   public Eina.Position2D ContentPos {
+      get { return GetContentPos(); }
+      set { SetContentPos( value); }
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   public Eina.Rect ViewportGeometry {
+      get { return GetViewportGeometry(); }
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool ScrollFreeze {
+      get { return GetScrollFreeze(); }
+      set { SetScrollFreeze( value); }
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool ScrollHold {
+      get { return GetScrollHold(); }
+      set { SetScrollHold( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   public Eina.Position2D StepSize {
+      get { return GetStepSize(); }
+      set { SetStepSize( value); }
+   }
+}
+public class ScrollableInteractiveNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_scrollable_content_pos_get_static_delegate == null)
+      efl_ui_scrollable_content_pos_get_static_delegate = new efl_ui_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_get_static_delegate)});
+      if (efl_ui_scrollable_content_pos_set_static_delegate == null)
+      efl_ui_scrollable_content_pos_set_static_delegate = new efl_ui_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_set_static_delegate)});
+      if (efl_ui_scrollable_content_size_get_static_delegate == null)
+      efl_ui_scrollable_content_size_get_static_delegate = new efl_ui_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_scrollable_viewport_geometry_get_static_delegate == null)
+      efl_ui_scrollable_viewport_geometry_get_static_delegate = new efl_ui_scrollable_viewport_geometry_get_delegate(viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_viewport_geometry_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_get_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_get_static_delegate = new efl_ui_scrollable_bounce_enabled_get_delegate(bounce_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_set_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_set_static_delegate = new efl_ui_scrollable_bounce_enabled_set_delegate(bounce_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_get_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_get_static_delegate = new efl_ui_scrollable_scroll_freeze_get_delegate(scroll_freeze_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_set_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_set_static_delegate = new efl_ui_scrollable_scroll_freeze_set_delegate(scroll_freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_get_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_get_static_delegate = new efl_ui_scrollable_scroll_hold_get_delegate(scroll_hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_set_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_set_static_delegate = new efl_ui_scrollable_scroll_hold_set_delegate(scroll_hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_set_static_delegate)});
+      if (efl_ui_scrollable_looping_get_static_delegate == null)
+      efl_ui_scrollable_looping_get_static_delegate = new efl_ui_scrollable_looping_get_delegate(looping_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_get_static_delegate)});
+      if (efl_ui_scrollable_looping_set_static_delegate == null)
+      efl_ui_scrollable_looping_set_static_delegate = new efl_ui_scrollable_looping_set_delegate(looping_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_set_static_delegate)});
+      if (efl_ui_scrollable_movement_block_get_static_delegate == null)
+      efl_ui_scrollable_movement_block_get_static_delegate = new efl_ui_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_get_static_delegate)});
+      if (efl_ui_scrollable_movement_block_set_static_delegate == null)
+      efl_ui_scrollable_movement_block_set_static_delegate = new efl_ui_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_set_static_delegate)});
+      if (efl_ui_scrollable_gravity_get_static_delegate == null)
+      efl_ui_scrollable_gravity_get_static_delegate = new efl_ui_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_get_static_delegate)});
+      if (efl_ui_scrollable_gravity_set_static_delegate == null)
+      efl_ui_scrollable_gravity_set_static_delegate = new efl_ui_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_set_static_delegate)});
+      if (efl_ui_scrollable_match_content_set_static_delegate == null)
+      efl_ui_scrollable_match_content_set_static_delegate = new efl_ui_scrollable_match_content_set_delegate(match_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_match_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_match_content_set_static_delegate)});
+      if (efl_ui_scrollable_step_size_get_static_delegate == null)
+      efl_ui_scrollable_step_size_get_static_delegate = new efl_ui_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_get_static_delegate)});
+      if (efl_ui_scrollable_step_size_set_static_delegate == null)
+      efl_ui_scrollable_step_size_set_static_delegate = new efl_ui_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_static_delegate == null)
+      efl_ui_scrollable_scroll_static_delegate = new efl_ui_scrollable_scroll_delegate(scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ScrollableInteractiveConcrete.efl_ui_scrollable_interactive_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ScrollableInteractiveConcrete.efl_ui_scrollable_interactive_interface_get();
+   }
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate> efl_ui_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate>(_Module, "efl_ui_scrollable_content_pos_get");
+    private static Eina.Position2D_StructInternal content_pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((ScrollableInteractive)wrapper).GetContentPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_pos_get_delegate efl_ui_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_ui_scrollable_content_pos_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate> efl_ui_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate>(_Module, "efl_ui_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((ScrollableInteractive)wrapper).SetContentPos( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_ui_scrollable_content_pos_set_delegate efl_ui_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate> efl_ui_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_scrollable_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((ScrollableInteractive)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_size_get_delegate efl_ui_scrollable_content_size_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate> efl_ui_scrollable_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate>(_Module, "efl_ui_scrollable_viewport_geometry_get");
+    private static Eina.Rect_StructInternal viewport_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((ScrollableInteractive)wrapper).GetViewportGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_viewport_geometry_get_delegate efl_ui_scrollable_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate> efl_ui_scrollable_bounce_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_get");
+    private static  void bounce_enabled_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((ScrollableInteractive)wrapper).GetBounceEnabled( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_get_delegate efl_ui_scrollable_bounce_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate> efl_ui_scrollable_bounce_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_set");
+    private static  void bounce_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ScrollableInteractive)wrapper).SetBounceEnabled( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_set_delegate efl_ui_scrollable_bounce_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_freeze_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_freeze_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate> efl_ui_scrollable_scroll_freeze_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_get");
+    private static bool scroll_freeze_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ScrollableInteractive)wrapper).GetScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_get_delegate efl_ui_scrollable_scroll_freeze_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void efl_ui_scrollable_scroll_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate> efl_ui_scrollable_scroll_freeze_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_set");
+    private static  void scroll_freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ScrollableInteractive)wrapper).SetScrollFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_set_delegate efl_ui_scrollable_scroll_freeze_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate> efl_ui_scrollable_scroll_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_get");
+    private static bool scroll_hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ScrollableInteractive)wrapper).GetScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_get_delegate efl_ui_scrollable_scroll_hold_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void efl_ui_scrollable_scroll_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate> efl_ui_scrollable_scroll_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_set");
+    private static  void scroll_hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ScrollableInteractive)wrapper).SetScrollHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_set_delegate efl_ui_scrollable_scroll_hold_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate> efl_ui_scrollable_looping_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate>(_Module, "efl_ui_scrollable_looping_get");
+    private static  void looping_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((ScrollableInteractive)wrapper).GetLooping( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_get_delegate efl_ui_scrollable_looping_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate> efl_ui_scrollable_looping_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate>(_Module, "efl_ui_scrollable_looping_set");
+    private static  void looping_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ScrollableInteractive)wrapper).SetLooping( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_set_delegate efl_ui_scrollable_looping_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate> efl_ui_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate>(_Module, "efl_ui_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((ScrollableInteractive)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_movement_block_get_delegate efl_ui_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void efl_ui_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate> efl_ui_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate>(_Module, "efl_ui_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ScrollableInteractive)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static efl_ui_scrollable_movement_block_set_delegate efl_ui_scrollable_movement_block_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate> efl_ui_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate>(_Module, "efl_ui_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((ScrollableInteractive)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_get_delegate efl_ui_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate> efl_ui_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate>(_Module, "efl_ui_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ScrollableInteractive)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_set_delegate efl_ui_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_match_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void efl_ui_scrollable_match_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate> efl_ui_scrollable_match_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate>(_Module, "efl_ui_scrollable_match_content_set");
+    private static  void match_content_set(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_match_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ScrollableInteractive)wrapper).SetMatchContent( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_match_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static efl_ui_scrollable_match_content_set_delegate efl_ui_scrollable_match_content_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate> efl_ui_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate>(_Module, "efl_ui_scrollable_step_size_get");
+    private static Eina.Position2D_StructInternal step_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((ScrollableInteractive)wrapper).GetStepSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_step_size_get_delegate efl_ui_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal step);
+
+
+    public delegate  void efl_ui_scrollable_step_size_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate> efl_ui_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate>(_Module, "efl_ui_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal step)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_step = Eina.Position2D_StructConversion.ToManaged(step);
+                     
+         try {
+            ((ScrollableInteractive)wrapper).SetStepSize( _in_step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_scrollable_step_size_set_delegate efl_ui_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_scrollable_scroll_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate> efl_ui_scrollable_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate>(_Module, "efl_ui_scrollable_scroll");
+    private static  void scroll(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                       
+         try {
+            ((ScrollableInteractive)wrapper).Scroll( _in_rect,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  animation);
+      }
+   }
+   private static efl_ui_scrollable_scroll_delegate efl_ui_scrollable_scroll_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_scrollbar.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_scrollbar.eo.cs
new file mode 100755 (executable)
index 0000000..dfbba1f
--- /dev/null
@@ -0,0 +1,775 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[ScrollbarNativeInherit]
+public interface Scrollbar : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Scrollbar visibility policy</summary>
+/// <param name="hbar">Horizontal scrollbar</param>
+/// <param name="vbar">Vertical scrollbar</param>
+/// <returns></returns>
+ void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar);
+   /// <summary>Scrollbar visibility policy</summary>
+/// <param name="hbar">Horizontal scrollbar</param>
+/// <param name="vbar">Vertical scrollbar</param>
+/// <returns></returns>
+ void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar);
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+/// <param name="width">Value between 0.0 and 1.0</param>
+/// <param name="height">Value between 0.0 and 1.0</param>
+/// <returns></returns>
+ void GetBarSize( out double width,  out double height);
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+/// <param name="posx">Value between 0.0 and 1.0</param>
+/// <param name="posy">Value between 0.0 and 1.0</param>
+/// <returns></returns>
+ void GetBarPosition( out double posx,  out double posy);
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+/// <param name="posx">Value between 0.0 and 1.0</param>
+/// <param name="posy">Value between 0.0 and 1.0</param>
+/// <returns></returns>
+ void SetBarPosition( double posx,  double posy);
+   /// <summary>Update bar visibility.
+/// The object will call this function whenever the bar need to be shown or hidden.</summary>
+/// <returns></returns>
+ void UpdateBarVisibility();
+                     /// <summary>Called when bar is pressed</summary>
+   event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt;
+   /// <summary>Called when bar is unpressed</summary>
+   event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt;
+   /// <summary>Called when bar is dragged</summary>
+   event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt;
+   /// <summary>Called when bar size is changed</summary>
+   event EventHandler BarSizeChangedEvt;
+   /// <summary>Called when bar position is changed</summary>
+   event EventHandler BarPosChangedEvt;
+   /// <summary>Callend when bar is shown</summary>
+   event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt;
+   /// <summary>Called when bar is hidden</summary>
+   event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt;
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Scrollbar.BarPressEvt"/>.</summary>
+public class ScrollbarBarPressEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ScrollbarDirection arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Scrollbar.BarUnpressEvt"/>.</summary>
+public class ScrollbarBarUnpressEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ScrollbarDirection arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Scrollbar.BarDragEvt"/>.</summary>
+public class ScrollbarBarDragEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ScrollbarDirection arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Scrollbar.BarShowEvt"/>.</summary>
+public class ScrollbarBarShowEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ScrollbarDirection arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Scrollbar.BarHideEvt"/>.</summary>
+public class ScrollbarBarHideEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.ScrollbarDirection arg { get; set; }
+}
+/// <summary></summary>
+sealed public class ScrollbarConcrete : 
+
+Scrollbar
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ScrollbarConcrete))
+            return Efl.Ui.ScrollbarNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_scrollbar_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ScrollbarConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ScrollbarConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ScrollbarConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ScrollbarConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object BarPressEvtKey = new object();
+   /// <summary>Called when bar is pressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPressEvt_delegate)) {
+               eventHandlers.AddHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarPressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPressEvt.</summary>
+   public void On_BarPressEvt(Efl.Ui.ScrollbarBarPressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args>)eventHandlers[BarPressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPressEvt_delegate;
+   private void on_BarPressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarPressEvt_Args args = new Efl.Ui.ScrollbarBarPressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarPressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarUnpressEvtKey = new object();
+   /// <summary>Called when bar is unpressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarUnpressEvt_delegate)) {
+               eventHandlers.AddHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarUnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarUnpressEvt.</summary>
+   public void On_BarUnpressEvt(Efl.Ui.ScrollbarBarUnpressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args>)eventHandlers[BarUnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarUnpressEvt_delegate;
+   private void on_BarUnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarUnpressEvt_Args args = new Efl.Ui.ScrollbarBarUnpressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarUnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarDragEvtKey = new object();
+   /// <summary>Called when bar is dragged</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarDragEvt_delegate)) {
+               eventHandlers.AddHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_BarDragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarDragEvt.</summary>
+   public void On_BarDragEvt(Efl.Ui.ScrollbarBarDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args>)eventHandlers[BarDragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarDragEvt_delegate;
+   private void on_BarDragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarDragEvt_Args args = new Efl.Ui.ScrollbarBarDragEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarDragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarSizeChangedEvtKey = new object();
+   /// <summary>Called when bar size is changed</summary>
+   public event EventHandler BarSizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarSizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarSizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarSizeChangedEvt.</summary>
+   public void On_BarSizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarSizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarSizeChangedEvt_delegate;
+   private void on_BarSizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarSizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPosChangedEvtKey = new object();
+   /// <summary>Called when bar position is changed</summary>
+   public event EventHandler BarPosChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPosChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarPosChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPosChangedEvt.</summary>
+   public void On_BarPosChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarPosChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPosChangedEvt_delegate;
+   private void on_BarPosChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarPosChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarShowEvtKey = new object();
+   /// <summary>Callend when bar is shown</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarShowEvt_delegate)) {
+               eventHandlers.AddHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (remove_cpp_event_handler(key, this.evt_BarShowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarShowEvt.</summary>
+   public void On_BarShowEvt(Efl.Ui.ScrollbarBarShowEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args>)eventHandlers[BarShowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarShowEvt_delegate;
+   private void on_BarShowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarShowEvt_Args args = new Efl.Ui.ScrollbarBarShowEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarShowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarHideEvtKey = new object();
+   /// <summary>Called when bar is hidden</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarHideEvt_delegate)) {
+               eventHandlers.AddHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (remove_cpp_event_handler(key, this.evt_BarHideEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarHideEvt.</summary>
+   public void On_BarHideEvt(Efl.Ui.ScrollbarBarHideEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args>)eventHandlers[BarHideEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarHideEvt_delegate;
+   private void on_BarHideEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarHideEvt_Args args = new Efl.Ui.ScrollbarBarHideEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarHideEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_BarPressEvt_delegate = new Efl.EventCb(on_BarPressEvt_NativeCallback);
+      evt_BarUnpressEvt_delegate = new Efl.EventCb(on_BarUnpressEvt_NativeCallback);
+      evt_BarDragEvt_delegate = new Efl.EventCb(on_BarDragEvt_NativeCallback);
+      evt_BarSizeChangedEvt_delegate = new Efl.EventCb(on_BarSizeChangedEvt_NativeCallback);
+      evt_BarPosChangedEvt_delegate = new Efl.EventCb(on_BarPosChangedEvt_NativeCallback);
+      evt_BarShowEvt_delegate = new Efl.EventCb(on_BarShowEvt_NativeCallback);
+      evt_BarHideEvt_delegate = new Efl.EventCb(on_BarHideEvt_NativeCallback);
+   }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   public  void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(this.NativeHandle, out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   public  void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(this.NativeHandle, hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+   /// <param name="width">Value between 0.0 and 1.0</param>
+   /// <param name="height">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   public  void GetBarSize( out double width,  out double height) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(this.NativeHandle, out width,  out height);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   public  void GetBarPosition( out double posx,  out double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(this.NativeHandle, out posx,  out posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   public  void SetBarPosition( double posx,  double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(this.NativeHandle, posx,  posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Update bar visibility.
+   /// The object will call this function whenever the bar need to be shown or hidden.</summary>
+   /// <returns></returns>
+   public  void UpdateBarVisibility() {
+       Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+}
+public class ScrollbarNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_scrollbar_bar_mode_get_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_get_static_delegate = new efl_ui_scrollbar_bar_mode_get_delegate(bar_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_set_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_set_static_delegate = new efl_ui_scrollbar_bar_mode_set_delegate(bar_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_size_get_static_delegate == null)
+      efl_ui_scrollbar_bar_size_get_static_delegate = new efl_ui_scrollbar_bar_size_get_delegate(bar_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_size_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_get_static_delegate == null)
+      efl_ui_scrollbar_bar_position_get_static_delegate = new efl_ui_scrollbar_bar_position_get_delegate(bar_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_set_static_delegate == null)
+      efl_ui_scrollbar_bar_position_set_static_delegate = new efl_ui_scrollbar_bar_position_set_delegate(bar_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_visibility_update_static_delegate == null)
+      efl_ui_scrollbar_bar_visibility_update_static_delegate = new efl_ui_scrollbar_bar_visibility_update_delegate(bar_visibility_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_visibility_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_visibility_update_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ScrollbarConcrete.efl_ui_scrollbar_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ScrollbarConcrete.efl_ui_scrollbar_interface_get();
+   }
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_get_api_delegate(System.IntPtr obj,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate> efl_ui_scrollbar_bar_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_get");
+    private static  void bar_mode_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Efl.Ui.ScrollbarMode);      vbar = default(Efl.Ui.ScrollbarMode);                     
+         try {
+            ((Scrollbar)wrapper).GetBarMode( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_get_delegate efl_ui_scrollbar_bar_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate> efl_ui_scrollbar_bar_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_set");
+    private static  void bar_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scrollbar)wrapper).SetBarMode( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_set_delegate efl_ui_scrollbar_bar_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double width,   out double height);
+
+
+    public delegate  void efl_ui_scrollbar_bar_size_get_api_delegate(System.IntPtr obj,   out double width,   out double height);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate> efl_ui_scrollbar_bar_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_size_get");
+    private static  void bar_size_get(System.IntPtr obj, System.IntPtr pd,  out double width,  out double height)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           width = default(double);      height = default(double);                     
+         try {
+            ((Scrollbar)wrapper).GetBarSize( out width,  out height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out width,  out height);
+      }
+   }
+   private static efl_ui_scrollbar_bar_size_get_delegate efl_ui_scrollbar_bar_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double posx,   out double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_get_api_delegate(System.IntPtr obj,   out double posx,   out double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate> efl_ui_scrollbar_bar_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_get");
+    private static  void bar_position_get(System.IntPtr obj, System.IntPtr pd,  out double posx,  out double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           posx = default(double);      posy = default(double);                     
+         try {
+            ((Scrollbar)wrapper).GetBarPosition( out posx,  out posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out posx,  out posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_get_delegate efl_ui_scrollbar_bar_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   double posx,   double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_set_api_delegate(System.IntPtr obj,   double posx,   double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate> efl_ui_scrollbar_bar_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_set");
+    private static  void bar_position_set(System.IntPtr obj, System.IntPtr pd,  double posx,  double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scrollbar)wrapper).SetBarPosition( posx,  posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  posx,  posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_set_delegate efl_ui_scrollbar_bar_position_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_visibility_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_scrollbar_bar_visibility_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate> efl_ui_scrollbar_bar_visibility_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate>(_Module, "efl_ui_scrollbar_bar_visibility_update");
+    private static  void bar_visibility_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_visibility_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Scrollbar)wrapper).UpdateBarVisibility();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollbar_bar_visibility_update_delegate efl_ui_scrollbar_bar_visibility_update_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+public enum ScrollbarMode
+{
+/// <summary>Visible if necessary</summary>
+Auto = 0,
+/// <summary>Always visible</summary>
+On = 1,
+/// <summary>Always invisible</summary>
+Off = 2,
+/// <summary>For internal use only</summary>
+Last = 3,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+public enum ScrollbarDirection
+{
+/// <summary></summary>
+Horizontal = 0,
+/// <summary></summary>
+Vertical = 1,
+/// <summary></summary>
+Last = 2,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_scroller.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_scroller.eo.cs
new file mode 100755 (executable)
index 0000000..de8506e
--- /dev/null
@@ -0,0 +1,3216 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl ui scroller class</summary>
+[ScrollerNativeInherit]
+public class Scroller : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content,Efl.Ui.Scrollable,Efl.Ui.ScrollableInteractive,Efl.Ui.Scrollbar,Efl.Ui.WidgetFocusManager,Efl.Ui.Focus.Manager,Efl.Ui.Focus.ManagerSub
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ScrollerNativeInherit nativeInherit = new Efl.Ui.ScrollerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Scroller))
+            return Efl.Ui.ScrollerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_scroller_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Scroller(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_scroller_class_get(), typeof(Scroller), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Scroller(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Scroller(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Scroller static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Scroller(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPressEvtKey = new object();
+   /// <summary>Called when bar is pressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> BarPressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPressEvt_delegate)) {
+               eventHandlers.AddHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarPressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPressEvt.</summary>
+   public void On_BarPressEvt(Efl.Ui.ScrollbarBarPressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarPressEvt_Args>)eventHandlers[BarPressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPressEvt_delegate;
+   private void on_BarPressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarPressEvt_Args args = new Efl.Ui.ScrollbarBarPressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarPressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarUnpressEvtKey = new object();
+   /// <summary>Called when bar is unpressed</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> BarUnpressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarUnpressEvt_delegate)) {
+               eventHandlers.AddHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_UNPRESS";
+            if (remove_cpp_event_handler(key, this.evt_BarUnpressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarUnpressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarUnpressEvt.</summary>
+   public void On_BarUnpressEvt(Efl.Ui.ScrollbarBarUnpressEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarUnpressEvt_Args>)eventHandlers[BarUnpressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarUnpressEvt_delegate;
+   private void on_BarUnpressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarUnpressEvt_Args args = new Efl.Ui.ScrollbarBarUnpressEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarUnpressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarDragEvtKey = new object();
+   /// <summary>Called when bar is dragged</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> BarDragEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarDragEvt_delegate)) {
+               eventHandlers.AddHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_DRAG";
+            if (remove_cpp_event_handler(key, this.evt_BarDragEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarDragEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarDragEvt.</summary>
+   public void On_BarDragEvt(Efl.Ui.ScrollbarBarDragEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarDragEvt_Args>)eventHandlers[BarDragEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarDragEvt_delegate;
+   private void on_BarDragEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarDragEvt_Args args = new Efl.Ui.ScrollbarBarDragEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarDragEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarSizeChangedEvtKey = new object();
+   /// <summary>Called when bar size is changed</summary>
+   public event EventHandler BarSizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarSizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarSizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarSizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarSizeChangedEvt.</summary>
+   public void On_BarSizeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarSizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarSizeChangedEvt_delegate;
+   private void on_BarSizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarSizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarPosChangedEvtKey = new object();
+   /// <summary>Called when bar position is changed</summary>
+   public event EventHandler BarPosChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarPosChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_POS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BarPosChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarPosChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarPosChangedEvt.</summary>
+   public void On_BarPosChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[BarPosChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarPosChangedEvt_delegate;
+   private void on_BarPosChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_BarPosChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarShowEvtKey = new object();
+   /// <summary>Callend when bar is shown</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> BarShowEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarShowEvt_delegate)) {
+               eventHandlers.AddHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_SHOW";
+            if (remove_cpp_event_handler(key, this.evt_BarShowEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarShowEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarShowEvt.</summary>
+   public void On_BarShowEvt(Efl.Ui.ScrollbarBarShowEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarShowEvt_Args>)eventHandlers[BarShowEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarShowEvt_delegate;
+   private void on_BarShowEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarShowEvt_Args args = new Efl.Ui.ScrollbarBarShowEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarShowEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BarHideEvtKey = new object();
+   /// <summary>Called when bar is hidden</summary>
+   public event EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> BarHideEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_BarHideEvt_delegate)) {
+               eventHandlers.AddHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SCROLLBAR_EVENT_BAR_HIDE";
+            if (remove_cpp_event_handler(key, this.evt_BarHideEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BarHideEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BarHideEvt.</summary>
+   public void On_BarHideEvt(Efl.Ui.ScrollbarBarHideEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ScrollbarBarHideEvt_Args>)eventHandlers[BarHideEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BarHideEvt_delegate;
+   private void on_BarHideEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ScrollbarBarHideEvt_Args args = new Efl.Ui.ScrollbarBarHideEvt_Args();
+      args.arg = default(Efl.Ui.ScrollbarDirection);
+      try {
+         On_BarHideEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_BarPressEvt_delegate = new Efl.EventCb(on_BarPressEvt_NativeCallback);
+      evt_BarUnpressEvt_delegate = new Efl.EventCb(on_BarUnpressEvt_NativeCallback);
+      evt_BarDragEvt_delegate = new Efl.EventCb(on_BarDragEvt_NativeCallback);
+      evt_BarSizeChangedEvt_delegate = new Efl.EventCb(on_BarSizeChangedEvt_NativeCallback);
+      evt_BarPosChangedEvt_delegate = new Efl.EventCb(on_BarPosChangedEvt_NativeCallback);
+      evt_BarShowEvt_delegate = new Efl.EventCb(on_BarShowEvt_NativeCallback);
+      evt_BarHideEvt_delegate = new Efl.EventCb(on_BarHideEvt_NativeCallback);
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The content position</summary>
+   /// <returns>The position is virtual value, (0, 0) starting at the top-left.</returns>
+   virtual public Eina.Position2D GetContentPos() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The content position</summary>
+   /// <param name="pos">The position is virtual value, (0, 0) starting at the top-left.</param>
+   /// <returns></returns>
+   virtual public  void SetContentPos( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The content size</summary>
+   /// <returns>The content size in pixels.</returns>
+   virtual public Eina.Size2D GetContentSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_content_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>The viewport geometry</summary>
+   /// <returns>It is absolute geometry.</returns>
+   virtual public Eina.Rect GetViewportGeometry() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void GetBounceEnabled( out bool horiz,  out bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching the edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axes. This API will determine if it&apos;s enabled for the given axis with the boolean parameters for each one.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   virtual public  void SetBounceEnabled( bool horiz,  bool vert) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <returns><c>true</c> if freeze, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollFreeze() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollFreeze( bool freeze) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <returns><c>true</c> if hold, <c>false</c> otherwise</returns>
+   virtual public bool GetScrollHold() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetScrollHold( bool hold) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void GetLooping( out bool loop_h,  out bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The Scrolling vertical loop</param>
+   /// <returns></returns>
+   virtual public  void SetLooping( bool loop_h,  bool loop_v) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_looping_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   virtual public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   virtual public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_movement_block_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void GetGravity( out double x,  out double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   virtual public  void SetGravity( double x,  double y) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_gravity_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   virtual public  void SetMatchContent( bool w,  bool h) {
+                                           Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_match_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <returns>The step size in pixels</returns>
+   virtual public Eina.Position2D GetStepSize() {
+       var _ret_var = Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Control the step size
+   /// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+   /// <param name="step">The step size in pixels</param>
+   /// <returns></returns>
+   virtual public  void SetStepSize( Eina.Position2D step) {
+       var _in_step = Eina.Position2D_StructConversion.ToInternal(step);
+                  Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_step_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. This allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.</summary>
+   /// <param name="rect">The position where to scroll. and The size user want to see</param>
+   /// <param name="animation">Whether to scroll with animation or not</param>
+   /// <returns></returns>
+   virtual public  void Scroll( Eina.Rect rect,  bool animation) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                    Efl.Ui.ScrollableInteractiveNativeInherit.efl_ui_scrollable_scroll_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  animation);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void GetBarMode( out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy</summary>
+   /// <param name="hbar">Horizontal scrollbar</param>
+   /// <param name="vbar">Vertical scrollbar</param>
+   /// <returns></returns>
+   virtual public  void SetBarMode( Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar size. It is calculated based on viewport size-content sizes.</summary>
+   /// <param name="width">Value between 0.0 and 1.0</param>
+   /// <param name="height">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarSize( out double width,  out double height) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out width,  out height);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void GetBarPosition( out double posx,  out double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out posx,  out posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar position. It is calculated based on current position-maximum positions.</summary>
+   /// <param name="posx">Value between 0.0 and 1.0</param>
+   /// <param name="posy">Value between 0.0 and 1.0</param>
+   /// <returns></returns>
+   virtual public  void SetBarPosition( double posx,  double posy) {
+                                           Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), posx,  posy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Update bar visibility.
+   /// The object will call this function whenever the bar need to be shown or hidden.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateBarVisibility() {
+       Efl.Ui.ScrollbarNativeInherit.efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   virtual public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   virtual public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>The content position</summary>
+/// <value>The position is virtual value, (0, 0) starting at the top-left.</value>
+   public Eina.Position2D ContentPos {
+      get { return GetContentPos(); }
+      set { SetContentPos( value); }
+   }
+   /// <summary>The content size</summary>
+/// <value>The content size in pixels.</value>
+   public Eina.Size2D ContentSize {
+      get { return GetContentSize(); }
+   }
+   /// <summary>The viewport geometry</summary>
+/// <value>It is absolute geometry.</value>
+   public Eina.Rect ViewportGeometry {
+      get { return GetViewportGeometry(); }
+   }
+   /// <summary>Freeze property This function will freeze scrolling movement (by input of a user). Unlike efl_ui_scrollable_movement_block_set, this function freezes bidirectionally. If you want to freeze in only one direction, See <see cref="Efl.Ui.ScrollableInteractive.SetMovementBlock"/>.</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool ScrollFreeze {
+      get { return GetScrollFreeze(); }
+      set { SetScrollFreeze( value); }
+   }
+   /// <summary>Hold property When hold turns on, it only scrolls by holding action.</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool ScrollHold {
+      get { return GetScrollHold(); }
+      set { SetScrollHold( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. You can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Control the step size
+/// Use this call to set step size. This value is used when scroller scroll by arrow key event.</summary>
+/// <value>The step size in pixels</value>
+   public Eina.Position2D StepSize {
+      get { return GetStepSize(); }
+      set { SetStepSize( value); }
+   }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Scroller.efl_ui_scroller_class_get();
+   }
+}
+public class ScrollerNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_ui_scrollable_content_pos_get_static_delegate == null)
+      efl_ui_scrollable_content_pos_get_static_delegate = new efl_ui_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_get_static_delegate)});
+      if (efl_ui_scrollable_content_pos_set_static_delegate == null)
+      efl_ui_scrollable_content_pos_set_static_delegate = new efl_ui_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_pos_set_static_delegate)});
+      if (efl_ui_scrollable_content_size_get_static_delegate == null)
+      efl_ui_scrollable_content_size_get_static_delegate = new efl_ui_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_content_size_get_static_delegate)});
+      if (efl_ui_scrollable_viewport_geometry_get_static_delegate == null)
+      efl_ui_scrollable_viewport_geometry_get_static_delegate = new efl_ui_scrollable_viewport_geometry_get_delegate(viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_viewport_geometry_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_get_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_get_static_delegate = new efl_ui_scrollable_bounce_enabled_get_delegate(bounce_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_get_static_delegate)});
+      if (efl_ui_scrollable_bounce_enabled_set_static_delegate == null)
+      efl_ui_scrollable_bounce_enabled_set_static_delegate = new efl_ui_scrollable_bounce_enabled_set_delegate(bounce_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_bounce_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_bounce_enabled_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_get_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_get_static_delegate = new efl_ui_scrollable_scroll_freeze_get_delegate(scroll_freeze_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_freeze_set_static_delegate == null)
+      efl_ui_scrollable_scroll_freeze_set_static_delegate = new efl_ui_scrollable_scroll_freeze_set_delegate(scroll_freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_freeze_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_get_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_get_static_delegate = new efl_ui_scrollable_scroll_hold_get_delegate(scroll_hold_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_get_static_delegate)});
+      if (efl_ui_scrollable_scroll_hold_set_static_delegate == null)
+      efl_ui_scrollable_scroll_hold_set_static_delegate = new efl_ui_scrollable_scroll_hold_set_delegate(scroll_hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll_hold_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_hold_set_static_delegate)});
+      if (efl_ui_scrollable_looping_get_static_delegate == null)
+      efl_ui_scrollable_looping_get_static_delegate = new efl_ui_scrollable_looping_get_delegate(looping_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_get_static_delegate)});
+      if (efl_ui_scrollable_looping_set_static_delegate == null)
+      efl_ui_scrollable_looping_set_static_delegate = new efl_ui_scrollable_looping_set_delegate(looping_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_looping_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_looping_set_static_delegate)});
+      if (efl_ui_scrollable_movement_block_get_static_delegate == null)
+      efl_ui_scrollable_movement_block_get_static_delegate = new efl_ui_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_get_static_delegate)});
+      if (efl_ui_scrollable_movement_block_set_static_delegate == null)
+      efl_ui_scrollable_movement_block_set_static_delegate = new efl_ui_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_movement_block_set_static_delegate)});
+      if (efl_ui_scrollable_gravity_get_static_delegate == null)
+      efl_ui_scrollable_gravity_get_static_delegate = new efl_ui_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_get_static_delegate)});
+      if (efl_ui_scrollable_gravity_set_static_delegate == null)
+      efl_ui_scrollable_gravity_set_static_delegate = new efl_ui_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_gravity_set_static_delegate)});
+      if (efl_ui_scrollable_match_content_set_static_delegate == null)
+      efl_ui_scrollable_match_content_set_static_delegate = new efl_ui_scrollable_match_content_set_delegate(match_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_match_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_match_content_set_static_delegate)});
+      if (efl_ui_scrollable_step_size_get_static_delegate == null)
+      efl_ui_scrollable_step_size_get_static_delegate = new efl_ui_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_get_static_delegate)});
+      if (efl_ui_scrollable_step_size_set_static_delegate == null)
+      efl_ui_scrollable_step_size_set_static_delegate = new efl_ui_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_step_size_set_static_delegate)});
+      if (efl_ui_scrollable_scroll_static_delegate == null)
+      efl_ui_scrollable_scroll_static_delegate = new efl_ui_scrollable_scroll_delegate(scroll);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollable_scroll"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollable_scroll_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_get_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_get_static_delegate = new efl_ui_scrollbar_bar_mode_get_delegate(bar_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_mode_set_static_delegate == null)
+      efl_ui_scrollbar_bar_mode_set_static_delegate = new efl_ui_scrollbar_bar_mode_set_delegate(bar_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_mode_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_size_get_static_delegate == null)
+      efl_ui_scrollbar_bar_size_get_static_delegate = new efl_ui_scrollbar_bar_size_get_delegate(bar_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_size_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_get_static_delegate == null)
+      efl_ui_scrollbar_bar_position_get_static_delegate = new efl_ui_scrollbar_bar_position_get_delegate(bar_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_get_static_delegate)});
+      if (efl_ui_scrollbar_bar_position_set_static_delegate == null)
+      efl_ui_scrollbar_bar_position_set_static_delegate = new efl_ui_scrollbar_bar_position_set_delegate(bar_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_position_set_static_delegate)});
+      if (efl_ui_scrollbar_bar_visibility_update_static_delegate == null)
+      efl_ui_scrollbar_bar_visibility_update_static_delegate = new efl_ui_scrollbar_bar_visibility_update_delegate(bar_visibility_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_scrollbar_bar_visibility_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_scrollbar_bar_visibility_update_static_delegate)});
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Scroller.efl_ui_scroller_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Scroller.efl_ui_scroller_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Scroller)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Scroller)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Scroller)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_content_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate> efl_ui_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_get_api_delegate>(_Module, "efl_ui_scrollable_content_pos_get");
+    private static Eina.Position2D_StructInternal content_pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Scroller)wrapper).GetContentPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_pos_get_delegate efl_ui_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_ui_scrollable_content_pos_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate> efl_ui_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_pos_set_api_delegate>(_Module, "efl_ui_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Scroller)wrapper).SetContentPos( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_ui_scrollable_content_pos_set_delegate efl_ui_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_scrollable_content_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate> efl_ui_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_content_size_get_api_delegate>(_Module, "efl_ui_scrollable_content_size_get");
+    private static Eina.Size2D_StructInternal content_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Scroller)wrapper).GetContentSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_content_size_get_delegate efl_ui_scrollable_content_size_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_scrollable_viewport_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate> efl_ui_scrollable_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_viewport_geometry_get_api_delegate>(_Module, "efl_ui_scrollable_viewport_geometry_get");
+    private static Eina.Rect_StructInternal viewport_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Scroller)wrapper).GetViewportGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_viewport_geometry_get_delegate efl_ui_scrollable_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate> efl_ui_scrollable_bounce_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_get_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_get");
+    private static  void bounce_enabled_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((Scroller)wrapper).GetBounceEnabled( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_get_delegate efl_ui_scrollable_bounce_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_bounce_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void efl_ui_scrollable_bounce_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate> efl_ui_scrollable_bounce_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_bounce_enabled_set_api_delegate>(_Module, "efl_ui_scrollable_bounce_enabled_set");
+    private static  void bounce_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_bounce_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scroller)wrapper).SetBounceEnabled( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_bounce_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static efl_ui_scrollable_bounce_enabled_set_delegate efl_ui_scrollable_bounce_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_freeze_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_freeze_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate> efl_ui_scrollable_scroll_freeze_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_get");
+    private static bool scroll_freeze_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Scroller)wrapper).GetScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_freeze_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_get_delegate efl_ui_scrollable_scroll_freeze_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void efl_ui_scrollable_scroll_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate> efl_ui_scrollable_scroll_freeze_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_freeze_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_freeze_set");
+    private static  void scroll_freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Scroller)wrapper).SetScrollFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static efl_ui_scrollable_scroll_freeze_set_delegate efl_ui_scrollable_scroll_freeze_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_scrollable_scroll_hold_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_scrollable_scroll_hold_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate> efl_ui_scrollable_scroll_hold_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_get_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_get");
+    private static bool scroll_hold_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Scroller)wrapper).GetScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_scroll_hold_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_get_delegate efl_ui_scrollable_scroll_hold_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void efl_ui_scrollable_scroll_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate> efl_ui_scrollable_scroll_hold_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_hold_set_api_delegate>(_Module, "efl_ui_scrollable_scroll_hold_set");
+    private static  void scroll_hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Scroller)wrapper).SetScrollHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_scroll_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static efl_ui_scrollable_scroll_hold_set_delegate efl_ui_scrollable_scroll_hold_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate> efl_ui_scrollable_looping_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_get_api_delegate>(_Module, "efl_ui_scrollable_looping_get");
+    private static  void looping_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((Scroller)wrapper).GetLooping( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_get_delegate efl_ui_scrollable_looping_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_looping_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void efl_ui_scrollable_looping_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate> efl_ui_scrollable_looping_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_looping_set_api_delegate>(_Module, "efl_ui_scrollable_looping_set");
+    private static  void looping_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_looping_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scroller)wrapper).SetLooping( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_looping_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static efl_ui_scrollable_looping_set_delegate efl_ui_scrollable_looping_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock efl_ui_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate> efl_ui_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_get_api_delegate>(_Module, "efl_ui_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((Scroller)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_movement_block_get_delegate efl_ui_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void efl_ui_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate> efl_ui_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_movement_block_set_api_delegate>(_Module, "efl_ui_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Scroller)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static efl_ui_scrollable_movement_block_set_delegate efl_ui_scrollable_movement_block_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate> efl_ui_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_get_api_delegate>(_Module, "efl_ui_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Scroller)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_get_delegate efl_ui_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_ui_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate> efl_ui_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_gravity_set_api_delegate>(_Module, "efl_ui_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scroller)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_ui_scrollable_gravity_set_delegate efl_ui_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_match_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void efl_ui_scrollable_match_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate> efl_ui_scrollable_match_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_match_content_set_api_delegate>(_Module, "efl_ui_scrollable_match_content_set");
+    private static  void match_content_set(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_match_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scroller)wrapper).SetMatchContent( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_match_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static efl_ui_scrollable_match_content_set_delegate efl_ui_scrollable_match_content_set_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_ui_scrollable_step_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate> efl_ui_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_get_api_delegate>(_Module, "efl_ui_scrollable_step_size_get");
+    private static Eina.Position2D_StructInternal step_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Scroller)wrapper).GetStepSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollable_step_size_get_delegate efl_ui_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal step);
+
+
+    public delegate  void efl_ui_scrollable_step_size_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate> efl_ui_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_step_size_set_api_delegate>(_Module, "efl_ui_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal step)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_step = Eina.Position2D_StructConversion.ToManaged(step);
+                     
+         try {
+            ((Scroller)wrapper).SetStepSize( _in_step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_scrollable_step_size_set_delegate efl_ui_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollable_scroll_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+
+
+    public delegate  void efl_ui_scrollable_scroll_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool animation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate> efl_ui_scrollable_scroll_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollable_scroll_api_delegate>(_Module, "efl_ui_scrollable_scroll");
+    private static  void scroll(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool animation)
+   {
+      Eina.Log.Debug("function efl_ui_scrollable_scroll was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                       
+         try {
+            ((Scroller)wrapper).Scroll( _in_rect,  animation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollable_scroll_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  animation);
+      }
+   }
+   private static efl_ui_scrollable_scroll_delegate efl_ui_scrollable_scroll_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_get_api_delegate(System.IntPtr obj,   out Efl.Ui.ScrollbarMode hbar,   out Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate> efl_ui_scrollbar_bar_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_get");
+    private static  void bar_mode_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.ScrollbarMode hbar,  out Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Efl.Ui.ScrollbarMode);      vbar = default(Efl.Ui.ScrollbarMode);                     
+         try {
+            ((Scroller)wrapper).GetBarMode( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_get_delegate efl_ui_scrollbar_bar_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+
+
+    public delegate  void efl_ui_scrollbar_bar_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollbarMode hbar,   Efl.Ui.ScrollbarMode vbar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate> efl_ui_scrollbar_bar_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_mode_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_mode_set");
+    private static  void bar_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollbarMode hbar,  Efl.Ui.ScrollbarMode vbar)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scroller)wrapper).SetBarMode( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static efl_ui_scrollbar_bar_mode_set_delegate efl_ui_scrollbar_bar_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double width,   out double height);
+
+
+    public delegate  void efl_ui_scrollbar_bar_size_get_api_delegate(System.IntPtr obj,   out double width,   out double height);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate> efl_ui_scrollbar_bar_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_size_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_size_get");
+    private static  void bar_size_get(System.IntPtr obj, System.IntPtr pd,  out double width,  out double height)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           width = default(double);      height = default(double);                     
+         try {
+            ((Scroller)wrapper).GetBarSize( out width,  out height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out width,  out height);
+      }
+   }
+   private static efl_ui_scrollbar_bar_size_get_delegate efl_ui_scrollbar_bar_size_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double posx,   out double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_get_api_delegate(System.IntPtr obj,   out double posx,   out double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate> efl_ui_scrollbar_bar_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_get_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_get");
+    private static  void bar_position_get(System.IntPtr obj, System.IntPtr pd,  out double posx,  out double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           posx = default(double);      posy = default(double);                     
+         try {
+            ((Scroller)wrapper).GetBarPosition( out posx,  out posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out posx,  out posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_get_delegate efl_ui_scrollbar_bar_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   double posx,   double posy);
+
+
+    public delegate  void efl_ui_scrollbar_bar_position_set_api_delegate(System.IntPtr obj,   double posx,   double posy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate> efl_ui_scrollbar_bar_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_position_set_api_delegate>(_Module, "efl_ui_scrollbar_bar_position_set");
+    private static  void bar_position_set(System.IntPtr obj, System.IntPtr pd,  double posx,  double posy)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scroller)wrapper).SetBarPosition( posx,  posy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_scrollbar_bar_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  posx,  posy);
+      }
+   }
+   private static efl_ui_scrollbar_bar_position_set_delegate efl_ui_scrollbar_bar_position_set_static_delegate;
+
+
+    private delegate  void efl_ui_scrollbar_bar_visibility_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_scrollbar_bar_visibility_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate> efl_ui_scrollbar_bar_visibility_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_scrollbar_bar_visibility_update_api_delegate>(_Module, "efl_ui_scrollbar_bar_visibility_update");
+    private static  void bar_visibility_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_scrollbar_bar_visibility_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Scroller)wrapper).UpdateBarVisibility();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_scrollbar_bar_visibility_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_scrollbar_bar_visibility_update_delegate efl_ui_scrollbar_bar_visibility_update_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Scroller)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Scroller)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Scroller)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Scroller)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Scroller)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Scroller)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Scroller)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Scroller)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Scroller)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Scroller)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Scroller)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Scroller)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((Scroller)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((Scroller)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Scroller)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Scroller)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Scroller)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Scroller)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Scroller)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_selectable.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_selectable.eo.cs
new file mode 100755 (executable)
index 0000000..facfb96
--- /dev/null
@@ -0,0 +1,528 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI selectable interface</summary>
+[SelectableNativeInherit]
+public interface Selectable : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Called when selected</summary>
+   event EventHandler SelectedEvt;
+   /// <summary>Called when no longer selected</summary>
+   event EventHandler UnselectedEvt;
+   /// <summary>Called when selection is pasted</summary>
+   event EventHandler SelectionPasteEvt;
+   /// <summary>Called when selection is copied</summary>
+   event EventHandler SelectionCopyEvt;
+   /// <summary>Called when selection is cut</summary>
+   event EventHandler SelectionCutEvt;
+   /// <summary>Called at selection start</summary>
+   event EventHandler SelectionStartEvt;
+   /// <summary>Called when selection is changed</summary>
+   event EventHandler SelectionChangedEvt;
+   /// <summary>Called when selection is cleared</summary>
+   event EventHandler SelectionClearedEvt;
+}
+/// <summary>Efl UI selectable interface</summary>
+sealed public class SelectableConcrete : 
+
+Selectable
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SelectableConcrete))
+            return Efl.Ui.SelectableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_selectable_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SelectableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~SelectableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static SelectableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SelectableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object SelectedEvtKey = new object();
+   /// <summary>Called when selected</summary>
+   public event EventHandler SelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_SelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectedEvt.</summary>
+   public void On_SelectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectedEvt_delegate;
+   private void on_SelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnselectedEvtKey = new object();
+   /// <summary>Called when no longer selected</summary>
+   public event EventHandler UnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_UnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnselectedEvt.</summary>
+   public void On_UnselectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnselectedEvt_delegate;
+   private void on_UnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionPasteEvtKey = new object();
+   /// <summary>Called when selection is pasted</summary>
+   public event EventHandler SelectionPasteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionPasteEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (remove_cpp_event_handler(key, this.evt_SelectionPasteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionPasteEvt.</summary>
+   public void On_SelectionPasteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionPasteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionPasteEvt_delegate;
+   private void on_SelectionPasteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionPasteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCopyEvtKey = new object();
+   /// <summary>Called when selection is copied</summary>
+   public event EventHandler SelectionCopyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCopyEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCopyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCopyEvt.</summary>
+   public void On_SelectionCopyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCopyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCopyEvt_delegate;
+   private void on_SelectionCopyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCopyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCutEvtKey = new object();
+   /// <summary>Called when selection is cut</summary>
+   public event EventHandler SelectionCutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCutEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCutEvt.</summary>
+   public void On_SelectionCutEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCutEvt_delegate;
+   private void on_SelectionCutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionStartEvtKey = new object();
+   /// <summary>Called at selection start</summary>
+   public event EventHandler SelectionStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionStartEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (remove_cpp_event_handler(key, this.evt_SelectionStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionStartEvt.</summary>
+   public void On_SelectionStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionStartEvt_delegate;
+   private void on_SelectionStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection is changed</summary>
+   public event EventHandler SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionChangedEvt.</summary>
+   public void On_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionChangedEvt_delegate;
+   private void on_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionClearedEvtKey = new object();
+   /// <summary>Called when selection is cleared</summary>
+   public event EventHandler SelectionClearedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionClearedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionClearedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionClearedEvt.</summary>
+   public void On_SelectionClearedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionClearedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionClearedEvt_delegate;
+   private void on_SelectionClearedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionClearedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_SelectedEvt_delegate = new Efl.EventCb(on_SelectedEvt_NativeCallback);
+      evt_UnselectedEvt_delegate = new Efl.EventCb(on_UnselectedEvt_NativeCallback);
+      evt_SelectionPasteEvt_delegate = new Efl.EventCb(on_SelectionPasteEvt_NativeCallback);
+      evt_SelectionCopyEvt_delegate = new Efl.EventCb(on_SelectionCopyEvt_NativeCallback);
+      evt_SelectionCutEvt_delegate = new Efl.EventCb(on_SelectionCutEvt_NativeCallback);
+      evt_SelectionStartEvt_delegate = new Efl.EventCb(on_SelectionStartEvt_NativeCallback);
+      evt_SelectionChangedEvt_delegate = new Efl.EventCb(on_SelectionChangedEvt_NativeCallback);
+      evt_SelectionClearedEvt_delegate = new Efl.EventCb(on_SelectionClearedEvt_NativeCallback);
+   }
+}
+public class SelectableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.SelectableConcrete.efl_ui_selectable_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.SelectableConcrete.efl_ui_selectable_interface_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_selection.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_selection.eo.cs
new file mode 100755 (executable)
index 0000000..04a44e7
--- /dev/null
@@ -0,0 +1,385 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl Ui Selection class</summary>
+[SelectionNativeInherit]
+public interface Selection : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Set the selection data to the object</summary>
+/// <param name="type">Selection Type</param>
+/// <param name="format">Selection Format</param>
+/// <param name="data"></param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns>Future for tracking when the selection is lost</returns>
+ Eina.Future SetSelection( Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Eina.Slice data,   uint seat);
+   /// <summary>Get the data from the object that has selection</summary>
+/// <param name="type">Selection Type</param>
+/// <param name="format">Selection Format</param>
+/// <param name="data_func">Data ready function pointer</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void GetSelection( Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Efl.Ui.SelectionDataReady data_func,   uint seat);
+   /// <summary>Clear the selection data from the object</summary>
+/// <param name="type">Selection Type</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns></returns>
+ void ClearSelection( Efl.Ui.SelectionType type,   uint seat);
+   /// <summary>Determine whether the selection data has owner</summary>
+/// <param name="type">Selection type</param>
+/// <param name="seat">Specified seat for multiple seats case.</param>
+/// <returns>EINA_TRUE if there is object owns selection, otherwise EINA_FALSE</returns>
+bool HasOwner( Efl.Ui.SelectionType type,   uint seat);
+      System.Threading.Tasks.Task<Eina.Value> SetSelectionAsync( Efl.Ui.SelectionType type, Efl.Ui.SelectionFormat format, Eina.Slice data,  uint seat, System.Threading.CancellationToken token=default(System.Threading.CancellationToken));
+            /// <summary>Called when display server&apos;s selection has changed</summary>
+   event EventHandler<Efl.Ui.SelectionSelectionChangedEvt_Args> SelectionChangedEvt;
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Selection.SelectionChangedEvt"/>.</summary>
+public class SelectionSelectionChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.SelectionChanged arg { get; set; }
+}
+/// <summary>Efl Ui Selection class</summary>
+sealed public class SelectionConcrete : 
+
+Selection
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SelectionConcrete))
+            return Efl.Ui.SelectionNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_selection_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SelectionConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~SelectionConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static SelectionConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SelectionConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object SelectionChangedEvtKey = new object();
+   /// <summary>Called when display server&apos;s selection has changed</summary>
+   public event EventHandler<Efl.Ui.SelectionSelectionChangedEvt_Args> SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SELECTION_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SELECTION_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionChangedEvt.</summary>
+   public void On_SelectionChangedEvt(Efl.Ui.SelectionSelectionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.SelectionSelectionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.SelectionSelectionChangedEvt_Args>)eventHandlers[SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionChangedEvt_delegate;
+   private void on_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.SelectionSelectionChangedEvt_Args args = new Efl.Ui.SelectionSelectionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_SelectionChangedEvt_delegate = new Efl.EventCb(on_SelectionChangedEvt_NativeCallback);
+   }
+   /// <summary>Set the selection data to the object</summary>
+   /// <param name="type">Selection Type</param>
+   /// <param name="format">Selection Format</param>
+   /// <param name="data"></param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns>Future for tracking when the selection is lost</returns>
+   public  Eina.Future SetSelection( Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Eina.Slice data,   uint seat) {
+                                                                               var _ret_var = Efl.Ui.SelectionNativeInherit.efl_ui_selection_set_ptr.Value.Delegate(this.NativeHandle, type,  format,  data,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Get the data from the object that has selection</summary>
+   /// <param name="type">Selection Type</param>
+   /// <param name="format">Selection Format</param>
+   /// <param name="data_func">Data ready function pointer</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void GetSelection( Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Efl.Ui.SelectionDataReady data_func,   uint seat) {
+                                                                   GCHandle data_func_handle = GCHandle.Alloc(data_func);
+            Efl.Ui.SelectionNativeInherit.efl_ui_selection_get_ptr.Value.Delegate(this.NativeHandle, type,  format, GCHandle.ToIntPtr(data_func_handle), Efl.Ui.SelectionDataReadyWrapper.Cb, Efl.Eo.Globals.free_gchandle,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Clear the selection data from the object</summary>
+   /// <param name="type">Selection Type</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   public  void ClearSelection( Efl.Ui.SelectionType type,   uint seat) {
+                                           Efl.Ui.SelectionNativeInherit.efl_ui_selection_clear_ptr.Value.Delegate(this.NativeHandle, type,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Determine whether the selection data has owner</summary>
+   /// <param name="type">Selection type</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns>EINA_TRUE if there is object owns selection, otherwise EINA_FALSE</returns>
+   public bool HasOwner( Efl.Ui.SelectionType type,   uint seat) {
+                                           var _ret_var = Efl.Ui.SelectionNativeInherit.efl_ui_selection_has_owner_ptr.Value.Delegate(this.NativeHandle, type,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   public System.Threading.Tasks.Task<Eina.Value> SetSelectionAsync( Efl.Ui.SelectionType type, Efl.Ui.SelectionFormat format, Eina.Slice data,  uint seat, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = SetSelection(  type,  format,  data,  seat);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+}
+public class SelectionNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_selection_set_static_delegate == null)
+      efl_ui_selection_set_static_delegate = new efl_ui_selection_set_delegate(selection_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_set_static_delegate)});
+      if (efl_ui_selection_get_static_delegate == null)
+      efl_ui_selection_get_static_delegate = new efl_ui_selection_get_delegate(selection_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_get_static_delegate)});
+      if (efl_ui_selection_clear_static_delegate == null)
+      efl_ui_selection_clear_static_delegate = new efl_ui_selection_clear_delegate(selection_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_clear_static_delegate)});
+      if (efl_ui_selection_has_owner_static_delegate == null)
+      efl_ui_selection_has_owner_static_delegate = new efl_ui_selection_has_owner_delegate(has_owner);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_has_owner"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_has_owner_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.SelectionConcrete.efl_ui_selection_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.SelectionConcrete.efl_ui_selection_mixin_get();
+   }
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_ui_selection_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,   Eina.Slice data,    uint seat);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_ui_selection_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,   Eina.Slice data,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_set_api_delegate> efl_ui_selection_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_set_api_delegate>(_Module, "efl_ui_selection_set");
+    private static  Eina.Future selection_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Eina.Slice data,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                           Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((SelectionConcrete)wrapper).SetSelection( type,  format,  data,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_ui_selection_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  format,  data,  seat);
+      }
+   }
+   private static efl_ui_selection_set_delegate efl_ui_selection_set_static_delegate;
+
+
+    private delegate  void efl_ui_selection_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,  IntPtr data_func_data, Efl.Ui.SelectionDataReadyInternal data_func, EinaFreeCb data_func_free_cb,    uint seat);
+
+
+    public delegate  void efl_ui_selection_get_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,  IntPtr data_func_data, Efl.Ui.SelectionDataReadyInternal data_func, EinaFreeCb data_func_free_cb,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_get_api_delegate> efl_ui_selection_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_get_api_delegate>(_Module, "efl_ui_selection_get");
+    private static  void selection_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format, IntPtr data_func_data, Efl.Ui.SelectionDataReadyInternal data_func, EinaFreeCb data_func_free_cb,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                              Efl.Ui.SelectionDataReadyWrapper data_func_wrapper = new Efl.Ui.SelectionDataReadyWrapper(data_func, data_func_data, data_func_free_cb);
+               
+         try {
+            ((SelectionConcrete)wrapper).GetSelection( type,  format,  data_func_wrapper.ManagedCb,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_ui_selection_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  format, data_func_data, data_func, data_func_free_cb,  seat);
+      }
+   }
+   private static efl_ui_selection_get_delegate efl_ui_selection_get_static_delegate;
+
+
+    private delegate  void efl_ui_selection_clear_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,    uint seat);
+
+
+    public delegate  void efl_ui_selection_clear_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_clear_api_delegate> efl_ui_selection_clear_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_clear_api_delegate>(_Module, "efl_ui_selection_clear");
+    private static  void selection_clear(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((SelectionConcrete)wrapper).ClearSelection( type,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_selection_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  seat);
+      }
+   }
+   private static efl_ui_selection_clear_delegate efl_ui_selection_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_selection_has_owner_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,    uint seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_selection_has_owner_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_has_owner_api_delegate> efl_ui_selection_has_owner_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_has_owner_api_delegate>(_Module, "efl_ui_selection_has_owner");
+    private static bool has_owner(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_has_owner was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SelectionConcrete)wrapper).HasOwner( type,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_selection_has_owner_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  seat);
+      }
+   }
+   private static efl_ui_selection_has_owner_delegate efl_ui_selection_has_owner_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_selection_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_ui_selection_types.eot.cs
new file mode 100755 (executable)
index 0000000..9b0dcdf
--- /dev/null
@@ -0,0 +1,296 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+/// <param name="obj">Object which requested for the selection</param>
+/// <param name="seldata">Selection data</param>
+/// <returns></returns>
+public delegate  void SelectionDataReady( Efl.Object obj,  ref Efl.Ui.SelectionData seldata);
+public delegate  void SelectionDataReadyInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object obj,   ref Efl.Ui.SelectionData_StructInternal seldata);
+internal class SelectionDataReadyWrapper
+{
+
+   private SelectionDataReadyInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal SelectionDataReadyWrapper (SelectionDataReadyInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~SelectionDataReadyWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  void ManagedCb( Efl.Object obj, ref Efl.Ui.SelectionData seldata)
+   {
+            var _in_seldata = Efl.Ui.SelectionData_StructConversion.ToInternal(seldata);
+                              _cb(_cb_data,  obj,  ref _in_seldata);
+      Eina.Error.RaiseIfUnhandledException();
+                        seldata = Efl.Ui.SelectionData_StructConversion.ToManaged(_in_seldata);
+         }
+
+      internal static  void Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object obj,   ref Efl.Ui.SelectionData_StructInternal seldata)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      SelectionDataReady cb = (SelectionDataReady)handle.Target;
+            var _in_seldata = Efl.Ui.SelectionData_StructConversion.ToManaged(seldata);
+                                 
+      try {
+         cb( obj,  ref _in_seldata);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                        seldata = Efl.Ui.SelectionData_StructConversion.ToInternal(_in_seldata);
+         }
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Selection type</summary>
+public enum SelectionType
+{
+/// <summary>Primary text selection (highlighted or selected text)</summary>
+Primary = 0,
+/// <summary>Used when primary selection is in use</summary>
+Secondary = 1,
+/// <summary>Drag and Drop</summary>
+Dnd = 2,
+/// <summary>Clipboard selection (ctrl+C)</summary>
+Clipboard = 3,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Selection format</summary>
+public enum SelectionFormat
+{
+/// <summary>For matching every possible atom</summary>
+Targets = -1,
+/// <summary>Content is from outside of Elementary</summary>
+None = 0,
+/// <summary>Plain unformatted text: Used for things that don&apos;t want rich markup</summary>
+Text = 1,
+/// <summary>Edje textblock markup, including inline images</summary>
+Markup = 2,
+/// <summary>Images</summary>
+Image = 4,
+/// <summary>Vcards</summary>
+Vcard = 8,
+/// <summary>Raw HTML-like data (eg. webkit)</summary>
+Html = 16,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Defines the kind of action associated with the drop data</summary>
+public enum SelectionAction
+{
+/// <summary>Action type is unknown</summary>
+Unknown = 0,
+/// <summary>Copy the data</summary>
+Copy = 1,
+/// <summary>Move the data</summary>
+Move = 2,
+/// <summary>Private action type</summary>
+Private = 3,
+/// <summary>Ask the user what to do</summary>
+Ask = 4,
+/// <summary>List the data</summary>
+List = 5,
+/// <summary>Link the data</summary>
+Link = 6,
+/// <summary>Describe the data</summary>
+Description = 7,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Structure holding the info about selected data</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SelectionData
+{
+   /// <summary>Coordinates of the drop (DND operations only)</summary>
+   public Eina.Position2D Pos;
+   /// <summary>Format of the selection</summary>
+   public Efl.Ui.SelectionFormat Format;
+   /// <summary>Selection data</summary>
+   public Eina.Slice Content;
+   /// <summary>Action to perform with the data</summary>
+   public Efl.Ui.SelectionAction Action;
+   /// <summary>Item under the drag position. It is only available for container</summary>
+   public Efl.Object Item;
+   ///<summary>Constructor for SelectionData.</summary>
+   public SelectionData(
+      Eina.Position2D Pos=default(Eina.Position2D),
+      Efl.Ui.SelectionFormat Format=default(Efl.Ui.SelectionFormat),
+      Eina.Slice Content=default(Eina.Slice),
+      Efl.Ui.SelectionAction Action=default(Efl.Ui.SelectionAction),
+      Efl.Object Item=default(Efl.Object)   )
+   {
+      this.Pos = Pos;
+      this.Format = Format;
+      this.Content = Content;
+      this.Action = Action;
+      this.Item = Item;
+   }
+public static implicit operator SelectionData(IntPtr ptr)
+   {
+      var tmp = (SelectionData_StructInternal)Marshal.PtrToStructure(ptr, typeof(SelectionData_StructInternal));
+      return SelectionData_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct SelectionData.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SelectionData_StructInternal
+{
+   
+   public Eina.Position2D_StructInternal Pos;
+   
+   public Efl.Ui.SelectionFormat Format;
+   
+   public Eina.Slice Content;
+   
+   public Efl.Ui.SelectionAction Action;
+///<summary>Internal wrapper for field Item</summary>
+public System.IntPtr Item;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator SelectionData(SelectionData_StructInternal struct_)
+   {
+      return SelectionData_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator SelectionData_StructInternal(SelectionData struct_)
+   {
+      return SelectionData_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct SelectionData</summary>
+public static class SelectionData_StructConversion
+{
+   internal static SelectionData_StructInternal ToInternal(SelectionData _external_struct)
+   {
+      var _internal_struct = new SelectionData_StructInternal();
+
+      _internal_struct.Pos = Eina.Position2D_StructConversion.ToInternal(_external_struct.Pos);
+      _internal_struct.Format = _external_struct.Format;
+
+      _internal_struct.Content.Len = _external_struct.Content.Len;
+      _internal_struct.Content.Mem = _external_struct.Content.Mem;
+
+      _internal_struct.Action = _external_struct.Action;
+      _internal_struct.Item = _external_struct.Item.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static SelectionData ToManaged(SelectionData_StructInternal _internal_struct)
+   {
+      var _external_struct = new SelectionData();
+
+      _external_struct.Pos = Eina.Position2D_StructConversion.ToManaged(_internal_struct.Pos);
+      _external_struct.Format = _internal_struct.Format;
+
+      _external_struct.Content.Len = _internal_struct.Content.Len;
+      _external_struct.Content.Mem = _internal_struct.Content.Mem;
+
+      _external_struct.Action = _internal_struct.Action;
+
+      _external_struct.Item = (Efl.Object) System.Activator.CreateInstance(typeof(Efl.Object), new System.Object[] {_internal_struct.Item});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Item);
+
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SelectionChanged
+{
+   /// <summary>Selection type</summary>
+   public Efl.Ui.SelectionType Type;
+   /// <summary>The seat on which the selection changed, or NULL for &quot;default&quot;</summary>
+   public  int Seat;
+   /// <summary>The display connection object, NULL under X11</summary>
+   public  System.IntPtr Display;
+   /// <summary>EINA_TRUE if the selection has an owner</summary>
+   public bool Exist;
+   ///<summary>Constructor for SelectionChanged.</summary>
+   public SelectionChanged(
+      Efl.Ui.SelectionType Type=default(Efl.Ui.SelectionType),
+       int Seat=default( int),
+       System.IntPtr Display=default( System.IntPtr),
+      bool Exist=default(bool)   )
+   {
+      this.Type = Type;
+      this.Seat = Seat;
+      this.Display = Display;
+      this.Exist = Exist;
+   }
+public static implicit operator SelectionChanged(IntPtr ptr)
+   {
+      var tmp = (SelectionChanged_StructInternal)Marshal.PtrToStructure(ptr, typeof(SelectionChanged_StructInternal));
+      return SelectionChanged_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct SelectionChanged.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SelectionChanged_StructInternal
+{
+   
+   public Efl.Ui.SelectionType Type;
+   
+   public  int Seat;
+   
+   public  System.IntPtr Display;
+///<summary>Internal wrapper for field Exist</summary>
+public System.Byte Exist;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator SelectionChanged(SelectionChanged_StructInternal struct_)
+   {
+      return SelectionChanged_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator SelectionChanged_StructInternal(SelectionChanged struct_)
+   {
+      return SelectionChanged_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct SelectionChanged</summary>
+public static class SelectionChanged_StructConversion
+{
+   internal static SelectionChanged_StructInternal ToInternal(SelectionChanged _external_struct)
+   {
+      var _internal_struct = new SelectionChanged_StructInternal();
+
+      _internal_struct.Type = _external_struct.Type;
+      _internal_struct.Seat = _external_struct.Seat;
+      _internal_struct.Display = _external_struct.Display;
+      _internal_struct.Exist = _external_struct.Exist ? (byte)1 : (byte)0;
+
+      return _internal_struct;
+   }
+
+   internal static SelectionChanged ToManaged(SelectionChanged_StructInternal _internal_struct)
+   {
+      var _external_struct = new SelectionChanged();
+
+      _external_struct.Type = _internal_struct.Type;
+      _external_struct.Seat = _internal_struct.Seat;
+      _external_struct.Display = _internal_struct.Display;
+      _external_struct.Exist = _internal_struct.Exist != 0;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_slider.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_slider.eo.cs
new file mode 100755 (executable)
index 0000000..ba2334b
--- /dev/null
@@ -0,0 +1,762 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary slider class</summary>
+[SliderNativeInherit]
+public class Slider : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Access.Value,Efl.Ui.Direction,Efl.Ui.RangeDisplay,Efl.Ui.RangeInteractive
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.SliderNativeInherit nativeInherit = new Efl.Ui.SliderNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Slider))
+            return Efl.Ui.SliderNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_slider_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Slider(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_slider_class_get(), typeof(Slider), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Slider(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Slider(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Slider static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Slider(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when slider changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DelayChangedEvtKey = new object();
+   /// <summary>Called when delay changed</summary>
+   public event EventHandler DelayChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_DELAY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DelayChangedEvt_delegate)) {
+               eventHandlers.AddHandler(DelayChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_DELAY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_DelayChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DelayChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DelayChangedEvt.</summary>
+   public void On_DelayChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DelayChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DelayChangedEvt_delegate;
+   private void on_DelayChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DelayChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SliderDragStartEvtKey = new object();
+   /// <summary>Called when slider drag started</summary>
+   public event EventHandler SliderDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_SLIDER_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_SliderDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(SliderDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_SLIDER_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_SliderDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SliderDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SliderDragStartEvt.</summary>
+   public void On_SliderDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SliderDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SliderDragStartEvt_delegate;
+   private void on_SliderDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SliderDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SliderDragStopEvtKey = new object();
+   /// <summary>Called when slider drag stopped</summary>
+   public event EventHandler SliderDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_SLIDER_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_SliderDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(SliderDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SLIDER_EVENT_SLIDER_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_SliderDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SliderDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SliderDragStopEvt.</summary>
+   public void On_SliderDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SliderDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SliderDragStopEvt_delegate;
+   private void on_SliderDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SliderDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+      evt_DelayChangedEvt_delegate = new Efl.EventCb(on_DelayChangedEvt_NativeCallback);
+      evt_SliderDragStartEvt_delegate = new Efl.EventCb(on_SliderDragStartEvt_NativeCallback);
+      evt_SliderDragStopEvt_delegate = new Efl.EventCb(on_SliderDragStopEvt_NativeCallback);
+   }
+   /// <summary>Gets value displayed by a accessible widget.</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns></returns>
+   virtual public  void GetValueAndText( out double value,  out  System.String text) {
+                                           Efl.Access.ValueNativeInherit.efl_access_value_and_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out value,  out text);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Value and text property</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns><c>true</c> if setting widgets value has succeeded, otherwise <c>false</c> .</returns>
+   virtual public bool SetValueAndText( double value,   System.String text) {
+                                           var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_and_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value,  text);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets a range of all possible values and its description</summary>
+   /// <param name="lower_limit">Lower limit of the range</param>
+   /// <param name="upper_limit">Upper limit of the range</param>
+   /// <param name="description">Description of the range</param>
+   /// <returns></returns>
+   virtual public  void GetRange( out double lower_limit,  out double upper_limit,  out  System.String description) {
+                                                             Efl.Access.ValueNativeInherit.efl_access_value_range_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out lower_limit,  out upper_limit,  out description);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Gets an minimal incrementation value</summary>
+   /// <returns>Minimal incrementation value</returns>
+   virtual public double GetIncrement() {
+       var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_increment_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <returns>The range value (must be between $0.0 and 1.0)</returns>
+   virtual public double GetRangeValue() {
+       var _ret_var = Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <param name="val">The range value (must be between $0.0 and 1.0)</param>
+   /// <returns></returns>
+   virtual public  void SetRangeValue( double val) {
+                         Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimum and maximum values of the given range widget.
+   /// Note: If only one value is needed, the other pointer can be passed as <c>null</c>.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void GetRangeMinMax( out double min,  out double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out min,  out max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the minimum and maximum values for given range widget.
+   /// Define the allowed range of values to be selected by the user.
+   /// 
+   /// If actual value is less than <c>min</c>, it will be updated to <c>min</c>. If it is bigger then <c>max</c>, will be updated to <c>max</c>. The actual value can be obtained with <see cref="Efl.Ui.RangeDisplay.GetRangeValue"/>
+   /// 
+   /// The minimum and maximum values may be different for each class.
+   /// 
+   /// Warning: maximum must be greater than minimum, otherwise behavior is undefined.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void SetRangeMinMax( double min,  double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), min,  max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+   /// This value will be incremented or decremented to the displayed value.
+   /// 
+   /// By default step value is equal to 1.
+   /// 
+   /// Warning: The step value should be bigger than 0.</summary>
+   /// <returns>The step value.</returns>
+   virtual public double GetRangeStep() {
+       var _ret_var = Efl.Ui.RangeInteractiveNativeInherit.efl_ui_range_step_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+   /// This value will be incremented or decremented to the displayed value.
+   /// 
+   /// By default step value is equal to 1.
+   /// 
+   /// Warning: The step value should be bigger than 0.</summary>
+   /// <param name="step">The step value.</param>
+   /// <returns></returns>
+   virtual public  void SetRangeStep( double step) {
+                         Efl.Ui.RangeInteractiveNativeInherit.efl_ui_range_step_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an minimal incrementation value</summary>
+/// <value>Minimal incrementation value</value>
+   public double Increment {
+      get { return GetIncrement(); }
+   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <value>The range value (must be between $0.0 and 1.0)</value>
+   public double RangeValue {
+      get { return GetRangeValue(); }
+      set { SetRangeValue( value); }
+   }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+/// This value will be incremented or decremented to the displayed value.
+/// 
+/// By default step value is equal to 1.
+/// 
+/// Warning: The step value should be bigger than 0.</summary>
+/// <value>The step value.</value>
+   public double RangeStep {
+      get { return GetRangeStep(); }
+      set { SetRangeStep( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Slider.efl_ui_slider_class_get();
+   }
+}
+public class SliderNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_access_value_and_text_get_static_delegate == null)
+      efl_access_value_and_text_get_static_delegate = new efl_access_value_and_text_get_delegate(value_and_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_get_static_delegate)});
+      if (efl_access_value_and_text_set_static_delegate == null)
+      efl_access_value_and_text_set_static_delegate = new efl_access_value_and_text_set_delegate(value_and_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_set_static_delegate)});
+      if (efl_access_value_range_get_static_delegate == null)
+      efl_access_value_range_get_static_delegate = new efl_access_value_range_get_delegate(range_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_range_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_range_get_static_delegate)});
+      if (efl_access_value_increment_get_static_delegate == null)
+      efl_access_value_increment_get_static_delegate = new efl_access_value_increment_get_delegate(increment_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_increment_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_increment_get_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      if (efl_ui_range_value_get_static_delegate == null)
+      efl_ui_range_value_get_static_delegate = new efl_ui_range_value_get_delegate(range_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_get_static_delegate)});
+      if (efl_ui_range_value_set_static_delegate == null)
+      efl_ui_range_value_set_static_delegate = new efl_ui_range_value_set_delegate(range_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_set_static_delegate)});
+      if (efl_ui_range_min_max_get_static_delegate == null)
+      efl_ui_range_min_max_get_static_delegate = new efl_ui_range_min_max_get_delegate(range_min_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_get_static_delegate)});
+      if (efl_ui_range_min_max_set_static_delegate == null)
+      efl_ui_range_min_max_set_static_delegate = new efl_ui_range_min_max_set_delegate(range_min_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_set_static_delegate)});
+      if (efl_ui_range_step_get_static_delegate == null)
+      efl_ui_range_step_get_static_delegate = new efl_ui_range_step_get_delegate(range_step_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_step_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_step_get_static_delegate)});
+      if (efl_ui_range_step_set_static_delegate == null)
+      efl_ui_range_step_set_static_delegate = new efl_ui_range_step_set_delegate(range_step_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_step_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_step_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Slider.efl_ui_slider_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Slider.efl_ui_slider_class_get();
+   }
+
+
+    private delegate  void efl_access_value_and_text_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+
+
+    public delegate  void efl_access_value_and_text_get_api_delegate(System.IntPtr obj,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate> efl_access_value_and_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate>(_Module, "efl_access_value_and_text_get");
+    private static  void value_and_text_get(System.IntPtr obj, System.IntPtr pd,  out double value,  out  System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           value = default(double);       System.String _out_text = default( System.String);
+                     
+         try {
+            ((Slider)wrapper).GetValueAndText( out value,  out _out_text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            text = _out_text;
+                        } else {
+         efl_access_value_and_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out value,  out text);
+      }
+   }
+   private static efl_access_value_and_text_get_delegate efl_access_value_and_text_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_value_and_text_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_value_and_text_set_api_delegate(System.IntPtr obj,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate> efl_access_value_and_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate>(_Module, "efl_access_value_and_text_set");
+    private static bool value_and_text_set(System.IntPtr obj, System.IntPtr pd,  double value,   System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Slider)wrapper).SetValueAndText( value,  text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_value_and_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value,  text);
+      }
+   }
+   private static efl_access_value_and_text_set_delegate efl_access_value_and_text_set_static_delegate;
+
+
+    private delegate  void efl_access_value_range_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+
+
+    public delegate  void efl_access_value_range_get_api_delegate(System.IntPtr obj,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate> efl_access_value_range_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate>(_Module, "efl_access_value_range_get");
+    private static  void range_get(System.IntPtr obj, System.IntPtr pd,  out double lower_limit,  out double upper_limit,  out  System.String description)
+   {
+      Eina.Log.Debug("function efl_access_value_range_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 lower_limit = default(double);      upper_limit = default(double);       System.String _out_description = default( System.String);
+                           
+         try {
+            ((Slider)wrapper).GetRange( out lower_limit,  out upper_limit,  out _out_description);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  description = _out_description;
+                              } else {
+         efl_access_value_range_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out lower_limit,  out upper_limit,  out description);
+      }
+   }
+   private static efl_access_value_range_get_delegate efl_access_value_range_get_static_delegate;
+
+
+    private delegate double efl_access_value_increment_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_access_value_increment_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate> efl_access_value_increment_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate>(_Module, "efl_access_value_increment_get");
+    private static double increment_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_value_increment_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Slider)wrapper).GetIncrement();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_value_increment_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_value_increment_get_delegate efl_access_value_increment_get_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((Slider)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Slider)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+
+
+    private delegate double efl_ui_range_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate> efl_ui_range_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate>(_Module, "efl_ui_range_value_get");
+    private static double range_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Slider)wrapper).GetRangeValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_value_get_delegate efl_ui_range_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double val);
+
+
+    public delegate  void efl_ui_range_value_set_api_delegate(System.IntPtr obj,   double val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate> efl_ui_range_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate>(_Module, "efl_ui_range_value_set");
+    private static  void range_value_set(System.IntPtr obj, System.IntPtr pd,  double val)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Slider)wrapper).SetRangeValue( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_range_value_set_delegate efl_ui_range_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double min,   out double max);
+
+
+    public delegate  void efl_ui_range_min_max_get_api_delegate(System.IntPtr obj,   out double min,   out double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate> efl_ui_range_min_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate>(_Module, "efl_ui_range_min_max_get");
+    private static  void range_min_max_get(System.IntPtr obj, System.IntPtr pd,  out double min,  out double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           min = default(double);      max = default(double);                     
+         try {
+            ((Slider)wrapper).GetRangeMinMax( out min,  out max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out min,  out max);
+      }
+   }
+   private static efl_ui_range_min_max_get_delegate efl_ui_range_min_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   double min,   double max);
+
+
+    public delegate  void efl_ui_range_min_max_set_api_delegate(System.IntPtr obj,   double min,   double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate> efl_ui_range_min_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate>(_Module, "efl_ui_range_min_max_set");
+    private static  void range_min_max_set(System.IntPtr obj, System.IntPtr pd,  double min,  double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Slider)wrapper).SetRangeMinMax( min,  max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min,  max);
+      }
+   }
+   private static efl_ui_range_min_max_set_delegate efl_ui_range_min_max_set_static_delegate;
+
+
+    private delegate double efl_ui_range_step_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_step_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_step_get_api_delegate> efl_ui_range_step_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_step_get_api_delegate>(_Module, "efl_ui_range_step_get");
+    private static double range_step_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_step_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Slider)wrapper).GetRangeStep();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_step_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_step_get_delegate efl_ui_range_step_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_step_set_delegate(System.IntPtr obj, System.IntPtr pd,   double step);
+
+
+    public delegate  void efl_ui_range_step_set_api_delegate(System.IntPtr obj,   double step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_step_set_api_delegate> efl_ui_range_step_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_step_set_api_delegate>(_Module, "efl_ui_range_step_set");
+    private static  void range_step_set(System.IntPtr obj, System.IntPtr pd,  double step)
+   {
+      Eina.Log.Debug("function efl_ui_range_step_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Slider)wrapper).SetRangeStep( step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_step_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_range_step_set_delegate efl_ui_range_step_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_slider_interval.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_slider_interval.eo.cs
new file mode 100755 (executable)
index 0000000..50c5adc
--- /dev/null
@@ -0,0 +1,172 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>An interval slider.
+/// This is a slider with two indicators.
+/// 1.21</summary>
+[SliderIntervalNativeInherit]
+public class SliderInterval : Efl.Ui.Slider, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.SliderIntervalNativeInherit nativeInherit = new Efl.Ui.SliderIntervalNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SliderInterval))
+            return Efl.Ui.SliderIntervalNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_slider_interval_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public SliderInterval(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_slider_interval_class_get(), typeof(SliderInterval), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SliderInterval(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SliderInterval(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SliderInterval static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SliderInterval(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Sets up position of two indicators at start and end position.
+   /// 1.21</summary>
+   /// <param name="from">interval minimum value
+   /// 1.21</param>
+   /// <param name="to">interval maximum value
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void GetIntervalValue( out double from,  out double to) {
+                                           Efl.Ui.SliderIntervalNativeInherit.efl_ui_slider_interval_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out from,  out to);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets up position of two indicators at start and end position.
+   /// 1.21</summary>
+   /// <param name="from">interval minimum value
+   /// 1.21</param>
+   /// <param name="to">interval maximum value
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetIntervalValue( double from,  double to) {
+                                           Efl.Ui.SliderIntervalNativeInherit.efl_ui_slider_interval_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from,  to);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.SliderInterval.efl_ui_slider_interval_class_get();
+   }
+}
+public class SliderIntervalNativeInherit : Efl.Ui.SliderNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_slider_interval_value_get_static_delegate == null)
+      efl_ui_slider_interval_value_get_static_delegate = new efl_ui_slider_interval_value_get_delegate(interval_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_slider_interval_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_slider_interval_value_get_static_delegate)});
+      if (efl_ui_slider_interval_value_set_static_delegate == null)
+      efl_ui_slider_interval_value_set_static_delegate = new efl_ui_slider_interval_value_set_delegate(interval_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_slider_interval_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_slider_interval_value_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.SliderInterval.efl_ui_slider_interval_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.SliderInterval.efl_ui_slider_interval_class_get();
+   }
+
+
+    private delegate  void efl_ui_slider_interval_value_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double from,   out double to);
+
+
+    public delegate  void efl_ui_slider_interval_value_get_api_delegate(System.IntPtr obj,   out double from,   out double to);
+    public static Efl.Eo.FunctionWrapper<efl_ui_slider_interval_value_get_api_delegate> efl_ui_slider_interval_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_slider_interval_value_get_api_delegate>(_Module, "efl_ui_slider_interval_value_get");
+    private static  void interval_value_get(System.IntPtr obj, System.IntPtr pd,  out double from,  out double to)
+   {
+      Eina.Log.Debug("function efl_ui_slider_interval_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           from = default(double);      to = default(double);                     
+         try {
+            ((SliderInterval)wrapper).GetIntervalValue( out from,  out to);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_slider_interval_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out from,  out to);
+      }
+   }
+   private static efl_ui_slider_interval_value_get_delegate efl_ui_slider_interval_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_slider_interval_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double from,   double to);
+
+
+    public delegate  void efl_ui_slider_interval_value_set_api_delegate(System.IntPtr obj,   double from,   double to);
+    public static Efl.Eo.FunctionWrapper<efl_ui_slider_interval_value_set_api_delegate> efl_ui_slider_interval_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_slider_interval_value_set_api_delegate>(_Module, "efl_ui_slider_interval_value_set");
+    private static  void interval_value_set(System.IntPtr obj, System.IntPtr pd,  double from,  double to)
+   {
+      Eina.Log.Debug("function efl_ui_slider_interval_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((SliderInterval)wrapper).SetIntervalValue( from,  to);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_slider_interval_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from,  to);
+      }
+   }
+   private static efl_ui_slider_interval_value_set_delegate efl_ui_slider_interval_value_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_spin.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_spin.eo.cs
new file mode 100755 (executable)
index 0000000..9a40b2a
--- /dev/null
@@ -0,0 +1,922 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>A Spin.
+/// This is a widget which allows the user to increase or decrease numeric values using user interactions. It&apos;s a basic type of widget for choosing and displaying values.
+/// 1.21</summary>
+[SpinNativeInherit]
+public class Spin : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Access.Value,Efl.Ui.Format,Efl.Ui.RangeDisplay,Efl.Ui.RangeInteractive
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.SpinNativeInherit nativeInherit = new Efl.Ui.SpinNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Spin))
+            return Efl.Ui.SpinNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_spin_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Spin(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_spin_class_get(), typeof(Spin), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Spin(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Spin(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Spin static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Spin(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when spin changed
+   /// 1.21</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MinReachedEvtKey = new object();
+   /// <summary>Called when spin value reached min
+   /// 1.21</summary>
+   public event EventHandler MinReachedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_EVENT_MIN_REACHED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_MinReachedEvt_delegate)) {
+               eventHandlers.AddHandler(MinReachedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_EVENT_MIN_REACHED";
+            if (remove_cpp_event_handler(key, this.evt_MinReachedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MinReachedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MinReachedEvt.</summary>
+   public void On_MinReachedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[MinReachedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MinReachedEvt_delegate;
+   private void on_MinReachedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_MinReachedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MaxReachedEvtKey = new object();
+   /// <summary>Called when spin value reached max
+   /// 1.21</summary>
+   public event EventHandler MaxReachedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_EVENT_MAX_REACHED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_MaxReachedEvt_delegate)) {
+               eventHandlers.AddHandler(MaxReachedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_EVENT_MAX_REACHED";
+            if (remove_cpp_event_handler(key, this.evt_MaxReachedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MaxReachedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MaxReachedEvt.</summary>
+   public void On_MaxReachedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[MaxReachedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MaxReachedEvt_delegate;
+   private void on_MaxReachedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_MaxReachedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+      evt_MinReachedEvt_delegate = new Efl.EventCb(on_MinReachedEvt_NativeCallback);
+      evt_MaxReachedEvt_delegate = new Efl.EventCb(on_MaxReachedEvt_NativeCallback);
+   }
+   /// <summary>Control special string to display in the place of the numerical value.
+   /// It&apos;s useful for cases when a user should select an item that is better indicated by a label than a value. For example, weekdays or months.
+   /// 
+   /// Note: If another label was previously set to <c>value</c>, it will be replaced by the new label.
+   /// 1.21</summary>
+   /// <returns>The array of special values, or NULL if none
+   /// 1.21</returns>
+   virtual public Eina.Array<Efl.Ui.SpinSpecialValue> GetSpecialValue() {
+       var _ret_var = Efl.Ui.SpinNativeInherit.efl_ui_spin_special_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Array<Efl.Ui.SpinSpecialValue>(_ret_var, false, false);
+ }
+   /// <summary>Control special string to display in the place of the numerical value.
+   /// It&apos;s useful for cases when a user should select an item that is better indicated by a label than a value. For example, weekdays or months.
+   /// 
+   /// Note: If another label was previously set to <c>value</c>, it will be replaced by the new label.
+   /// 1.21</summary>
+   /// <param name="values">The array of special values, or NULL if none
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetSpecialValue( Eina.Array<Efl.Ui.SpinSpecialValue> values) {
+       var _in_values = values.Handle;
+                  Efl.Ui.SpinNativeInherit.efl_ui_spin_special_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_values);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets value displayed by a accessible widget.</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns></returns>
+   virtual public  void GetValueAndText( out double value,  out  System.String text) {
+                                           Efl.Access.ValueNativeInherit.efl_access_value_and_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out value,  out text);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Value and text property</summary>
+   /// <param name="value">Value of widget casted to floating point number.</param>
+   /// <param name="text">string describing value in given context eg. small, enough</param>
+   /// <returns><c>true</c> if setting widgets value has succeeded, otherwise <c>false</c> .</returns>
+   virtual public bool SetValueAndText( double value,   System.String text) {
+                                           var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_and_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value,  text);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets a range of all possible values and its description</summary>
+   /// <param name="lower_limit">Lower limit of the range</param>
+   /// <param name="upper_limit">Upper limit of the range</param>
+   /// <param name="description">Description of the range</param>
+   /// <returns></returns>
+   virtual public  void GetRange( out double lower_limit,  out double upper_limit,  out  System.String description) {
+                                                             Efl.Access.ValueNativeInherit.efl_access_value_range_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out lower_limit,  out upper_limit,  out description);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Gets an minimal incrementation value</summary>
+   /// <returns>Minimal incrementation value</returns>
+   virtual public double GetIncrement() {
+       var _ret_var = Efl.Access.ValueNativeInherit.efl_access_value_increment_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the format function pointer to format the string.</summary>
+   /// <param name="func">The format function callback</param>
+   /// <returns></returns>
+   virtual public  void SetFormatCb( Efl.Ui.FormatFuncCb func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.Ui.FormatNativeInherit.efl_ui_format_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), Efl.Ui.FormatFuncCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <returns>The format string for <c>obj</c>&apos;s units label.</returns>
+   virtual public  System.String GetFormatString() {
+       var _ret_var = Efl.Ui.FormatNativeInherit.efl_ui_format_string_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <param name="units">The format string for <c>obj</c>&apos;s units label.</param>
+   /// <returns></returns>
+   virtual public  void SetFormatString(  System.String units) {
+                         Efl.Ui.FormatNativeInherit.efl_ui_format_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), units);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <returns>The range value (must be between $0.0 and 1.0)</returns>
+   virtual public double GetRangeValue() {
+       var _ret_var = Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the range value (in percentage) on a given range widget
+   /// Use this call to set range levels.
+   /// 
+   /// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+   /// <param name="val">The range value (must be between $0.0 and 1.0)</param>
+   /// <returns></returns>
+   virtual public  void SetRangeValue( double val) {
+                         Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_value_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), val);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimum and maximum values of the given range widget.
+   /// Note: If only one value is needed, the other pointer can be passed as <c>null</c>.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void GetRangeMinMax( out double min,  out double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out min,  out max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the minimum and maximum values for given range widget.
+   /// Define the allowed range of values to be selected by the user.
+   /// 
+   /// If actual value is less than <c>min</c>, it will be updated to <c>min</c>. If it is bigger then <c>max</c>, will be updated to <c>max</c>. The actual value can be obtained with <see cref="Efl.Ui.RangeDisplay.GetRangeValue"/>
+   /// 
+   /// The minimum and maximum values may be different for each class.
+   /// 
+   /// Warning: maximum must be greater than minimum, otherwise behavior is undefined.</summary>
+   /// <param name="min">The minimum value.</param>
+   /// <param name="max">The maximum value.</param>
+   /// <returns></returns>
+   virtual public  void SetRangeMinMax( double min,  double max) {
+                                           Efl.Ui.RangeDisplayNativeInherit.efl_ui_range_min_max_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), min,  max);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+   /// This value will be incremented or decremented to the displayed value.
+   /// 
+   /// By default step value is equal to 1.
+   /// 
+   /// Warning: The step value should be bigger than 0.</summary>
+   /// <returns>The step value.</returns>
+   virtual public double GetRangeStep() {
+       var _ret_var = Efl.Ui.RangeInteractiveNativeInherit.efl_ui_range_step_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+   /// This value will be incremented or decremented to the displayed value.
+   /// 
+   /// By default step value is equal to 1.
+   /// 
+   /// Warning: The step value should be bigger than 0.</summary>
+   /// <param name="step">The step value.</param>
+   /// <returns></returns>
+   virtual public  void SetRangeStep( double step) {
+                         Efl.Ui.RangeInteractiveNativeInherit.efl_ui_range_step_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), step);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control special string to display in the place of the numerical value.
+/// It&apos;s useful for cases when a user should select an item that is better indicated by a label than a value. For example, weekdays or months.
+/// 
+/// Note: If another label was previously set to <c>value</c>, it will be replaced by the new label.
+/// 1.21</summary>
+/// <value>The array of special values, or NULL if none
+/// 1.21</value>
+   public Eina.Array<Efl.Ui.SpinSpecialValue> SpecialValue {
+      get { return GetSpecialValue(); }
+      set { SetSpecialValue( value); }
+   }
+   /// <summary>Gets an minimal incrementation value</summary>
+/// <value>Minimal incrementation value</value>
+   public double Increment {
+      get { return GetIncrement(); }
+   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+/// <value>The format function callback</value>
+   public Efl.Ui.FormatFuncCb FormatCb {
+      set { SetFormatCb( value); }
+   }
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <value>The format string for <c>obj</c>&apos;s units label.</value>
+   public  System.String FormatString {
+      get { return GetFormatString(); }
+      set { SetFormatString( value); }
+   }
+   /// <summary>Control the range value (in percentage) on a given range widget
+/// Use this call to set range levels.
+/// 
+/// Note: If you pass a value out of the specified interval for <c>val</c>, it will be interpreted as the closest of the boundary values in the interval.</summary>
+/// <value>The range value (must be between $0.0 and 1.0)</value>
+   public double RangeValue {
+      get { return GetRangeValue(); }
+      set { SetRangeValue( value); }
+   }
+   /// <summary>Control the step used to increment or decrement values for given widget.
+/// This value will be incremented or decremented to the displayed value.
+/// 
+/// By default step value is equal to 1.
+/// 
+/// Warning: The step value should be bigger than 0.</summary>
+/// <value>The step value.</value>
+   public double RangeStep {
+      get { return GetRangeStep(); }
+      set { SetRangeStep( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Spin.efl_ui_spin_class_get();
+   }
+}
+public class SpinNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_spin_special_value_get_static_delegate == null)
+      efl_ui_spin_special_value_get_static_delegate = new efl_ui_spin_special_value_get_delegate(special_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_spin_special_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_spin_special_value_get_static_delegate)});
+      if (efl_ui_spin_special_value_set_static_delegate == null)
+      efl_ui_spin_special_value_set_static_delegate = new efl_ui_spin_special_value_set_delegate(special_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_spin_special_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_spin_special_value_set_static_delegate)});
+      if (efl_access_value_and_text_get_static_delegate == null)
+      efl_access_value_and_text_get_static_delegate = new efl_access_value_and_text_get_delegate(value_and_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_get_static_delegate)});
+      if (efl_access_value_and_text_set_static_delegate == null)
+      efl_access_value_and_text_set_static_delegate = new efl_access_value_and_text_set_delegate(value_and_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_and_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_and_text_set_static_delegate)});
+      if (efl_access_value_range_get_static_delegate == null)
+      efl_access_value_range_get_static_delegate = new efl_access_value_range_get_delegate(range_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_range_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_range_get_static_delegate)});
+      if (efl_access_value_increment_get_static_delegate == null)
+      efl_access_value_increment_get_static_delegate = new efl_access_value_increment_get_delegate(increment_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_value_increment_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_value_increment_get_static_delegate)});
+      if (efl_ui_format_cb_set_static_delegate == null)
+      efl_ui_format_cb_set_static_delegate = new efl_ui_format_cb_set_delegate(format_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_cb_set_static_delegate)});
+      if (efl_ui_format_string_get_static_delegate == null)
+      efl_ui_format_string_get_static_delegate = new efl_ui_format_string_get_delegate(format_string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_get_static_delegate)});
+      if (efl_ui_format_string_set_static_delegate == null)
+      efl_ui_format_string_set_static_delegate = new efl_ui_format_string_set_delegate(format_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_set_static_delegate)});
+      if (efl_ui_range_value_get_static_delegate == null)
+      efl_ui_range_value_get_static_delegate = new efl_ui_range_value_get_delegate(range_value_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_get_static_delegate)});
+      if (efl_ui_range_value_set_static_delegate == null)
+      efl_ui_range_value_set_static_delegate = new efl_ui_range_value_set_delegate(range_value_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_value_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_value_set_static_delegate)});
+      if (efl_ui_range_min_max_get_static_delegate == null)
+      efl_ui_range_min_max_get_static_delegate = new efl_ui_range_min_max_get_delegate(range_min_max_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_get_static_delegate)});
+      if (efl_ui_range_min_max_set_static_delegate == null)
+      efl_ui_range_min_max_set_static_delegate = new efl_ui_range_min_max_set_delegate(range_min_max_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_min_max_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_min_max_set_static_delegate)});
+      if (efl_ui_range_step_get_static_delegate == null)
+      efl_ui_range_step_get_static_delegate = new efl_ui_range_step_get_delegate(range_step_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_step_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_step_get_static_delegate)});
+      if (efl_ui_range_step_set_static_delegate == null)
+      efl_ui_range_step_set_static_delegate = new efl_ui_range_step_set_delegate(range_step_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_range_step_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_range_step_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Spin.efl_ui_spin_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Spin.efl_ui_spin_class_get();
+   }
+
+
+    private delegate  System.IntPtr efl_ui_spin_special_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_spin_special_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_spin_special_value_get_api_delegate> efl_ui_spin_special_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_spin_special_value_get_api_delegate>(_Module, "efl_ui_spin_special_value_get");
+    private static  System.IntPtr special_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_spin_special_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Array<Efl.Ui.SpinSpecialValue> _ret_var = default(Eina.Array<Efl.Ui.SpinSpecialValue>);
+         try {
+            _ret_var = ((Spin)wrapper).GetSpecialValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_spin_special_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_spin_special_value_get_delegate efl_ui_spin_special_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_spin_special_value_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr values);
+
+
+    public delegate  void efl_ui_spin_special_value_set_api_delegate(System.IntPtr obj,    System.IntPtr values);
+    public static Efl.Eo.FunctionWrapper<efl_ui_spin_special_value_set_api_delegate> efl_ui_spin_special_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_spin_special_value_set_api_delegate>(_Module, "efl_ui_spin_special_value_set");
+    private static  void special_value_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr values)
+   {
+      Eina.Log.Debug("function efl_ui_spin_special_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_values = new Eina.Array<Efl.Ui.SpinSpecialValue>(values, false, false);
+                     
+         try {
+            ((Spin)wrapper).SetSpecialValue( _in_values);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_spin_special_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  values);
+      }
+   }
+   private static efl_ui_spin_special_value_set_delegate efl_ui_spin_special_value_set_static_delegate;
+
+
+    private delegate  void efl_access_value_and_text_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+
+
+    public delegate  void efl_access_value_and_text_get_api_delegate(System.IntPtr obj,   out double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate> efl_access_value_and_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_get_api_delegate>(_Module, "efl_access_value_and_text_get");
+    private static  void value_and_text_get(System.IntPtr obj, System.IntPtr pd,  out double value,  out  System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           value = default(double);       System.String _out_text = default( System.String);
+                     
+         try {
+            ((Spin)wrapper).GetValueAndText( out value,  out _out_text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            text = _out_text;
+                        } else {
+         efl_access_value_and_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out value,  out text);
+      }
+   }
+   private static efl_access_value_and_text_get_delegate efl_access_value_and_text_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_value_and_text_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_value_and_text_set_api_delegate(System.IntPtr obj,   double value,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate> efl_access_value_and_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_and_text_set_api_delegate>(_Module, "efl_access_value_and_text_set");
+    private static bool value_and_text_set(System.IntPtr obj, System.IntPtr pd,  double value,   System.String text)
+   {
+      Eina.Log.Debug("function efl_access_value_and_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Spin)wrapper).SetValueAndText( value,  text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_value_and_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value,  text);
+      }
+   }
+   private static efl_access_value_and_text_set_delegate efl_access_value_and_text_set_static_delegate;
+
+
+    private delegate  void efl_access_value_range_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+
+
+    public delegate  void efl_access_value_range_get_api_delegate(System.IntPtr obj,   out double lower_limit,   out double upper_limit,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String description);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate> efl_access_value_range_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_range_get_api_delegate>(_Module, "efl_access_value_range_get");
+    private static  void range_get(System.IntPtr obj, System.IntPtr pd,  out double lower_limit,  out double upper_limit,  out  System.String description)
+   {
+      Eina.Log.Debug("function efl_access_value_range_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 lower_limit = default(double);      upper_limit = default(double);       System.String _out_description = default( System.String);
+                           
+         try {
+            ((Spin)wrapper).GetRange( out lower_limit,  out upper_limit,  out _out_description);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  description = _out_description;
+                              } else {
+         efl_access_value_range_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out lower_limit,  out upper_limit,  out description);
+      }
+   }
+   private static efl_access_value_range_get_delegate efl_access_value_range_get_static_delegate;
+
+
+    private delegate double efl_access_value_increment_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_access_value_increment_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate> efl_access_value_increment_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_value_increment_get_api_delegate>(_Module, "efl_access_value_increment_get");
+    private static double increment_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_value_increment_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Spin)wrapper).GetIncrement();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_value_increment_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_value_increment_get_delegate efl_access_value_increment_get_static_delegate;
+
+
+    private delegate  void efl_ui_format_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_ui_format_cb_set_api_delegate(System.IntPtr obj,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate> efl_ui_format_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate>(_Module, "efl_ui_format_cb_set");
+    private static  void format_cb_set(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_ui_format_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              Efl.Ui.FormatFuncCbWrapper func_wrapper = new Efl.Ui.FormatFuncCbWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((Spin)wrapper).SetFormatCb( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_ui_format_cb_set_delegate efl_ui_format_cb_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_format_string_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_format_string_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate> efl_ui_format_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate>(_Module, "efl_ui_format_string_get");
+    private static  System.String format_string_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Spin)wrapper).GetFormatString();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_format_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_format_string_get_delegate efl_ui_format_string_get_static_delegate;
+
+
+    private delegate  void efl_ui_format_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+
+
+    public delegate  void efl_ui_format_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate> efl_ui_format_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate>(_Module, "efl_ui_format_string_set");
+    private static  void format_string_set(System.IntPtr obj, System.IntPtr pd,   System.String units)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Spin)wrapper).SetFormatString( units);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  units);
+      }
+   }
+   private static efl_ui_format_string_set_delegate efl_ui_format_string_set_static_delegate;
+
+
+    private delegate double efl_ui_range_value_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_value_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate> efl_ui_range_value_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_get_api_delegate>(_Module, "efl_ui_range_value_get");
+    private static double range_value_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Spin)wrapper).GetRangeValue();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_value_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_value_get_delegate efl_ui_range_value_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_value_set_delegate(System.IntPtr obj, System.IntPtr pd,   double val);
+
+
+    public delegate  void efl_ui_range_value_set_api_delegate(System.IntPtr obj,   double val);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate> efl_ui_range_value_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_value_set_api_delegate>(_Module, "efl_ui_range_value_set");
+    private static  void range_value_set(System.IntPtr obj, System.IntPtr pd,  double val)
+   {
+      Eina.Log.Debug("function efl_ui_range_value_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Spin)wrapper).SetRangeValue( val);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_value_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  val);
+      }
+   }
+   private static efl_ui_range_value_set_delegate efl_ui_range_value_set_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double min,   out double max);
+
+
+    public delegate  void efl_ui_range_min_max_get_api_delegate(System.IntPtr obj,   out double min,   out double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate> efl_ui_range_min_max_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_get_api_delegate>(_Module, "efl_ui_range_min_max_get");
+    private static  void range_min_max_get(System.IntPtr obj, System.IntPtr pd,  out double min,  out double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           min = default(double);      max = default(double);                     
+         try {
+            ((Spin)wrapper).GetRangeMinMax( out min,  out max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out min,  out max);
+      }
+   }
+   private static efl_ui_range_min_max_get_delegate efl_ui_range_min_max_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_min_max_set_delegate(System.IntPtr obj, System.IntPtr pd,   double min,   double max);
+
+
+    public delegate  void efl_ui_range_min_max_set_api_delegate(System.IntPtr obj,   double min,   double max);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate> efl_ui_range_min_max_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_min_max_set_api_delegate>(_Module, "efl_ui_range_min_max_set");
+    private static  void range_min_max_set(System.IntPtr obj, System.IntPtr pd,  double min,  double max)
+   {
+      Eina.Log.Debug("function efl_ui_range_min_max_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Spin)wrapper).SetRangeMinMax( min,  max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_range_min_max_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min,  max);
+      }
+   }
+   private static efl_ui_range_min_max_set_delegate efl_ui_range_min_max_set_static_delegate;
+
+
+    private delegate double efl_ui_range_step_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_range_step_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_step_get_api_delegate> efl_ui_range_step_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_step_get_api_delegate>(_Module, "efl_ui_range_step_get");
+    private static double range_step_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_range_step_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Spin)wrapper).GetRangeStep();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_range_step_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_range_step_get_delegate efl_ui_range_step_get_static_delegate;
+
+
+    private delegate  void efl_ui_range_step_set_delegate(System.IntPtr obj, System.IntPtr pd,   double step);
+
+
+    public delegate  void efl_ui_range_step_set_api_delegate(System.IntPtr obj,   double step);
+    public static Efl.Eo.FunctionWrapper<efl_ui_range_step_set_api_delegate> efl_ui_range_step_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_range_step_set_api_delegate>(_Module, "efl_ui_range_step_set");
+    private static  void range_step_set(System.IntPtr obj, System.IntPtr pd,  double step)
+   {
+      Eina.Log.Debug("function efl_ui_range_step_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Spin)wrapper).SetRangeStep( step);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_range_step_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  step);
+      }
+   }
+   private static efl_ui_range_step_set_delegate efl_ui_range_step_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Special value</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SpinSpecialValue
+{
+   /// <summary>Target value</summary>
+   public double Value;
+   /// <summary>String to replace</summary>
+   public  System.String Label;
+   ///<summary>Constructor for SpinSpecialValue.</summary>
+   public SpinSpecialValue(
+      double Value=default(double),
+       System.String Label=default( System.String)   )
+   {
+      this.Value = Value;
+      this.Label = Label;
+   }
+public static implicit operator SpinSpecialValue(IntPtr ptr)
+   {
+      var tmp = (SpinSpecialValue_StructInternal)Marshal.PtrToStructure(ptr, typeof(SpinSpecialValue_StructInternal));
+      return SpinSpecialValue_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct SpinSpecialValue.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct SpinSpecialValue_StructInternal
+{
+   
+   public double Value;
+///<summary>Internal wrapper for field Label</summary>
+public System.IntPtr Label;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator SpinSpecialValue(SpinSpecialValue_StructInternal struct_)
+   {
+      return SpinSpecialValue_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator SpinSpecialValue_StructInternal(SpinSpecialValue struct_)
+   {
+      return SpinSpecialValue_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct SpinSpecialValue</summary>
+public static class SpinSpecialValue_StructConversion
+{
+   internal static SpinSpecialValue_StructInternal ToInternal(SpinSpecialValue _external_struct)
+   {
+      var _internal_struct = new SpinSpecialValue_StructInternal();
+
+      _internal_struct.Value = _external_struct.Value;
+      _internal_struct.Label = Eina.MemoryNative.StrDup(_external_struct.Label);
+
+      return _internal_struct;
+   }
+
+   internal static SpinSpecialValue ToManaged(SpinSpecialValue_StructInternal _internal_struct)
+   {
+      var _external_struct = new SpinSpecialValue();
+
+      _external_struct.Value = _internal_struct.Value;
+      _external_struct.Label = Eina.StringConversion.NativeUtf8ToManagedString(_internal_struct.Label);
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_spin_button.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_spin_button.eo.cs
new file mode 100755 (executable)
index 0000000..bddea1e
--- /dev/null
@@ -0,0 +1,653 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>A Button Spin.
+/// This is a widget which allows the user to increase or decrease numeric values using the arrow buttons or to edit values directly by clicking over them and inputting new ones.
+/// 1.21</summary>
+[SpinButtonNativeInherit]
+public class SpinButton : Efl.Ui.Spin, Efl.Eo.IWrapper,Efl.Ui.Direction,Efl.Ui.Focus.Composition
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.SpinButtonNativeInherit nativeInherit = new Efl.Ui.SpinButtonNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (SpinButton))
+            return Efl.Ui.SpinButtonNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_spin_button_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public SpinButton(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_spin_button_class_get(), typeof(SpinButton), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public SpinButton(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected SpinButton(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static SpinButton static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new SpinButton(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object DelayChangedEvtKey = new object();
+   /// <summary>Called when spin delay is changed.
+   /// 1.21</summary>
+   public event EventHandler DelayChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_BUTTON_EVENT_DELAY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DelayChangedEvt_delegate)) {
+               eventHandlers.AddHandler(DelayChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SPIN_BUTTON_EVENT_DELAY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_DelayChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DelayChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DelayChangedEvt.</summary>
+   public void On_DelayChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DelayChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DelayChangedEvt_delegate;
+   private void on_DelayChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DelayChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_DelayChangedEvt_delegate = new Efl.EventCb(on_DelayChangedEvt_NativeCallback);
+   }
+   /// <summary>Control whether the spin should circulate value when it reaches its minimum or maximum value.
+   /// Disabled by default. If disabled, when the user tries to increment the value but displayed value plus step value is bigger than maximum value, the new value will be the maximum value. The same happens when the user tries to decrement it but the value less step is less than minimum value. In this case, the new displayed value will be the minimum value.
+   /// 
+   /// If enabled, when the user tries to increment the value but displayed value plus step value is bigger than maximum value, the new value will become the minimum value. When the the user tries to decrement it, if the value minus step is less than minimum value, the new displayed value will be the maximum value.
+   /// 
+   /// E.g.: <c>min</c> = 10 <c>max</c> = 50 <c>step</c> = 20 <c>displayed</c> = 20
+   /// 
+   /// When the user decrements the value (using left or bottom arrow), it will display $50.
+   /// 1.21</summary>
+   /// <returns><c>true</c> to enable circulate or <c>false</c> to disable it.
+   /// 1.21</returns>
+   virtual public bool GetCirculate() {
+       var _ret_var = Efl.Ui.SpinButtonNativeInherit.efl_ui_spin_button_circulate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control whether the spin should circulate value when it reaches its minimum or maximum value.
+   /// Disabled by default. If disabled, when the user tries to increment the value but displayed value plus step value is bigger than maximum value, the new value will be the maximum value. The same happens when the user tries to decrement it but the value less step is less than minimum value. In this case, the new displayed value will be the minimum value.
+   /// 
+   /// If enabled, when the user tries to increment the value but displayed value plus step value is bigger than maximum value, the new value will become the minimum value. When the the user tries to decrement it, if the value minus step is less than minimum value, the new displayed value will be the maximum value.
+   /// 
+   /// E.g.: <c>min</c> = 10 <c>max</c> = 50 <c>step</c> = 20 <c>displayed</c> = 20
+   /// 
+   /// When the user decrements the value (using left or bottom arrow), it will display $50.
+   /// 1.21</summary>
+   /// <param name="circulate"><c>true</c> to enable circulate or <c>false</c> to disable it.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetCirculate( bool circulate) {
+                         Efl.Ui.SpinButtonNativeInherit.efl_ui_spin_button_circulate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), circulate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control whether the spin can be directly edited by the user.
+   /// Spin objects can have editing disabled, in which case they can only be changed by using arrows. This is useful for situations where you don&apos;t want your users to write their own value. It&apos;s especially useful when using special values. The user can see the real values instead of special label when editing.
+   /// 1.21</summary>
+   /// <returns><c>true</c> to allow users to edit it or <c>false</c> to don&apos;t allow users to edit it directly.
+   /// 1.21</returns>
+   virtual public bool GetEditable() {
+       var _ret_var = Efl.Ui.SpinButtonNativeInherit.efl_ui_spin_button_editable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control whether the spin can be directly edited by the user.
+   /// Spin objects can have editing disabled, in which case they can only be changed by using arrows. This is useful for situations where you don&apos;t want your users to write their own value. It&apos;s especially useful when using special values. The user can see the real values instead of special label when editing.
+   /// 1.21</summary>
+   /// <param name="editable"><c>true</c> to allow users to edit it or <c>false</c> to don&apos;t allow users to edit it directly.
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public  void SetEditable( bool editable) {
+                         Efl.Ui.SpinButtonNativeInherit.efl_ui_spin_button_editable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), editable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <returns>The order to use</returns>
+   virtual public Eina.List<Efl.Gfx.Entity> GetCompositionElements() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Set the order of elements that will be used for composition
+   /// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+   /// 
+   /// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+   /// 
+   /// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+   /// 
+   /// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+   /// <param name="logical_order">The order to use</param>
+   /// <returns></returns>
+   virtual public  void SetCompositionElements( Eina.List<Efl.Gfx.Entity> logical_order) {
+       var _in_logical_order = logical_order.Handle;
+logical_order.Own = false;
+                  Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_elements_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_logical_order);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <returns><c>true</c> or <c>false</c></returns>
+   virtual public bool GetLogicalMode() {
+       var _ret_var = Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+   /// <param name="logical_mode"><c>true</c> or <c>false</c></param>
+   /// <returns></returns>
+   virtual public  void SetLogicalMode( bool logical_mode) {
+                         Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), logical_mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Mark this widget as dirty, the children can be considered to be changed after that call</summary>
+   /// <returns></returns>
+   virtual public  void Dirty() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_dirty_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>A call to prepare the children of this element, called if marked as dirty
+   /// You can use this function to call composition_elements.</summary>
+   /// <returns></returns>
+   virtual public  void Prepare() {
+       Efl.Ui.Focus.CompositionNativeInherit.efl_ui_focus_composition_prepare_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Control whether the spin should circulate value when it reaches its minimum or maximum value.
+/// Disabled by default. If disabled, when the user tries to increment the value but displayed value plus step value is bigger than maximum value, the new value will be the maximum value. The same happens when the user tries to decrement it but the value less step is less than minimum value. In this case, the new displayed value will be the minimum value.
+/// 
+/// If enabled, when the user tries to increment the value but displayed value plus step value is bigger than maximum value, the new value will become the minimum value. When the the user tries to decrement it, if the value minus step is less than minimum value, the new displayed value will be the maximum value.
+/// 
+/// E.g.: <c>min</c> = 10 <c>max</c> = 50 <c>step</c> = 20 <c>displayed</c> = 20
+/// 
+/// When the user decrements the value (using left or bottom arrow), it will display $50.
+/// 1.21</summary>
+/// <value><c>true</c> to enable circulate or <c>false</c> to disable it.
+/// 1.21</value>
+   public bool Circulate {
+      get { return GetCirculate(); }
+      set { SetCirculate( value); }
+   }
+   /// <summary>Control whether the spin can be directly edited by the user.
+/// Spin objects can have editing disabled, in which case they can only be changed by using arrows. This is useful for situations where you don&apos;t want your users to write their own value. It&apos;s especially useful when using special values. The user can see the real values instead of special label when editing.
+/// 1.21</summary>
+/// <value><c>true</c> to allow users to edit it or <c>false</c> to don&apos;t allow users to edit it directly.
+/// 1.21</value>
+   public bool Editable {
+      get { return GetEditable(); }
+      set { SetEditable( value); }
+   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   /// <summary>Set the order of elements that will be used for composition
+/// Elements of the list can be either an Efl.Ui.Widget, an Efl.Ui.Focus.Object or an Efl.Gfx.
+/// 
+/// If the element is an Efl.Gfx.Entity, then the geometry is used as focus geometry, the focus property is redirected to the evas focus property. The mixin will take care of registration.
+/// 
+/// If the element is an Efl.Ui.Focus.Object, then the mixin will take care of registering the element.
+/// 
+/// If the element is a Efl.Ui.Widget nothing is done and the widget is simply part of the order.</summary>
+/// <value>The order to use</value>
+   public Eina.List<Efl.Gfx.Entity> CompositionElements {
+      get { return GetCompositionElements(); }
+      set { SetCompositionElements( value); }
+   }
+   /// <summary>Set to true if all children should be registered as logicals</summary>
+/// <value><c>true</c> or <c>false</c></value>
+   public bool LogicalMode {
+      get { return GetLogicalMode(); }
+      set { SetLogicalMode( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.SpinButton.efl_ui_spin_button_class_get();
+   }
+}
+public class SpinButtonNativeInherit : Efl.Ui.SpinNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_spin_button_circulate_get_static_delegate == null)
+      efl_ui_spin_button_circulate_get_static_delegate = new efl_ui_spin_button_circulate_get_delegate(circulate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_spin_button_circulate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_spin_button_circulate_get_static_delegate)});
+      if (efl_ui_spin_button_circulate_set_static_delegate == null)
+      efl_ui_spin_button_circulate_set_static_delegate = new efl_ui_spin_button_circulate_set_delegate(circulate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_spin_button_circulate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_spin_button_circulate_set_static_delegate)});
+      if (efl_ui_spin_button_editable_get_static_delegate == null)
+      efl_ui_spin_button_editable_get_static_delegate = new efl_ui_spin_button_editable_get_delegate(editable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_spin_button_editable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_spin_button_editable_get_static_delegate)});
+      if (efl_ui_spin_button_editable_set_static_delegate == null)
+      efl_ui_spin_button_editable_set_static_delegate = new efl_ui_spin_button_editable_set_delegate(editable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_spin_button_editable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_spin_button_editable_set_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      if (efl_ui_focus_composition_elements_get_static_delegate == null)
+      efl_ui_focus_composition_elements_get_static_delegate = new efl_ui_focus_composition_elements_get_delegate(composition_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_get_static_delegate)});
+      if (efl_ui_focus_composition_elements_set_static_delegate == null)
+      efl_ui_focus_composition_elements_set_static_delegate = new efl_ui_focus_composition_elements_set_delegate(composition_elements_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_elements_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_elements_set_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_get_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_get_static_delegate = new efl_ui_focus_composition_logical_mode_get_delegate(logical_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_get_static_delegate)});
+      if (efl_ui_focus_composition_logical_mode_set_static_delegate == null)
+      efl_ui_focus_composition_logical_mode_set_static_delegate = new efl_ui_focus_composition_logical_mode_set_delegate(logical_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_logical_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_logical_mode_set_static_delegate)});
+      if (efl_ui_focus_composition_dirty_static_delegate == null)
+      efl_ui_focus_composition_dirty_static_delegate = new efl_ui_focus_composition_dirty_delegate(dirty);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_dirty"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_dirty_static_delegate)});
+      if (efl_ui_focus_composition_prepare_static_delegate == null)
+      efl_ui_focus_composition_prepare_static_delegate = new efl_ui_focus_composition_prepare_delegate(prepare);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_composition_prepare"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_composition_prepare_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.SpinButton.efl_ui_spin_button_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.SpinButton.efl_ui_spin_button_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_spin_button_circulate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_spin_button_circulate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_spin_button_circulate_get_api_delegate> efl_ui_spin_button_circulate_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_spin_button_circulate_get_api_delegate>(_Module, "efl_ui_spin_button_circulate_get");
+    private static bool circulate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_spin_button_circulate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SpinButton)wrapper).GetCirculate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_spin_button_circulate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_spin_button_circulate_get_delegate efl_ui_spin_button_circulate_get_static_delegate;
+
+
+    private delegate  void efl_ui_spin_button_circulate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool circulate);
+
+
+    public delegate  void efl_ui_spin_button_circulate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool circulate);
+    public static Efl.Eo.FunctionWrapper<efl_ui_spin_button_circulate_set_api_delegate> efl_ui_spin_button_circulate_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_spin_button_circulate_set_api_delegate>(_Module, "efl_ui_spin_button_circulate_set");
+    private static  void circulate_set(System.IntPtr obj, System.IntPtr pd,  bool circulate)
+   {
+      Eina.Log.Debug("function efl_ui_spin_button_circulate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((SpinButton)wrapper).SetCirculate( circulate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_spin_button_circulate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  circulate);
+      }
+   }
+   private static efl_ui_spin_button_circulate_set_delegate efl_ui_spin_button_circulate_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_spin_button_editable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_spin_button_editable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_spin_button_editable_get_api_delegate> efl_ui_spin_button_editable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_spin_button_editable_get_api_delegate>(_Module, "efl_ui_spin_button_editable_get");
+    private static bool editable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_spin_button_editable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SpinButton)wrapper).GetEditable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_spin_button_editable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_spin_button_editable_get_delegate efl_ui_spin_button_editable_get_static_delegate;
+
+
+    private delegate  void efl_ui_spin_button_editable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+
+
+    public delegate  void efl_ui_spin_button_editable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+    public static Efl.Eo.FunctionWrapper<efl_ui_spin_button_editable_set_api_delegate> efl_ui_spin_button_editable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_spin_button_editable_set_api_delegate>(_Module, "efl_ui_spin_button_editable_set");
+    private static  void editable_set(System.IntPtr obj, System.IntPtr pd,  bool editable)
+   {
+      Eina.Log.Debug("function efl_ui_spin_button_editable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((SpinButton)wrapper).SetEditable( editable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_spin_button_editable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  editable);
+      }
+   }
+   private static efl_ui_spin_button_editable_set_delegate efl_ui_spin_button_editable_set_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((SpinButton)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((SpinButton)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_composition_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_composition_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate> efl_ui_focus_composition_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_get_api_delegate>(_Module, "efl_ui_focus_composition_elements_get");
+    private static  System.IntPtr composition_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Gfx.Entity> _ret_var = default(Eina.List<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((SpinButton)wrapper).GetCompositionElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_composition_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_elements_get_delegate efl_ui_focus_composition_elements_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_elements_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr logical_order);
+
+
+    public delegate  void efl_ui_focus_composition_elements_set_api_delegate(System.IntPtr obj,    System.IntPtr logical_order);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate> efl_ui_focus_composition_elements_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_elements_set_api_delegate>(_Module, "efl_ui_focus_composition_elements_set");
+    private static  void composition_elements_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr logical_order)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_elements_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_logical_order = new Eina.List<Efl.Gfx.Entity>(logical_order, true, false);
+                     
+         try {
+            ((SpinButton)wrapper).SetCompositionElements( _in_logical_order);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_elements_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_order);
+      }
+   }
+   private static efl_ui_focus_composition_elements_set_delegate efl_ui_focus_composition_elements_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_composition_logical_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_composition_logical_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate> efl_ui_focus_composition_logical_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_get_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_get");
+    private static bool logical_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((SpinButton)wrapper).GetLogicalMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_composition_logical_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_get_delegate efl_ui_focus_composition_logical_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_logical_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+
+
+    public delegate  void efl_ui_focus_composition_logical_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool logical_mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate> efl_ui_focus_composition_logical_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_logical_mode_set_api_delegate>(_Module, "efl_ui_focus_composition_logical_mode_set");
+    private static  void logical_mode_set(System.IntPtr obj, System.IntPtr pd,  bool logical_mode)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_logical_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((SpinButton)wrapper).SetLogicalMode( logical_mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_composition_logical_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  logical_mode);
+      }
+   }
+   private static efl_ui_focus_composition_logical_mode_set_delegate efl_ui_focus_composition_logical_mode_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_dirty_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_dirty_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate> efl_ui_focus_composition_dirty_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_dirty_api_delegate>(_Module, "efl_ui_focus_composition_dirty");
+    private static  void dirty(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_dirty was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((SpinButton)wrapper).Dirty();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_dirty_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_dirty_delegate efl_ui_focus_composition_dirty_static_delegate;
+
+
+    private delegate  void efl_ui_focus_composition_prepare_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_composition_prepare_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate> efl_ui_focus_composition_prepare_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_composition_prepare_api_delegate>(_Module, "efl_ui_focus_composition_prepare");
+    private static  void prepare(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_composition_prepare was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((SpinButton)wrapper).Prepare();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_composition_prepare_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_composition_prepare_delegate efl_ui_focus_composition_prepare_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_stack.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_stack.eo.cs
new file mode 100755 (executable)
index 0000000..5d13f0e
--- /dev/null
@@ -0,0 +1,896 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Stack.LoadedEvt"/>.</summary>
+public class StackLoadedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.StackEventLoaded arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Stack.UnloadedEvt"/>.</summary>
+public class StackUnloadedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.StackEventUnloaded arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Stack.ActivatedEvt"/>.</summary>
+public class StackActivatedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.StackEventActivated arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Stack.DeactivatedEvt"/>.</summary>
+public class StackDeactivatedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.StackEventDeactivated arg { get; set; }
+}
+/// <summary>Stack widget.
+/// Stack widget arranges objects in stack structure by pushing and poping them.</summary>
+[StackNativeInherit]
+public class Stack : Efl.Ui.LayoutBase, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.StackNativeInherit nativeInherit = new Efl.Ui.StackNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Stack))
+            return Efl.Ui.StackNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_stack_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Stack(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_stack_class_get(), typeof(Stack), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Stack(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Stack(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Stack static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Stack(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object LoadedEvtKey = new object();
+   /// <summary>Called when content is loaded right before transition.</summary>
+   public event EventHandler<Efl.Ui.StackLoadedEvt_Args> LoadedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_LOADED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_LoadedEvt_delegate)) {
+               eventHandlers.AddHandler(LoadedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_LOADED";
+            if (remove_cpp_event_handler(key, this.evt_LoadedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LoadedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LoadedEvt.</summary>
+   public void On_LoadedEvt(Efl.Ui.StackLoadedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.StackLoadedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.StackLoadedEvt_Args>)eventHandlers[LoadedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LoadedEvt_delegate;
+   private void on_LoadedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.StackLoadedEvt_Args args = new Efl.Ui.StackLoadedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_LoadedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnloadedEvtKey = new object();
+   /// <summary>Called when content is unloaded right after being deactivated.</summary>
+   public event EventHandler<Efl.Ui.StackUnloadedEvt_Args> UnloadedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_UNLOADED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_UnloadedEvt_delegate)) {
+               eventHandlers.AddHandler(UnloadedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_UNLOADED";
+            if (remove_cpp_event_handler(key, this.evt_UnloadedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnloadedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnloadedEvt.</summary>
+   public void On_UnloadedEvt(Efl.Ui.StackUnloadedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.StackUnloadedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.StackUnloadedEvt_Args>)eventHandlers[UnloadedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnloadedEvt_delegate;
+   private void on_UnloadedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.StackUnloadedEvt_Args args = new Efl.Ui.StackUnloadedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_UnloadedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ActivatedEvtKey = new object();
+   /// <summary>Called when content is activated right after transition.</summary>
+   public event EventHandler<Efl.Ui.StackActivatedEvt_Args> ActivatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_ACTIVATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ActivatedEvt_delegate)) {
+               eventHandlers.AddHandler(ActivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_ACTIVATED";
+            if (remove_cpp_event_handler(key, this.evt_ActivatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ActivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ActivatedEvt.</summary>
+   public void On_ActivatedEvt(Efl.Ui.StackActivatedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.StackActivatedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.StackActivatedEvt_Args>)eventHandlers[ActivatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ActivatedEvt_delegate;
+   private void on_ActivatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.StackActivatedEvt_Args args = new Efl.Ui.StackActivatedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ActivatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DeactivatedEvtKey = new object();
+   /// <summary>Called when content is deactivated right after transition.</summary>
+   public event EventHandler<Efl.Ui.StackDeactivatedEvt_Args> DeactivatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_DEACTIVATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DeactivatedEvt_delegate)) {
+               eventHandlers.AddHandler(DeactivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_STACK_EVENT_DEACTIVATED";
+            if (remove_cpp_event_handler(key, this.evt_DeactivatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeactivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeactivatedEvt.</summary>
+   public void On_DeactivatedEvt(Efl.Ui.StackDeactivatedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.StackDeactivatedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.StackDeactivatedEvt_Args>)eventHandlers[DeactivatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeactivatedEvt_delegate;
+   private void on_DeactivatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.StackDeactivatedEvt_Args args = new Efl.Ui.StackDeactivatedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_DeactivatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_LoadedEvt_delegate = new Efl.EventCb(on_LoadedEvt_NativeCallback);
+      evt_UnloadedEvt_delegate = new Efl.EventCb(on_UnloadedEvt_NativeCallback);
+      evt_ActivatedEvt_delegate = new Efl.EventCb(on_ActivatedEvt_NativeCallback);
+      evt_DeactivatedEvt_delegate = new Efl.EventCb(on_DeactivatedEvt_NativeCallback);
+   }
+   /// <summary>Pushes a new object to the top of the stack and shows it.</summary>
+   /// <param name="content">The pushed object which becomes the top content of the stack.</param>
+   /// <returns></returns>
+   virtual public  void Push( Efl.Canvas.Object content) {
+                         Efl.Ui.StackNativeInherit.efl_ui_stack_push_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Pops the top content from the stack and deletes it.</summary>
+   /// <returns>The top content which is removed from the stack.</returns>
+   virtual public Efl.Canvas.Object Pop() {
+       var _ret_var = Efl.Ui.StackNativeInherit.efl_ui_stack_pop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Inserts an object before the given base content in the stack.</summary>
+   /// <param name="base_content"><c>content</c> is inserted before this <c>base_content</c>.</param>
+   /// <param name="content">The inserted object in the stack.</param>
+   /// <returns></returns>
+   virtual public  void InsertBefore( Efl.Canvas.Object base_content,  Efl.Canvas.Object content) {
+                                           Efl.Ui.StackNativeInherit.efl_ui_stack_insert_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), base_content,  content);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Inserts an object after the given base content in the stack.</summary>
+   /// <param name="base_content"><c>content</c> is inserted after this <c>base_content</c>.</param>
+   /// <param name="content">The inserted object in the stack.</param>
+   /// <returns></returns>
+   virtual public  void InsertAfter( Efl.Canvas.Object base_content,  Efl.Canvas.Object content) {
+                                           Efl.Ui.StackNativeInherit.efl_ui_stack_insert_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), base_content,  content);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Inserts an object at the given place in the stack.</summary>
+   /// <param name="index">The index of the inserted object in the stack. <c>index</c> begins from bottom to top of the stack. <c>index</c> of the bottom content is 0.</param>
+   /// <param name="content">The inserted object in the stack.</param>
+   /// <returns></returns>
+   virtual public  void InsertAt(  int index,  Efl.Canvas.Object content) {
+                                           Efl.Ui.StackNativeInherit.efl_ui_stack_insert_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index,  content);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Removes the given content in the stack.</summary>
+   /// <param name="content">The removed content from the stack.</param>
+   /// <returns></returns>
+   virtual public  void Remove( Efl.Canvas.Object content) {
+                         Efl.Ui.StackNativeInherit.efl_ui_stack_remove_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Removes a content matched to the given index in the stack.</summary>
+   /// <param name="index">The index of the removed object in the stack. <c>index</c> begins from bottom to top of the stack. <c>index</c> of the bottom content is 0.</param>
+   /// <returns></returns>
+   virtual public  void RemoveAt(  int index) {
+                         Efl.Ui.StackNativeInherit.efl_ui_stack_remove_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the index of the given content in the stack. The index begins from bottom to top of the stack. The index of the bottom content is 0.</summary>
+   /// <param name="content">The content matched to the index to be returned in the stack.</param>
+   /// <returns>The index of <c>content</c> in the stack.</returns>
+   virtual public  int GetIndex( Efl.Canvas.Object content) {
+                         var _ret_var = Efl.Ui.StackNativeInherit.efl_ui_stack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the content matched to the given index in the stack.</summary>
+   /// <param name="index">The index of the content to be returned in the stack.</param>
+   /// <returns>The content matched to <c>index</c> in the stack.</returns>
+   virtual public Efl.Canvas.Object GetContent(  int index) {
+                         var _ret_var = Efl.Ui.StackNativeInherit.efl_ui_stack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the top content in the stack.</summary>
+   /// <returns>The top content in the stack.</returns>
+   virtual public Efl.Canvas.Object Top() {
+       var _ret_var = Efl.Ui.StackNativeInherit.efl_ui_stack_top_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Stack.efl_ui_stack_class_get();
+   }
+}
+public class StackNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_stack_push_static_delegate == null)
+      efl_ui_stack_push_static_delegate = new efl_ui_stack_push_delegate(push);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_push"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_push_static_delegate)});
+      if (efl_ui_stack_pop_static_delegate == null)
+      efl_ui_stack_pop_static_delegate = new efl_ui_stack_pop_delegate(pop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_pop"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_pop_static_delegate)});
+      if (efl_ui_stack_insert_before_static_delegate == null)
+      efl_ui_stack_insert_before_static_delegate = new efl_ui_stack_insert_before_delegate(insert_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_insert_before"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_insert_before_static_delegate)});
+      if (efl_ui_stack_insert_after_static_delegate == null)
+      efl_ui_stack_insert_after_static_delegate = new efl_ui_stack_insert_after_delegate(insert_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_insert_after"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_insert_after_static_delegate)});
+      if (efl_ui_stack_insert_at_static_delegate == null)
+      efl_ui_stack_insert_at_static_delegate = new efl_ui_stack_insert_at_delegate(insert_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_insert_at"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_insert_at_static_delegate)});
+      if (efl_ui_stack_remove_static_delegate == null)
+      efl_ui_stack_remove_static_delegate = new efl_ui_stack_remove_delegate(remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_remove_static_delegate)});
+      if (efl_ui_stack_remove_at_static_delegate == null)
+      efl_ui_stack_remove_at_static_delegate = new efl_ui_stack_remove_at_delegate(remove_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_remove_at"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_remove_at_static_delegate)});
+      if (efl_ui_stack_index_get_static_delegate == null)
+      efl_ui_stack_index_get_static_delegate = new efl_ui_stack_index_get_delegate(index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_index_get_static_delegate)});
+      if (efl_ui_stack_content_get_static_delegate == null)
+      efl_ui_stack_content_get_static_delegate = new efl_ui_stack_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_content_get_static_delegate)});
+      if (efl_ui_stack_top_static_delegate == null)
+      efl_ui_stack_top_static_delegate = new efl_ui_stack_top_delegate(top);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_stack_top"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_stack_top_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Stack.efl_ui_stack_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Stack.efl_ui_stack_class_get();
+   }
+
+
+    private delegate  void efl_ui_stack_push_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void efl_ui_stack_push_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_push_api_delegate> efl_ui_stack_push_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_push_api_delegate>(_Module, "efl_ui_stack_push");
+    private static  void push(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function efl_ui_stack_push was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Stack)wrapper).Push( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_stack_push_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_ui_stack_push_delegate efl_ui_stack_push_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_stack_pop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_stack_pop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_pop_api_delegate> efl_ui_stack_pop_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_pop_api_delegate>(_Module, "efl_ui_stack_pop");
+    private static Efl.Canvas.Object pop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_stack_pop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Stack)wrapper).Pop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_stack_pop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_stack_pop_delegate efl_ui_stack_pop_static_delegate;
+
+
+    private delegate  void efl_ui_stack_insert_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object base_content, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void efl_ui_stack_insert_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object base_content, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_insert_before_api_delegate> efl_ui_stack_insert_before_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_insert_before_api_delegate>(_Module, "efl_ui_stack_insert_before");
+    private static  void insert_before(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object base_content,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function efl_ui_stack_insert_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Stack)wrapper).InsertBefore( base_content,  content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_stack_insert_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  base_content,  content);
+      }
+   }
+   private static efl_ui_stack_insert_before_delegate efl_ui_stack_insert_before_static_delegate;
+
+
+    private delegate  void efl_ui_stack_insert_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object base_content, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void efl_ui_stack_insert_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object base_content, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_insert_after_api_delegate> efl_ui_stack_insert_after_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_insert_after_api_delegate>(_Module, "efl_ui_stack_insert_after");
+    private static  void insert_after(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object base_content,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function efl_ui_stack_insert_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Stack)wrapper).InsertAfter( base_content,  content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_stack_insert_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  base_content,  content);
+      }
+   }
+   private static efl_ui_stack_insert_after_delegate efl_ui_stack_insert_after_static_delegate;
+
+
+    private delegate  void efl_ui_stack_insert_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void efl_ui_stack_insert_at_api_delegate(System.IntPtr obj,    int index, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_insert_at_api_delegate> efl_ui_stack_insert_at_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_insert_at_api_delegate>(_Module, "efl_ui_stack_insert_at");
+    private static  void insert_at(System.IntPtr obj, System.IntPtr pd,   int index,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function efl_ui_stack_insert_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Stack)wrapper).InsertAt( index,  content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_stack_insert_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index,  content);
+      }
+   }
+   private static efl_ui_stack_insert_at_delegate efl_ui_stack_insert_at_static_delegate;
+
+
+    private delegate  void efl_ui_stack_remove_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void efl_ui_stack_remove_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_remove_api_delegate> efl_ui_stack_remove_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_remove_api_delegate>(_Module, "efl_ui_stack_remove");
+    private static  void remove(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function efl_ui_stack_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Stack)wrapper).Remove( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_stack_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_ui_stack_remove_delegate efl_ui_stack_remove_static_delegate;
+
+
+    private delegate  void efl_ui_stack_remove_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+    public delegate  void efl_ui_stack_remove_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_remove_at_api_delegate> efl_ui_stack_remove_at_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_remove_at_api_delegate>(_Module, "efl_ui_stack_remove_at");
+    private static  void remove_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_ui_stack_remove_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Stack)wrapper).RemoveAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_stack_remove_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_ui_stack_remove_at_delegate efl_ui_stack_remove_at_static_delegate;
+
+
+    private delegate  int efl_ui_stack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  int efl_ui_stack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_index_get_api_delegate> efl_ui_stack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_index_get_api_delegate>(_Module, "efl_ui_stack_index_get");
+    private static  int index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function efl_ui_stack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((Stack)wrapper).GetIndex( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_stack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_ui_stack_index_get_delegate efl_ui_stack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_stack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_stack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_content_get_api_delegate> efl_ui_stack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_content_get_api_delegate>(_Module, "efl_ui_stack_content_get");
+    private static Efl.Canvas.Object content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_ui_stack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Stack)wrapper).GetContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_stack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_ui_stack_content_get_delegate efl_ui_stack_content_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_stack_top_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_stack_top_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_stack_top_api_delegate> efl_ui_stack_top_ptr = new Efl.Eo.FunctionWrapper<efl_ui_stack_top_api_delegate>(_Module, "efl_ui_stack_top");
+    private static Efl.Canvas.Object top(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_stack_top was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Stack)wrapper).Top();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_stack_top_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_stack_top_delegate efl_ui_stack_top_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Information of loaded event.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventLoaded
+{
+   /// <summary>Loaded content.</summary>
+   public Efl.Canvas.Object Content;
+   ///<summary>Constructor for StackEventLoaded.</summary>
+   public StackEventLoaded(
+      Efl.Canvas.Object Content=default(Efl.Canvas.Object)   )
+   {
+      this.Content = Content;
+   }
+public static implicit operator StackEventLoaded(IntPtr ptr)
+   {
+      var tmp = (StackEventLoaded_StructInternal)Marshal.PtrToStructure(ptr, typeof(StackEventLoaded_StructInternal));
+      return StackEventLoaded_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct StackEventLoaded.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventLoaded_StructInternal
+{
+///<summary>Internal wrapper for field Content</summary>
+public System.IntPtr Content;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator StackEventLoaded(StackEventLoaded_StructInternal struct_)
+   {
+      return StackEventLoaded_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator StackEventLoaded_StructInternal(StackEventLoaded struct_)
+   {
+      return StackEventLoaded_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct StackEventLoaded</summary>
+public static class StackEventLoaded_StructConversion
+{
+   internal static StackEventLoaded_StructInternal ToInternal(StackEventLoaded _external_struct)
+   {
+      var _internal_struct = new StackEventLoaded_StructInternal();
+
+      _internal_struct.Content = _external_struct.Content.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static StackEventLoaded ToManaged(StackEventLoaded_StructInternal _internal_struct)
+   {
+      var _external_struct = new StackEventLoaded();
+
+
+      _external_struct.Content = (Efl.Canvas.Object) System.Activator.CreateInstance(typeof(Efl.Canvas.Object), new System.Object[] {_internal_struct.Content});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Content);
+
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Information of unloaded event.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventUnloaded
+{
+   /// <summary>Unloaded content.</summary>
+   public Efl.Canvas.Object Content;
+   ///<summary>Constructor for StackEventUnloaded.</summary>
+   public StackEventUnloaded(
+      Efl.Canvas.Object Content=default(Efl.Canvas.Object)   )
+   {
+      this.Content = Content;
+   }
+public static implicit operator StackEventUnloaded(IntPtr ptr)
+   {
+      var tmp = (StackEventUnloaded_StructInternal)Marshal.PtrToStructure(ptr, typeof(StackEventUnloaded_StructInternal));
+      return StackEventUnloaded_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct StackEventUnloaded.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventUnloaded_StructInternal
+{
+///<summary>Internal wrapper for field Content</summary>
+public System.IntPtr Content;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator StackEventUnloaded(StackEventUnloaded_StructInternal struct_)
+   {
+      return StackEventUnloaded_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator StackEventUnloaded_StructInternal(StackEventUnloaded struct_)
+   {
+      return StackEventUnloaded_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct StackEventUnloaded</summary>
+public static class StackEventUnloaded_StructConversion
+{
+   internal static StackEventUnloaded_StructInternal ToInternal(StackEventUnloaded _external_struct)
+   {
+      var _internal_struct = new StackEventUnloaded_StructInternal();
+
+      _internal_struct.Content = _external_struct.Content.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static StackEventUnloaded ToManaged(StackEventUnloaded_StructInternal _internal_struct)
+   {
+      var _external_struct = new StackEventUnloaded();
+
+
+      _external_struct.Content = (Efl.Canvas.Object) System.Activator.CreateInstance(typeof(Efl.Canvas.Object), new System.Object[] {_internal_struct.Content});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Content);
+
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Information of activated event.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventActivated
+{
+   /// <summary>Activated content.</summary>
+   public Efl.Canvas.Object Content;
+   ///<summary>Constructor for StackEventActivated.</summary>
+   public StackEventActivated(
+      Efl.Canvas.Object Content=default(Efl.Canvas.Object)   )
+   {
+      this.Content = Content;
+   }
+public static implicit operator StackEventActivated(IntPtr ptr)
+   {
+      var tmp = (StackEventActivated_StructInternal)Marshal.PtrToStructure(ptr, typeof(StackEventActivated_StructInternal));
+      return StackEventActivated_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct StackEventActivated.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventActivated_StructInternal
+{
+///<summary>Internal wrapper for field Content</summary>
+public System.IntPtr Content;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator StackEventActivated(StackEventActivated_StructInternal struct_)
+   {
+      return StackEventActivated_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator StackEventActivated_StructInternal(StackEventActivated struct_)
+   {
+      return StackEventActivated_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct StackEventActivated</summary>
+public static class StackEventActivated_StructConversion
+{
+   internal static StackEventActivated_StructInternal ToInternal(StackEventActivated _external_struct)
+   {
+      var _internal_struct = new StackEventActivated_StructInternal();
+
+      _internal_struct.Content = _external_struct.Content.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static StackEventActivated ToManaged(StackEventActivated_StructInternal _internal_struct)
+   {
+      var _external_struct = new StackEventActivated();
+
+
+      _external_struct.Content = (Efl.Canvas.Object) System.Activator.CreateInstance(typeof(Efl.Canvas.Object), new System.Object[] {_internal_struct.Content});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Content);
+
+
+      return _external_struct;
+   }
+
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Information of deactivated event.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventDeactivated
+{
+   /// <summary>Deactivated content.</summary>
+   public Efl.Canvas.Object Content;
+   ///<summary>Constructor for StackEventDeactivated.</summary>
+   public StackEventDeactivated(
+      Efl.Canvas.Object Content=default(Efl.Canvas.Object)   )
+   {
+      this.Content = Content;
+   }
+public static implicit operator StackEventDeactivated(IntPtr ptr)
+   {
+      var tmp = (StackEventDeactivated_StructInternal)Marshal.PtrToStructure(ptr, typeof(StackEventDeactivated_StructInternal));
+      return StackEventDeactivated_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct StackEventDeactivated.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct StackEventDeactivated_StructInternal
+{
+///<summary>Internal wrapper for field Content</summary>
+public System.IntPtr Content;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator StackEventDeactivated(StackEventDeactivated_StructInternal struct_)
+   {
+      return StackEventDeactivated_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator StackEventDeactivated_StructInternal(StackEventDeactivated struct_)
+   {
+      return StackEventDeactivated_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct StackEventDeactivated</summary>
+public static class StackEventDeactivated_StructConversion
+{
+   internal static StackEventDeactivated_StructInternal ToInternal(StackEventDeactivated _external_struct)
+   {
+      var _internal_struct = new StackEventDeactivated_StructInternal();
+
+      _internal_struct.Content = _external_struct.Content.NativeHandle;
+
+      return _internal_struct;
+   }
+
+   internal static StackEventDeactivated ToManaged(StackEventDeactivated_StructInternal _internal_struct)
+   {
+      var _external_struct = new StackEventDeactivated();
+
+
+      _external_struct.Content = (Efl.Canvas.Object) System.Activator.CreateInstance(typeof(Efl.Canvas.Object), new System.Object[] {_internal_struct.Content});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Content);
+
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_tab_bar.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_tab_bar.eo.cs
new file mode 100755 (executable)
index 0000000..47a28e4
--- /dev/null
@@ -0,0 +1,708 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Tab Bar class</summary>
+[TabBarNativeInherit]
+public class TabBar : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Ui.Clickable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TabBarNativeInherit nativeInherit = new Efl.Ui.TabBarNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TabBar))
+            return Efl.Ui.TabBarNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_tab_bar_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TabBar(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_tab_bar_class_get(), typeof(TabBar), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TabBar(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TabBar(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TabBar static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TabBar(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+   }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public  int GetCurrentTab() {
+       var _ret_var = Efl.Ui.TabBarNativeInherit.efl_ui_tab_bar_current_tab_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="index"></param>
+   /// <returns></returns>
+   virtual public  void SetCurrentTab(  int index) {
+                         Efl.Ui.TabBarNativeInherit.efl_ui_tab_bar_current_tab_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public  uint TabCount() {
+       var _ret_var = Efl.Ui.TabBarNativeInherit.efl_ui_tab_bar_tab_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="index"></param>
+   /// <param name="label"></param>
+   /// <param name="icon"></param>
+   /// <returns></returns>
+   virtual public  void AddTab(  int index,   System.String label,   System.String icon) {
+                                                             Efl.Ui.TabBarNativeInherit.efl_ui_tab_bar_tab_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index,  label,  icon);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary></summary>
+   /// <param name="index"></param>
+   /// <returns></returns>
+   virtual public  void TabRemove(  int index) {
+                         Efl.Ui.TabBarNativeInherit.efl_ui_tab_bar_tab_remove_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+   /// <param name="index"></param>
+   /// <param name="label"></param>
+   /// <returns></returns>
+   virtual public  void SetTabLabel(  int index,   System.String label) {
+                                           Efl.Ui.TabBarNativeInherit.efl_ui_tab_bar_tab_label_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index,  label);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+   /// <param name="index"></param>
+   /// <param name="icon"></param>
+   /// <returns></returns>
+   virtual public  void SetTabIcon(  int index,   System.String icon) {
+                                           Efl.Ui.TabBarNativeInherit.efl_ui_tab_bar_tab_icon_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index,  icon);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+/// <value></value>
+   public  int CurrentTab {
+      get { return GetCurrentTab(); }
+      set { SetCurrentTab( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabBar.efl_ui_tab_bar_class_get();
+   }
+}
+public class TabBarNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_tab_bar_current_tab_get_static_delegate == null)
+      efl_ui_tab_bar_current_tab_get_static_delegate = new efl_ui_tab_bar_current_tab_get_delegate(current_tab_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_bar_current_tab_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_bar_current_tab_get_static_delegate)});
+      if (efl_ui_tab_bar_current_tab_set_static_delegate == null)
+      efl_ui_tab_bar_current_tab_set_static_delegate = new efl_ui_tab_bar_current_tab_set_delegate(current_tab_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_bar_current_tab_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_bar_current_tab_set_static_delegate)});
+      if (efl_ui_tab_bar_tab_count_static_delegate == null)
+      efl_ui_tab_bar_tab_count_static_delegate = new efl_ui_tab_bar_tab_count_delegate(tab_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_bar_tab_count"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_bar_tab_count_static_delegate)});
+      if (efl_ui_tab_bar_tab_add_static_delegate == null)
+      efl_ui_tab_bar_tab_add_static_delegate = new efl_ui_tab_bar_tab_add_delegate(tab_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_bar_tab_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_bar_tab_add_static_delegate)});
+      if (efl_ui_tab_bar_tab_remove_static_delegate == null)
+      efl_ui_tab_bar_tab_remove_static_delegate = new efl_ui_tab_bar_tab_remove_delegate(tab_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_bar_tab_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_bar_tab_remove_static_delegate)});
+      if (efl_ui_tab_bar_tab_label_set_static_delegate == null)
+      efl_ui_tab_bar_tab_label_set_static_delegate = new efl_ui_tab_bar_tab_label_set_delegate(tab_label_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_bar_tab_label_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_bar_tab_label_set_static_delegate)});
+      if (efl_ui_tab_bar_tab_icon_set_static_delegate == null)
+      efl_ui_tab_bar_tab_icon_set_static_delegate = new efl_ui_tab_bar_tab_icon_set_delegate(tab_icon_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_bar_tab_icon_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_bar_tab_icon_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TabBar.efl_ui_tab_bar_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabBar.efl_ui_tab_bar_class_get();
+   }
+
+
+    private delegate  int efl_ui_tab_bar_current_tab_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_tab_bar_current_tab_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_bar_current_tab_get_api_delegate> efl_ui_tab_bar_current_tab_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_bar_current_tab_get_api_delegate>(_Module, "efl_ui_tab_bar_current_tab_get");
+    private static  int current_tab_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_tab_bar_current_tab_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((TabBar)wrapper).GetCurrentTab();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_tab_bar_current_tab_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_tab_bar_current_tab_get_delegate efl_ui_tab_bar_current_tab_get_static_delegate;
+
+
+    private delegate  void efl_ui_tab_bar_current_tab_set_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+    public delegate  void efl_ui_tab_bar_current_tab_set_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_bar_current_tab_set_api_delegate> efl_ui_tab_bar_current_tab_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_bar_current_tab_set_api_delegate>(_Module, "efl_ui_tab_bar_current_tab_set");
+    private static  void current_tab_set(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_ui_tab_bar_current_tab_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TabBar)wrapper).SetCurrentTab( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_tab_bar_current_tab_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_ui_tab_bar_current_tab_set_delegate efl_ui_tab_bar_current_tab_set_static_delegate;
+
+
+    private delegate  uint efl_ui_tab_bar_tab_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_ui_tab_bar_tab_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_count_api_delegate> efl_ui_tab_bar_tab_count_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_count_api_delegate>(_Module, "efl_ui_tab_bar_tab_count");
+    private static  uint tab_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_tab_bar_tab_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((TabBar)wrapper).TabCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_tab_bar_tab_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_tab_bar_tab_count_delegate efl_ui_tab_bar_tab_count_static_delegate;
+
+
+    private delegate  void efl_ui_tab_bar_tab_add_delegate(System.IntPtr obj, System.IntPtr pd,    int index,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String icon);
+
+
+    public delegate  void efl_ui_tab_bar_tab_add_api_delegate(System.IntPtr obj,    int index,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String icon);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_add_api_delegate> efl_ui_tab_bar_tab_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_add_api_delegate>(_Module, "efl_ui_tab_bar_tab_add");
+    private static  void tab_add(System.IntPtr obj, System.IntPtr pd,   int index,   System.String label,   System.String icon)
+   {
+      Eina.Log.Debug("function efl_ui_tab_bar_tab_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((TabBar)wrapper).AddTab( index,  label,  icon);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_ui_tab_bar_tab_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index,  label,  icon);
+      }
+   }
+   private static efl_ui_tab_bar_tab_add_delegate efl_ui_tab_bar_tab_add_static_delegate;
+
+
+    private delegate  void efl_ui_tab_bar_tab_remove_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+    public delegate  void efl_ui_tab_bar_tab_remove_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_remove_api_delegate> efl_ui_tab_bar_tab_remove_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_remove_api_delegate>(_Module, "efl_ui_tab_bar_tab_remove");
+    private static  void tab_remove(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_ui_tab_bar_tab_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TabBar)wrapper).TabRemove( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_tab_bar_tab_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_ui_tab_bar_tab_remove_delegate efl_ui_tab_bar_tab_remove_static_delegate;
+
+
+    private delegate  void efl_ui_tab_bar_tab_label_set_delegate(System.IntPtr obj, System.IntPtr pd,    int index,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+
+
+    public delegate  void efl_ui_tab_bar_tab_label_set_api_delegate(System.IntPtr obj,    int index,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_label_set_api_delegate> efl_ui_tab_bar_tab_label_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_label_set_api_delegate>(_Module, "efl_ui_tab_bar_tab_label_set");
+    private static  void tab_label_set(System.IntPtr obj, System.IntPtr pd,   int index,   System.String label)
+   {
+      Eina.Log.Debug("function efl_ui_tab_bar_tab_label_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TabBar)wrapper).SetTabLabel( index,  label);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_tab_bar_tab_label_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index,  label);
+      }
+   }
+   private static efl_ui_tab_bar_tab_label_set_delegate efl_ui_tab_bar_tab_label_set_static_delegate;
+
+
+    private delegate  void efl_ui_tab_bar_tab_icon_set_delegate(System.IntPtr obj, System.IntPtr pd,    int index,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String icon);
+
+
+    public delegate  void efl_ui_tab_bar_tab_icon_set_api_delegate(System.IntPtr obj,    int index,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String icon);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_icon_set_api_delegate> efl_ui_tab_bar_tab_icon_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_bar_tab_icon_set_api_delegate>(_Module, "efl_ui_tab_bar_tab_icon_set");
+    private static  void tab_icon_set(System.IntPtr obj, System.IntPtr pd,   int index,   System.String icon)
+   {
+      Eina.Log.Debug("function efl_ui_tab_bar_tab_icon_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((TabBar)wrapper).SetTabIcon( index,  icon);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_tab_bar_tab_icon_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index,  icon);
+      }
+   }
+   private static efl_ui_tab_bar_tab_icon_set_delegate efl_ui_tab_bar_tab_icon_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_tab_page.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_tab_page.eo.cs
new file mode 100755 (executable)
index 0000000..74fc3b0
--- /dev/null
@@ -0,0 +1,381 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.TabPage.TabChangedEvt"/>.</summary>
+public class TabPageTabChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.TabPageTabChangedEvent arg { get; set; }
+}
+/// <summary>Tab Page class</summary>
+[TabPageNativeInherit]
+public class TabPage : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Content
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TabPageNativeInherit nativeInherit = new Efl.Ui.TabPageNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TabPage))
+            return Efl.Ui.TabPageNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_tab_page_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TabPage(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_tab_page_class_get(), typeof(TabPage), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TabPage(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TabPage(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TabPage static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TabPage(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object TabChangedEvtKey = new object();
+   /// <summary>Called when tab changed</summary>
+   public event EventHandler<Efl.Ui.TabPageTabChangedEvt_Args> TabChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAB_PAGE_EVENT_TAB_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_TabChangedEvt_delegate)) {
+               eventHandlers.AddHandler(TabChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAB_PAGE_EVENT_TAB_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_TabChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(TabChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event TabChangedEvt.</summary>
+   public void On_TabChangedEvt(Efl.Ui.TabPageTabChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TabPageTabChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TabPageTabChangedEvt_Args>)eventHandlers[TabChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_TabChangedEvt_delegate;
+   private void on_TabChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TabPageTabChangedEvt_Args args = new Efl.Ui.TabPageTabChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_TabChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_TabChangedEvt_delegate = new Efl.EventCb(on_TabChangedEvt_NativeCallback);
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary></summary>
+   public Efl.Ui.TabPagePartTab Tab
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "tab");
+         return Efl.Ui.TabPagePartTab.static_cast(obj);
+      }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabPage.efl_ui_tab_page_class_get();
+   }
+}
+public class TabPageNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TabPage.efl_ui_tab_page_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabPage.efl_ui_tab_page_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((TabPage)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TabPage)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((TabPage)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+public enum TabPageTabChanged
+{
+/// <summary>Label changed</summary>
+Label = 0,
+/// <summary>Icon changed</summary>
+Icon = 1,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Information of changed event</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TabPageTabChangedEvent
+{
+   /// <summary></summary>
+   public Efl.Ui.TabPageTabChanged Changed_info;
+   ///<summary>Constructor for TabPageTabChangedEvent.</summary>
+   public TabPageTabChangedEvent(
+      Efl.Ui.TabPageTabChanged Changed_info=default(Efl.Ui.TabPageTabChanged)   )
+   {
+      this.Changed_info = Changed_info;
+   }
+public static implicit operator TabPageTabChangedEvent(IntPtr ptr)
+   {
+      var tmp = (TabPageTabChangedEvent_StructInternal)Marshal.PtrToStructure(ptr, typeof(TabPageTabChangedEvent_StructInternal));
+      return TabPageTabChangedEvent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct TabPageTabChangedEvent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct TabPageTabChangedEvent_StructInternal
+{
+   
+   public Efl.Ui.TabPageTabChanged Changed_info;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator TabPageTabChangedEvent(TabPageTabChangedEvent_StructInternal struct_)
+   {
+      return TabPageTabChangedEvent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator TabPageTabChangedEvent_StructInternal(TabPageTabChangedEvent struct_)
+   {
+      return TabPageTabChangedEvent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct TabPageTabChangedEvent</summary>
+public static class TabPageTabChangedEvent_StructConversion
+{
+   internal static TabPageTabChangedEvent_StructInternal ToInternal(TabPageTabChangedEvent _external_struct)
+   {
+      var _internal_struct = new TabPageTabChangedEvent_StructInternal();
+
+      _internal_struct.Changed_info = _external_struct.Changed_info;
+
+      return _internal_struct;
+   }
+
+   internal static TabPageTabChangedEvent ToManaged(TabPageTabChangedEvent_StructInternal _internal_struct)
+   {
+      var _external_struct = new TabPageTabChangedEvent();
+
+      _external_struct.Changed_info = _internal_struct.Changed_info;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_tab_page_part_tab.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_tab_page_part_tab.eo.cs
new file mode 100755 (executable)
index 0000000..dfe8c98
--- /dev/null
@@ -0,0 +1,239 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Tab_Page internal part class</summary>
+[TabPagePartTabNativeInherit]
+public class TabPagePartTab : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Text
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TabPagePartTabNativeInherit nativeInherit = new Efl.Ui.TabPagePartTabNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TabPagePartTab))
+            return Efl.Ui.TabPagePartTabNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_tab_page_part_tab_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public TabPagePartTab(Efl.Object parent= null
+         ) :
+      base(efl_ui_tab_page_part_tab_class_get(), typeof(TabPagePartTab), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TabPagePartTab(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TabPagePartTab(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TabPagePartTab static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TabPagePartTab(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public  System.String GetIcon() {
+       var _ret_var = Efl.Ui.TabPagePartTabNativeInherit.efl_ui_tab_page_part_tab_icon_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="path"></param>
+   /// <returns></returns>
+   virtual public  void SetIcon(  System.String path) {
+                         Efl.Ui.TabPagePartTabNativeInherit.efl_ui_tab_page_part_tab_icon_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), path);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+/// <value></value>
+   public  System.String Icon {
+      get { return GetIcon(); }
+      set { SetIcon( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabPagePartTab.efl_ui_tab_page_part_tab_class_get();
+   }
+}
+public class TabPagePartTabNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_tab_page_part_tab_icon_get_static_delegate == null)
+      efl_ui_tab_page_part_tab_icon_get_static_delegate = new efl_ui_tab_page_part_tab_icon_get_delegate(icon_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_page_part_tab_icon_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_page_part_tab_icon_get_static_delegate)});
+      if (efl_ui_tab_page_part_tab_icon_set_static_delegate == null)
+      efl_ui_tab_page_part_tab_icon_set_static_delegate = new efl_ui_tab_page_part_tab_icon_set_delegate(icon_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_page_part_tab_icon_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_page_part_tab_icon_set_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TabPagePartTab.efl_ui_tab_page_part_tab_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabPagePartTab.efl_ui_tab_page_part_tab_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_tab_page_part_tab_icon_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_tab_page_part_tab_icon_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_page_part_tab_icon_get_api_delegate> efl_ui_tab_page_part_tab_icon_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_page_part_tab_icon_get_api_delegate>(_Module, "efl_ui_tab_page_part_tab_icon_get");
+    private static  System.String icon_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_tab_page_part_tab_icon_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TabPagePartTab)wrapper).GetIcon();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_tab_page_part_tab_icon_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_tab_page_part_tab_icon_get_delegate efl_ui_tab_page_part_tab_icon_get_static_delegate;
+
+
+    private delegate  void efl_ui_tab_page_part_tab_icon_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String path);
+
+
+    public delegate  void efl_ui_tab_page_part_tab_icon_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String path);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_page_part_tab_icon_set_api_delegate> efl_ui_tab_page_part_tab_icon_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_page_part_tab_icon_set_api_delegate>(_Module, "efl_ui_tab_page_part_tab_icon_set");
+    private static  void icon_set(System.IntPtr obj, System.IntPtr pd,   System.String path)
+   {
+      Eina.Log.Debug("function efl_ui_tab_page_part_tab_icon_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TabPagePartTab)wrapper).SetIcon( path);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_tab_page_part_tab_icon_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  path);
+      }
+   }
+   private static efl_ui_tab_page_part_tab_icon_set_delegate efl_ui_tab_page_part_tab_icon_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TabPagePartTab)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TabPagePartTab)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_tab_pager.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_tab_pager.eo.cs
new file mode 100755 (executable)
index 0000000..5e327e9
--- /dev/null
@@ -0,0 +1,169 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Tab Pager class</summary>
+[TabPagerNativeInherit]
+public class TabPager : Efl.Ui.Pager, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TabPagerNativeInherit nativeInherit = new Efl.Ui.TabPagerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TabPager))
+            return Efl.Ui.TabPagerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_tab_pager_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TabPager(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_tab_pager_class_get(), typeof(TabPager), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TabPager(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TabPager(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TabPager static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TabPager(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary></summary>
+   /// <returns></returns>
+   virtual public Efl.Canvas.Object GetTabBar() {
+       var _ret_var = Efl.Ui.TabPagerNativeInherit.efl_ui_tab_pager_tab_bar_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary></summary>
+   /// <param name="tab_bar"></param>
+   /// <returns></returns>
+   virtual public  void SetTabBar( Efl.Canvas.Object tab_bar) {
+                         Efl.Ui.TabPagerNativeInherit.efl_ui_tab_pager_tab_bar_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), tab_bar);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary></summary>
+/// <value></value>
+   public Efl.Canvas.Object TabBar {
+      get { return GetTabBar(); }
+      set { SetTabBar( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabPager.efl_ui_tab_pager_class_get();
+   }
+}
+public class TabPagerNativeInherit : Efl.Ui.PagerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_tab_pager_tab_bar_get_static_delegate == null)
+      efl_ui_tab_pager_tab_bar_get_static_delegate = new efl_ui_tab_pager_tab_bar_get_delegate(tab_bar_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_pager_tab_bar_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_pager_tab_bar_get_static_delegate)});
+      if (efl_ui_tab_pager_tab_bar_set_static_delegate == null)
+      efl_ui_tab_pager_tab_bar_set_static_delegate = new efl_ui_tab_pager_tab_bar_set_delegate(tab_bar_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tab_pager_tab_bar_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tab_pager_tab_bar_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TabPager.efl_ui_tab_pager_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TabPager.efl_ui_tab_pager_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_tab_pager_tab_bar_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_tab_pager_tab_bar_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_pager_tab_bar_get_api_delegate> efl_ui_tab_pager_tab_bar_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_pager_tab_bar_get_api_delegate>(_Module, "efl_ui_tab_pager_tab_bar_get");
+    private static Efl.Canvas.Object tab_bar_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_tab_pager_tab_bar_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((TabPager)wrapper).GetTabBar();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_tab_pager_tab_bar_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_tab_pager_tab_bar_get_delegate efl_ui_tab_pager_tab_bar_get_static_delegate;
+
+
+    private delegate  void efl_ui_tab_pager_tab_bar_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object tab_bar);
+
+
+    public delegate  void efl_ui_tab_pager_tab_bar_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object tab_bar);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tab_pager_tab_bar_set_api_delegate> efl_ui_tab_pager_tab_bar_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tab_pager_tab_bar_set_api_delegate>(_Module, "efl_ui_tab_pager_tab_bar_set");
+    private static  void tab_bar_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object tab_bar)
+   {
+      Eina.Log.Debug("function efl_ui_tab_pager_tab_bar_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TabPager)wrapper).SetTabBar( tab_bar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_tab_pager_tab_bar_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  tab_bar);
+      }
+   }
+   private static efl_ui_tab_pager_tab_bar_set_delegate efl_ui_tab_pager_tab_bar_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_table.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_table.eo.cs
new file mode 100755 (executable)
index 0000000..346586b
--- /dev/null
@@ -0,0 +1,1567 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI table class</summary>
+[TableNativeInherit]
+public class Table : Efl.Ui.Widget, Efl.Eo.IWrapper,Efl.Container,Efl.Pack,Efl.PackLayout,Efl.PackLinear,Efl.PackTable,Efl.Ui.Direction
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TableNativeInherit nativeInherit = new Efl.Ui.TableNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Table))
+            return Efl.Ui.TableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_table_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Table(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_table_class_get(), typeof(Table), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Table(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Table(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Table static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Table(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentAddedEvtKey = new object();
+   /// <summary>Sent after a new item was added.</summary>
+   public event EventHandler<Efl.ContainerContentAddedEvt_Args> ContentAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ContentAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentAddedEvt.</summary>
+   public void On_ContentAddedEvt(Efl.ContainerContentAddedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentAddedEvt_Args>)eventHandlers[ContentAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentAddedEvt_delegate;
+   private void on_ContentAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentAddedEvt_Args args = new Efl.ContainerContentAddedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentRemovedEvtKey = new object();
+   /// <summary>Sent after an item was removed, before unref.</summary>
+   public event EventHandler<Efl.ContainerContentRemovedEvt_Args> ContentRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTAINER_EVENT_CONTENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_ContentRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentRemovedEvt.</summary>
+   public void On_ContentRemovedEvt(Efl.ContainerContentRemovedEvt_Args e)
+   {
+      EventHandler<Efl.ContainerContentRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContainerContentRemovedEvt_Args>)eventHandlers[ContentRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentRemovedEvt_delegate;
+   private void on_ContentRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContainerContentRemovedEvt_Args args = new Efl.ContainerContentRemovedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LayoutUpdatedEvtKey = new object();
+   /// <summary>Sent after the layout was updated.</summary>
+   public event EventHandler LayoutUpdatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LayoutUpdatedEvt_delegate)) {
+               eventHandlers.AddHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_PACK_EVENT_LAYOUT_UPDATED";
+            if (remove_cpp_event_handler(key, this.evt_LayoutUpdatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LayoutUpdatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LayoutUpdatedEvt.</summary>
+   public void On_LayoutUpdatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LayoutUpdatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LayoutUpdatedEvt_delegate;
+   private void on_LayoutUpdatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LayoutUpdatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentAddedEvt_delegate = new Efl.EventCb(on_ContentAddedEvt_NativeCallback);
+      evt_ContentRemovedEvt_delegate = new Efl.EventCb(on_ContentRemovedEvt_NativeCallback);
+      evt_LayoutUpdatedEvt_delegate = new Efl.EventCb(on_LayoutUpdatedEvt_NativeCallback);
+   }
+   /// <summary>Control homogeneous mode.
+   /// This will enable the homogeneous mode where cells are of the same weight and of the same min size which is determined by maximum min size of cells.</summary>
+   /// <param name="homogeneoush"><c>true</c> if the box is homogeneous horizontally, <c>false</c> otherwise</param>
+   /// <param name="homogeneousv"><c>true</c> if the box is homogeneous vertically, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetHomogeneous( out bool homogeneoush,  out bool homogeneousv) {
+                                           Efl.Ui.TableNativeInherit.efl_ui_table_homogeneous_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out homogeneoush,  out homogeneousv);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control homogeneous mode.
+   /// This will enable the homogeneous mode where cells are of the same weight and of the same min size which is determined by maximum min size of cells.</summary>
+   /// <param name="homogeneoush"><c>true</c> if the box is homogeneous horizontally, <c>false</c> otherwise</param>
+   /// <param name="homogeneousv"><c>true</c> if the box is homogeneous vertically, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetHomogeneous( bool homogeneoush,  bool homogeneousv) {
+                                           Efl.Ui.TableNativeInherit.efl_ui_table_homogeneous_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), homogeneoush,  homogeneousv);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Begin iterating over this object&apos;s contents.</summary>
+   /// <returns>Iterator to object content</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> ContentIterate() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns the number of UI elements packed in this container.</summary>
+   /// <returns>Number of packed UI elements</returns>
+   virtual public  int ContentCount() {
+       var _ret_var = Efl.ContainerNativeInherit.efl_content_count_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void GetPackAlign( out double align_horiz,  out double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out align_horiz,  out align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Alignment of the container within its bounds</summary>
+   /// <param name="align_horiz">Horizontal alignment</param>
+   /// <param name="align_vert">Vertical alignment</param>
+   /// <returns></returns>
+   virtual public  void SetPackAlign( double align_horiz,  double align_vert) {
+                                           Efl.PackNativeInherit.efl_pack_align_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), align_horiz,  align_vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void GetPackPadding( out double pad_horiz,  out double pad_vert,  out bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out pad_horiz,  out pad_vert,  out scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Padding between items contained in this object.</summary>
+   /// <param name="pad_horiz">Horizontal padding</param>
+   /// <param name="pad_vert">Vertical padding</param>
+   /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetPackPadding( double pad_horiz,  double pad_vert,  bool scalable) {
+                                                             Efl.PackNativeInherit.efl_pack_padding_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), pad_horiz,  pad_vert,  scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Removes all packed contents, and unreferences them.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool ClearPack() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes all packed contents, without unreferencing them.
+   /// Use with caution.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnpackAll() {
+       var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_all_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Removes an existing item from the container, without deleting it.</summary>
+   /// <param name="subobj">The unpacked object.</param>
+   /// <returns><c>false</c> if <c>subobj</c> wasn&apos;t a child or can&apos;t be removed</returns>
+   virtual public bool Unpack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_unpack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Adds an item to this container.
+   /// Depending on the container this will either fill in the default spot, replacing any already existing element or append to the end of the container if there is no default part.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">An object to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool DoPack( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackNativeInherit.efl_pack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Requests EFL to call the <see cref="Efl.PackLayout.UpdateLayout"/> method on this object.
+   /// This <see cref="Efl.PackLayout.UpdateLayout"/> may be called asynchronously.</summary>
+   /// <returns></returns>
+   virtual public  void LayoutRequest() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_request_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Implementation of this container&apos;s layout algorithm.
+   /// EFL will call this function whenever the contents of this container need to be re-layed out on the canvas.
+   /// 
+   /// This can be overriden to implement custom layout behaviours.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateLayout() {
+       Efl.PackLayoutNativeInherit.efl_pack_layout_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Prepend an object at the beginning of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, 0).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackBegin( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_begin_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Append object at the end of this container.
+   /// This is the same as <see cref="Efl.PackLinear.PackAt"/>(<c>subobj</c>, -1).
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at the end.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed</returns>
+   virtual public bool PackEnd( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Prepend item before other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack before <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackBefore( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_before_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Append item after other sub object.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack after <c>existing</c>.</param>
+   /// <param name="existing">Item to refer to.</param>
+   /// <returns><c>false</c> if <c>existing</c> could not be found or <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAfter( Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_after_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  existing);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Inserts <c>subobj</c> at the specified <c>index</c>.
+   /// Valid range: -<c>count</c> to +<c>count</c>. -1 refers to the last element. Out of range indices will trigger an append.
+   /// 
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">Item to pack at given index.</param>
+   /// <param name="index">A position.</param>
+   /// <returns><c>false</c> if <c>subobj</c> could not be packed.</returns>
+   virtual public bool PackAt( Efl.Gfx.Entity subobj,   int index) {
+                                           var _ret_var = Efl.PackLinearNativeInherit.efl_pack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  index);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Content at a given index in this container.
+   /// Index -1 refers to the last item. The valid range is -(count - 1) to (count - 1).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The object contained at the given <c>index</c>.</returns>
+   virtual public Efl.Gfx.Entity GetPackContent(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the index of a child in this container.</summary>
+   /// <param name="subobj">An object contained in this pack.</param>
+   /// <returns>-1 in case of failure, or the index of this item.</returns>
+   virtual public  int GetPackIndex( Efl.Gfx.Entity subobj) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_index_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Pop out item at specified <c>index</c>.
+   /// Equivalent to unpack(content_at(<c>index</c>)).</summary>
+   /// <param name="index">Index number</param>
+   /// <returns>The child item if it could be removed.</returns>
+   virtual public Efl.Gfx.Entity PackUnpackAt(  int index) {
+                         var _ret_var = Efl.PackLinearNativeInherit.efl_pack_unpack_at_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), index);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Position and span of the <c>subobj</c> in this container, may be modified to move the <c>subobj</c></summary>
+   /// <param name="subobj">Child object</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">Column span</param>
+   /// <param name="rowspan">Row span</param>
+   /// <returns>Returns false if item is not a child</returns>
+   virtual public bool GetTablePosition( Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  out col,  out row,  out colspan,  out rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void GetTableSize( out  int cols,  out  int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out cols,  out rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Combines <see cref="Efl.PackTable.TableColumns"/> and <see cref="Efl.PackTable.TableRows"/></summary>
+   /// <param name="cols">Number of columns</param>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void SetTableSize(  int cols,   int rows) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cols,  rows);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gird columns property</summary>
+   /// <returns>Number of columns</returns>
+   virtual public  int GetTableColumns() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_columns_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is horizontal</summary>
+   /// <param name="cols">Number of columns</param>
+   /// <returns></returns>
+   virtual public  void SetTableColumns(  int cols) {
+                         Efl.PackTableNativeInherit.efl_pack_table_columns_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cols);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Table rows property</summary>
+   /// <returns>Number of rows</returns>
+   virtual public  int GetTableRows() {
+       var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_rows_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies limit for linear adds - if direction is vertical</summary>
+   /// <param name="rows">Number of rows</param>
+   /// <returns></returns>
+   virtual public  void SetTableRows(  int rows) {
+                         Efl.PackTableNativeInherit.efl_pack_table_rows_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), rows);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   virtual public  void GetTableDirection( out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out primary,  out secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Primary and secondary up/left/right/down directions for linear apis.
+   /// Default is horizontal and vertical. This overrides <see cref="Efl.Ui.Direction.Direction"/>.</summary>
+   /// <param name="primary">Primary direction</param>
+   /// <param name="secondary">Secondary direction</param>
+   /// <returns></returns>
+   virtual public  void SetTableDirection( Efl.Ui.Dir primary,  Efl.Ui.Dir secondary) {
+                                           Efl.PackTableNativeInherit.efl_pack_table_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), primary,  secondary);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pack object at a given location in the table.
+   /// When this container is deleted, it will request deletion of the given <c>subobj</c>. Use <see cref="Efl.Pack.Unpack"/> to remove <c>subobj</c> from this container without deleting it.</summary>
+   /// <param name="subobj">A child object to pack in this table.</param>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="colspan">0 means 1, -1 means <see cref="Efl.PackTable.TableColumns"/></param>
+   /// <param name="rowspan">0 means 1, -1 means <see cref="Efl.PackTable.TableRows"/></param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool PackTable( Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan) {
+                                                                                                 var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), subobj,  col,  row,  colspan,  rowspan);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Returns all objects at a given position in this table.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <param name="below">If <c>true</c> get objects spanning over this cell.</param>
+   /// <returns>Iterator to table contents</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> GetTableContents(  int col,   int row,  bool below) {
+                                                             var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_contents_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), col,  row,  below);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Returns a child at a given position, see <see cref="Efl.PackTable.GetTableContents"/>.</summary>
+   /// <param name="col">Column number</param>
+   /// <param name="row">Row number</param>
+   /// <returns>Child object</returns>
+   virtual public Efl.Gfx.Entity GetTableContent(  int col,   int row) {
+                                           var _ret_var = Efl.PackTableNativeInherit.efl_pack_table_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), col,  row);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <returns>Direction of the widget.</returns>
+   virtual public Efl.Ui.Dir GetDirection() {
+       var _ret_var = Efl.Ui.DirectionNativeInherit.efl_ui_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the direction of a given widget.
+   /// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+   /// 
+   /// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+   /// <param name="dir">Direction of the widget.</param>
+   /// <returns></returns>
+   virtual public  void SetDirection( Efl.Ui.Dir dir) {
+                         Efl.Ui.DirectionNativeInherit.efl_ui_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gird columns property</summary>
+/// <value>Number of columns</value>
+   public  int TableColumns {
+      get { return GetTableColumns(); }
+      set { SetTableColumns( value); }
+   }
+   /// <summary>Table rows property</summary>
+/// <value>Number of rows</value>
+   public  int TableRows {
+      get { return GetTableRows(); }
+      set { SetTableRows( value); }
+   }
+   /// <summary>Control the direction of a given widget.
+/// Use this function to change how your widget is to be disposed: vertically or horizontally or inverted vertically or inverted horizontally.
+/// 
+/// Mirroring as defined in <see cref="Efl.Ui.I18n"/> can invert the <c>horizontal</c> direction: it is <c>ltr</c> by default, but becomes <c>rtl</c> if the object is mirrored.</summary>
+/// <value>Direction of the widget.</value>
+   public Efl.Ui.Dir Direction {
+      get { return GetDirection(); }
+      set { SetDirection( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Table.efl_ui_table_class_get();
+   }
+}
+public class TableNativeInherit : Efl.Ui.WidgetNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_table_homogeneous_get_static_delegate == null)
+      efl_ui_table_homogeneous_get_static_delegate = new efl_ui_table_homogeneous_get_delegate(homogeneous_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_table_homogeneous_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_table_homogeneous_get_static_delegate)});
+      if (efl_ui_table_homogeneous_set_static_delegate == null)
+      efl_ui_table_homogeneous_set_static_delegate = new efl_ui_table_homogeneous_set_delegate(homogeneous_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_table_homogeneous_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_table_homogeneous_set_static_delegate)});
+      if (efl_content_iterate_static_delegate == null)
+      efl_content_iterate_static_delegate = new efl_content_iterate_delegate(content_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_content_iterate_static_delegate)});
+      if (efl_content_count_static_delegate == null)
+      efl_content_count_static_delegate = new efl_content_count_delegate(content_count);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_count"), func = Marshal.GetFunctionPointerForDelegate(efl_content_count_static_delegate)});
+      if (efl_pack_align_get_static_delegate == null)
+      efl_pack_align_get_static_delegate = new efl_pack_align_get_delegate(pack_align_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_get_static_delegate)});
+      if (efl_pack_align_set_static_delegate == null)
+      efl_pack_align_set_static_delegate = new efl_pack_align_set_delegate(pack_align_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_align_set_static_delegate)});
+      if (efl_pack_padding_get_static_delegate == null)
+      efl_pack_padding_get_static_delegate = new efl_pack_padding_get_delegate(pack_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_get_static_delegate)});
+      if (efl_pack_padding_set_static_delegate == null)
+      efl_pack_padding_set_static_delegate = new efl_pack_padding_set_delegate(pack_padding_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_padding_set_static_delegate)});
+      if (efl_pack_clear_static_delegate == null)
+      efl_pack_clear_static_delegate = new efl_pack_clear_delegate(pack_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_clear_static_delegate)});
+      if (efl_pack_unpack_all_static_delegate == null)
+      efl_pack_unpack_all_static_delegate = new efl_pack_unpack_all_delegate(unpack_all);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_all"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_all_static_delegate)});
+      if (efl_pack_unpack_static_delegate == null)
+      efl_pack_unpack_static_delegate = new efl_pack_unpack_delegate(unpack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_static_delegate)});
+      if (efl_pack_static_delegate == null)
+      efl_pack_static_delegate = new efl_pack_delegate(pack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_static_delegate)});
+      if (efl_pack_layout_request_static_delegate == null)
+      efl_pack_layout_request_static_delegate = new efl_pack_layout_request_delegate(layout_request);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_request"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_request_static_delegate)});
+      if (efl_pack_layout_update_static_delegate == null)
+      efl_pack_layout_update_static_delegate = new efl_pack_layout_update_delegate(layout_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_layout_update"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_layout_update_static_delegate)});
+      if (efl_pack_begin_static_delegate == null)
+      efl_pack_begin_static_delegate = new efl_pack_begin_delegate(pack_begin);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_begin"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_begin_static_delegate)});
+      if (efl_pack_end_static_delegate == null)
+      efl_pack_end_static_delegate = new efl_pack_end_delegate(pack_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_end"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_end_static_delegate)});
+      if (efl_pack_before_static_delegate == null)
+      efl_pack_before_static_delegate = new efl_pack_before_delegate(pack_before);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_before"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_before_static_delegate)});
+      if (efl_pack_after_static_delegate == null)
+      efl_pack_after_static_delegate = new efl_pack_after_delegate(pack_after);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_after"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_after_static_delegate)});
+      if (efl_pack_at_static_delegate == null)
+      efl_pack_at_static_delegate = new efl_pack_at_delegate(pack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_at_static_delegate)});
+      if (efl_pack_content_get_static_delegate == null)
+      efl_pack_content_get_static_delegate = new efl_pack_content_get_delegate(pack_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_content_get_static_delegate)});
+      if (efl_pack_index_get_static_delegate == null)
+      efl_pack_index_get_static_delegate = new efl_pack_index_get_delegate(pack_index_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_index_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_index_get_static_delegate)});
+      if (efl_pack_unpack_at_static_delegate == null)
+      efl_pack_unpack_at_static_delegate = new efl_pack_unpack_at_delegate(pack_unpack_at);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_unpack_at"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_unpack_at_static_delegate)});
+      if (efl_pack_table_position_get_static_delegate == null)
+      efl_pack_table_position_get_static_delegate = new efl_pack_table_position_get_delegate(table_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_position_get_static_delegate)});
+      if (efl_pack_table_size_get_static_delegate == null)
+      efl_pack_table_size_get_static_delegate = new efl_pack_table_size_get_delegate(table_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_get_static_delegate)});
+      if (efl_pack_table_size_set_static_delegate == null)
+      efl_pack_table_size_set_static_delegate = new efl_pack_table_size_set_delegate(table_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_size_set_static_delegate)});
+      if (efl_pack_table_columns_get_static_delegate == null)
+      efl_pack_table_columns_get_static_delegate = new efl_pack_table_columns_get_delegate(table_columns_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_get_static_delegate)});
+      if (efl_pack_table_columns_set_static_delegate == null)
+      efl_pack_table_columns_set_static_delegate = new efl_pack_table_columns_set_delegate(table_columns_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_columns_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_columns_set_static_delegate)});
+      if (efl_pack_table_rows_get_static_delegate == null)
+      efl_pack_table_rows_get_static_delegate = new efl_pack_table_rows_get_delegate(table_rows_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_get_static_delegate)});
+      if (efl_pack_table_rows_set_static_delegate == null)
+      efl_pack_table_rows_set_static_delegate = new efl_pack_table_rows_set_delegate(table_rows_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_rows_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_rows_set_static_delegate)});
+      if (efl_pack_table_direction_get_static_delegate == null)
+      efl_pack_table_direction_get_static_delegate = new efl_pack_table_direction_get_delegate(table_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_get_static_delegate)});
+      if (efl_pack_table_direction_set_static_delegate == null)
+      efl_pack_table_direction_set_static_delegate = new efl_pack_table_direction_set_delegate(table_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_direction_set_static_delegate)});
+      if (efl_pack_table_static_delegate == null)
+      efl_pack_table_static_delegate = new efl_pack_table_delegate(pack_table);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_static_delegate)});
+      if (efl_pack_table_contents_get_static_delegate == null)
+      efl_pack_table_contents_get_static_delegate = new efl_pack_table_contents_get_delegate(table_contents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_contents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_contents_get_static_delegate)});
+      if (efl_pack_table_content_get_static_delegate == null)
+      efl_pack_table_content_get_static_delegate = new efl_pack_table_content_get_delegate(table_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_pack_table_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_pack_table_content_get_static_delegate)});
+      if (efl_ui_direction_get_static_delegate == null)
+      efl_ui_direction_get_static_delegate = new efl_ui_direction_get_delegate(direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_get_static_delegate)});
+      if (efl_ui_direction_set_static_delegate == null)
+      efl_ui_direction_set_static_delegate = new efl_ui_direction_set_delegate(direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_direction_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Table.efl_ui_table_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Table.efl_ui_table_class_get();
+   }
+
+
+    private delegate  void efl_ui_table_homogeneous_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool homogeneoush,  [MarshalAs(UnmanagedType.U1)]  out bool homogeneousv);
+
+
+    public delegate  void efl_ui_table_homogeneous_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool homogeneoush,  [MarshalAs(UnmanagedType.U1)]  out bool homogeneousv);
+    public static Efl.Eo.FunctionWrapper<efl_ui_table_homogeneous_get_api_delegate> efl_ui_table_homogeneous_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_table_homogeneous_get_api_delegate>(_Module, "efl_ui_table_homogeneous_get");
+    private static  void homogeneous_get(System.IntPtr obj, System.IntPtr pd,  out bool homogeneoush,  out bool homogeneousv)
+   {
+      Eina.Log.Debug("function efl_ui_table_homogeneous_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           homogeneoush = default(bool);      homogeneousv = default(bool);                     
+         try {
+            ((Table)wrapper).GetHomogeneous( out homogeneoush,  out homogeneousv);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_table_homogeneous_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out homogeneoush,  out homogeneousv);
+      }
+   }
+   private static efl_ui_table_homogeneous_get_delegate efl_ui_table_homogeneous_get_static_delegate;
+
+
+    private delegate  void efl_ui_table_homogeneous_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool homogeneoush,  [MarshalAs(UnmanagedType.U1)]  bool homogeneousv);
+
+
+    public delegate  void efl_ui_table_homogeneous_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool homogeneoush,  [MarshalAs(UnmanagedType.U1)]  bool homogeneousv);
+    public static Efl.Eo.FunctionWrapper<efl_ui_table_homogeneous_set_api_delegate> efl_ui_table_homogeneous_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_table_homogeneous_set_api_delegate>(_Module, "efl_ui_table_homogeneous_set");
+    private static  void homogeneous_set(System.IntPtr obj, System.IntPtr pd,  bool homogeneoush,  bool homogeneousv)
+   {
+      Eina.Log.Debug("function efl_ui_table_homogeneous_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Table)wrapper).SetHomogeneous( homogeneoush,  homogeneousv);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_table_homogeneous_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  homogeneoush,  homogeneousv);
+      }
+   }
+   private static efl_ui_table_homogeneous_set_delegate efl_ui_table_homogeneous_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_content_iterate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_content_iterate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate> efl_content_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_content_iterate_api_delegate>(_Module, "efl_content_iterate");
+    private static  System.IntPtr content_iterate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Table)wrapper).ContentIterate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_content_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_iterate_delegate efl_content_iterate_static_delegate;
+
+
+    private delegate  int efl_content_count_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_content_count_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_count_api_delegate> efl_content_count_ptr = new Efl.Eo.FunctionWrapper<efl_content_count_api_delegate>(_Module, "efl_content_count");
+    private static  int content_count(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_count was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Table)wrapper).ContentCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_count_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_count_delegate efl_content_count_static_delegate;
+
+
+    private delegate  void efl_pack_align_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double align_horiz,   out double align_vert);
+
+
+    public delegate  void efl_pack_align_get_api_delegate(System.IntPtr obj,   out double align_horiz,   out double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate> efl_pack_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_get_api_delegate>(_Module, "efl_pack_align_get");
+    private static  void pack_align_get(System.IntPtr obj, System.IntPtr pd,  out double align_horiz,  out double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           align_horiz = default(double);      align_vert = default(double);                     
+         try {
+            ((Table)wrapper).GetPackAlign( out align_horiz,  out align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out align_horiz,  out align_vert);
+      }
+   }
+   private static efl_pack_align_get_delegate efl_pack_align_get_static_delegate;
+
+
+    private delegate  void efl_pack_align_set_delegate(System.IntPtr obj, System.IntPtr pd,   double align_horiz,   double align_vert);
+
+
+    public delegate  void efl_pack_align_set_api_delegate(System.IntPtr obj,   double align_horiz,   double align_vert);
+    public static Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate> efl_pack_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_align_set_api_delegate>(_Module, "efl_pack_align_set");
+    private static  void pack_align_set(System.IntPtr obj, System.IntPtr pd,  double align_horiz,  double align_vert)
+   {
+      Eina.Log.Debug("function efl_pack_align_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Table)wrapper).SetPackAlign( align_horiz,  align_vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  align_horiz,  align_vert);
+      }
+   }
+   private static efl_pack_align_set_delegate efl_pack_align_set_static_delegate;
+
+
+    private delegate  void efl_pack_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+
+
+    public delegate  void efl_pack_padding_get_api_delegate(System.IntPtr obj,   out double pad_horiz,   out double pad_vert,  [MarshalAs(UnmanagedType.U1)]  out bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate> efl_pack_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_get_api_delegate>(_Module, "efl_pack_padding_get");
+    private static  void pack_padding_get(System.IntPtr obj, System.IntPtr pd,  out double pad_horiz,  out double pad_vert,  out bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 pad_horiz = default(double);      pad_vert = default(double);      scalable = default(bool);                           
+         try {
+            ((Table)wrapper).GetPackPadding( out pad_horiz,  out pad_vert,  out scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pad_horiz,  out pad_vert,  out scalable);
+      }
+   }
+   private static efl_pack_padding_get_delegate efl_pack_padding_get_static_delegate;
+
+
+    private delegate  void efl_pack_padding_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+
+
+    public delegate  void efl_pack_padding_set_api_delegate(System.IntPtr obj,   double pad_horiz,   double pad_vert,  [MarshalAs(UnmanagedType.U1)]  bool scalable);
+    public static Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate> efl_pack_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_padding_set_api_delegate>(_Module, "efl_pack_padding_set");
+    private static  void pack_padding_set(System.IntPtr obj, System.IntPtr pd,  double pad_horiz,  double pad_vert,  bool scalable)
+   {
+      Eina.Log.Debug("function efl_pack_padding_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Table)wrapper).SetPackPadding( pad_horiz,  pad_vert,  scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_pack_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pad_horiz,  pad_vert,  scalable);
+      }
+   }
+   private static efl_pack_padding_set_delegate efl_pack_padding_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate> efl_pack_clear_ptr = new Efl.Eo.FunctionWrapper<efl_pack_clear_api_delegate>(_Module, "efl_pack_clear");
+    private static bool pack_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).ClearPack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_clear_delegate efl_pack_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_all_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_all_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate> efl_pack_unpack_all_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_all_api_delegate>(_Module, "efl_pack_unpack_all");
+    private static bool unpack_all(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_all was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).UnpackAll();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_unpack_all_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_unpack_all_delegate efl_pack_unpack_all_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_unpack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_unpack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate> efl_pack_unpack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_api_delegate>(_Module, "efl_pack_unpack");
+    private static bool unpack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_unpack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).Unpack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_unpack_delegate efl_pack_unpack_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_api_delegate> efl_pack_ptr = new Efl.Eo.FunctionWrapper<efl_pack_api_delegate>(_Module, "efl_pack");
+    private static bool pack(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).DoPack( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_delegate efl_pack_static_delegate;
+
+
+    private delegate  void efl_pack_layout_request_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_request_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate> efl_pack_layout_request_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_request_api_delegate>(_Module, "efl_pack_layout_request");
+    private static  void layout_request(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_request was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Table)wrapper).LayoutRequest();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_request_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_request_delegate efl_pack_layout_request_static_delegate;
+
+
+    private delegate  void efl_pack_layout_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_pack_layout_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate> efl_pack_layout_update_ptr = new Efl.Eo.FunctionWrapper<efl_pack_layout_update_api_delegate>(_Module, "efl_pack_layout_update");
+    private static  void layout_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_layout_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Table)wrapper).UpdateLayout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_pack_layout_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_layout_update_delegate efl_pack_layout_update_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_begin_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_begin_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate> efl_pack_begin_ptr = new Efl.Eo.FunctionWrapper<efl_pack_begin_api_delegate>(_Module, "efl_pack_begin");
+    private static bool pack_begin(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_begin was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).PackBegin( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_begin_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_begin_delegate efl_pack_begin_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_end_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_end_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate> efl_pack_end_ptr = new Efl.Eo.FunctionWrapper<efl_pack_end_api_delegate>(_Module, "efl_pack_end");
+    private static bool pack_end(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).PackEnd( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_end_delegate efl_pack_end_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_before_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_before_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate> efl_pack_before_ptr = new Efl.Eo.FunctionWrapper<efl_pack_before_api_delegate>(_Module, "efl_pack_before");
+    private static bool pack_before(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_before was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).PackBefore( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_before_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_before_delegate efl_pack_before_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_after_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_after_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity existing);
+    public static Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate> efl_pack_after_ptr = new Efl.Eo.FunctionWrapper<efl_pack_after_api_delegate>(_Module, "efl_pack_after");
+    private static bool pack_after(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  Efl.Gfx.Entity existing)
+   {
+      Eina.Log.Debug("function efl_pack_after was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).PackAfter( subobj,  existing);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_after_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  existing);
+      }
+   }
+   private static efl_pack_after_delegate efl_pack_after_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_at_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_at_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate> efl_pack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_at_api_delegate>(_Module, "efl_pack_at");
+    private static bool pack_at(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).PackAt( subobj,  index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  index);
+      }
+   }
+   private static efl_pack_at_delegate efl_pack_at_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_content_get_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate> efl_pack_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_content_get_api_delegate>(_Module, "efl_pack_content_get");
+    private static Efl.Gfx.Entity pack_content_get(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Table)wrapper).GetPackContent( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_content_get_delegate efl_pack_content_get_static_delegate;
+
+
+    private delegate  int efl_pack_index_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+
+
+    public delegate  int efl_pack_index_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate> efl_pack_index_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_index_get_api_delegate>(_Module, "efl_pack_index_get");
+    private static  int pack_index_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj)
+   {
+      Eina.Log.Debug("function efl_pack_index_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     int _ret_var = default( int);
+         try {
+            _ret_var = ((Table)wrapper).GetPackIndex( subobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_index_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj);
+      }
+   }
+   private static efl_pack_index_get_delegate efl_pack_index_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_unpack_at_delegate(System.IntPtr obj, System.IntPtr pd,    int index);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_unpack_at_api_delegate(System.IntPtr obj,    int index);
+    public static Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate> efl_pack_unpack_at_ptr = new Efl.Eo.FunctionWrapper<efl_pack_unpack_at_api_delegate>(_Module, "efl_pack_unpack_at");
+    private static Efl.Gfx.Entity pack_unpack_at(System.IntPtr obj, System.IntPtr pd,   int index)
+   {
+      Eina.Log.Debug("function efl_pack_unpack_at was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Table)wrapper).PackUnpackAt( index);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_pack_unpack_at_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  index);
+      }
+   }
+   private static efl_pack_unpack_at_delegate efl_pack_unpack_at_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_position_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_position_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,   out  int col,   out  int row,   out  int colspan,   out  int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate> efl_pack_table_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_position_get_api_delegate>(_Module, "efl_pack_table_position_get");
+    private static bool table_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,  out  int col,  out  int row,  out  int colspan,  out  int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                   col = default( int);      row = default( int);      colspan = default( int);      rowspan = default( int);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).GetTablePosition( subobj,  out col,  out row,  out colspan,  out rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  out col,  out row,  out colspan,  out rowspan);
+      }
+   }
+   private static efl_pack_table_position_get_delegate efl_pack_table_position_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int cols,   out  int rows);
+
+
+    public delegate  void efl_pack_table_size_get_api_delegate(System.IntPtr obj,   out  int cols,   out  int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate> efl_pack_table_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_get_api_delegate>(_Module, "efl_pack_table_size_get");
+    private static  void table_size_get(System.IntPtr obj, System.IntPtr pd,  out  int cols,  out  int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           cols = default( int);      rows = default( int);                     
+         try {
+            ((Table)wrapper).GetTableSize( out cols,  out rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cols,  out rows);
+      }
+   }
+   private static efl_pack_table_size_get_delegate efl_pack_table_size_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols,    int rows);
+
+
+    public delegate  void efl_pack_table_size_set_api_delegate(System.IntPtr obj,    int cols,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate> efl_pack_table_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_size_set_api_delegate>(_Module, "efl_pack_table_size_set");
+    private static  void table_size_set(System.IntPtr obj, System.IntPtr pd,   int cols,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Table)wrapper).SetTableSize( cols,  rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols,  rows);
+      }
+   }
+   private static efl_pack_table_size_set_delegate efl_pack_table_size_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_columns_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_columns_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate> efl_pack_table_columns_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_get_api_delegate>(_Module, "efl_pack_table_columns_get");
+    private static  int table_columns_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Table)wrapper).GetTableColumns();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_columns_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_columns_get_delegate efl_pack_table_columns_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_columns_set_delegate(System.IntPtr obj, System.IntPtr pd,    int cols);
+
+
+    public delegate  void efl_pack_table_columns_set_api_delegate(System.IntPtr obj,    int cols);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate> efl_pack_table_columns_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_columns_set_api_delegate>(_Module, "efl_pack_table_columns_set");
+    private static  void table_columns_set(System.IntPtr obj, System.IntPtr pd,   int cols)
+   {
+      Eina.Log.Debug("function efl_pack_table_columns_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Table)wrapper).SetTableColumns( cols);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_columns_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cols);
+      }
+   }
+   private static efl_pack_table_columns_set_delegate efl_pack_table_columns_set_static_delegate;
+
+
+    private delegate  int efl_pack_table_rows_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_pack_table_rows_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate> efl_pack_table_rows_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_get_api_delegate>(_Module, "efl_pack_table_rows_get");
+    private static  int table_rows_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Table)wrapper).GetTableRows();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_pack_table_rows_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_pack_table_rows_get_delegate efl_pack_table_rows_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_rows_set_delegate(System.IntPtr obj, System.IntPtr pd,    int rows);
+
+
+    public delegate  void efl_pack_table_rows_set_api_delegate(System.IntPtr obj,    int rows);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate> efl_pack_table_rows_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_rows_set_api_delegate>(_Module, "efl_pack_table_rows_set");
+    private static  void table_rows_set(System.IntPtr obj, System.IntPtr pd,   int rows)
+   {
+      Eina.Log.Debug("function efl_pack_table_rows_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Table)wrapper).SetTableRows( rows);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_pack_table_rows_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rows);
+      }
+   }
+   private static efl_pack_table_rows_set_delegate efl_pack_table_rows_set_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_get_api_delegate(System.IntPtr obj,   out Efl.Ui.Dir primary,   out Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate> efl_pack_table_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_get_api_delegate>(_Module, "efl_pack_table_direction_get");
+    private static  void table_direction_get(System.IntPtr obj, System.IntPtr pd,  out Efl.Ui.Dir primary,  out Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           primary = default(Efl.Ui.Dir);      secondary = default(Efl.Ui.Dir);                     
+         try {
+            ((Table)wrapper).GetTableDirection( out primary,  out secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out primary,  out secondary);
+      }
+   }
+   private static efl_pack_table_direction_get_delegate efl_pack_table_direction_get_static_delegate;
+
+
+    private delegate  void efl_pack_table_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+
+
+    public delegate  void efl_pack_table_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir primary,   Efl.Ui.Dir secondary);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate> efl_pack_table_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_direction_set_api_delegate>(_Module, "efl_pack_table_direction_set");
+    private static  void table_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir primary,  Efl.Ui.Dir secondary)
+   {
+      Eina.Log.Debug("function efl_pack_table_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Table)wrapper).SetTableDirection( primary,  secondary);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_pack_table_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  primary,  secondary);
+      }
+   }
+   private static efl_pack_table_direction_set_delegate efl_pack_table_direction_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_pack_table_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_pack_table_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity subobj,    int col,    int row,    int colspan,    int rowspan);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate> efl_pack_table_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_api_delegate>(_Module, "efl_pack_table");
+    private static bool pack_table(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity subobj,   int col,   int row,   int colspan,   int rowspan)
+   {
+      Eina.Log.Debug("function efl_pack_table was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Table)wrapper).PackTable( subobj,  col,  row,  colspan,  rowspan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_pack_table_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  subobj,  col,  row,  colspan,  rowspan);
+      }
+   }
+   private static efl_pack_table_delegate efl_pack_table_static_delegate;
+
+
+    private delegate  System.IntPtr efl_pack_table_contents_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+
+
+    public delegate  System.IntPtr efl_pack_table_contents_get_api_delegate(System.IntPtr obj,    int col,    int row,  [MarshalAs(UnmanagedType.U1)]  bool below);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate> efl_pack_table_contents_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_contents_get_api_delegate>(_Module, "efl_pack_table_contents_get");
+    private static  System.IntPtr table_contents_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row,  bool below)
+   {
+      Eina.Log.Debug("function efl_pack_table_contents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Table)wrapper).GetTableContents( col,  row,  below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_pack_table_contents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row,  below);
+      }
+   }
+   private static efl_pack_table_contents_get_delegate efl_pack_table_contents_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_pack_table_content_get_delegate(System.IntPtr obj, System.IntPtr pd,    int col,    int row);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_pack_table_content_get_api_delegate(System.IntPtr obj,    int col,    int row);
+    public static Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate> efl_pack_table_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_pack_table_content_get_api_delegate>(_Module, "efl_pack_table_content_get");
+    private static Efl.Gfx.Entity table_content_get(System.IntPtr obj, System.IntPtr pd,   int col,   int row)
+   {
+      Eina.Log.Debug("function efl_pack_table_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Table)wrapper).GetTableContent( col,  row);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_pack_table_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  col,  row);
+      }
+   }
+   private static efl_pack_table_content_get_delegate efl_pack_table_content_get_static_delegate;
+
+
+    private delegate Efl.Ui.Dir efl_ui_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Dir efl_ui_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate> efl_ui_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_get_api_delegate>(_Module, "efl_ui_direction_get");
+    private static Efl.Ui.Dir direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Dir _ret_var = default(Efl.Ui.Dir);
+         try {
+            _ret_var = ((Table)wrapper).GetDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_direction_get_delegate efl_ui_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Dir dir);
+
+
+    public delegate  void efl_ui_direction_set_api_delegate(System.IntPtr obj,   Efl.Ui.Dir dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate> efl_ui_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_direction_set_api_delegate>(_Module, "efl_ui_direction_set");
+    private static  void direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Dir dir)
+   {
+      Eina.Log.Debug("function efl_ui_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Table)wrapper).SetDirection( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_direction_set_delegate efl_ui_direction_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_table_static.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_table_static.eo.cs
new file mode 100755 (executable)
index 0000000..1b08258
--- /dev/null
@@ -0,0 +1,94 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI table static class</summary>
+[TableStaticNativeInherit]
+public class TableStatic : Efl.Ui.Table, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TableStaticNativeInherit nativeInherit = new Efl.Ui.TableStaticNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TableStatic))
+            return Efl.Ui.TableStaticNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_table_static_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TableStatic(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_table_static_class_get(), typeof(TableStatic), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TableStatic(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TableStatic(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TableStatic static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TableStatic(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TableStatic.efl_ui_table_static_class_get();
+   }
+}
+public class TableStaticNativeInherit : Efl.Ui.TableNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TableStatic.efl_ui_table_static_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TableStatic.efl_ui_table_static_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_tags.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_tags.eo.cs
new file mode 100755 (executable)
index 0000000..9263a85
--- /dev/null
@@ -0,0 +1,918 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Tags.ItemSelectedEvt"/>.</summary>
+public class TagsItemSelectedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Tags.ItemAddedEvt"/>.</summary>
+public class TagsItemAddedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Tags.ItemDeletedEvt"/>.</summary>
+public class TagsItemDeletedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Tags.ItemClickedEvt"/>.</summary>
+public class TagsItemClickedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Tags.ItemLongpressedEvt"/>.</summary>
+public class TagsItemLongpressedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  System.String arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Tags.ExpandStateChangedEvt"/>.</summary>
+public class TagsExpandStateChangedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public  int arg { get; set; }
+}
+/// <summary>A widget displaying a list of tags. The user can remove tags by clicking on each tag &quot;close&quot; button and add new tags by typing text in the text entry at the end of the list.</summary>
+[TagsNativeInherit]
+public class Tags : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Text,Efl.Ui.Format
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TagsNativeInherit nativeInherit = new Efl.Ui.TagsNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Tags))
+            return Efl.Ui.TagsNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_tags_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Tags(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_tags_class_get(), typeof(Tags), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Tags(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Tags(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Tags static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Tags(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ItemSelectedEvtKey = new object();
+   /// <summary>Called when item was selected</summary>
+   public event EventHandler<Efl.Ui.TagsItemSelectedEvt_Args> ItemSelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemSelectedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemSelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_ItemSelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemSelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemSelectedEvt.</summary>
+   public void On_ItemSelectedEvt(Efl.Ui.TagsItemSelectedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TagsItemSelectedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TagsItemSelectedEvt_Args>)eventHandlers[ItemSelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemSelectedEvt_delegate;
+   private void on_ItemSelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TagsItemSelectedEvt_Args args = new Efl.Ui.TagsItemSelectedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_ItemSelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemAddedEvtKey = new object();
+   /// <summary>Called when item was added</summary>
+   public event EventHandler<Efl.Ui.TagsItemAddedEvt_Args> ItemAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemAddedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_ItemAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemAddedEvt.</summary>
+   public void On_ItemAddedEvt(Efl.Ui.TagsItemAddedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TagsItemAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TagsItemAddedEvt_Args>)eventHandlers[ItemAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemAddedEvt_delegate;
+   private void on_ItemAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TagsItemAddedEvt_Args args = new Efl.Ui.TagsItemAddedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_ItemAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemDeletedEvtKey = new object();
+   /// <summary>Called when item was deleted</summary>
+   public event EventHandler<Efl.Ui.TagsItemDeletedEvt_Args> ItemDeletedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_DELETED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemDeletedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemDeletedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_DELETED";
+            if (remove_cpp_event_handler(key, this.evt_ItemDeletedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemDeletedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemDeletedEvt.</summary>
+   public void On_ItemDeletedEvt(Efl.Ui.TagsItemDeletedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TagsItemDeletedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TagsItemDeletedEvt_Args>)eventHandlers[ItemDeletedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemDeletedEvt_delegate;
+   private void on_ItemDeletedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TagsItemDeletedEvt_Args args = new Efl.Ui.TagsItemDeletedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_ItemDeletedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemClickedEvtKey = new object();
+   /// <summary>Called when item was clicked</summary>
+   public event EventHandler<Efl.Ui.TagsItemClickedEvt_Args> ItemClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ItemClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemClickedEvt.</summary>
+   public void On_ItemClickedEvt(Efl.Ui.TagsItemClickedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TagsItemClickedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TagsItemClickedEvt_Args>)eventHandlers[ItemClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemClickedEvt_delegate;
+   private void on_ItemClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TagsItemClickedEvt_Args args = new Efl.Ui.TagsItemClickedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_ItemClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ItemLongpressedEvtKey = new object();
+   /// <summary>Called when item got a longpress</summary>
+   public event EventHandler<Efl.Ui.TagsItemLongpressedEvt_Args> ItemLongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ItemLongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(ItemLongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_ITEM_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_ItemLongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ItemLongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ItemLongpressedEvt.</summary>
+   public void On_ItemLongpressedEvt(Efl.Ui.TagsItemLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TagsItemLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TagsItemLongpressedEvt_Args>)eventHandlers[ItemLongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ItemLongpressedEvt_delegate;
+   private void on_ItemLongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TagsItemLongpressedEvt_Args args = new Efl.Ui.TagsItemLongpressedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_ItemLongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ExpandedEvtKey = new object();
+   /// <summary>Called when expanded</summary>
+   public event EventHandler ExpandedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_EXPANDED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ExpandedEvt_delegate)) {
+               eventHandlers.AddHandler(ExpandedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_EXPANDED";
+            if (remove_cpp_event_handler(key, this.evt_ExpandedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ExpandedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ExpandedEvt.</summary>
+   public void On_ExpandedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ExpandedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ExpandedEvt_delegate;
+   private void on_ExpandedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ExpandedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContractedEvtKey = new object();
+   /// <summary>Called when contracted</summary>
+   public event EventHandler ContractedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_CONTRACTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ContractedEvt_delegate)) {
+               eventHandlers.AddHandler(ContractedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_CONTRACTED";
+            if (remove_cpp_event_handler(key, this.evt_ContractedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContractedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContractedEvt.</summary>
+   public void On_ContractedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ContractedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContractedEvt_delegate;
+   private void on_ContractedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ContractedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ExpandStateChangedEvtKey = new object();
+   /// <summary>Called when expanded state changed</summary>
+   public event EventHandler<Efl.Ui.TagsExpandStateChangedEvt_Args> ExpandStateChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_EXPAND_STATE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ExpandStateChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ExpandStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TAGS_EVENT_EXPAND_STATE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ExpandStateChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ExpandStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ExpandStateChangedEvt.</summary>
+   public void On_ExpandStateChangedEvt(Efl.Ui.TagsExpandStateChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TagsExpandStateChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TagsExpandStateChangedEvt_Args>)eventHandlers[ExpandStateChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ExpandStateChangedEvt_delegate;
+   private void on_ExpandStateChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TagsExpandStateChangedEvt_Args args = new Efl.Ui.TagsExpandStateChangedEvt_Args();
+      args.arg = evt.Info.ToInt32();
+      try {
+         On_ExpandStateChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ItemSelectedEvt_delegate = new Efl.EventCb(on_ItemSelectedEvt_NativeCallback);
+      evt_ItemAddedEvt_delegate = new Efl.EventCb(on_ItemAddedEvt_NativeCallback);
+      evt_ItemDeletedEvt_delegate = new Efl.EventCb(on_ItemDeletedEvt_NativeCallback);
+      evt_ItemClickedEvt_delegate = new Efl.EventCb(on_ItemClickedEvt_NativeCallback);
+      evt_ItemLongpressedEvt_delegate = new Efl.EventCb(on_ItemLongpressedEvt_NativeCallback);
+      evt_ExpandedEvt_delegate = new Efl.EventCb(on_ExpandedEvt_NativeCallback);
+      evt_ContractedEvt_delegate = new Efl.EventCb(on_ContractedEvt_NativeCallback);
+      evt_ExpandStateChangedEvt_delegate = new Efl.EventCb(on_ExpandStateChangedEvt_NativeCallback);
+   }
+   /// <summary>Control if the tag list is to be editable by the user or not.</summary>
+   /// <returns>If <c>true</c>, the user can add/delete tags to the tag list, if not, the tag list is non-editable.</returns>
+   virtual public bool GetEditable() {
+       var _ret_var = Efl.Ui.TagsNativeInherit.efl_ui_tags_editable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control if the tag list is to be editable by the user or not.</summary>
+   /// <param name="editable">If <c>true</c>, the user can add/delete tags to the tag list, if not, the tag list is non-editable.</param>
+   /// <returns></returns>
+   virtual public  void SetEditable( bool editable) {
+                         Efl.Ui.TagsNativeInherit.efl_ui_tags_editable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), editable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control whether the tag list is expanded or not.
+   /// In the expanded state, all tags will be displayed. Otherwise, only a single line of tags will be displayed with a marker to indicate that there is more content.</summary>
+   /// <returns>The expanded state. Set this to <c>true</c> to allow multiple lines of tags. Set to <c>false</c> for a single line.</returns>
+   virtual public bool GetExpanded() {
+       var _ret_var = Efl.Ui.TagsNativeInherit.efl_ui_tags_expanded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control whether the tag list is expanded or not.
+   /// In the expanded state, all tags will be displayed. Otherwise, only a single line of tags will be displayed with a marker to indicate that there is more content.</summary>
+   /// <param name="expanded">The expanded state. Set this to <c>true</c> to allow multiple lines of tags. Set to <c>false</c> for a single line.</param>
+   /// <returns></returns>
+   virtual public  void SetExpanded( bool expanded) {
+                         Efl.Ui.TagsNativeInherit.efl_ui_tags_expanded_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), expanded);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>List of tags in the tag list. Tags can be added and removed by the user using the UI, and by the program by modifying this property.</summary>
+   /// <returns>The array of items, or NULL if none.</returns>
+   virtual public Eina.Array< System.String> GetItems() {
+       var _ret_var = Efl.Ui.TagsNativeInherit.efl_ui_tags_items_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Array< System.String>(_ret_var, false, false);
+ }
+   /// <summary>List of tags in the tag list. Tags can be added and removed by the user using the UI, and by the program by modifying this property.</summary>
+   /// <param name="items">The array of items, or NULL if none.</param>
+   /// <returns></returns>
+   virtual public  void SetItems( Eina.Array< System.String> items) {
+       var _in_items = items.Handle;
+                  Efl.Ui.TagsNativeInherit.efl_ui_tags_items_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_items);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+   /// <param name="func">The format function callback</param>
+   /// <returns></returns>
+   virtual public  void SetFormatCb( Efl.Ui.FormatFuncCb func) {
+                   GCHandle func_handle = GCHandle.Alloc(func);
+      Efl.Ui.FormatNativeInherit.efl_ui_format_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle),GCHandle.ToIntPtr(func_handle), Efl.Ui.FormatFuncCbWrapper.Cb, Efl.Eo.Globals.free_gchandle);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <returns>The format string for <c>obj</c>&apos;s units label.</returns>
+   virtual public  System.String GetFormatString() {
+       var _ret_var = Efl.Ui.FormatNativeInherit.efl_ui_format_string_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the format string for a given units label
+   /// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+   /// 
+   /// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+   /// <param name="units">The format string for <c>obj</c>&apos;s units label.</param>
+   /// <returns></returns>
+   virtual public  void SetFormatString(  System.String units) {
+                         Efl.Ui.FormatNativeInherit.efl_ui_format_string_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), units);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control if the tag list is to be editable by the user or not.</summary>
+/// <value>If <c>true</c>, the user can add/delete tags to the tag list, if not, the tag list is non-editable.</value>
+   public bool Editable {
+      get { return GetEditable(); }
+      set { SetEditable( value); }
+   }
+   /// <summary>Control whether the tag list is expanded or not.
+/// In the expanded state, all tags will be displayed. Otherwise, only a single line of tags will be displayed with a marker to indicate that there is more content.</summary>
+/// <value>The expanded state. Set this to <c>true</c> to allow multiple lines of tags. Set to <c>false</c> for a single line.</value>
+   public bool Expanded {
+      get { return GetExpanded(); }
+      set { SetExpanded( value); }
+   }
+   /// <summary>List of tags in the tag list. Tags can be added and removed by the user using the UI, and by the program by modifying this property.</summary>
+/// <value>The array of items, or NULL if none.</value>
+   public Eina.Array< System.String> Items {
+      get { return GetItems(); }
+      set { SetItems( value); }
+   }
+   /// <summary>Set the format function pointer to format the string.</summary>
+/// <value>The format function callback</value>
+   public Efl.Ui.FormatFuncCb FormatCb {
+      set { SetFormatCb( value); }
+   }
+   /// <summary>Control the format string for a given units label
+/// If <c>NULL</c> is passed to <c>format</c>, it will hide <c>obj</c>&apos;s units area completely. If not, it&apos;ll set the &lt;b&gt;format string&lt;/b&gt; for the units label text. The units label is provided as a floating point value, so the units text can display at most one floating point value. Note that the units label is optional. Use a format string such as &quot;%1.2f meters&quot; for example.
+/// 
+/// Note: The default format string is an integer percentage, as in $&quot;%.0f %%&quot;.</summary>
+/// <value>The format string for <c>obj</c>&apos;s units label.</value>
+   public  System.String FormatString {
+      get { return GetFormatString(); }
+      set { SetFormatString( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Tags.efl_ui_tags_class_get();
+   }
+}
+public class TagsNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_tags_editable_get_static_delegate == null)
+      efl_ui_tags_editable_get_static_delegate = new efl_ui_tags_editable_get_delegate(editable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tags_editable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tags_editable_get_static_delegate)});
+      if (efl_ui_tags_editable_set_static_delegate == null)
+      efl_ui_tags_editable_set_static_delegate = new efl_ui_tags_editable_set_delegate(editable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tags_editable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tags_editable_set_static_delegate)});
+      if (efl_ui_tags_expanded_get_static_delegate == null)
+      efl_ui_tags_expanded_get_static_delegate = new efl_ui_tags_expanded_get_delegate(expanded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tags_expanded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tags_expanded_get_static_delegate)});
+      if (efl_ui_tags_expanded_set_static_delegate == null)
+      efl_ui_tags_expanded_set_static_delegate = new efl_ui_tags_expanded_set_delegate(expanded_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tags_expanded_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tags_expanded_set_static_delegate)});
+      if (efl_ui_tags_items_get_static_delegate == null)
+      efl_ui_tags_items_get_static_delegate = new efl_ui_tags_items_get_delegate(items_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tags_items_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tags_items_get_static_delegate)});
+      if (efl_ui_tags_items_set_static_delegate == null)
+      efl_ui_tags_items_set_static_delegate = new efl_ui_tags_items_set_delegate(items_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_tags_items_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_tags_items_set_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_ui_format_cb_set_static_delegate == null)
+      efl_ui_format_cb_set_static_delegate = new efl_ui_format_cb_set_delegate(format_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_cb_set_static_delegate)});
+      if (efl_ui_format_string_get_static_delegate == null)
+      efl_ui_format_string_get_static_delegate = new efl_ui_format_string_get_delegate(format_string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_get_static_delegate)});
+      if (efl_ui_format_string_set_static_delegate == null)
+      efl_ui_format_string_set_static_delegate = new efl_ui_format_string_set_delegate(format_string_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_format_string_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_format_string_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Tags.efl_ui_tags_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Tags.efl_ui_tags_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_tags_editable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_tags_editable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tags_editable_get_api_delegate> efl_ui_tags_editable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tags_editable_get_api_delegate>(_Module, "efl_ui_tags_editable_get");
+    private static bool editable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_tags_editable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Tags)wrapper).GetEditable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_tags_editable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_tags_editable_get_delegate efl_ui_tags_editable_get_static_delegate;
+
+
+    private delegate  void efl_ui_tags_editable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+
+
+    public delegate  void efl_ui_tags_editable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tags_editable_set_api_delegate> efl_ui_tags_editable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tags_editable_set_api_delegate>(_Module, "efl_ui_tags_editable_set");
+    private static  void editable_set(System.IntPtr obj, System.IntPtr pd,  bool editable)
+   {
+      Eina.Log.Debug("function efl_ui_tags_editable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Tags)wrapper).SetEditable( editable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_tags_editable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  editable);
+      }
+   }
+   private static efl_ui_tags_editable_set_delegate efl_ui_tags_editable_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_tags_expanded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_tags_expanded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tags_expanded_get_api_delegate> efl_ui_tags_expanded_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tags_expanded_get_api_delegate>(_Module, "efl_ui_tags_expanded_get");
+    private static bool expanded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_tags_expanded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Tags)wrapper).GetExpanded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_tags_expanded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_tags_expanded_get_delegate efl_ui_tags_expanded_get_static_delegate;
+
+
+    private delegate  void efl_ui_tags_expanded_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool expanded);
+
+
+    public delegate  void efl_ui_tags_expanded_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool expanded);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tags_expanded_set_api_delegate> efl_ui_tags_expanded_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tags_expanded_set_api_delegate>(_Module, "efl_ui_tags_expanded_set");
+    private static  void expanded_set(System.IntPtr obj, System.IntPtr pd,  bool expanded)
+   {
+      Eina.Log.Debug("function efl_ui_tags_expanded_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Tags)wrapper).SetExpanded( expanded);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_tags_expanded_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  expanded);
+      }
+   }
+   private static efl_ui_tags_expanded_set_delegate efl_ui_tags_expanded_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_tags_items_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_tags_items_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tags_items_get_api_delegate> efl_ui_tags_items_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tags_items_get_api_delegate>(_Module, "efl_ui_tags_items_get");
+    private static  System.IntPtr items_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_tags_items_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Array< System.String> _ret_var = default(Eina.Array< System.String>);
+         try {
+            _ret_var = ((Tags)wrapper).GetItems();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_tags_items_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_tags_items_get_delegate efl_ui_tags_items_get_static_delegate;
+
+
+    private delegate  void efl_ui_tags_items_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr items);
+
+
+    public delegate  void efl_ui_tags_items_set_api_delegate(System.IntPtr obj,    System.IntPtr items);
+    public static Efl.Eo.FunctionWrapper<efl_ui_tags_items_set_api_delegate> efl_ui_tags_items_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_tags_items_set_api_delegate>(_Module, "efl_ui_tags_items_set");
+    private static  void items_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr items)
+   {
+      Eina.Log.Debug("function efl_ui_tags_items_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_items = new Eina.Array< System.String>(items, false, false);
+                     
+         try {
+            ((Tags)wrapper).SetItems( _in_items);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_tags_items_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  items);
+      }
+   }
+   private static efl_ui_tags_items_set_delegate efl_ui_tags_items_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Tags)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Tags)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    private delegate  void efl_ui_format_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+
+
+    public delegate  void efl_ui_format_cb_set_api_delegate(System.IntPtr obj,  IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate> efl_ui_format_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_cb_set_api_delegate>(_Module, "efl_ui_format_cb_set");
+    private static  void format_cb_set(System.IntPtr obj, System.IntPtr pd, IntPtr func_data, Efl.Ui.FormatFuncCbInternal func, EinaFreeCb func_free_cb)
+   {
+      Eina.Log.Debug("function efl_ui_format_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                              Efl.Ui.FormatFuncCbWrapper func_wrapper = new Efl.Ui.FormatFuncCbWrapper(func, func_data, func_free_cb);
+         
+         try {
+            ((Tags)wrapper).SetFormatCb( func_wrapper.ManagedCb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), func_data, func, func_free_cb);
+      }
+   }
+   private static efl_ui_format_cb_set_delegate efl_ui_format_cb_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_format_string_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_format_string_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate> efl_ui_format_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_get_api_delegate>(_Module, "efl_ui_format_string_get");
+    private static  System.String format_string_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Tags)wrapper).GetFormatString();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_format_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_format_string_get_delegate efl_ui_format_string_get_static_delegate;
+
+
+    private delegate  void efl_ui_format_string_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+
+
+    public delegate  void efl_ui_format_string_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String units);
+    public static Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate> efl_ui_format_string_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_format_string_set_api_delegate>(_Module, "efl_ui_format_string_set");
+    private static  void format_string_set(System.IntPtr obj, System.IntPtr pd,   System.String units)
+   {
+      Eina.Log.Debug("function efl_ui_format_string_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Tags)wrapper).SetFormatString( units);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_format_string_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  units);
+      }
+   }
+   private static efl_ui_format_string_set_delegate efl_ui_format_string_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text.eo.cs
new file mode 100755 (executable)
index 0000000..ae1a3d3
--- /dev/null
@@ -0,0 +1,8130 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Text.ChangedUserEvt"/>.</summary>
+public class TextChangedUserEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Efl.Ui.TextChangeInfo arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Text.ValidateEvt"/>.</summary>
+public class TextValidateEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.ValidateContent arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Text.AnchorDownEvt"/>.</summary>
+public class TextAnchorDownEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.EntryAnchorInfo arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Text.AnchorHoverOpenedEvt"/>.</summary>
+public class TextAnchorHoverOpenedEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.EntryAnchorHoverInfo arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Text.AnchorInEvt"/>.</summary>
+public class TextAnchorInEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.EntryAnchorInfo arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Text.AnchorOutEvt"/>.</summary>
+public class TextAnchorOutEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.EntryAnchorInfo arg { get; set; }
+}
+///<summary>Event argument wrapper for event <see cref="Efl.Ui.Text.AnchorUpEvt"/>.</summary>
+public class TextAnchorUpEvt_Args : EventArgs {
+   ///<summary>Actual event payload.</summary>
+   public Elm.EntryAnchorInfo arg { get; set; }
+}
+/// <summary>Efl UI text class</summary>
+[TextNativeInherit]
+public class Text : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.File,Efl.Text,Efl.TextFont,Efl.TextFormat,Efl.TextInteractive,Efl.TextStyle,Efl.Access.Text,Efl.Access.Editable.Text,Efl.Ui.Clickable,Efl.Ui.Selectable
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextNativeInherit nativeInherit = new Efl.Ui.TextNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Text))
+            return Efl.Ui.TextNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Text(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_text_class_get(), typeof(Text), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Text(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Text(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Text static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Text(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when entry changes</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChangedUserEvtKey = new object();
+   /// <summary>The text object has changed due to user interaction</summary>
+   public event EventHandler<Efl.Ui.TextChangedUserEvt_Args> ChangedUserEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CHANGED_USER";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedUserEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedUserEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CHANGED_USER";
+            if (remove_cpp_event_handler(key, this.evt_ChangedUserEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedUserEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedUserEvt.</summary>
+   public void On_ChangedUserEvt(Efl.Ui.TextChangedUserEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TextChangedUserEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TextChangedUserEvt_Args>)eventHandlers[ChangedUserEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedUserEvt_delegate;
+   private void on_ChangedUserEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TextChangedUserEvt_Args args = new Efl.Ui.TextChangedUserEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChangedUserEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ValidateEvtKey = new object();
+   /// <summary>Called when validating</summary>
+   public event EventHandler<Efl.Ui.TextValidateEvt_Args> ValidateEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_VALIDATE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ValidateEvt_delegate)) {
+               eventHandlers.AddHandler(ValidateEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_VALIDATE";
+            if (remove_cpp_event_handler(key, this.evt_ValidateEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ValidateEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ValidateEvt.</summary>
+   public void On_ValidateEvt(Efl.Ui.TextValidateEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TextValidateEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TextValidateEvt_Args>)eventHandlers[ValidateEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ValidateEvt_delegate;
+   private void on_ValidateEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TextValidateEvt_Args args = new Efl.Ui.TextValidateEvt_Args();
+      args.arg = default(Elm.ValidateContent);
+      try {
+         On_ValidateEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContextOpenEvtKey = new object();
+   /// <summary>Called when context menu was opened</summary>
+   public event EventHandler ContextOpenEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CONTEXT_OPEN";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ContextOpenEvt_delegate)) {
+               eventHandlers.AddHandler(ContextOpenEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CONTEXT_OPEN";
+            if (remove_cpp_event_handler(key, this.evt_ContextOpenEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContextOpenEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContextOpenEvt.</summary>
+   public void On_ContextOpenEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ContextOpenEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContextOpenEvt_delegate;
+   private void on_ContextOpenEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ContextOpenEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PreeditChangedEvtKey = new object();
+   /// <summary>Called when entry preedit changed</summary>
+   public event EventHandler PreeditChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_PREEDIT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PreeditChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PreeditChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_PREEDIT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PreeditChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PreeditChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PreeditChangedEvt.</summary>
+   public void On_PreeditChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PreeditChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PreeditChangedEvt_delegate;
+   private void on_PreeditChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PreeditChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressEvtKey = new object();
+   /// <summary>Called when entry pressed</summary>
+   public event EventHandler PressEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_PRESS";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PressEvt_delegate)) {
+               eventHandlers.AddHandler(PressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_PRESS";
+            if (remove_cpp_event_handler(key, this.evt_PressEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressEvt.</summary>
+   public void On_PressEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PressEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressEvt_delegate;
+   private void on_PressEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PressEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RedoRequestEvtKey = new object();
+   /// <summary>Called when redo is requested</summary>
+   public event EventHandler RedoRequestEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_REDO_REQUEST";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedoRequestEvt_delegate)) {
+               eventHandlers.AddHandler(RedoRequestEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_REDO_REQUEST";
+            if (remove_cpp_event_handler(key, this.evt_RedoRequestEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedoRequestEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedoRequestEvt.</summary>
+   public void On_RedoRequestEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RedoRequestEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedoRequestEvt_delegate;
+   private void on_RedoRequestEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RedoRequestEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UndoRequestEvtKey = new object();
+   /// <summary>Called when undo is requested</summary>
+   public event EventHandler UndoRequestEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_UNDO_REQUEST";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_UndoRequestEvt_delegate)) {
+               eventHandlers.AddHandler(UndoRequestEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_UNDO_REQUEST";
+            if (remove_cpp_event_handler(key, this.evt_UndoRequestEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UndoRequestEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UndoRequestEvt.</summary>
+   public void On_UndoRequestEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UndoRequestEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UndoRequestEvt_delegate;
+   private void on_UndoRequestEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UndoRequestEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AbortedEvtKey = new object();
+   /// <summary>Called when entry is aborted</summary>
+   public event EventHandler AbortedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ABORTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AbortedEvt_delegate)) {
+               eventHandlers.AddHandler(AbortedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ABORTED";
+            if (remove_cpp_event_handler(key, this.evt_AbortedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AbortedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AbortedEvt.</summary>
+   public void On_AbortedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AbortedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AbortedEvt_delegate;
+   private void on_AbortedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AbortedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AnchorDownEvtKey = new object();
+   /// <summary>Called on anchor down</summary>
+   public event EventHandler<Efl.Ui.TextAnchorDownEvt_Args> AnchorDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AnchorDownEvt_delegate)) {
+               eventHandlers.AddHandler(AnchorDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_AnchorDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnchorDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnchorDownEvt.</summary>
+   public void On_AnchorDownEvt(Efl.Ui.TextAnchorDownEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TextAnchorDownEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TextAnchorDownEvt_Args>)eventHandlers[AnchorDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnchorDownEvt_delegate;
+   private void on_AnchorDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TextAnchorDownEvt_Args args = new Efl.Ui.TextAnchorDownEvt_Args();
+      args.arg = default(Elm.EntryAnchorInfo);
+      try {
+         On_AnchorDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AnchorHoverOpenedEvtKey = new object();
+   /// <summary>Called when hover opened</summary>
+   public event EventHandler<Efl.Ui.TextAnchorHoverOpenedEvt_Args> AnchorHoverOpenedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_HOVER_OPENED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AnchorHoverOpenedEvt_delegate)) {
+               eventHandlers.AddHandler(AnchorHoverOpenedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_HOVER_OPENED";
+            if (remove_cpp_event_handler(key, this.evt_AnchorHoverOpenedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnchorHoverOpenedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnchorHoverOpenedEvt.</summary>
+   public void On_AnchorHoverOpenedEvt(Efl.Ui.TextAnchorHoverOpenedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TextAnchorHoverOpenedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TextAnchorHoverOpenedEvt_Args>)eventHandlers[AnchorHoverOpenedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnchorHoverOpenedEvt_delegate;
+   private void on_AnchorHoverOpenedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TextAnchorHoverOpenedEvt_Args args = new Efl.Ui.TextAnchorHoverOpenedEvt_Args();
+      args.arg = default(Elm.EntryAnchorHoverInfo);
+      try {
+         On_AnchorHoverOpenedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AnchorInEvtKey = new object();
+   /// <summary>Called on anchor in</summary>
+   public event EventHandler<Efl.Ui.TextAnchorInEvt_Args> AnchorInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_IN";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AnchorInEvt_delegate)) {
+               eventHandlers.AddHandler(AnchorInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_IN";
+            if (remove_cpp_event_handler(key, this.evt_AnchorInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnchorInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnchorInEvt.</summary>
+   public void On_AnchorInEvt(Efl.Ui.TextAnchorInEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TextAnchorInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TextAnchorInEvt_Args>)eventHandlers[AnchorInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnchorInEvt_delegate;
+   private void on_AnchorInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TextAnchorInEvt_Args args = new Efl.Ui.TextAnchorInEvt_Args();
+      args.arg = default(Elm.EntryAnchorInfo);
+      try {
+         On_AnchorInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AnchorOutEvtKey = new object();
+   /// <summary>Called on anchor out</summary>
+   public event EventHandler<Efl.Ui.TextAnchorOutEvt_Args> AnchorOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_OUT";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AnchorOutEvt_delegate)) {
+               eventHandlers.AddHandler(AnchorOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_OUT";
+            if (remove_cpp_event_handler(key, this.evt_AnchorOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnchorOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnchorOutEvt.</summary>
+   public void On_AnchorOutEvt(Efl.Ui.TextAnchorOutEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TextAnchorOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TextAnchorOutEvt_Args>)eventHandlers[AnchorOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnchorOutEvt_delegate;
+   private void on_AnchorOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TextAnchorOutEvt_Args args = new Efl.Ui.TextAnchorOutEvt_Args();
+      args.arg = default(Elm.EntryAnchorInfo);
+      try {
+         On_AnchorOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AnchorUpEvtKey = new object();
+   /// <summary>called on anchor up</summary>
+   public event EventHandler<Efl.Ui.TextAnchorUpEvt_Args> AnchorUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_UP";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AnchorUpEvt_delegate)) {
+               eventHandlers.AddHandler(AnchorUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_ANCHOR_UP";
+            if (remove_cpp_event_handler(key, this.evt_AnchorUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AnchorUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AnchorUpEvt.</summary>
+   public void On_AnchorUpEvt(Efl.Ui.TextAnchorUpEvt_Args e)
+   {
+      EventHandler<Efl.Ui.TextAnchorUpEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.TextAnchorUpEvt_Args>)eventHandlers[AnchorUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AnchorUpEvt_delegate;
+   private void on_AnchorUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.TextAnchorUpEvt_Args args = new Efl.Ui.TextAnchorUpEvt_Args();
+      args.arg = default(Elm.EntryAnchorInfo);
+      try {
+         On_AnchorUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CursorChangedManualEvtKey = new object();
+   /// <summary>Called on manual cursor change</summary>
+   public event EventHandler CursorChangedManualEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CURSOR_CHANGED_MANUAL";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CursorChangedManualEvt_delegate)) {
+               eventHandlers.AddHandler(CursorChangedManualEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TEXT_EVENT_CURSOR_CHANGED_MANUAL";
+            if (remove_cpp_event_handler(key, this.evt_CursorChangedManualEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CursorChangedManualEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CursorChangedManualEvt.</summary>
+   public void On_CursorChangedManualEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CursorChangedManualEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CursorChangedManualEvt_delegate;
+   private void on_CursorChangedManualEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CursorChangedManualEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_TextInteractive_SelectionChangedEvtKey = new object();
+   /// <summary>The selection on the object has changed. Query using <see cref="Efl.TextInteractive.GetSelectionCursors"/></summary>
+    event EventHandler Efl.TextInteractive.SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_TEXT_INTERACTIVE_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Efl_TextInteractive_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_TextInteractive_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_TEXT_INTERACTIVE_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_TextInteractive_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_TextInteractive_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_TextInteractive_SelectionChangedEvt.</summary>
+   public void On_Efl_TextInteractive_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Efl_TextInteractive_SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_TextInteractive_SelectionChangedEvt_delegate;
+   private void on_Efl_TextInteractive_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Efl_TextInteractive_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessTextCaretMovedEvtKey = new object();
+   /// <summary>Caret moved</summary>
+   public event EventHandler AccessTextCaretMovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextCaretMovedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextCaretMovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_CARET_MOVED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextCaretMovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextCaretMovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextCaretMovedEvt.</summary>
+   public void On_AccessTextCaretMovedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AccessTextCaretMovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextCaretMovedEvt_delegate;
+   private void on_AccessTextCaretMovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AccessTextCaretMovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessTextInsertedEvtKey = new object();
+   /// <summary>Text was inserted</summary>
+   public event EventHandler<Efl.Access.TextAccessTextInsertedEvt_Args> AccessTextInsertedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_INSERTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextInsertedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextInsertedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_INSERTED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextInsertedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextInsertedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextInsertedEvt.</summary>
+   public void On_AccessTextInsertedEvt(Efl.Access.TextAccessTextInsertedEvt_Args e)
+   {
+      EventHandler<Efl.Access.TextAccessTextInsertedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.TextAccessTextInsertedEvt_Args>)eventHandlers[AccessTextInsertedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextInsertedEvt_delegate;
+   private void on_AccessTextInsertedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.TextAccessTextInsertedEvt_Args args = new Efl.Access.TextAccessTextInsertedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_AccessTextInsertedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessTextRemovedEvtKey = new object();
+   /// <summary>Text was removed</summary>
+   public event EventHandler<Efl.Access.TextAccessTextRemovedEvt_Args> AccessTextRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextRemovedEvt.</summary>
+   public void On_AccessTextRemovedEvt(Efl.Access.TextAccessTextRemovedEvt_Args e)
+   {
+      EventHandler<Efl.Access.TextAccessTextRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.TextAccessTextRemovedEvt_Args>)eventHandlers[AccessTextRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextRemovedEvt_delegate;
+   private void on_AccessTextRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.TextAccessTextRemovedEvt_Args args = new Efl.Access.TextAccessTextRemovedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_AccessTextRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessTextSelectionChangedEvtKey = new object();
+   /// <summary>Text selection has changed</summary>
+   public event EventHandler AccessTextSelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessTextSelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessTextSelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_TEXT_EVENT_ACCESS_TEXT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_AccessTextSelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessTextSelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessTextSelectionChangedEvt.</summary>
+   public void On_AccessTextSelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AccessTextSelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessTextSelectionChangedEvt_delegate;
+   private void on_AccessTextSelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AccessTextSelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedEvtKey = new object();
+   /// <summary>Called when object is clicked</summary>
+   public event EventHandler ClickedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED";
+            if (remove_cpp_event_handler(key, this.evt_ClickedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedEvt.</summary>
+   public void On_ClickedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedEvt_delegate;
+   private void on_ClickedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedDoubleEvtKey = new object();
+   /// <summary>Called when object receives a double click</summary>
+   public event EventHandler ClickedDoubleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedDoubleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_DOUBLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedDoubleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedDoubleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedDoubleEvt.</summary>
+   public void On_ClickedDoubleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedDoubleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedDoubleEvt_delegate;
+   private void on_ClickedDoubleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedDoubleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedTripleEvtKey = new object();
+   /// <summary>Called when object receives a triple click</summary>
+   public event EventHandler ClickedTripleEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedTripleEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_TRIPLE";
+            if (remove_cpp_event_handler(key, this.evt_ClickedTripleEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedTripleEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedTripleEvt.</summary>
+   public void On_ClickedTripleEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ClickedTripleEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedTripleEvt_delegate;
+   private void on_ClickedTripleEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ClickedTripleEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ClickedRightEvtKey = new object();
+   /// <summary>Called when object receives a right click</summary>
+   public event EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> ClickedRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ClickedRightEvt_delegate)) {
+               eventHandlers.AddHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_CLICKED_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ClickedRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ClickedRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ClickedRightEvt.</summary>
+   public void On_ClickedRightEvt(Efl.Ui.ClickableClickedRightEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableClickedRightEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableClickedRightEvt_Args>)eventHandlers[ClickedRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ClickedRightEvt_delegate;
+   private void on_ClickedRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableClickedRightEvt_Args args = new Efl.Ui.ClickableClickedRightEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ClickedRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PressedEvtKey = new object();
+   /// <summary>Called when the object is pressed</summary>
+   public event EventHandler<Efl.Ui.ClickablePressedEvt_Args> PressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PressedEvt_delegate)) {
+               eventHandlers.AddHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_PRESSED";
+            if (remove_cpp_event_handler(key, this.evt_PressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PressedEvt.</summary>
+   public void On_PressedEvt(Efl.Ui.ClickablePressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickablePressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickablePressedEvt_Args>)eventHandlers[PressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PressedEvt_delegate;
+   private void on_PressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickablePressedEvt_Args args = new Efl.Ui.ClickablePressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_PressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnpressedEvtKey = new object();
+   /// <summary>Called when the object is no longer pressed</summary>
+   public event EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> UnpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnpressedEvt_delegate)) {
+               eventHandlers.AddHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_UnpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnpressedEvt.</summary>
+   public void On_UnpressedEvt(Efl.Ui.ClickableUnpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableUnpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableUnpressedEvt_Args>)eventHandlers[UnpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnpressedEvt_delegate;
+   private void on_UnpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableUnpressedEvt_Args args = new Efl.Ui.ClickableUnpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_UnpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object LongpressedEvtKey = new object();
+   /// <summary>Called when the object receives a long press</summary>
+   public event EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> LongpressedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_LongpressedEvt_delegate)) {
+               eventHandlers.AddHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_LONGPRESSED";
+            if (remove_cpp_event_handler(key, this.evt_LongpressedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LongpressedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LongpressedEvt.</summary>
+   public void On_LongpressedEvt(Efl.Ui.ClickableLongpressedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.ClickableLongpressedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.ClickableLongpressedEvt_Args>)eventHandlers[LongpressedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LongpressedEvt_delegate;
+   private void on_LongpressedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.ClickableLongpressedEvt_Args args = new Efl.Ui.ClickableLongpressedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_LongpressedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RepeatedEvtKey = new object();
+   /// <summary>Called when the object receives repeated presses/clicks</summary>
+   public event EventHandler RepeatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RepeatedEvt_delegate)) {
+               eventHandlers.AddHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_REPEATED";
+            if (remove_cpp_event_handler(key, this.evt_RepeatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RepeatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RepeatedEvt.</summary>
+   public void On_RepeatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RepeatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RepeatedEvt_delegate;
+   private void on_RepeatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RepeatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectedEvtKey = new object();
+   /// <summary>Called when selected</summary>
+   public event EventHandler SelectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTED";
+            if (remove_cpp_event_handler(key, this.evt_SelectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectedEvt.</summary>
+   public void On_SelectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectedEvt_delegate;
+   private void on_SelectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnselectedEvtKey = new object();
+   /// <summary>Called when no longer selected</summary>
+   public event EventHandler UnselectedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnselectedEvt_delegate)) {
+               eventHandlers.AddHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_UNSELECTED";
+            if (remove_cpp_event_handler(key, this.evt_UnselectedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnselectedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnselectedEvt.</summary>
+   public void On_UnselectedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnselectedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnselectedEvt_delegate;
+   private void on_UnselectedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnselectedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionPasteEvtKey = new object();
+   /// <summary>Called when selection is pasted</summary>
+   public event EventHandler SelectionPasteEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionPasteEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_PASTE";
+            if (remove_cpp_event_handler(key, this.evt_SelectionPasteEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionPasteEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionPasteEvt.</summary>
+   public void On_SelectionPasteEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionPasteEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionPasteEvt_delegate;
+   private void on_SelectionPasteEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionPasteEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCopyEvtKey = new object();
+   /// <summary>Called when selection is copied</summary>
+   public event EventHandler SelectionCopyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCopyEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_COPY";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCopyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCopyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCopyEvt.</summary>
+   public void On_SelectionCopyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCopyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCopyEvt_delegate;
+   private void on_SelectionCopyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCopyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionCutEvtKey = new object();
+   /// <summary>Called when selection is cut</summary>
+   public event EventHandler SelectionCutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionCutEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CUT";
+            if (remove_cpp_event_handler(key, this.evt_SelectionCutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionCutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionCutEvt.</summary>
+   public void On_SelectionCutEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionCutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionCutEvt_delegate;
+   private void on_SelectionCutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionCutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionStartEvtKey = new object();
+   /// <summary>Called at selection start</summary>
+   public event EventHandler SelectionStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionStartEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_START";
+            if (remove_cpp_event_handler(key, this.evt_SelectionStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionStartEvt.</summary>
+   public void On_SelectionStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionStartEvt_delegate;
+   private void on_SelectionStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Ui_Selectable_SelectionChangedEvtKey = new object();
+   /// <summary>Called when selection is changed</summary>
+    event EventHandler Efl.Ui.Selectable.SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Ui_Selectable_SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Ui_Selectable_SelectionChangedEvt.</summary>
+   public void On_Efl_Ui_Selectable_SelectionChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Efl_Ui_Selectable_SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate;
+   private void on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Efl_Ui_Selectable_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionClearedEvtKey = new object();
+   /// <summary>Called when selection is cleared</summary>
+   public event EventHandler SelectionClearedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SelectionClearedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SELECTION_CLEARED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionClearedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionClearedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionClearedEvt.</summary>
+   public void On_SelectionClearedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[SelectionClearedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionClearedEvt_delegate;
+   private void on_SelectionClearedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_SelectionClearedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+      evt_ChangedUserEvt_delegate = new Efl.EventCb(on_ChangedUserEvt_NativeCallback);
+      evt_ValidateEvt_delegate = new Efl.EventCb(on_ValidateEvt_NativeCallback);
+      evt_ContextOpenEvt_delegate = new Efl.EventCb(on_ContextOpenEvt_NativeCallback);
+      evt_PreeditChangedEvt_delegate = new Efl.EventCb(on_PreeditChangedEvt_NativeCallback);
+      evt_PressEvt_delegate = new Efl.EventCb(on_PressEvt_NativeCallback);
+      evt_RedoRequestEvt_delegate = new Efl.EventCb(on_RedoRequestEvt_NativeCallback);
+      evt_UndoRequestEvt_delegate = new Efl.EventCb(on_UndoRequestEvt_NativeCallback);
+      evt_AbortedEvt_delegate = new Efl.EventCb(on_AbortedEvt_NativeCallback);
+      evt_AnchorDownEvt_delegate = new Efl.EventCb(on_AnchorDownEvt_NativeCallback);
+      evt_AnchorHoverOpenedEvt_delegate = new Efl.EventCb(on_AnchorHoverOpenedEvt_NativeCallback);
+      evt_AnchorInEvt_delegate = new Efl.EventCb(on_AnchorInEvt_NativeCallback);
+      evt_AnchorOutEvt_delegate = new Efl.EventCb(on_AnchorOutEvt_NativeCallback);
+      evt_AnchorUpEvt_delegate = new Efl.EventCb(on_AnchorUpEvt_NativeCallback);
+      evt_CursorChangedManualEvt_delegate = new Efl.EventCb(on_CursorChangedManualEvt_NativeCallback);
+      evt_Efl_TextInteractive_SelectionChangedEvt_delegate = new Efl.EventCb(on_Efl_TextInteractive_SelectionChangedEvt_NativeCallback);
+      evt_AccessTextCaretMovedEvt_delegate = new Efl.EventCb(on_AccessTextCaretMovedEvt_NativeCallback);
+      evt_AccessTextInsertedEvt_delegate = new Efl.EventCb(on_AccessTextInsertedEvt_NativeCallback);
+      evt_AccessTextRemovedEvt_delegate = new Efl.EventCb(on_AccessTextRemovedEvt_NativeCallback);
+      evt_AccessTextSelectionChangedEvt_delegate = new Efl.EventCb(on_AccessTextSelectionChangedEvt_NativeCallback);
+      evt_ClickedEvt_delegate = new Efl.EventCb(on_ClickedEvt_NativeCallback);
+      evt_ClickedDoubleEvt_delegate = new Efl.EventCb(on_ClickedDoubleEvt_NativeCallback);
+      evt_ClickedTripleEvt_delegate = new Efl.EventCb(on_ClickedTripleEvt_NativeCallback);
+      evt_ClickedRightEvt_delegate = new Efl.EventCb(on_ClickedRightEvt_NativeCallback);
+      evt_PressedEvt_delegate = new Efl.EventCb(on_PressedEvt_NativeCallback);
+      evt_UnpressedEvt_delegate = new Efl.EventCb(on_UnpressedEvt_NativeCallback);
+      evt_LongpressedEvt_delegate = new Efl.EventCb(on_LongpressedEvt_NativeCallback);
+      evt_RepeatedEvt_delegate = new Efl.EventCb(on_RepeatedEvt_NativeCallback);
+      evt_SelectedEvt_delegate = new Efl.EventCb(on_SelectedEvt_NativeCallback);
+      evt_UnselectedEvt_delegate = new Efl.EventCb(on_UnselectedEvt_NativeCallback);
+      evt_SelectionPasteEvt_delegate = new Efl.EventCb(on_SelectionPasteEvt_NativeCallback);
+      evt_SelectionCopyEvt_delegate = new Efl.EventCb(on_SelectionCopyEvt_NativeCallback);
+      evt_SelectionCutEvt_delegate = new Efl.EventCb(on_SelectionCutEvt_NativeCallback);
+      evt_SelectionStartEvt_delegate = new Efl.EventCb(on_SelectionStartEvt_NativeCallback);
+      evt_Efl_Ui_Selectable_SelectionChangedEvt_delegate = new Efl.EventCb(on_Efl_Ui_Selectable_SelectionChangedEvt_NativeCallback);
+      evt_SelectionClearedEvt_delegate = new Efl.EventCb(on_SelectionClearedEvt_NativeCallback);
+   }
+   /// <summary>Get the scrollable state of the entry
+   /// Normally the entry is not scrollable. This gets the scrollable state of the entry.</summary>
+   /// <returns><c>true</c> if it is to be scrollable, <c>false</c> otherwise.</returns>
+   virtual public bool GetScrollable() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_scrollable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable scrolling in entry
+   /// Normally the entry is not scrollable unless you enable it with this call.</summary>
+   /// <param name="scroll"><c>true</c> if it is to be scrollable, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetScrollable( bool scroll) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_scrollable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scroll);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the attribute to show the input panel in case of only an user&apos;s explicit Mouse Up event.
+   /// 1.9</summary>
+   /// <returns>If <c>true</c>, the input panel will be shown in case of only Mouse up event. (Focus event will be ignored.)</returns>
+   virtual public bool GetInputPanelShowOnDemand() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_show_on_demand_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the attribute to show the input panel in case of only a user&apos;s explicit Mouse Up event. It doesn&apos;t request to show the input panel even though it has focus.
+   /// 1.9</summary>
+   /// <param name="ondemand">If <c>true</c>, the input panel will be shown in case of only Mouse up event. (Focus event will be ignored.)</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelShowOnDemand( bool ondemand) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_show_on_demand_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ondemand);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This returns whether the entry&apos;s contextual (longpress) menu is disabled.</summary>
+   /// <returns>If <c>true</c>, the menu is disabled.</returns>
+   virtual public bool GetContextMenuDisabled() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_context_menu_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This disables the entry&apos;s contextual (longpress) menu.</summary>
+   /// <param name="disabled">If <c>true</c>, the menu is disabled.</param>
+   /// <returns></returns>
+   virtual public  void SetContextMenuDisabled( bool disabled) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_context_menu_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Getting elm_entry text paste/drop mode.
+   /// Normally the entry allows both text and images to be pasted. This gets the copy &amp; paste mode of the entry.</summary>
+   /// <returns>Format for copy &amp; paste.</returns>
+   virtual public Efl.Ui.SelectionFormat GetCnpMode() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_cnp_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control pasting of text and images for the widget.
+   /// Normally the entry allows both text and images to be pasted. By setting cnp_mode to be #ELM_CNP_MODE_NO_IMAGE this prevents images from being copied or pasted. By setting cnp_mode to be #ELM_CNP_MODE_PLAINTEXT this remove all tags in text .
+   /// 
+   /// Note: This only changes the behaviour of text.</summary>
+   /// <param name="format">Format for copy &amp; paste.</param>
+   /// <returns></returns>
+   virtual public  void SetCnpMode( Efl.Ui.SelectionFormat format) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_cnp_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), format);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the language mode of the input panel.</summary>
+   /// <returns>Language to be set to the input panel.</returns>
+   virtual public Elm.Input.Panel.Lang GetInputPanelLanguage() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_language_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the language mode of the input panel.
+   /// This API can be used if you want to show the alphabet keyboard mode.</summary>
+   /// <param name="lang">Language to be set to the input panel.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelLanguage( Elm.Input.Panel.Lang lang) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_language_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), lang);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This returns whether the entry&apos;s selection handlers are disabled.</summary>
+   /// <returns>If <c>true</c>, the selection handlers are disabled.</returns>
+   virtual public bool GetSelectionHandlerDisabled() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_selection_handler_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This disables the entry&apos;s selection handlers.</summary>
+   /// <param name="disabled">If <c>true</c>, the selection handlers are disabled.</param>
+   /// <returns></returns>
+   virtual public  void SetSelectionHandlerDisabled( bool disabled) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_selection_handler_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the input panel layout variation of the entry
+   /// 1.8</summary>
+   /// <returns>Layout variation type.</returns>
+   virtual public  int GetInputPanelLayoutVariation() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_layout_variation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the input panel layout variation of the entry
+   /// 1.8</summary>
+   /// <param name="variation">Layout variation type.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelLayoutVariation(  int variation) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_layout_variation_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), variation);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the autocapitalization type on the immodule.</summary>
+   /// <returns>The type of autocapitalization.</returns>
+   virtual public Elm.Autocapital.Type GetAutocapitalType() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_autocapital_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the autocapitalization type on the immodule.</summary>
+   /// <param name="autocapital_type">The type of autocapitalization.</param>
+   /// <returns></returns>
+   virtual public  void SetAutocapitalType( Elm.Autocapital.Type autocapital_type) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_autocapital_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), autocapital_type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get whether the entry is set to password mode.</summary>
+   /// <returns>If true, password mode is enabled.</returns>
+   virtual public bool GetPasswordMode() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_password_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the entry to password mode.
+   /// In password mode entries are implicitly single line and the display of any text inside them is replaced with asterisks (*).</summary>
+   /// <param name="password">If true, password mode is enabled.</param>
+   /// <returns></returns>
+   virtual public  void SetPasswordMode( bool password) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_password_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), password);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get whether the return key on the input panel should be disabled or not.</summary>
+   /// <returns>The state to put in in: <c>true</c> for disabled, <c>false</c> for enabled.</returns>
+   virtual public bool GetInputPanelReturnKeyDisabled() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_return_key_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the return key on the input panel to be disabled.</summary>
+   /// <param name="disabled">The state to put in in: <c>true</c> for disabled, <c>false</c> for enabled.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelReturnKeyDisabled( bool disabled) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_return_key_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get whether the entry allows predictive text.</summary>
+   /// <returns>Whether the entry should allow predictive text.</returns>
+   virtual public bool GetPredictionAllow() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_prediction_allow_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether the entry should allow predictive text.</summary>
+   /// <param name="prediction">Whether the entry should allow predictive text.</param>
+   /// <returns></returns>
+   virtual public  void SetPredictionAllow( bool prediction) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_prediction_allow_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), prediction);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the value of input hint.</summary>
+   /// <returns>Input hint.</returns>
+   virtual public Elm.Input.Hints GetInputHint() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the input hint which allows input methods to fine-tune their behavior.</summary>
+   /// <param name="hints">Input hint.</param>
+   /// <returns></returns>
+   virtual public  void SetInputHint( Elm.Input.Hints hints) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hints);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the input panel layout of the entry.</summary>
+   /// <returns>Layout type.</returns>
+   virtual public Elm.Input.Panel.Layout GetInputPanelLayout() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_layout_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the input panel layout of the entry.</summary>
+   /// <param name="layout">Layout type.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelLayout( Elm.Input.Panel.Layout layout) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_layout_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), layout);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the &quot;return&quot; key type.</summary>
+   /// <returns>The type of &quot;return&quot; key on the input panel.</returns>
+   virtual public Elm.Input.Panel.ReturnKey.Type GetInputPanelReturnKeyType() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_return_key_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the &quot;return&quot; key type. This type is used to set string or icon on the &quot;return&quot; key of the input panel.
+   /// An input panel displays the string or icon associated with this type.</summary>
+   /// <param name="return_key_type">The type of &quot;return&quot; key on the input panel.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelReturnKeyType( Elm.Input.Panel.ReturnKey.Type return_key_type) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_return_key_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), return_key_type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the attribute to show the input panel automatically.</summary>
+   /// <returns>If <c>true</c>, the input panel is appeared when entry is clicked or has a focus.</returns>
+   virtual public bool GetInputPanelEnabled() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the attribute to show the input panel automatically.</summary>
+   /// <param name="enabled">If <c>true</c>, the input panel is appeared when entry is clicked or has a focus.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelEnabled( bool enabled) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set whether the return key on the input panel is disabled automatically when entry has no text.
+   /// If <c>enabled</c> is <c>true</c>, the return key on input panel is disabled when the entry has no text. The return key on the input panel is automatically enabled when the entry has text. The default value is <c>false</c>.</summary>
+   /// <param name="enabled">If <c>enabled</c> is <c>true</c>, the return key is automatically disabled when the entry has no text.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelReturnKeyAutoenabled( bool enabled) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_return_key_autoenabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The factory that provides item in the text e.g. &quot;emoticon/happy&quot; or &quot;href=file://image.jpg&quot; etc.</summary>
+   /// <returns>Factory to create items</returns>
+   virtual public Efl.Canvas.TextFactory GetItemFactory() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_item_factory_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The factory that provides item in the text e.g. &quot;emoticon/happy&quot; or &quot;href=file://image.jpg&quot; etc.</summary>
+   /// <param name="item_factory">Factory to create items</param>
+   /// <returns></returns>
+   virtual public  void SetItemFactory( Efl.Canvas.TextFactory item_factory) {
+                         Efl.Ui.TextNativeInherit.efl_ui_text_item_factory_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item_factory);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Show the input panel (virtual keyboard) based on the input panel property of entry such as layout, autocapital types and so on.
+   /// Note that input panel is shown or hidden automatically according to the focus state of entry widget. This API can be used in the case of manually controlling by using <see cref="Efl.Ui.Text.SetInputPanelEnabled"/>(en, <c>false</c>).</summary>
+   /// <returns></returns>
+   virtual public  void ShowInputPanel() {
+       Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_show_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This executes a &quot;copy&quot; action on the selected text in the entry.</summary>
+   /// <returns></returns>
+   virtual public  void SelectionCopy() {
+       Efl.Ui.TextNativeInherit.efl_ui_text_selection_copy_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This clears and frees the items in a entry&apos;s contextual (longpress) menu.
+   /// See also <see cref="Efl.Ui.Text.AddContextMenuItem"/>.</summary>
+   /// <returns></returns>
+   virtual public  void ClearContextMenu() {
+       Efl.Ui.TextNativeInherit.efl_ui_text_context_menu_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Set the input panel-specific data to deliver to the input panel.
+   /// This API is used by applications to deliver specific data to the input panel. The data format MUST be negotiated by both application and the input panel. The size and format of data are defined by the input panel.</summary>
+   /// <param name="data">The specific data to be set to the input panel.</param>
+   /// <param name="len">The length of data, in bytes, to send to the input panel.</param>
+   /// <returns></returns>
+   virtual public  void SetInputPanelImdata(  System.IntPtr data,   int len) {
+                                           Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_imdata_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), data,  len);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the specific data of the current input panel.</summary>
+   /// <param name="data">The specific data to be obtained from the input panel.</param>
+   /// <param name="len">The length of data.</param>
+   /// <returns></returns>
+   virtual public  void GetInputPanelImdata( ref  System.IntPtr data,  out  int len) {
+                                           Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_imdata_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref data,  out len);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This executes a &quot;paste&quot; action in the entry.</summary>
+   /// <returns></returns>
+   virtual public  void SelectionPaste() {
+       Efl.Ui.TextNativeInherit.efl_ui_text_selection_paste_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Hide the input panel (virtual keyboard).
+   /// Note that input panel is shown or hidden automatically according to the focus state of entry widget. This API can be used in the case of manually controlling by using <see cref="Efl.Ui.Text.SetInputPanelEnabled"/>(en, <c>false</c>)</summary>
+   /// <returns></returns>
+   virtual public  void HideInputPanel() {
+       Efl.Ui.TextNativeInherit.efl_ui_text_input_panel_hide_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This ends a selection within the entry as though the user had just released the mouse button while making a selection.</summary>
+   /// <returns></returns>
+   virtual public  void CursorSelectionEnd() {
+       Efl.Ui.TextNativeInherit.efl_ui_text_cursor_selection_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This executes a &quot;cut&quot; action on the selected text in the entry.</summary>
+   /// <returns></returns>
+   virtual public  void SelectionCut() {
+       Efl.Ui.TextNativeInherit.efl_ui_text_selection_cut_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This adds an item to the entry&apos;s contextual menu.
+   /// A longpress on an entry will make the contextual menu show up unless this has been disabled with <see cref="Efl.Ui.Text.SetContextMenuDisabled"/>. By default this menu provides a few options like enabling selection mode, which is useful on embedded devices that need to be explicit about it. When a selection exists it also shows the copy and cut actions.
+   /// 
+   /// With this function, developers can add other options to this menu to perform any action they deem necessary.</summary>
+   /// <param name="label">The item&apos;s text label.</param>
+   /// <param name="icon_file">The item&apos;s icon file.</param>
+   /// <param name="icon_type">The item&apos;s icon type.</param>
+   /// <param name="func">The callback to execute when the item is clicked.</param>
+   /// <param name="data">The data to associate with the item for related functions.</param>
+   /// <returns></returns>
+   virtual public  void AddContextMenuItem(  System.String label,   System.String icon_file,  Elm.Icon.Type icon_type,  EvasSmartCb func,   System.IntPtr data) {
+                                                                                                 Efl.Ui.TextNativeInherit.efl_ui_text_context_menu_item_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), label,  icon_file,  icon_type,  func,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Creates and returns a new cursor for the text.</summary>
+   /// <returns>Text cursor</returns>
+   virtual public Efl.TextCursorCursor NewCursor() {
+       var _ret_var = Efl.Ui.TextNativeInherit.efl_ui_text_cursor_new_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieve the font family and size in use on a given text object.
+   /// This function allows the font name and size of a text object to be queried. Remember that the font name string is still owned by Evas and should not have free() called on it by the caller of the function.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetFont( out  System.String font,  out Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out font,  out size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the font family, filename and size for a given text object.
+   /// This function allows the font name and size of a text object to be set. The font string has to follow fontconfig&apos;s convention for naming fonts, as it&apos;s the underlying library used to query system fonts by Evas (see the fc-list command&apos;s output, on your system, to get an idea). Alternatively, youe can use the full path to a font file.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>, <see cref="Efl.TextFont.GetFontSource"/>.
+   /// 1.20</summary>
+   /// <param name="font">The font family name or filename.
+   /// 1.20</param>
+   /// <param name="size">The font size, in points.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFont(  System.String font,  Efl.Font.Size size) {
+                                           Efl.TextFontNativeInherit.efl_text_font_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font,  size);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+   /// See <see cref="Efl.TextFont.GetFont"/> for more details.
+   /// 1.20</summary>
+   /// <returns>The font file&apos;s path.
+   /// 1.20</returns>
+   virtual public  System.String GetFontSource() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_source_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the font (source) file to be used on a given text object.
+   /// This function allows the font file to be explicitly set for a given text object, overriding system lookup, which will first occur in the given file&apos;s contents.
+   /// 
+   /// See also <see cref="Efl.TextFont.GetFont"/>.
+   /// 1.20</summary>
+   /// <param name="font_source">The font file&apos;s path.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontSource(  System.String font_source) {
+                         Efl.TextFontNativeInherit.efl_text_font_source_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font_source);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <returns>Font name fallbacks
+   /// 1.20</returns>
+   virtual public  System.String GetFontFallbacks() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_fallbacks_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Comma-separated list of font fallbacks
+   /// Will be used in case the primary font isn&apos;t available.
+   /// 1.20</summary>
+   /// <param name="font_fallbacks">Font name fallbacks
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontFallbacks(  System.String font_fallbacks) {
+                         Efl.TextFontNativeInherit.efl_text_font_fallbacks_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font_fallbacks);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font weight
+   /// 1.20</returns>
+   virtual public Efl.TextFontWeight GetFontWeight() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_weight_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of weight of the displayed font
+   /// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="font_weight">Font weight
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontWeight( Efl.TextFontWeight font_weight) {
+                         Efl.TextFontNativeInherit.efl_text_font_weight_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), font_weight);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font slant
+   /// 1.20</returns>
+   virtual public Efl.TextFontSlant GetFontSlant() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_slant_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of slant of the displayed font
+   /// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="style">Font slant
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontSlant( Efl.TextFontSlant style) {
+                         Efl.TextFontNativeInherit.efl_text_font_slant_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <returns>Font width
+   /// 1.20</returns>
+   virtual public Efl.TextFontWidth GetFontWidth() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_width_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of width of the displayed font
+   /// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+   /// 1.20</summary>
+   /// <param name="width">Font width
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontWidth( Efl.TextFontWidth width) {
+                         Efl.TextFontNativeInherit.efl_text_font_width_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <returns>Language
+   /// 1.20</returns>
+   virtual public  System.String GetFontLang() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_lang_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specific language of the displayed font
+   /// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+   /// 1.20</summary>
+   /// <param name="lang">Language
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontLang(  System.String lang) {
+                         Efl.TextFontNativeInherit.efl_text_font_lang_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), lang);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <returns>Scalable
+   /// 1.20</returns>
+   virtual public Efl.TextFontBitmapScalable GetFontBitmapScalable() {
+       var _ret_var = Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+   /// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+   /// 1.20</summary>
+   /// <param name="scalable">Scalable
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFontBitmapScalable( Efl.TextFontBitmapScalable scalable) {
+                         Efl.TextFontNativeInherit.efl_text_font_bitmap_scalable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scalable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <returns>Ellipsis value
+   /// 1.20</returns>
+   virtual public double GetEllipsis() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_ellipsis_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+   /// 1.20</summary>
+   /// <param name="value">Ellipsis value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetEllipsis( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_ellipsis_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <returns>Wrap mode
+   /// 1.20</returns>
+   virtual public Efl.TextFormatWrap GetWrap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_wrap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Wrap mode for use in the text
+   /// 1.20</summary>
+   /// <param name="wrap">Wrap mode
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetWrap( Efl.TextFormatWrap wrap) {
+                         Efl.TextFormatNativeInherit.efl_text_wrap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), wrap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <returns><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetMultiline() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_multiline_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Multiline is enabled or not
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if multiline is enabled, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetMultiline( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_multiline_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Alignment type
+   /// 1.20</returns>
+   virtual public Efl.TextFormatHorizontalAlignmentAutoType GetHalignAutoType() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_auto_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Alignment type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetHalignAutoType( Efl.TextFormatHorizontalAlignmentAutoType value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_auto_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <returns>Horizontal alignment value
+   /// 1.20</returns>
+   virtual public double GetHalign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_halign_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Horizontal alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Horizontal alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetHalign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_halign_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <returns>Vertical alignment value
+   /// 1.20</returns>
+   virtual public double GetValign() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_valign_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Vertical alignment of text
+   /// 1.20</summary>
+   /// <param name="value">Vertical alignment value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetValign( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_valign_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <returns>Line gap value
+   /// 1.20</returns>
+   virtual public double GetLinegap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linegap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+   /// <c>value</c> is absolute size.
+   /// 1.20</summary>
+   /// <param name="value">Line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetLinegap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linegap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <returns>Relative line gap value
+   /// 1.20</returns>
+   virtual public double GetLinerelgap() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_linerelgap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+   /// The original line gap value is multiplied by <c>value</c>.
+   /// 1.20</summary>
+   /// <param name="value">Relative line gap value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetLinerelgap( double value) {
+                         Efl.TextFormatNativeInherit.efl_text_linerelgap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <returns>Tapstops value
+   /// 1.20</returns>
+   virtual public  int GetTabstops() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_tabstops_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Tabstops value
+   /// 1.20</summary>
+   /// <param name="value">Tapstops value
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetTabstops(  int value) {
+                         Efl.TextFormatNativeInherit.efl_text_tabstops_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), value);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <returns><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool GetPassword() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_password_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether text is a password
+   /// 1.20</summary>
+   /// <param name="enabled"><c>true</c> if the text is a password, <c>false</c> otherwise
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetPassword( bool enabled) {
+                         Efl.TextFormatNativeInherit.efl_text_password_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <returns>Replacement character
+   /// 1.20</returns>
+   virtual public  System.String GetReplacementChar() {
+       var _ret_var = Efl.TextFormatNativeInherit.efl_text_replacement_char_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+   /// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+   /// 1.20</summary>
+   /// <param name="repch">Replacement character
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetReplacementChar(  System.String repch) {
+                         Efl.TextFormatNativeInherit.efl_text_replacement_char_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), repch);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether or not selection is allowed on this object</summary>
+   /// <returns><c>true</c> if enabled, <c>false</c> otherwise</returns>
+   virtual public bool GetSelectionAllowed() {
+       var _ret_var = Efl.TextInteractiveNativeInherit.efl_text_interactive_selection_allowed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether or not selection is allowed on this object</summary>
+   /// <param name="allowed"><c>true</c> if enabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetSelectionAllowed( bool allowed) {
+                         Efl.TextInteractiveNativeInherit.efl_text_interactive_selection_allowed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), allowed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The cursors used for selection handling.
+   /// If the cursors are equal there&apos;s no selection.
+   /// 
+   /// You are allowed to retain and modify them. Modifying them modifies the selection of the object.</summary>
+   /// <param name="start">The start of the selection</param>
+   /// <param name="end">The end of the selection</param>
+   /// <returns></returns>
+   virtual public  void GetSelectionCursors( out Efl.TextCursorCursor start,  out Efl.TextCursorCursor end) {
+                                           Efl.TextInteractiveNativeInherit.efl_text_interactive_selection_cursors_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out start,  out end);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Whether the entry is editable.
+   /// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+   /// <returns>If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</returns>
+   virtual public bool GetEditable() {
+       var _ret_var = Efl.TextInteractiveNativeInherit.efl_text_interactive_editable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether the entry is editable.
+   /// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+   /// <param name="editable">If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</param>
+   /// <returns></returns>
+   virtual public  void SetEditable( bool editable) {
+                         Efl.TextInteractiveNativeInherit.efl_text_interactive_editable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), editable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Clears the selection.</summary>
+   /// <returns></returns>
+   virtual public  void SelectNone() {
+       Efl.TextInteractiveNativeInherit.efl_text_interactive_select_none_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetNormalColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of text, excluding style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetNormalColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_normal_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <returns>Backing type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleBackingType GetBackingType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_backing_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable or disable backing type
+   /// 1.20</summary>
+   /// <param name="type">Backing type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetBackingType( Efl.TextStyleBackingType type) {
+                         Efl.TextStyleNativeInherit.efl_text_backing_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetBackingColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Backing color
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetBackingColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_backing_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <returns>Underline type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleUnderlineType GetUnderlineType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets an underline style on the text
+   /// 1.20</summary>
+   /// <param name="type">Underline type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineType( Efl.TextStyleUnderlineType type) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetUnderlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of normal underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <returns>Height
+   /// 1.20</returns>
+   virtual public double GetUnderlineHeight() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_height_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Height of underline style
+   /// 1.20</summary>
+   /// <param name="height">Height
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineHeight( double height) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_height_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), height);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetUnderlineDashedColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of dashed underline style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineDashedColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline_dashed_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Width
+   /// 1.20</returns>
+   virtual public  int GetUnderlineDashedWidth() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Width of dashed underline style
+   /// 1.20</summary>
+   /// <param name="width">Width
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineDashedWidth(  int width) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_width_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), width);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <returns>Gap
+   /// 1.20</returns>
+   virtual public  int GetUnderlineDashedGap() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gap of dashed underline style
+   /// 1.20</summary>
+   /// <param name="gap">Gap
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderlineDashedGap(  int gap) {
+                         Efl.TextStyleNativeInherit.efl_text_underline_dashed_gap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), gap);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetUnderline2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of underline2 style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetUnderline2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_underline2_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <returns>Strikethrough type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleStrikethroughType GetStrikethroughType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_strikethrough_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of strikethrough style
+   /// 1.20</summary>
+   /// <param name="type">Strikethrough type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetStrikethroughType( Efl.TextStyleStrikethroughType type) {
+                         Efl.TextStyleNativeInherit.efl_text_strikethrough_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetStrikethroughColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of strikethrough_style
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetStrikethroughColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_strikethrough_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <returns>Effect type
+   /// 1.20</returns>
+   virtual public Efl.TextStyleEffectType GetEffectType() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_effect_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type of effect used for the displayed text
+   /// 1.20</summary>
+   /// <param name="type">Effect type
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetEffectType( Efl.TextStyleEffectType type) {
+                         Efl.TextStyleNativeInherit.efl_text_effect_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetOutlineColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of outline effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetOutlineColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_outline_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <returns>Shadow direction
+   /// 1.20</returns>
+   virtual public Efl.TextStyleShadowDirection GetShadowDirection() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_shadow_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Direction of shadow effect
+   /// 1.20</summary>
+   /// <param name="type">Shadow direction
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetShadowDirection( Efl.TextStyleShadowDirection type) {
+                         Efl.TextStyleNativeInherit.efl_text_shadow_direction_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetShadowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of shadow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetShadowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_shadow_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetGlowColor( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Color of glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetGlowColor(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void GetGlow2Color( out  byte r,  out  byte g,  out  byte b,  out  byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Second color of the glow effect
+   /// 1.20</summary>
+   /// <param name="r">Red component
+   /// 1.20</param>
+   /// <param name="g">Green component
+   /// 1.20</param>
+   /// <param name="b">Blue component
+   /// 1.20</param>
+   /// <param name="a">Alpha component
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetGlow2Color(  byte r,   byte g,   byte b,   byte a) {
+                                                                               Efl.TextStyleNativeInherit.efl_text_glow2_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <returns>Filter code
+   /// 1.20</returns>
+   virtual public  System.String GetGfxFilter() {
+       var _ret_var = Efl.TextStyleNativeInherit.efl_text_gfx_filter_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Program that applies a special filter
+   /// See <see cref="Efl.Gfx.Filter"/>.
+   /// 1.20</summary>
+   /// <param name="code">Filter code
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetGfxFilter(  System.String code) {
+                         Efl.TextStyleNativeInherit.efl_text_gfx_filter_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), code);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets single character present in accessible widget&apos;s text at given offset.</summary>
+   /// <param name="offset">Position in text.</param>
+   /// <returns>Character at offset. 0 when out-of bounds offset has been given. Codepoints between DC80 and DCFF indicates that string includes invalid UTF8 chars.</returns>
+   virtual public Eina.Unicode GetCharacter(  int offset) {
+                         var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_character_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), offset);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets string, start and end offset in text according to given initial offset and granularity.</summary>
+   /// <param name="granularity">Text granularity</param>
+   /// <param name="start_offset">Offset indicating start of string according to given granularity.  -1 in case of error.</param>
+   /// <param name="end_offset">Offset indicating end of string according to given granularity. -1 in case of error.</param>
+   /// <returns>Newly allocated UTF-8 encoded string. Must be free by a user.</returns>
+   virtual public  System.String GetString( Efl.Access.TextGranularity granularity,   int start_offset,   int end_offset) {
+             var _in_start_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(end_offset);
+                                          var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_string_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), granularity,  _in_start_offset,  _in_end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Gets text of accessible widget.</summary>
+   /// <param name="start_offset">Position in text.</param>
+   /// <param name="end_offset">End offset of text.</param>
+   /// <returns>UTF-8 encoded text.</returns>
+   virtual public  System.String GetAccessText(  int start_offset,   int end_offset) {
+                                           var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start_offset,  end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets offset position of caret (cursor)</summary>
+   /// <returns>Offset</returns>
+   virtual public  int GetCaretOffset() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_caret_offset_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Caret offset property</summary>
+   /// <param name="offset">Offset</param>
+   /// <returns><c>true</c> if caret was successfully moved, <c>false</c> otherwise.</returns>
+   virtual public bool SetCaretOffset(  int offset) {
+                         var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_caret_offset_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), offset);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Indicate if a text attribute with a given name is set</summary>
+   /// <param name="name">Text attribute name</param>
+   /// <param name="start_offset">Position in text from which given attribute is set.</param>
+   /// <param name="end_offset">Position in text to which given attribute is set.</param>
+   /// <param name="value">Value of text attribute. Should be free()</param>
+   /// <returns><c>true</c> if attribute name is set, <c>false</c> otherwise</returns>
+   virtual public bool GetAttribute(  System.String name,   int start_offset,   int end_offset,  out  System.String value) {
+             var _in_start_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(end_offset);
+                                                            var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_attribute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  _in_start_offset,  _in_end_offset,  out value);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Gets list of all text attributes.</summary>
+   /// <param name="start_offset">Start offset</param>
+   /// <param name="end_offset">End offset</param>
+   /// <returns>List of text attributes</returns>
+   virtual public Eina.List<Efl.Access.TextAttribute> GetTextAttributes(  int start_offset,   int end_offset) {
+       var _in_start_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.ManagedToPointerAlloc(end_offset);
+                              var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_attributes_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_start_offset,  _in_end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                              return new Eina.List<Efl.Access.TextAttribute>(_ret_var, true, true);
+ }
+   /// <summary>Default attributes</summary>
+   /// <returns>List of default attributes</returns>
+   virtual public Eina.List<Efl.Access.TextAttribute> GetDefaultAttributes() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_default_attributes_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.TextAttribute>(_ret_var, true, true);
+ }
+   /// <summary>Character extents</summary>
+   /// <param name="offset">Offset</param>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="rect">Extents rectangle</param>
+   /// <returns><c>true</c> if character extents, <c>false</c> otherwise</returns>
+   virtual public bool GetCharacterExtents(  int offset,  bool screen_coords,  out Eina.Rect rect) {
+                                     var _out_rect = new Eina.Rect_StructInternal();
+                        var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_character_extents_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), offset,  screen_coords,  out _out_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                  rect = Eina.Rect_StructConversion.ToManaged(_out_rect);
+                        return _ret_var;
+ }
+   /// <summary>Character count</summary>
+   /// <returns>Character count</returns>
+   virtual public  int GetCharacterCount() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_character_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Offset at given point</summary>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns>Offset</returns>
+   virtual public  int GetOffsetAtPoint( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_offset_at_point_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Bounded ranges</summary>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="rect">Bounding box</param>
+   /// <param name="xclip">xclip</param>
+   /// <param name="yclip">yclip</param>
+   /// <returns>List of ranges</returns>
+   virtual public Eina.List<Efl.Access.TextRange> GetBoundedRanges( bool screen_coords,  Eina.Rect rect,  Efl.Access.TextClipType xclip,  Efl.Access.TextClipType yclip) {
+             var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                                                  var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_bounded_ranges_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  _in_rect,  xclip,  yclip);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return new Eina.List<Efl.Access.TextRange>(_ret_var, true, true);
+ }
+   /// <summary>Range extents</summary>
+   /// <param name="screen_coords">If <c>true</c>, x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="start_offset">Start offset</param>
+   /// <param name="end_offset">End offset</param>
+   /// <param name="rect">Range rectangle</param>
+   /// <returns><c>true</c> if range extents, <c>false</c> otherwise</returns>
+   virtual public bool GetRangeExtents( bool screen_coords,   int start_offset,   int end_offset,  out Eina.Rect rect) {
+                                                 var _out_rect = new Eina.Rect_StructInternal();
+                              var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_range_extents_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  start_offset,  end_offset,  out _out_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                        rect = Eina.Rect_StructConversion.ToManaged(_out_rect);
+                              return _ret_var;
+ }
+   /// <summary>Selection count property</summary>
+   /// <returns>Selection counter</returns>
+   virtual public  int GetSelectionsCount() {
+       var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_selections_count_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Selection property</summary>
+   /// <param name="selection_number">Selection number for identification</param>
+   /// <param name="start_offset">Selection start offset</param>
+   /// <param name="end_offset">Selection end offset</param>
+   /// <returns></returns>
+   virtual public  void GetAccessSelection(  int selection_number,  out  int start_offset,  out  int end_offset) {
+                                                             Efl.Access.TextNativeInherit.efl_access_text_access_selection_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), selection_number,  out start_offset,  out end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Selection property</summary>
+   /// <param name="selection_number">Selection number for identification</param>
+   /// <param name="start_offset">Selection start offset</param>
+   /// <param name="end_offset">Selection end offset</param>
+   /// <returns><c>true</c> if selection was set, <c>false</c> otherwise</returns>
+   virtual public bool SetAccessSelection(  int selection_number,   int start_offset,   int end_offset) {
+                                                             var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_access_selection_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), selection_number,  start_offset,  end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Add selection</summary>
+   /// <param name="start_offset">Start selection from this offset</param>
+   /// <param name="end_offset">End selection at this offset</param>
+   /// <returns><c>true</c> if selection was added, <c>false</c> otherwise</returns>
+   virtual public bool AddSelection(  int start_offset,   int end_offset) {
+                                           var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_selection_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start_offset,  end_offset);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Remove selection</summary>
+   /// <param name="selection_number">Selection number to be removed</param>
+   /// <returns><c>true</c> if selection was removed, <c>false</c> otherwise</returns>
+   virtual public bool SelectionRemove(  int selection_number) {
+                         var _ret_var = Efl.Access.TextNativeInherit.efl_access_text_selection_remove_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), selection_number);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Editable content property</summary>
+   /// <param name="kw_string">Content</param>
+   /// <returns><c>true</c> if setting the value succeeded, <c>false</c> otherwise</returns>
+   virtual public bool SetTextContent(  System.String kw_string) {
+                         var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_string);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Insert text at given position</summary>
+   /// <param name="kw_string">String to be inserted</param>
+   /// <param name="position">Position to insert string</param>
+   /// <returns><c>true</c> if insert succeeded, <c>false</c> otherwise</returns>
+   virtual public bool Insert(  System.String kw_string,   int position) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_insert_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_string,  position);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Copy text between start and end parameter</summary>
+   /// <param name="start">Start position to copy</param>
+   /// <param name="end">End position to copy</param>
+   /// <returns><c>true</c> if copy succeeded, <c>false</c> otherwise</returns>
+   virtual public bool Copy(  int start,   int end) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_copy_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Cut text between start and end parameter</summary>
+   /// <param name="start">Start position to cut</param>
+   /// <param name="end">End position to cut</param>
+   /// <returns><c>true</c> if cut succeeded, <c>false</c> otherwise</returns>
+   virtual public bool Cut(  int start,   int end) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_cut_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Delete text between start and end parameter</summary>
+   /// <param name="start">Start position to delete</param>
+   /// <param name="end">End position to delete</param>
+   /// <returns><c>true</c> if delete succeeded, <c>false</c> otherwise</returns>
+   virtual public bool Delete(  int start,   int end) {
+                                           var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_delete_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), start,  end);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Paste text at given position</summary>
+   /// <param name="position">Position to insert text</param>
+   /// <returns><c>true</c> if paste succeeded, <c>false</c> otherwise</returns>
+   virtual public bool Paste(  int position) {
+                         var _ret_var = Efl.Access.Editable.TextNativeInherit.efl_access_editable_text_paste_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), position);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the scrollable state of the entry
+/// Normally the entry is not scrollable. This gets the scrollable state of the entry.</summary>
+/// <value><c>true</c> if it is to be scrollable, <c>false</c> otherwise.</value>
+   public bool Scrollable {
+      get { return GetScrollable(); }
+      set { SetScrollable( value); }
+   }
+   /// <summary>Get the attribute to show the input panel in case of only an user&apos;s explicit Mouse Up event.
+/// 1.9</summary>
+/// <value>If <c>true</c>, the input panel will be shown in case of only Mouse up event. (Focus event will be ignored.)</value>
+   public bool InputPanelShowOnDemand {
+      get { return GetInputPanelShowOnDemand(); }
+      set { SetInputPanelShowOnDemand( value); }
+   }
+   /// <summary>This returns whether the entry&apos;s contextual (longpress) menu is disabled.</summary>
+/// <value>If <c>true</c>, the menu is disabled.</value>
+   public bool ContextMenuDisabled {
+      get { return GetContextMenuDisabled(); }
+      set { SetContextMenuDisabled( value); }
+   }
+   /// <summary>Getting elm_entry text paste/drop mode.
+/// Normally the entry allows both text and images to be pasted. This gets the copy &amp; paste mode of the entry.</summary>
+/// <value>Format for copy &amp; paste.</value>
+   public Efl.Ui.SelectionFormat CnpMode {
+      get { return GetCnpMode(); }
+      set { SetCnpMode( value); }
+   }
+   /// <summary>Get the language mode of the input panel.</summary>
+/// <value>Language to be set to the input panel.</value>
+   public Elm.Input.Panel.Lang InputPanelLanguage {
+      get { return GetInputPanelLanguage(); }
+      set { SetInputPanelLanguage( value); }
+   }
+   /// <summary>This returns whether the entry&apos;s selection handlers are disabled.</summary>
+/// <value>If <c>true</c>, the selection handlers are disabled.</value>
+   public bool SelectionHandlerDisabled {
+      get { return GetSelectionHandlerDisabled(); }
+      set { SetSelectionHandlerDisabled( value); }
+   }
+   /// <summary>Get the input panel layout variation of the entry
+/// 1.8</summary>
+/// <value>Layout variation type.</value>
+   public  int InputPanelLayoutVariation {
+      get { return GetInputPanelLayoutVariation(); }
+      set { SetInputPanelLayoutVariation( value); }
+   }
+   /// <summary>Get the autocapitalization type on the immodule.</summary>
+/// <value>The type of autocapitalization.</value>
+   public Elm.Autocapital.Type AutocapitalType {
+      get { return GetAutocapitalType(); }
+      set { SetAutocapitalType( value); }
+   }
+   /// <summary>Get whether the entry is set to password mode.</summary>
+/// <value>If true, password mode is enabled.</value>
+   public bool PasswordMode {
+      get { return GetPasswordMode(); }
+      set { SetPasswordMode( value); }
+   }
+   /// <summary>Get whether the return key on the input panel should be disabled or not.</summary>
+/// <value>The state to put in in: <c>true</c> for disabled, <c>false</c> for enabled.</value>
+   public bool InputPanelReturnKeyDisabled {
+      get { return GetInputPanelReturnKeyDisabled(); }
+      set { SetInputPanelReturnKeyDisabled( value); }
+   }
+   /// <summary>Get whether the entry allows predictive text.</summary>
+/// <value>Whether the entry should allow predictive text.</value>
+   public bool PredictionAllow {
+      get { return GetPredictionAllow(); }
+      set { SetPredictionAllow( value); }
+   }
+   /// <summary>Gets the value of input hint.</summary>
+/// <value>Input hint.</value>
+   public Elm.Input.Hints InputHint {
+      get { return GetInputHint(); }
+      set { SetInputHint( value); }
+   }
+   /// <summary>Get the input panel layout of the entry.</summary>
+/// <value>Layout type.</value>
+   public Elm.Input.Panel.Layout InputPanelLayout {
+      get { return GetInputPanelLayout(); }
+      set { SetInputPanelLayout( value); }
+   }
+   /// <summary>Get the &quot;return&quot; key type.</summary>
+/// <value>The type of &quot;return&quot; key on the input panel.</value>
+   public Elm.Input.Panel.ReturnKey.Type InputPanelReturnKeyType {
+      get { return GetInputPanelReturnKeyType(); }
+      set { SetInputPanelReturnKeyType( value); }
+   }
+   /// <summary>Get the attribute to show the input panel automatically.</summary>
+/// <value>If <c>true</c>, the input panel is appeared when entry is clicked or has a focus.</value>
+   public bool InputPanelEnabled {
+      get { return GetInputPanelEnabled(); }
+      set { SetInputPanelEnabled( value); }
+   }
+   /// <summary>Set whether the return key on the input panel is disabled automatically when entry has no text.
+/// If <c>enabled</c> is <c>true</c>, the return key on input panel is disabled when the entry has no text. The return key on the input panel is automatically enabled when the entry has text. The default value is <c>false</c>.</summary>
+/// <value>If <c>enabled</c> is <c>true</c>, the return key is automatically disabled when the entry has no text.</value>
+   public bool InputPanelReturnKeyAutoenabled {
+      set { SetInputPanelReturnKeyAutoenabled( value); }
+   }
+   /// <summary>The factory that provides item in the text e.g. &quot;emoticon/happy&quot; or &quot;href=file://image.jpg&quot; etc.</summary>
+/// <value>Factory to create items</value>
+   public Efl.Canvas.TextFactory ItemFactory {
+      get { return GetItemFactory(); }
+      set { SetItemFactory( value); }
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Get the font file&apos;s path which is being used on a given text object.
+/// See <see cref="Efl.TextFont.GetFont"/> for more details.
+/// 1.20</summary>
+/// <value>The font file&apos;s path.
+/// 1.20</value>
+   public  System.String FontSource {
+      get { return GetFontSource(); }
+      set { SetFontSource( value); }
+   }
+   /// <summary>Comma-separated list of font fallbacks
+/// Will be used in case the primary font isn&apos;t available.
+/// 1.20</summary>
+/// <value>Font name fallbacks
+/// 1.20</value>
+   public  System.String FontFallbacks {
+      get { return GetFontFallbacks(); }
+      set { SetFontFallbacks( value); }
+   }
+   /// <summary>Type of weight of the displayed font
+/// Default is <see cref="Efl.TextFontWeight.Normal"/>.
+/// 1.20</summary>
+/// <value>Font weight
+/// 1.20</value>
+   public Efl.TextFontWeight FontWeight {
+      get { return GetFontWeight(); }
+      set { SetFontWeight( value); }
+   }
+   /// <summary>Type of slant of the displayed font
+/// Default is <see cref="Efl.TextFontSlant.Normal"/>.
+/// 1.20</summary>
+/// <value>Font slant
+/// 1.20</value>
+   public Efl.TextFontSlant FontSlant {
+      get { return GetFontSlant(); }
+      set { SetFontSlant( value); }
+   }
+   /// <summary>Type of width of the displayed font
+/// Default is <see cref="Efl.TextFontWidth.Normal"/>.
+/// 1.20</summary>
+/// <value>Font width
+/// 1.20</value>
+   public Efl.TextFontWidth FontWidth {
+      get { return GetFontWidth(); }
+      set { SetFontWidth( value); }
+   }
+   /// <summary>Specific language of the displayed font
+/// This is used to lookup fonts suitable to the specified language, as well as helping the font shaper backend. The language <c>lang</c> can be either a code e.g &quot;en_US&quot;, &quot;auto&quot; to use the system locale, or &quot;none&quot;.
+/// 1.20</summary>
+/// <value>Language
+/// 1.20</value>
+   public  System.String FontLang {
+      get { return GetFontLang(); }
+      set { SetFontLang( value); }
+   }
+   /// <summary>The bitmap fonts have fixed size glyphs for several available sizes. Basically, it is not scalable. But, it needs to be scalable for some use cases. (ex. colorful emoji fonts)
+/// Default is <see cref="Efl.TextFontBitmapScalable.None"/>.
+/// 1.20</summary>
+/// <value>Scalable
+/// 1.20</value>
+   public Efl.TextFontBitmapScalable FontBitmapScalable {
+      get { return GetFontBitmapScalable(); }
+      set { SetFontBitmapScalable( value); }
+   }
+   /// <summary>Ellipsis value (number from -1.0 to 1.0)
+/// 1.20</summary>
+/// <value>Ellipsis value
+/// 1.20</value>
+   public double Ellipsis {
+      get { return GetEllipsis(); }
+      set { SetEllipsis( value); }
+   }
+   /// <summary>Wrap mode for use in the text
+/// 1.20</summary>
+/// <value>Wrap mode
+/// 1.20</value>
+   public Efl.TextFormatWrap Wrap {
+      get { return GetWrap(); }
+      set { SetWrap( value); }
+   }
+   /// <summary>Multiline is enabled or not
+/// 1.20</summary>
+/// <value><c>true</c> if multiline is enabled, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Multiline {
+      get { return GetMultiline(); }
+      set { SetMultiline( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Alignment type
+/// 1.20</value>
+   public Efl.TextFormatHorizontalAlignmentAutoType HalignAutoType {
+      get { return GetHalignAutoType(); }
+      set { SetHalignAutoType( value); }
+   }
+   /// <summary>Horizontal alignment of text
+/// 1.20</summary>
+/// <value>Horizontal alignment value
+/// 1.20</value>
+   public double Halign {
+      get { return GetHalign(); }
+      set { SetHalign( value); }
+   }
+   /// <summary>Vertical alignment of text
+/// 1.20</summary>
+/// <value>Vertical alignment value
+/// 1.20</value>
+   public double Valign {
+      get { return GetValign(); }
+      set { SetValign( value); }
+   }
+   /// <summary>Minimal line gap (top and bottom) for each line in the text
+/// <c>value</c> is absolute size.
+/// 1.20</summary>
+/// <value>Line gap value
+/// 1.20</value>
+   public double Linegap {
+      get { return GetLinegap(); }
+      set { SetLinegap( value); }
+   }
+   /// <summary>Relative line gap (top and bottom) for each line in the text
+/// The original line gap value is multiplied by <c>value</c>.
+/// 1.20</summary>
+/// <value>Relative line gap value
+/// 1.20</value>
+   public double Linerelgap {
+      get { return GetLinerelgap(); }
+      set { SetLinerelgap( value); }
+   }
+   /// <summary>Tabstops value
+/// 1.20</summary>
+/// <value>Tapstops value
+/// 1.20</value>
+   public  int Tabstops {
+      get { return GetTabstops(); }
+      set { SetTabstops( value); }
+   }
+   /// <summary>Whether text is a password
+/// 1.20</summary>
+/// <value><c>true</c> if the text is a password, <c>false</c> otherwise
+/// 1.20</value>
+   public bool Password {
+      get { return GetPassword(); }
+      set { SetPassword( value); }
+   }
+   /// <summary>The character used to replace characters that can&apos;t be displayed
+/// Currently only used to replace characters if <see cref="Efl.TextFormat.Password"/> is enabled.
+/// 1.20</summary>
+/// <value>Replacement character
+/// 1.20</value>
+   public  System.String ReplacementChar {
+      get { return GetReplacementChar(); }
+      set { SetReplacementChar( value); }
+   }
+   /// <summary>Whether or not selection is allowed on this object</summary>
+/// <value><c>true</c> if enabled, <c>false</c> otherwise</value>
+   public bool SelectionAllowed {
+      get { return GetSelectionAllowed(); }
+      set { SetSelectionAllowed( value); }
+   }
+   /// <summary>Whether the entry is editable.
+/// By default text interactives are editable. However setting this property to <c>false</c> will make it so that key input will be disregarded.</summary>
+/// <value>If <c>true</c>, user input will be inserted in the entry, if not, the entry is read-only and no user input is allowed.</value>
+   public bool Editable {
+      get { return GetEditable(); }
+      set { SetEditable( value); }
+   }
+   /// <summary>Enable or disable backing type
+/// 1.20</summary>
+/// <value>Backing type
+/// 1.20</value>
+   public Efl.TextStyleBackingType BackingType {
+      get { return GetBackingType(); }
+      set { SetBackingType( value); }
+   }
+   /// <summary>Sets an underline style on the text
+/// 1.20</summary>
+/// <value>Underline type
+/// 1.20</value>
+   public Efl.TextStyleUnderlineType UnderlineType {
+      get { return GetUnderlineType(); }
+      set { SetUnderlineType( value); }
+   }
+   /// <summary>Height of underline style
+/// 1.20</summary>
+/// <value>Height
+/// 1.20</value>
+   public double UnderlineHeight {
+      get { return GetUnderlineHeight(); }
+      set { SetUnderlineHeight( value); }
+   }
+   /// <summary>Width of dashed underline style
+/// 1.20</summary>
+/// <value>Width
+/// 1.20</value>
+   public  int UnderlineDashedWidth {
+      get { return GetUnderlineDashedWidth(); }
+      set { SetUnderlineDashedWidth( value); }
+   }
+   /// <summary>Gap of dashed underline style
+/// 1.20</summary>
+/// <value>Gap
+/// 1.20</value>
+   public  int UnderlineDashedGap {
+      get { return GetUnderlineDashedGap(); }
+      set { SetUnderlineDashedGap( value); }
+   }
+   /// <summary>Type of strikethrough style
+/// 1.20</summary>
+/// <value>Strikethrough type
+/// 1.20</value>
+   public Efl.TextStyleStrikethroughType StrikethroughType {
+      get { return GetStrikethroughType(); }
+      set { SetStrikethroughType( value); }
+   }
+   /// <summary>Type of effect used for the displayed text
+/// 1.20</summary>
+/// <value>Effect type
+/// 1.20</value>
+   public Efl.TextStyleEffectType EffectType {
+      get { return GetEffectType(); }
+      set { SetEffectType( value); }
+   }
+   /// <summary>Direction of shadow effect
+/// 1.20</summary>
+/// <value>Shadow direction
+/// 1.20</value>
+   public Efl.TextStyleShadowDirection ShadowDirection {
+      get { return GetShadowDirection(); }
+      set { SetShadowDirection( value); }
+   }
+   /// <summary>Program that applies a special filter
+/// See <see cref="Efl.Gfx.Filter"/>.
+/// 1.20</summary>
+/// <value>Filter code
+/// 1.20</value>
+   public  System.String GfxFilter {
+      get { return GetGfxFilter(); }
+      set { SetGfxFilter( value); }
+   }
+   /// <summary>Caret offset property</summary>
+/// <value>Offset</value>
+   public  int CaretOffset {
+      get { return GetCaretOffset(); }
+      set { SetCaretOffset( value); }
+   }
+   /// <summary>Default attributes</summary>
+/// <value>List of default attributes</value>
+   public Eina.List<Efl.Access.TextAttribute> DefaultAttributes {
+      get { return GetDefaultAttributes(); }
+   }
+   /// <summary>Character count</summary>
+/// <value>Character count</value>
+   public  int CharacterCount {
+      get { return GetCharacterCount(); }
+   }
+   /// <summary>Selection count property</summary>
+/// <value>Selection counter</value>
+   public  int SelectionsCount {
+      get { return GetSelectionsCount(); }
+   }
+   /// <summary>Editable content property</summary>
+/// <value>Content</value>
+   public  System.String TextContent {
+      set { SetTextContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Text.efl_ui_text_class_get();
+   }
+}
+public class TextNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_text_scrollable_get_static_delegate == null)
+      efl_ui_text_scrollable_get_static_delegate = new efl_ui_text_scrollable_get_delegate(scrollable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_scrollable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_scrollable_get_static_delegate)});
+      if (efl_ui_text_scrollable_set_static_delegate == null)
+      efl_ui_text_scrollable_set_static_delegate = new efl_ui_text_scrollable_set_delegate(scrollable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_scrollable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_scrollable_set_static_delegate)});
+      if (efl_ui_text_input_panel_show_on_demand_get_static_delegate == null)
+      efl_ui_text_input_panel_show_on_demand_get_static_delegate = new efl_ui_text_input_panel_show_on_demand_get_delegate(input_panel_show_on_demand_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_show_on_demand_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_show_on_demand_get_static_delegate)});
+      if (efl_ui_text_input_panel_show_on_demand_set_static_delegate == null)
+      efl_ui_text_input_panel_show_on_demand_set_static_delegate = new efl_ui_text_input_panel_show_on_demand_set_delegate(input_panel_show_on_demand_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_show_on_demand_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_show_on_demand_set_static_delegate)});
+      if (efl_ui_text_context_menu_disabled_get_static_delegate == null)
+      efl_ui_text_context_menu_disabled_get_static_delegate = new efl_ui_text_context_menu_disabled_get_delegate(context_menu_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_context_menu_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_context_menu_disabled_get_static_delegate)});
+      if (efl_ui_text_context_menu_disabled_set_static_delegate == null)
+      efl_ui_text_context_menu_disabled_set_static_delegate = new efl_ui_text_context_menu_disabled_set_delegate(context_menu_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_context_menu_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_context_menu_disabled_set_static_delegate)});
+      if (efl_ui_text_cnp_mode_get_static_delegate == null)
+      efl_ui_text_cnp_mode_get_static_delegate = new efl_ui_text_cnp_mode_get_delegate(cnp_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_cnp_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_cnp_mode_get_static_delegate)});
+      if (efl_ui_text_cnp_mode_set_static_delegate == null)
+      efl_ui_text_cnp_mode_set_static_delegate = new efl_ui_text_cnp_mode_set_delegate(cnp_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_cnp_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_cnp_mode_set_static_delegate)});
+      if (efl_ui_text_input_panel_language_get_static_delegate == null)
+      efl_ui_text_input_panel_language_get_static_delegate = new efl_ui_text_input_panel_language_get_delegate(input_panel_language_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_language_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_language_get_static_delegate)});
+      if (efl_ui_text_input_panel_language_set_static_delegate == null)
+      efl_ui_text_input_panel_language_set_static_delegate = new efl_ui_text_input_panel_language_set_delegate(input_panel_language_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_language_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_language_set_static_delegate)});
+      if (efl_ui_text_selection_handler_disabled_get_static_delegate == null)
+      efl_ui_text_selection_handler_disabled_get_static_delegate = new efl_ui_text_selection_handler_disabled_get_delegate(selection_handler_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_selection_handler_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_selection_handler_disabled_get_static_delegate)});
+      if (efl_ui_text_selection_handler_disabled_set_static_delegate == null)
+      efl_ui_text_selection_handler_disabled_set_static_delegate = new efl_ui_text_selection_handler_disabled_set_delegate(selection_handler_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_selection_handler_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_selection_handler_disabled_set_static_delegate)});
+      if (efl_ui_text_input_panel_layout_variation_get_static_delegate == null)
+      efl_ui_text_input_panel_layout_variation_get_static_delegate = new efl_ui_text_input_panel_layout_variation_get_delegate(input_panel_layout_variation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_layout_variation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_layout_variation_get_static_delegate)});
+      if (efl_ui_text_input_panel_layout_variation_set_static_delegate == null)
+      efl_ui_text_input_panel_layout_variation_set_static_delegate = new efl_ui_text_input_panel_layout_variation_set_delegate(input_panel_layout_variation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_layout_variation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_layout_variation_set_static_delegate)});
+      if (efl_ui_text_autocapital_type_get_static_delegate == null)
+      efl_ui_text_autocapital_type_get_static_delegate = new efl_ui_text_autocapital_type_get_delegate(autocapital_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_autocapital_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_autocapital_type_get_static_delegate)});
+      if (efl_ui_text_autocapital_type_set_static_delegate == null)
+      efl_ui_text_autocapital_type_set_static_delegate = new efl_ui_text_autocapital_type_set_delegate(autocapital_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_autocapital_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_autocapital_type_set_static_delegate)});
+      if (efl_ui_text_password_mode_get_static_delegate == null)
+      efl_ui_text_password_mode_get_static_delegate = new efl_ui_text_password_mode_get_delegate(password_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_password_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_password_mode_get_static_delegate)});
+      if (efl_ui_text_password_mode_set_static_delegate == null)
+      efl_ui_text_password_mode_set_static_delegate = new efl_ui_text_password_mode_set_delegate(password_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_password_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_password_mode_set_static_delegate)});
+      if (efl_ui_text_input_panel_return_key_disabled_get_static_delegate == null)
+      efl_ui_text_input_panel_return_key_disabled_get_static_delegate = new efl_ui_text_input_panel_return_key_disabled_get_delegate(input_panel_return_key_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_return_key_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_return_key_disabled_get_static_delegate)});
+      if (efl_ui_text_input_panel_return_key_disabled_set_static_delegate == null)
+      efl_ui_text_input_panel_return_key_disabled_set_static_delegate = new efl_ui_text_input_panel_return_key_disabled_set_delegate(input_panel_return_key_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_return_key_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_return_key_disabled_set_static_delegate)});
+      if (efl_ui_text_prediction_allow_get_static_delegate == null)
+      efl_ui_text_prediction_allow_get_static_delegate = new efl_ui_text_prediction_allow_get_delegate(prediction_allow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_prediction_allow_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_prediction_allow_get_static_delegate)});
+      if (efl_ui_text_prediction_allow_set_static_delegate == null)
+      efl_ui_text_prediction_allow_set_static_delegate = new efl_ui_text_prediction_allow_set_delegate(prediction_allow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_prediction_allow_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_prediction_allow_set_static_delegate)});
+      if (efl_ui_text_input_hint_get_static_delegate == null)
+      efl_ui_text_input_hint_get_static_delegate = new efl_ui_text_input_hint_get_delegate(input_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_hint_get_static_delegate)});
+      if (efl_ui_text_input_hint_set_static_delegate == null)
+      efl_ui_text_input_hint_set_static_delegate = new efl_ui_text_input_hint_set_delegate(input_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_hint_set_static_delegate)});
+      if (efl_ui_text_input_panel_layout_get_static_delegate == null)
+      efl_ui_text_input_panel_layout_get_static_delegate = new efl_ui_text_input_panel_layout_get_delegate(input_panel_layout_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_layout_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_layout_get_static_delegate)});
+      if (efl_ui_text_input_panel_layout_set_static_delegate == null)
+      efl_ui_text_input_panel_layout_set_static_delegate = new efl_ui_text_input_panel_layout_set_delegate(input_panel_layout_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_layout_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_layout_set_static_delegate)});
+      if (efl_ui_text_input_panel_return_key_type_get_static_delegate == null)
+      efl_ui_text_input_panel_return_key_type_get_static_delegate = new efl_ui_text_input_panel_return_key_type_get_delegate(input_panel_return_key_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_return_key_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_return_key_type_get_static_delegate)});
+      if (efl_ui_text_input_panel_return_key_type_set_static_delegate == null)
+      efl_ui_text_input_panel_return_key_type_set_static_delegate = new efl_ui_text_input_panel_return_key_type_set_delegate(input_panel_return_key_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_return_key_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_return_key_type_set_static_delegate)});
+      if (efl_ui_text_input_panel_enabled_get_static_delegate == null)
+      efl_ui_text_input_panel_enabled_get_static_delegate = new efl_ui_text_input_panel_enabled_get_delegate(input_panel_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_enabled_get_static_delegate)});
+      if (efl_ui_text_input_panel_enabled_set_static_delegate == null)
+      efl_ui_text_input_panel_enabled_set_static_delegate = new efl_ui_text_input_panel_enabled_set_delegate(input_panel_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_enabled_set_static_delegate)});
+      if (efl_ui_text_input_panel_return_key_autoenabled_set_static_delegate == null)
+      efl_ui_text_input_panel_return_key_autoenabled_set_static_delegate = new efl_ui_text_input_panel_return_key_autoenabled_set_delegate(input_panel_return_key_autoenabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_return_key_autoenabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_return_key_autoenabled_set_static_delegate)});
+      if (efl_ui_text_item_factory_get_static_delegate == null)
+      efl_ui_text_item_factory_get_static_delegate = new efl_ui_text_item_factory_get_delegate(item_factory_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_item_factory_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_item_factory_get_static_delegate)});
+      if (efl_ui_text_item_factory_set_static_delegate == null)
+      efl_ui_text_item_factory_set_static_delegate = new efl_ui_text_item_factory_set_delegate(item_factory_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_item_factory_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_item_factory_set_static_delegate)});
+      if (efl_ui_text_input_panel_show_static_delegate == null)
+      efl_ui_text_input_panel_show_static_delegate = new efl_ui_text_input_panel_show_delegate(input_panel_show);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_show"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_show_static_delegate)});
+      if (efl_ui_text_selection_copy_static_delegate == null)
+      efl_ui_text_selection_copy_static_delegate = new efl_ui_text_selection_copy_delegate(selection_copy);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_selection_copy"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_selection_copy_static_delegate)});
+      if (efl_ui_text_context_menu_clear_static_delegate == null)
+      efl_ui_text_context_menu_clear_static_delegate = new efl_ui_text_context_menu_clear_delegate(context_menu_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_context_menu_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_context_menu_clear_static_delegate)});
+      if (efl_ui_text_input_panel_imdata_set_static_delegate == null)
+      efl_ui_text_input_panel_imdata_set_static_delegate = new efl_ui_text_input_panel_imdata_set_delegate(input_panel_imdata_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_imdata_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_imdata_set_static_delegate)});
+      if (efl_ui_text_input_panel_imdata_get_static_delegate == null)
+      efl_ui_text_input_panel_imdata_get_static_delegate = new efl_ui_text_input_panel_imdata_get_delegate(input_panel_imdata_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_imdata_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_imdata_get_static_delegate)});
+      if (efl_ui_text_selection_paste_static_delegate == null)
+      efl_ui_text_selection_paste_static_delegate = new efl_ui_text_selection_paste_delegate(selection_paste);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_selection_paste"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_selection_paste_static_delegate)});
+      if (efl_ui_text_input_panel_hide_static_delegate == null)
+      efl_ui_text_input_panel_hide_static_delegate = new efl_ui_text_input_panel_hide_delegate(input_panel_hide);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_input_panel_hide"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_input_panel_hide_static_delegate)});
+      if (efl_ui_text_cursor_selection_end_static_delegate == null)
+      efl_ui_text_cursor_selection_end_static_delegate = new efl_ui_text_cursor_selection_end_delegate(cursor_selection_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_cursor_selection_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_cursor_selection_end_static_delegate)});
+      if (efl_ui_text_selection_cut_static_delegate == null)
+      efl_ui_text_selection_cut_static_delegate = new efl_ui_text_selection_cut_delegate(selection_cut);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_selection_cut"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_selection_cut_static_delegate)});
+      if (efl_ui_text_context_menu_item_add_static_delegate == null)
+      efl_ui_text_context_menu_item_add_static_delegate = new efl_ui_text_context_menu_item_add_delegate(context_menu_item_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_context_menu_item_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_context_menu_item_add_static_delegate)});
+      if (efl_ui_text_cursor_new_static_delegate == null)
+      efl_ui_text_cursor_new_static_delegate = new efl_ui_text_cursor_new_delegate(cursor_new);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_cursor_new"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_cursor_new_static_delegate)});
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_text_font_get_static_delegate == null)
+      efl_text_font_get_static_delegate = new efl_text_font_get_delegate(font_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_get_static_delegate)});
+      if (efl_text_font_set_static_delegate == null)
+      efl_text_font_set_static_delegate = new efl_text_font_set_delegate(font_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_set_static_delegate)});
+      if (efl_text_font_source_get_static_delegate == null)
+      efl_text_font_source_get_static_delegate = new efl_text_font_source_get_delegate(font_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_get_static_delegate)});
+      if (efl_text_font_source_set_static_delegate == null)
+      efl_text_font_source_set_static_delegate = new efl_text_font_source_set_delegate(font_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_source_set_static_delegate)});
+      if (efl_text_font_fallbacks_get_static_delegate == null)
+      efl_text_font_fallbacks_get_static_delegate = new efl_text_font_fallbacks_get_delegate(font_fallbacks_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_get_static_delegate)});
+      if (efl_text_font_fallbacks_set_static_delegate == null)
+      efl_text_font_fallbacks_set_static_delegate = new efl_text_font_fallbacks_set_delegate(font_fallbacks_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_fallbacks_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_fallbacks_set_static_delegate)});
+      if (efl_text_font_weight_get_static_delegate == null)
+      efl_text_font_weight_get_static_delegate = new efl_text_font_weight_get_delegate(font_weight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_get_static_delegate)});
+      if (efl_text_font_weight_set_static_delegate == null)
+      efl_text_font_weight_set_static_delegate = new efl_text_font_weight_set_delegate(font_weight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_weight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_weight_set_static_delegate)});
+      if (efl_text_font_slant_get_static_delegate == null)
+      efl_text_font_slant_get_static_delegate = new efl_text_font_slant_get_delegate(font_slant_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_get_static_delegate)});
+      if (efl_text_font_slant_set_static_delegate == null)
+      efl_text_font_slant_set_static_delegate = new efl_text_font_slant_set_delegate(font_slant_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_slant_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_slant_set_static_delegate)});
+      if (efl_text_font_width_get_static_delegate == null)
+      efl_text_font_width_get_static_delegate = new efl_text_font_width_get_delegate(font_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_get_static_delegate)});
+      if (efl_text_font_width_set_static_delegate == null)
+      efl_text_font_width_set_static_delegate = new efl_text_font_width_set_delegate(font_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_width_set_static_delegate)});
+      if (efl_text_font_lang_get_static_delegate == null)
+      efl_text_font_lang_get_static_delegate = new efl_text_font_lang_get_delegate(font_lang_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_get_static_delegate)});
+      if (efl_text_font_lang_set_static_delegate == null)
+      efl_text_font_lang_set_static_delegate = new efl_text_font_lang_set_delegate(font_lang_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_lang_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_lang_set_static_delegate)});
+      if (efl_text_font_bitmap_scalable_get_static_delegate == null)
+      efl_text_font_bitmap_scalable_get_static_delegate = new efl_text_font_bitmap_scalable_get_delegate(font_bitmap_scalable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_get_static_delegate)});
+      if (efl_text_font_bitmap_scalable_set_static_delegate == null)
+      efl_text_font_bitmap_scalable_set_static_delegate = new efl_text_font_bitmap_scalable_set_delegate(font_bitmap_scalable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_font_bitmap_scalable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_font_bitmap_scalable_set_static_delegate)});
+      if (efl_text_ellipsis_get_static_delegate == null)
+      efl_text_ellipsis_get_static_delegate = new efl_text_ellipsis_get_delegate(ellipsis_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_get_static_delegate)});
+      if (efl_text_ellipsis_set_static_delegate == null)
+      efl_text_ellipsis_set_static_delegate = new efl_text_ellipsis_set_delegate(ellipsis_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_ellipsis_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_ellipsis_set_static_delegate)});
+      if (efl_text_wrap_get_static_delegate == null)
+      efl_text_wrap_get_static_delegate = new efl_text_wrap_get_delegate(wrap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_get_static_delegate)});
+      if (efl_text_wrap_set_static_delegate == null)
+      efl_text_wrap_set_static_delegate = new efl_text_wrap_set_delegate(wrap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_wrap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_wrap_set_static_delegate)});
+      if (efl_text_multiline_get_static_delegate == null)
+      efl_text_multiline_get_static_delegate = new efl_text_multiline_get_delegate(multiline_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_get_static_delegate)});
+      if (efl_text_multiline_set_static_delegate == null)
+      efl_text_multiline_set_static_delegate = new efl_text_multiline_set_delegate(multiline_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_multiline_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_multiline_set_static_delegate)});
+      if (efl_text_halign_auto_type_get_static_delegate == null)
+      efl_text_halign_auto_type_get_static_delegate = new efl_text_halign_auto_type_get_delegate(halign_auto_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_get_static_delegate)});
+      if (efl_text_halign_auto_type_set_static_delegate == null)
+      efl_text_halign_auto_type_set_static_delegate = new efl_text_halign_auto_type_set_delegate(halign_auto_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_auto_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_auto_type_set_static_delegate)});
+      if (efl_text_halign_get_static_delegate == null)
+      efl_text_halign_get_static_delegate = new efl_text_halign_get_delegate(halign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_get_static_delegate)});
+      if (efl_text_halign_set_static_delegate == null)
+      efl_text_halign_set_static_delegate = new efl_text_halign_set_delegate(halign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_halign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_halign_set_static_delegate)});
+      if (efl_text_valign_get_static_delegate == null)
+      efl_text_valign_get_static_delegate = new efl_text_valign_get_delegate(valign_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_get_static_delegate)});
+      if (efl_text_valign_set_static_delegate == null)
+      efl_text_valign_set_static_delegate = new efl_text_valign_set_delegate(valign_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_valign_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_valign_set_static_delegate)});
+      if (efl_text_linegap_get_static_delegate == null)
+      efl_text_linegap_get_static_delegate = new efl_text_linegap_get_delegate(linegap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_get_static_delegate)});
+      if (efl_text_linegap_set_static_delegate == null)
+      efl_text_linegap_set_static_delegate = new efl_text_linegap_set_delegate(linegap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linegap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linegap_set_static_delegate)});
+      if (efl_text_linerelgap_get_static_delegate == null)
+      efl_text_linerelgap_get_static_delegate = new efl_text_linerelgap_get_delegate(linerelgap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_get_static_delegate)});
+      if (efl_text_linerelgap_set_static_delegate == null)
+      efl_text_linerelgap_set_static_delegate = new efl_text_linerelgap_set_delegate(linerelgap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_linerelgap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_linerelgap_set_static_delegate)});
+      if (efl_text_tabstops_get_static_delegate == null)
+      efl_text_tabstops_get_static_delegate = new efl_text_tabstops_get_delegate(tabstops_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_get_static_delegate)});
+      if (efl_text_tabstops_set_static_delegate == null)
+      efl_text_tabstops_set_static_delegate = new efl_text_tabstops_set_delegate(tabstops_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_tabstops_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_tabstops_set_static_delegate)});
+      if (efl_text_password_get_static_delegate == null)
+      efl_text_password_get_static_delegate = new efl_text_password_get_delegate(password_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_get_static_delegate)});
+      if (efl_text_password_set_static_delegate == null)
+      efl_text_password_set_static_delegate = new efl_text_password_set_delegate(password_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_password_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_password_set_static_delegate)});
+      if (efl_text_replacement_char_get_static_delegate == null)
+      efl_text_replacement_char_get_static_delegate = new efl_text_replacement_char_get_delegate(replacement_char_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_get_static_delegate)});
+      if (efl_text_replacement_char_set_static_delegate == null)
+      efl_text_replacement_char_set_static_delegate = new efl_text_replacement_char_set_delegate(replacement_char_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_replacement_char_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_replacement_char_set_static_delegate)});
+      if (efl_text_interactive_selection_allowed_get_static_delegate == null)
+      efl_text_interactive_selection_allowed_get_static_delegate = new efl_text_interactive_selection_allowed_get_delegate(selection_allowed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_selection_allowed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_selection_allowed_get_static_delegate)});
+      if (efl_text_interactive_selection_allowed_set_static_delegate == null)
+      efl_text_interactive_selection_allowed_set_static_delegate = new efl_text_interactive_selection_allowed_set_delegate(selection_allowed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_selection_allowed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_selection_allowed_set_static_delegate)});
+      if (efl_text_interactive_selection_cursors_get_static_delegate == null)
+      efl_text_interactive_selection_cursors_get_static_delegate = new efl_text_interactive_selection_cursors_get_delegate(selection_cursors_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_selection_cursors_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_selection_cursors_get_static_delegate)});
+      if (efl_text_interactive_editable_get_static_delegate == null)
+      efl_text_interactive_editable_get_static_delegate = new efl_text_interactive_editable_get_delegate(editable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_editable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_editable_get_static_delegate)});
+      if (efl_text_interactive_editable_set_static_delegate == null)
+      efl_text_interactive_editable_set_static_delegate = new efl_text_interactive_editable_set_delegate(editable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_editable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_editable_set_static_delegate)});
+      if (efl_text_interactive_select_none_static_delegate == null)
+      efl_text_interactive_select_none_static_delegate = new efl_text_interactive_select_none_delegate(select_none);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_interactive_select_none"), func = Marshal.GetFunctionPointerForDelegate(efl_text_interactive_select_none_static_delegate)});
+      if (efl_text_normal_color_get_static_delegate == null)
+      efl_text_normal_color_get_static_delegate = new efl_text_normal_color_get_delegate(normal_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_get_static_delegate)});
+      if (efl_text_normal_color_set_static_delegate == null)
+      efl_text_normal_color_set_static_delegate = new efl_text_normal_color_set_delegate(normal_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_normal_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_normal_color_set_static_delegate)});
+      if (efl_text_backing_type_get_static_delegate == null)
+      efl_text_backing_type_get_static_delegate = new efl_text_backing_type_get_delegate(backing_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_get_static_delegate)});
+      if (efl_text_backing_type_set_static_delegate == null)
+      efl_text_backing_type_set_static_delegate = new efl_text_backing_type_set_delegate(backing_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_type_set_static_delegate)});
+      if (efl_text_backing_color_get_static_delegate == null)
+      efl_text_backing_color_get_static_delegate = new efl_text_backing_color_get_delegate(backing_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_get_static_delegate)});
+      if (efl_text_backing_color_set_static_delegate == null)
+      efl_text_backing_color_set_static_delegate = new efl_text_backing_color_set_delegate(backing_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_backing_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_backing_color_set_static_delegate)});
+      if (efl_text_underline_type_get_static_delegate == null)
+      efl_text_underline_type_get_static_delegate = new efl_text_underline_type_get_delegate(underline_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_get_static_delegate)});
+      if (efl_text_underline_type_set_static_delegate == null)
+      efl_text_underline_type_set_static_delegate = new efl_text_underline_type_set_delegate(underline_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_type_set_static_delegate)});
+      if (efl_text_underline_color_get_static_delegate == null)
+      efl_text_underline_color_get_static_delegate = new efl_text_underline_color_get_delegate(underline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_get_static_delegate)});
+      if (efl_text_underline_color_set_static_delegate == null)
+      efl_text_underline_color_set_static_delegate = new efl_text_underline_color_set_delegate(underline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_color_set_static_delegate)});
+      if (efl_text_underline_height_get_static_delegate == null)
+      efl_text_underline_height_get_static_delegate = new efl_text_underline_height_get_delegate(underline_height_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_get_static_delegate)});
+      if (efl_text_underline_height_set_static_delegate == null)
+      efl_text_underline_height_set_static_delegate = new efl_text_underline_height_set_delegate(underline_height_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_height_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_height_set_static_delegate)});
+      if (efl_text_underline_dashed_color_get_static_delegate == null)
+      efl_text_underline_dashed_color_get_static_delegate = new efl_text_underline_dashed_color_get_delegate(underline_dashed_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_get_static_delegate)});
+      if (efl_text_underline_dashed_color_set_static_delegate == null)
+      efl_text_underline_dashed_color_set_static_delegate = new efl_text_underline_dashed_color_set_delegate(underline_dashed_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_color_set_static_delegate)});
+      if (efl_text_underline_dashed_width_get_static_delegate == null)
+      efl_text_underline_dashed_width_get_static_delegate = new efl_text_underline_dashed_width_get_delegate(underline_dashed_width_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_get_static_delegate)});
+      if (efl_text_underline_dashed_width_set_static_delegate == null)
+      efl_text_underline_dashed_width_set_static_delegate = new efl_text_underline_dashed_width_set_delegate(underline_dashed_width_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_width_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_width_set_static_delegate)});
+      if (efl_text_underline_dashed_gap_get_static_delegate == null)
+      efl_text_underline_dashed_gap_get_static_delegate = new efl_text_underline_dashed_gap_get_delegate(underline_dashed_gap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_get_static_delegate)});
+      if (efl_text_underline_dashed_gap_set_static_delegate == null)
+      efl_text_underline_dashed_gap_set_static_delegate = new efl_text_underline_dashed_gap_set_delegate(underline_dashed_gap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline_dashed_gap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline_dashed_gap_set_static_delegate)});
+      if (efl_text_underline2_color_get_static_delegate == null)
+      efl_text_underline2_color_get_static_delegate = new efl_text_underline2_color_get_delegate(underline2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_get_static_delegate)});
+      if (efl_text_underline2_color_set_static_delegate == null)
+      efl_text_underline2_color_set_static_delegate = new efl_text_underline2_color_set_delegate(underline2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_underline2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_underline2_color_set_static_delegate)});
+      if (efl_text_strikethrough_type_get_static_delegate == null)
+      efl_text_strikethrough_type_get_static_delegate = new efl_text_strikethrough_type_get_delegate(strikethrough_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_get_static_delegate)});
+      if (efl_text_strikethrough_type_set_static_delegate == null)
+      efl_text_strikethrough_type_set_static_delegate = new efl_text_strikethrough_type_set_delegate(strikethrough_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_type_set_static_delegate)});
+      if (efl_text_strikethrough_color_get_static_delegate == null)
+      efl_text_strikethrough_color_get_static_delegate = new efl_text_strikethrough_color_get_delegate(strikethrough_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_get_static_delegate)});
+      if (efl_text_strikethrough_color_set_static_delegate == null)
+      efl_text_strikethrough_color_set_static_delegate = new efl_text_strikethrough_color_set_delegate(strikethrough_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_strikethrough_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_strikethrough_color_set_static_delegate)});
+      if (efl_text_effect_type_get_static_delegate == null)
+      efl_text_effect_type_get_static_delegate = new efl_text_effect_type_get_delegate(effect_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_get_static_delegate)});
+      if (efl_text_effect_type_set_static_delegate == null)
+      efl_text_effect_type_set_static_delegate = new efl_text_effect_type_set_delegate(effect_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_effect_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_effect_type_set_static_delegate)});
+      if (efl_text_outline_color_get_static_delegate == null)
+      efl_text_outline_color_get_static_delegate = new efl_text_outline_color_get_delegate(outline_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_get_static_delegate)});
+      if (efl_text_outline_color_set_static_delegate == null)
+      efl_text_outline_color_set_static_delegate = new efl_text_outline_color_set_delegate(outline_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_outline_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_outline_color_set_static_delegate)});
+      if (efl_text_shadow_direction_get_static_delegate == null)
+      efl_text_shadow_direction_get_static_delegate = new efl_text_shadow_direction_get_delegate(shadow_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_get_static_delegate)});
+      if (efl_text_shadow_direction_set_static_delegate == null)
+      efl_text_shadow_direction_set_static_delegate = new efl_text_shadow_direction_set_delegate(shadow_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_direction_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_direction_set_static_delegate)});
+      if (efl_text_shadow_color_get_static_delegate == null)
+      efl_text_shadow_color_get_static_delegate = new efl_text_shadow_color_get_delegate(shadow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_get_static_delegate)});
+      if (efl_text_shadow_color_set_static_delegate == null)
+      efl_text_shadow_color_set_static_delegate = new efl_text_shadow_color_set_delegate(shadow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_shadow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_shadow_color_set_static_delegate)});
+      if (efl_text_glow_color_get_static_delegate == null)
+      efl_text_glow_color_get_static_delegate = new efl_text_glow_color_get_delegate(glow_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_get_static_delegate)});
+      if (efl_text_glow_color_set_static_delegate == null)
+      efl_text_glow_color_set_static_delegate = new efl_text_glow_color_set_delegate(glow_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow_color_set_static_delegate)});
+      if (efl_text_glow2_color_get_static_delegate == null)
+      efl_text_glow2_color_get_static_delegate = new efl_text_glow2_color_get_delegate(glow2_color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_get_static_delegate)});
+      if (efl_text_glow2_color_set_static_delegate == null)
+      efl_text_glow2_color_set_static_delegate = new efl_text_glow2_color_set_delegate(glow2_color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_glow2_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_glow2_color_set_static_delegate)});
+      if (efl_text_gfx_filter_get_static_delegate == null)
+      efl_text_gfx_filter_get_static_delegate = new efl_text_gfx_filter_get_delegate(gfx_filter_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_get_static_delegate)});
+      if (efl_text_gfx_filter_set_static_delegate == null)
+      efl_text_gfx_filter_set_static_delegate = new efl_text_gfx_filter_set_delegate(gfx_filter_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_gfx_filter_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_gfx_filter_set_static_delegate)});
+      if (efl_access_text_character_get_static_delegate == null)
+      efl_access_text_character_get_static_delegate = new efl_access_text_character_get_delegate(character_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_character_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_character_get_static_delegate)});
+      if (efl_access_text_string_get_static_delegate == null)
+      efl_access_text_string_get_static_delegate = new efl_access_text_string_get_delegate(string_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_string_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_string_get_static_delegate)});
+      if (efl_access_text_get_static_delegate == null)
+      efl_access_text_get_static_delegate = new efl_access_text_get_delegate(access_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_get_static_delegate)});
+      if (efl_access_text_caret_offset_get_static_delegate == null)
+      efl_access_text_caret_offset_get_static_delegate = new efl_access_text_caret_offset_get_delegate(caret_offset_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_caret_offset_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_caret_offset_get_static_delegate)});
+      if (efl_access_text_caret_offset_set_static_delegate == null)
+      efl_access_text_caret_offset_set_static_delegate = new efl_access_text_caret_offset_set_delegate(caret_offset_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_caret_offset_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_caret_offset_set_static_delegate)});
+      if (efl_access_text_attribute_get_static_delegate == null)
+      efl_access_text_attribute_get_static_delegate = new efl_access_text_attribute_get_delegate(attribute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_attribute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_attribute_get_static_delegate)});
+      if (efl_access_text_attributes_get_static_delegate == null)
+      efl_access_text_attributes_get_static_delegate = new efl_access_text_attributes_get_delegate(text_attributes_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_attributes_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_attributes_get_static_delegate)});
+      if (efl_access_text_default_attributes_get_static_delegate == null)
+      efl_access_text_default_attributes_get_static_delegate = new efl_access_text_default_attributes_get_delegate(default_attributes_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_default_attributes_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_default_attributes_get_static_delegate)});
+      if (efl_access_text_character_extents_get_static_delegate == null)
+      efl_access_text_character_extents_get_static_delegate = new efl_access_text_character_extents_get_delegate(character_extents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_character_extents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_character_extents_get_static_delegate)});
+      if (efl_access_text_character_count_get_static_delegate == null)
+      efl_access_text_character_count_get_static_delegate = new efl_access_text_character_count_get_delegate(character_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_character_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_character_count_get_static_delegate)});
+      if (efl_access_text_offset_at_point_get_static_delegate == null)
+      efl_access_text_offset_at_point_get_static_delegate = new efl_access_text_offset_at_point_get_delegate(offset_at_point_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_offset_at_point_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_offset_at_point_get_static_delegate)});
+      if (efl_access_text_bounded_ranges_get_static_delegate == null)
+      efl_access_text_bounded_ranges_get_static_delegate = new efl_access_text_bounded_ranges_get_delegate(bounded_ranges_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_bounded_ranges_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_bounded_ranges_get_static_delegate)});
+      if (efl_access_text_range_extents_get_static_delegate == null)
+      efl_access_text_range_extents_get_static_delegate = new efl_access_text_range_extents_get_delegate(range_extents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_range_extents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_range_extents_get_static_delegate)});
+      if (efl_access_text_selections_count_get_static_delegate == null)
+      efl_access_text_selections_count_get_static_delegate = new efl_access_text_selections_count_get_delegate(selections_count_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_selections_count_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_selections_count_get_static_delegate)});
+      if (efl_access_text_access_selection_get_static_delegate == null)
+      efl_access_text_access_selection_get_static_delegate = new efl_access_text_access_selection_get_delegate(access_selection_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_access_selection_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_access_selection_get_static_delegate)});
+      if (efl_access_text_access_selection_set_static_delegate == null)
+      efl_access_text_access_selection_set_static_delegate = new efl_access_text_access_selection_set_delegate(access_selection_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_access_selection_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_access_selection_set_static_delegate)});
+      if (efl_access_text_selection_add_static_delegate == null)
+      efl_access_text_selection_add_static_delegate = new efl_access_text_selection_add_delegate(selection_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_selection_add"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_selection_add_static_delegate)});
+      if (efl_access_text_selection_remove_static_delegate == null)
+      efl_access_text_selection_remove_static_delegate = new efl_access_text_selection_remove_delegate(selection_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_text_selection_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_access_text_selection_remove_static_delegate)});
+      if (efl_access_editable_text_content_set_static_delegate == null)
+      efl_access_editable_text_content_set_static_delegate = new efl_access_editable_text_content_set_delegate(text_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_content_set_static_delegate)});
+      if (efl_access_editable_text_insert_static_delegate == null)
+      efl_access_editable_text_insert_static_delegate = new efl_access_editable_text_insert_delegate(insert);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_insert"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_insert_static_delegate)});
+      if (efl_access_editable_text_copy_static_delegate == null)
+      efl_access_editable_text_copy_static_delegate = new efl_access_editable_text_copy_delegate(copy);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_copy"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_copy_static_delegate)});
+      if (efl_access_editable_text_cut_static_delegate == null)
+      efl_access_editable_text_cut_static_delegate = new efl_access_editable_text_cut_delegate(cut);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_cut"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_cut_static_delegate)});
+      if (efl_access_editable_text_delete_static_delegate == null)
+      efl_access_editable_text_delete_static_delegate = new efl_access_editable_text_delete_delegate(kw_delete);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_delete"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_delete_static_delegate)});
+      if (efl_access_editable_text_paste_static_delegate == null)
+      efl_access_editable_text_paste_static_delegate = new efl_access_editable_text_paste_delegate(paste);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_editable_text_paste"), func = Marshal.GetFunctionPointerForDelegate(efl_access_editable_text_paste_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Text.efl_ui_text_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Text.efl_ui_text_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_scrollable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_scrollable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_scrollable_get_api_delegate> efl_ui_text_scrollable_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_scrollable_get_api_delegate>(_Module, "efl_ui_text_scrollable_get");
+    private static bool scrollable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_scrollable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetScrollable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_scrollable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_scrollable_get_delegate efl_ui_text_scrollable_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_scrollable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool scroll);
+
+
+    public delegate  void efl_ui_text_scrollable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool scroll);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_scrollable_set_api_delegate> efl_ui_text_scrollable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_scrollable_set_api_delegate>(_Module, "efl_ui_text_scrollable_set");
+    private static  void scrollable_set(System.IntPtr obj, System.IntPtr pd,  bool scroll)
+   {
+      Eina.Log.Debug("function efl_ui_text_scrollable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetScrollable( scroll);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_scrollable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll);
+      }
+   }
+   private static efl_ui_text_scrollable_set_delegate efl_ui_text_scrollable_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_input_panel_show_on_demand_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_input_panel_show_on_demand_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_show_on_demand_get_api_delegate> efl_ui_text_input_panel_show_on_demand_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_show_on_demand_get_api_delegate>(_Module, "efl_ui_text_input_panel_show_on_demand_get");
+    private static bool input_panel_show_on_demand_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_show_on_demand_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetInputPanelShowOnDemand();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_panel_show_on_demand_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_show_on_demand_get_delegate efl_ui_text_input_panel_show_on_demand_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_show_on_demand_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool ondemand);
+
+
+    public delegate  void efl_ui_text_input_panel_show_on_demand_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool ondemand);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_show_on_demand_set_api_delegate> efl_ui_text_input_panel_show_on_demand_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_show_on_demand_set_api_delegate>(_Module, "efl_ui_text_input_panel_show_on_demand_set");
+    private static  void input_panel_show_on_demand_set(System.IntPtr obj, System.IntPtr pd,  bool ondemand)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_show_on_demand_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelShowOnDemand( ondemand);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_show_on_demand_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ondemand);
+      }
+   }
+   private static efl_ui_text_input_panel_show_on_demand_set_delegate efl_ui_text_input_panel_show_on_demand_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_context_menu_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_context_menu_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_disabled_get_api_delegate> efl_ui_text_context_menu_disabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_disabled_get_api_delegate>(_Module, "efl_ui_text_context_menu_disabled_get");
+    private static bool context_menu_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_context_menu_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetContextMenuDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_context_menu_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_context_menu_disabled_get_delegate efl_ui_text_context_menu_disabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_context_menu_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void efl_ui_text_context_menu_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_disabled_set_api_delegate> efl_ui_text_context_menu_disabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_disabled_set_api_delegate>(_Module, "efl_ui_text_context_menu_disabled_set");
+    private static  void context_menu_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function efl_ui_text_context_menu_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetContextMenuDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_context_menu_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static efl_ui_text_context_menu_disabled_set_delegate efl_ui_text_context_menu_disabled_set_static_delegate;
+
+
+    private delegate Efl.Ui.SelectionFormat efl_ui_text_cnp_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.SelectionFormat efl_ui_text_cnp_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_cnp_mode_get_api_delegate> efl_ui_text_cnp_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_cnp_mode_get_api_delegate>(_Module, "efl_ui_text_cnp_mode_get");
+    private static Efl.Ui.SelectionFormat cnp_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_cnp_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.SelectionFormat _ret_var = default(Efl.Ui.SelectionFormat);
+         try {
+            _ret_var = ((Text)wrapper).GetCnpMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_cnp_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_cnp_mode_get_delegate efl_ui_text_cnp_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_cnp_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format);
+
+
+    public delegate  void efl_ui_text_cnp_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_cnp_mode_set_api_delegate> efl_ui_text_cnp_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_cnp_mode_set_api_delegate>(_Module, "efl_ui_text_cnp_mode_set");
+    private static  void cnp_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format)
+   {
+      Eina.Log.Debug("function efl_ui_text_cnp_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetCnpMode( format);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_cnp_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format);
+      }
+   }
+   private static efl_ui_text_cnp_mode_set_delegate efl_ui_text_cnp_mode_set_static_delegate;
+
+
+    private delegate Elm.Input.Panel.Lang efl_ui_text_input_panel_language_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Input.Panel.Lang efl_ui_text_input_panel_language_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_language_get_api_delegate> efl_ui_text_input_panel_language_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_language_get_api_delegate>(_Module, "efl_ui_text_input_panel_language_get");
+    private static Elm.Input.Panel.Lang input_panel_language_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_language_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Input.Panel.Lang _ret_var = default(Elm.Input.Panel.Lang);
+         try {
+            _ret_var = ((Text)wrapper).GetInputPanelLanguage();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_panel_language_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_language_get_delegate efl_ui_text_input_panel_language_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_language_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Input.Panel.Lang lang);
+
+
+    public delegate  void efl_ui_text_input_panel_language_set_api_delegate(System.IntPtr obj,   Elm.Input.Panel.Lang lang);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_language_set_api_delegate> efl_ui_text_input_panel_language_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_language_set_api_delegate>(_Module, "efl_ui_text_input_panel_language_set");
+    private static  void input_panel_language_set(System.IntPtr obj, System.IntPtr pd,  Elm.Input.Panel.Lang lang)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_language_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelLanguage( lang);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_language_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  lang);
+      }
+   }
+   private static efl_ui_text_input_panel_language_set_delegate efl_ui_text_input_panel_language_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_selection_handler_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_selection_handler_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_selection_handler_disabled_get_api_delegate> efl_ui_text_selection_handler_disabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_selection_handler_disabled_get_api_delegate>(_Module, "efl_ui_text_selection_handler_disabled_get");
+    private static bool selection_handler_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_selection_handler_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetSelectionHandlerDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_selection_handler_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_selection_handler_disabled_get_delegate efl_ui_text_selection_handler_disabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_selection_handler_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void efl_ui_text_selection_handler_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_selection_handler_disabled_set_api_delegate> efl_ui_text_selection_handler_disabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_selection_handler_disabled_set_api_delegate>(_Module, "efl_ui_text_selection_handler_disabled_set");
+    private static  void selection_handler_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function efl_ui_text_selection_handler_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetSelectionHandlerDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_selection_handler_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static efl_ui_text_selection_handler_disabled_set_delegate efl_ui_text_selection_handler_disabled_set_static_delegate;
+
+
+    private delegate  int efl_ui_text_input_panel_layout_variation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_text_input_panel_layout_variation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_variation_get_api_delegate> efl_ui_text_input_panel_layout_variation_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_variation_get_api_delegate>(_Module, "efl_ui_text_input_panel_layout_variation_get");
+    private static  int input_panel_layout_variation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_layout_variation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetInputPanelLayoutVariation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_panel_layout_variation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_layout_variation_get_delegate efl_ui_text_input_panel_layout_variation_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_layout_variation_set_delegate(System.IntPtr obj, System.IntPtr pd,    int variation);
+
+
+    public delegate  void efl_ui_text_input_panel_layout_variation_set_api_delegate(System.IntPtr obj,    int variation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_variation_set_api_delegate> efl_ui_text_input_panel_layout_variation_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_variation_set_api_delegate>(_Module, "efl_ui_text_input_panel_layout_variation_set");
+    private static  void input_panel_layout_variation_set(System.IntPtr obj, System.IntPtr pd,   int variation)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_layout_variation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelLayoutVariation( variation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_layout_variation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  variation);
+      }
+   }
+   private static efl_ui_text_input_panel_layout_variation_set_delegate efl_ui_text_input_panel_layout_variation_set_static_delegate;
+
+
+    private delegate Elm.Autocapital.Type efl_ui_text_autocapital_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Autocapital.Type efl_ui_text_autocapital_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_autocapital_type_get_api_delegate> efl_ui_text_autocapital_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_autocapital_type_get_api_delegate>(_Module, "efl_ui_text_autocapital_type_get");
+    private static Elm.Autocapital.Type autocapital_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_autocapital_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Autocapital.Type _ret_var = default(Elm.Autocapital.Type);
+         try {
+            _ret_var = ((Text)wrapper).GetAutocapitalType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_autocapital_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_autocapital_type_get_delegate efl_ui_text_autocapital_type_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_autocapital_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Autocapital.Type autocapital_type);
+
+
+    public delegate  void efl_ui_text_autocapital_type_set_api_delegate(System.IntPtr obj,   Elm.Autocapital.Type autocapital_type);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_autocapital_type_set_api_delegate> efl_ui_text_autocapital_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_autocapital_type_set_api_delegate>(_Module, "efl_ui_text_autocapital_type_set");
+    private static  void autocapital_type_set(System.IntPtr obj, System.IntPtr pd,  Elm.Autocapital.Type autocapital_type)
+   {
+      Eina.Log.Debug("function efl_ui_text_autocapital_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetAutocapitalType( autocapital_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_autocapital_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  autocapital_type);
+      }
+   }
+   private static efl_ui_text_autocapital_type_set_delegate efl_ui_text_autocapital_type_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_password_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_password_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_password_mode_get_api_delegate> efl_ui_text_password_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_password_mode_get_api_delegate>(_Module, "efl_ui_text_password_mode_get");
+    private static bool password_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_password_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetPasswordMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_password_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_password_mode_get_delegate efl_ui_text_password_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_password_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool password);
+
+
+    public delegate  void efl_ui_text_password_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool password);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_password_mode_set_api_delegate> efl_ui_text_password_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_password_mode_set_api_delegate>(_Module, "efl_ui_text_password_mode_set");
+    private static  void password_mode_set(System.IntPtr obj, System.IntPtr pd,  bool password)
+   {
+      Eina.Log.Debug("function efl_ui_text_password_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetPasswordMode( password);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_password_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  password);
+      }
+   }
+   private static efl_ui_text_password_mode_set_delegate efl_ui_text_password_mode_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_input_panel_return_key_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_input_panel_return_key_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_disabled_get_api_delegate> efl_ui_text_input_panel_return_key_disabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_disabled_get_api_delegate>(_Module, "efl_ui_text_input_panel_return_key_disabled_get");
+    private static bool input_panel_return_key_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_return_key_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetInputPanelReturnKeyDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_panel_return_key_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_return_key_disabled_get_delegate efl_ui_text_input_panel_return_key_disabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_return_key_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void efl_ui_text_input_panel_return_key_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_disabled_set_api_delegate> efl_ui_text_input_panel_return_key_disabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_disabled_set_api_delegate>(_Module, "efl_ui_text_input_panel_return_key_disabled_set");
+    private static  void input_panel_return_key_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_return_key_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelReturnKeyDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_return_key_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static efl_ui_text_input_panel_return_key_disabled_set_delegate efl_ui_text_input_panel_return_key_disabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_prediction_allow_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_prediction_allow_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_prediction_allow_get_api_delegate> efl_ui_text_prediction_allow_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_prediction_allow_get_api_delegate>(_Module, "efl_ui_text_prediction_allow_get");
+    private static bool prediction_allow_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_prediction_allow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetPredictionAllow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_prediction_allow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_prediction_allow_get_delegate efl_ui_text_prediction_allow_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_prediction_allow_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool prediction);
+
+
+    public delegate  void efl_ui_text_prediction_allow_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool prediction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_prediction_allow_set_api_delegate> efl_ui_text_prediction_allow_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_prediction_allow_set_api_delegate>(_Module, "efl_ui_text_prediction_allow_set");
+    private static  void prediction_allow_set(System.IntPtr obj, System.IntPtr pd,  bool prediction)
+   {
+      Eina.Log.Debug("function efl_ui_text_prediction_allow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetPredictionAllow( prediction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_prediction_allow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  prediction);
+      }
+   }
+   private static efl_ui_text_prediction_allow_set_delegate efl_ui_text_prediction_allow_set_static_delegate;
+
+
+    private delegate Elm.Input.Hints efl_ui_text_input_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Input.Hints efl_ui_text_input_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_hint_get_api_delegate> efl_ui_text_input_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_hint_get_api_delegate>(_Module, "efl_ui_text_input_hint_get");
+    private static Elm.Input.Hints input_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Input.Hints _ret_var = default(Elm.Input.Hints);
+         try {
+            _ret_var = ((Text)wrapper).GetInputHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_hint_get_delegate efl_ui_text_input_hint_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Input.Hints hints);
+
+
+    public delegate  void efl_ui_text_input_hint_set_api_delegate(System.IntPtr obj,   Elm.Input.Hints hints);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_hint_set_api_delegate> efl_ui_text_input_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_hint_set_api_delegate>(_Module, "efl_ui_text_input_hint_set");
+    private static  void input_hint_set(System.IntPtr obj, System.IntPtr pd,  Elm.Input.Hints hints)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputHint( hints);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hints);
+      }
+   }
+   private static efl_ui_text_input_hint_set_delegate efl_ui_text_input_hint_set_static_delegate;
+
+
+    private delegate Elm.Input.Panel.Layout efl_ui_text_input_panel_layout_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Input.Panel.Layout efl_ui_text_input_panel_layout_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_get_api_delegate> efl_ui_text_input_panel_layout_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_get_api_delegate>(_Module, "efl_ui_text_input_panel_layout_get");
+    private static Elm.Input.Panel.Layout input_panel_layout_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_layout_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Input.Panel.Layout _ret_var = default(Elm.Input.Panel.Layout);
+         try {
+            _ret_var = ((Text)wrapper).GetInputPanelLayout();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_panel_layout_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_layout_get_delegate efl_ui_text_input_panel_layout_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_layout_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Input.Panel.Layout layout);
+
+
+    public delegate  void efl_ui_text_input_panel_layout_set_api_delegate(System.IntPtr obj,   Elm.Input.Panel.Layout layout);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_set_api_delegate> efl_ui_text_input_panel_layout_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_layout_set_api_delegate>(_Module, "efl_ui_text_input_panel_layout_set");
+    private static  void input_panel_layout_set(System.IntPtr obj, System.IntPtr pd,  Elm.Input.Panel.Layout layout)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_layout_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelLayout( layout);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_layout_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  layout);
+      }
+   }
+   private static efl_ui_text_input_panel_layout_set_delegate efl_ui_text_input_panel_layout_set_static_delegate;
+
+
+    private delegate Elm.Input.Panel.ReturnKey.Type efl_ui_text_input_panel_return_key_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Input.Panel.ReturnKey.Type efl_ui_text_input_panel_return_key_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_type_get_api_delegate> efl_ui_text_input_panel_return_key_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_type_get_api_delegate>(_Module, "efl_ui_text_input_panel_return_key_type_get");
+    private static Elm.Input.Panel.ReturnKey.Type input_panel_return_key_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_return_key_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Input.Panel.ReturnKey.Type _ret_var = default(Elm.Input.Panel.ReturnKey.Type);
+         try {
+            _ret_var = ((Text)wrapper).GetInputPanelReturnKeyType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_panel_return_key_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_return_key_type_get_delegate efl_ui_text_input_panel_return_key_type_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_return_key_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Input.Panel.ReturnKey.Type return_key_type);
+
+
+    public delegate  void efl_ui_text_input_panel_return_key_type_set_api_delegate(System.IntPtr obj,   Elm.Input.Panel.ReturnKey.Type return_key_type);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_type_set_api_delegate> efl_ui_text_input_panel_return_key_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_type_set_api_delegate>(_Module, "efl_ui_text_input_panel_return_key_type_set");
+    private static  void input_panel_return_key_type_set(System.IntPtr obj, System.IntPtr pd,  Elm.Input.Panel.ReturnKey.Type return_key_type)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_return_key_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelReturnKeyType( return_key_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_return_key_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  return_key_type);
+      }
+   }
+   private static efl_ui_text_input_panel_return_key_type_set_delegate efl_ui_text_input_panel_return_key_type_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_input_panel_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_input_panel_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_enabled_get_api_delegate> efl_ui_text_input_panel_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_enabled_get_api_delegate>(_Module, "efl_ui_text_input_panel_enabled_get");
+    private static bool input_panel_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetInputPanelEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_input_panel_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_enabled_get_delegate efl_ui_text_input_panel_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_ui_text_input_panel_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_enabled_set_api_delegate> efl_ui_text_input_panel_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_enabled_set_api_delegate>(_Module, "efl_ui_text_input_panel_enabled_set");
+    private static  void input_panel_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelEnabled( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_ui_text_input_panel_enabled_set_delegate efl_ui_text_input_panel_enabled_set_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_return_key_autoenabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_ui_text_input_panel_return_key_autoenabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_autoenabled_set_api_delegate> efl_ui_text_input_panel_return_key_autoenabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_return_key_autoenabled_set_api_delegate>(_Module, "efl_ui_text_input_panel_return_key_autoenabled_set");
+    private static  void input_panel_return_key_autoenabled_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_return_key_autoenabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetInputPanelReturnKeyAutoenabled( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_input_panel_return_key_autoenabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_ui_text_input_panel_return_key_autoenabled_set_delegate efl_ui_text_input_panel_return_key_autoenabled_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.TextFactoryConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.TextFactory efl_ui_text_item_factory_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.TextFactoryConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.TextFactory efl_ui_text_item_factory_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_item_factory_get_api_delegate> efl_ui_text_item_factory_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_item_factory_get_api_delegate>(_Module, "efl_ui_text_item_factory_get");
+    private static Efl.Canvas.TextFactory item_factory_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_item_factory_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.TextFactory _ret_var = default(Efl.Canvas.TextFactory);
+         try {
+            _ret_var = ((Text)wrapper).GetItemFactory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_item_factory_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_item_factory_get_delegate efl_ui_text_item_factory_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_item_factory_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.TextFactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Canvas.TextFactory item_factory);
+
+
+    public delegate  void efl_ui_text_item_factory_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.TextFactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Canvas.TextFactory item_factory);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_item_factory_set_api_delegate> efl_ui_text_item_factory_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_item_factory_set_api_delegate>(_Module, "efl_ui_text_item_factory_set");
+    private static  void item_factory_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.TextFactory item_factory)
+   {
+      Eina.Log.Debug("function efl_ui_text_item_factory_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetItemFactory( item_factory);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_item_factory_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item_factory);
+      }
+   }
+   private static efl_ui_text_item_factory_set_delegate efl_ui_text_item_factory_set_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_show_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_text_input_panel_show_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_show_api_delegate> efl_ui_text_input_panel_show_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_show_api_delegate>(_Module, "efl_ui_text_input_panel_show");
+    private static  void input_panel_show(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_show was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).ShowInputPanel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_text_input_panel_show_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_show_delegate efl_ui_text_input_panel_show_static_delegate;
+
+
+    private delegate  void efl_ui_text_selection_copy_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_text_selection_copy_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_selection_copy_api_delegate> efl_ui_text_selection_copy_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_selection_copy_api_delegate>(_Module, "efl_ui_text_selection_copy");
+    private static  void selection_copy(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_selection_copy was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).SelectionCopy();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_text_selection_copy_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_selection_copy_delegate efl_ui_text_selection_copy_static_delegate;
+
+
+    private delegate  void efl_ui_text_context_menu_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_text_context_menu_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_clear_api_delegate> efl_ui_text_context_menu_clear_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_clear_api_delegate>(_Module, "efl_ui_text_context_menu_clear");
+    private static  void context_menu_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_context_menu_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).ClearContextMenu();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_text_context_menu_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_context_menu_clear_delegate efl_ui_text_context_menu_clear_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_imdata_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr data,    int len);
+
+
+    public delegate  void efl_ui_text_input_panel_imdata_set_api_delegate(System.IntPtr obj,    System.IntPtr data,    int len);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_imdata_set_api_delegate> efl_ui_text_input_panel_imdata_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_imdata_set_api_delegate>(_Module, "efl_ui_text_input_panel_imdata_set");
+    private static  void input_panel_imdata_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr data,   int len)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_imdata_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Text)wrapper).SetInputPanelImdata( data,  len);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_text_input_panel_imdata_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  data,  len);
+      }
+   }
+   private static efl_ui_text_input_panel_imdata_set_delegate efl_ui_text_input_panel_imdata_set_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_imdata_get_delegate(System.IntPtr obj, System.IntPtr pd,   ref  System.IntPtr data,   out  int len);
+
+
+    public delegate  void efl_ui_text_input_panel_imdata_get_api_delegate(System.IntPtr obj,   ref  System.IntPtr data,   out  int len);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_imdata_get_api_delegate> efl_ui_text_input_panel_imdata_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_imdata_get_api_delegate>(_Module, "efl_ui_text_input_panel_imdata_get");
+    private static  void input_panel_imdata_get(System.IntPtr obj, System.IntPtr pd,  ref  System.IntPtr data,  out  int len)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_imdata_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 len = default( int);                     
+         try {
+            ((Text)wrapper).GetInputPanelImdata( ref data,  out len);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_text_input_panel_imdata_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref data,  out len);
+      }
+   }
+   private static efl_ui_text_input_panel_imdata_get_delegate efl_ui_text_input_panel_imdata_get_static_delegate;
+
+
+    private delegate  void efl_ui_text_selection_paste_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_text_selection_paste_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_selection_paste_api_delegate> efl_ui_text_selection_paste_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_selection_paste_api_delegate>(_Module, "efl_ui_text_selection_paste");
+    private static  void selection_paste(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_selection_paste was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).SelectionPaste();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_text_selection_paste_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_selection_paste_delegate efl_ui_text_selection_paste_static_delegate;
+
+
+    private delegate  void efl_ui_text_input_panel_hide_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_text_input_panel_hide_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_hide_api_delegate> efl_ui_text_input_panel_hide_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_input_panel_hide_api_delegate>(_Module, "efl_ui_text_input_panel_hide");
+    private static  void input_panel_hide(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_input_panel_hide was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).HideInputPanel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_text_input_panel_hide_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_input_panel_hide_delegate efl_ui_text_input_panel_hide_static_delegate;
+
+
+    private delegate  void efl_ui_text_cursor_selection_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_text_cursor_selection_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_cursor_selection_end_api_delegate> efl_ui_text_cursor_selection_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_cursor_selection_end_api_delegate>(_Module, "efl_ui_text_cursor_selection_end");
+    private static  void cursor_selection_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_cursor_selection_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).CursorSelectionEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_text_cursor_selection_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_cursor_selection_end_delegate efl_ui_text_cursor_selection_end_static_delegate;
+
+
+    private delegate  void efl_ui_text_selection_cut_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_text_selection_cut_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_selection_cut_api_delegate> efl_ui_text_selection_cut_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_selection_cut_api_delegate>(_Module, "efl_ui_text_selection_cut");
+    private static  void selection_cut(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_selection_cut was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).SelectionCut();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_text_selection_cut_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_selection_cut_delegate efl_ui_text_selection_cut_static_delegate;
+
+
+    private delegate  void efl_ui_text_context_menu_item_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String icon_file,   Elm.Icon.Type icon_type,   EvasSmartCb func,    System.IntPtr data);
+
+
+    public delegate  void efl_ui_text_context_menu_item_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String icon_file,   Elm.Icon.Type icon_type,   EvasSmartCb func,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_item_add_api_delegate> efl_ui_text_context_menu_item_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_context_menu_item_add_api_delegate>(_Module, "efl_ui_text_context_menu_item_add");
+    private static  void context_menu_item_add(System.IntPtr obj, System.IntPtr pd,   System.String label,   System.String icon_file,  Elm.Icon.Type icon_type,  EvasSmartCb func,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_ui_text_context_menu_item_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((Text)wrapper).AddContextMenuItem( label,  icon_file,  icon_type,  func,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_ui_text_context_menu_item_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  label,  icon_file,  icon_type,  func,  data);
+      }
+   }
+   private static efl_ui_text_context_menu_item_add_delegate efl_ui_text_context_menu_item_add_static_delegate;
+
+
+    private delegate Efl.TextCursorCursor efl_ui_text_cursor_new_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextCursorCursor efl_ui_text_cursor_new_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_cursor_new_api_delegate> efl_ui_text_cursor_new_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_cursor_new_api_delegate>(_Module, "efl_ui_text_cursor_new");
+    private static Efl.TextCursorCursor cursor_new(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_text_cursor_new was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextCursorCursor _ret_var = default(Efl.TextCursorCursor);
+         try {
+            _ret_var = ((Text)wrapper).NewCursor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_text_cursor_new_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_text_cursor_new_delegate efl_ui_text_cursor_new_static_delegate;
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((Text)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Text)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Text)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Text)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    private delegate  void efl_text_font_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String font,   out Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate> efl_text_font_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_get_api_delegate>(_Module, "efl_text_font_get");
+    private static  void font_get(System.IntPtr obj, System.IntPtr pd,  out  System.String font,  out Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_font = default( System.String);
+      size = default(Efl.Font.Size);                     
+         try {
+            ((Text)wrapper).GetFont( out _out_font,  out size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      font = _out_font;
+                              } else {
+         efl_text_font_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out font,  out size);
+      }
+   }
+   private static efl_text_font_get_delegate efl_text_font_get_static_delegate;
+
+
+    private delegate  void efl_text_font_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+
+
+    public delegate  void efl_text_font_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font,   Efl.Font.Size size);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate> efl_text_font_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_set_api_delegate>(_Module, "efl_text_font_set");
+    private static  void font_set(System.IntPtr obj, System.IntPtr pd,   System.String font,  Efl.Font.Size size)
+   {
+      Eina.Log.Debug("function efl_text_font_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Text)wrapper).SetFont( font,  size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_font_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font,  size);
+      }
+   }
+   private static efl_text_font_set_delegate efl_text_font_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_source_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_source_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate> efl_text_font_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_get_api_delegate>(_Module, "efl_text_font_source_get");
+    private static  System.String font_source_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetFontSource();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_source_get_delegate efl_text_font_source_get_static_delegate;
+
+
+    private delegate  void efl_text_font_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+
+
+    public delegate  void efl_text_font_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_source);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate> efl_text_font_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_source_set_api_delegate>(_Module, "efl_text_font_source_set");
+    private static  void font_source_set(System.IntPtr obj, System.IntPtr pd,   System.String font_source)
+   {
+      Eina.Log.Debug("function efl_text_font_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetFontSource( font_source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_source);
+      }
+   }
+   private static efl_text_font_source_set_delegate efl_text_font_source_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_fallbacks_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_fallbacks_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate> efl_text_font_fallbacks_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_get_api_delegate>(_Module, "efl_text_font_fallbacks_get");
+    private static  System.String font_fallbacks_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetFontFallbacks();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_fallbacks_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_fallbacks_get_delegate efl_text_font_fallbacks_get_static_delegate;
+
+
+    private delegate  void efl_text_font_fallbacks_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+
+
+    public delegate  void efl_text_font_fallbacks_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String font_fallbacks);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate> efl_text_font_fallbacks_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_fallbacks_set_api_delegate>(_Module, "efl_text_font_fallbacks_set");
+    private static  void font_fallbacks_set(System.IntPtr obj, System.IntPtr pd,   System.String font_fallbacks)
+   {
+      Eina.Log.Debug("function efl_text_font_fallbacks_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetFontFallbacks( font_fallbacks);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_fallbacks_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_fallbacks);
+      }
+   }
+   private static efl_text_font_fallbacks_set_delegate efl_text_font_fallbacks_set_static_delegate;
+
+
+    private delegate Efl.TextFontWeight efl_text_font_weight_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWeight efl_text_font_weight_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate> efl_text_font_weight_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_get_api_delegate>(_Module, "efl_text_font_weight_get");
+    private static Efl.TextFontWeight font_weight_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWeight _ret_var = default(Efl.TextFontWeight);
+         try {
+            _ret_var = ((Text)wrapper).GetFontWeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_weight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_weight_get_delegate efl_text_font_weight_get_static_delegate;
+
+
+    private delegate  void efl_text_font_weight_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWeight font_weight);
+
+
+    public delegate  void efl_text_font_weight_set_api_delegate(System.IntPtr obj,   Efl.TextFontWeight font_weight);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate> efl_text_font_weight_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_weight_set_api_delegate>(_Module, "efl_text_font_weight_set");
+    private static  void font_weight_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWeight font_weight)
+   {
+      Eina.Log.Debug("function efl_text_font_weight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetFontWeight( font_weight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_weight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  font_weight);
+      }
+   }
+   private static efl_text_font_weight_set_delegate efl_text_font_weight_set_static_delegate;
+
+
+    private delegate Efl.TextFontSlant efl_text_font_slant_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontSlant efl_text_font_slant_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate> efl_text_font_slant_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_get_api_delegate>(_Module, "efl_text_font_slant_get");
+    private static Efl.TextFontSlant font_slant_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontSlant _ret_var = default(Efl.TextFontSlant);
+         try {
+            _ret_var = ((Text)wrapper).GetFontSlant();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_slant_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_slant_get_delegate efl_text_font_slant_get_static_delegate;
+
+
+    private delegate  void efl_text_font_slant_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontSlant style);
+
+
+    public delegate  void efl_text_font_slant_set_api_delegate(System.IntPtr obj,   Efl.TextFontSlant style);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate> efl_text_font_slant_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_slant_set_api_delegate>(_Module, "efl_text_font_slant_set");
+    private static  void font_slant_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontSlant style)
+   {
+      Eina.Log.Debug("function efl_text_font_slant_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetFontSlant( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_slant_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_text_font_slant_set_delegate efl_text_font_slant_set_static_delegate;
+
+
+    private delegate Efl.TextFontWidth efl_text_font_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontWidth efl_text_font_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate> efl_text_font_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_get_api_delegate>(_Module, "efl_text_font_width_get");
+    private static Efl.TextFontWidth font_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontWidth _ret_var = default(Efl.TextFontWidth);
+         try {
+            _ret_var = ((Text)wrapper).GetFontWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_width_get_delegate efl_text_font_width_get_static_delegate;
+
+
+    private delegate  void efl_text_font_width_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontWidth width);
+
+
+    public delegate  void efl_text_font_width_set_api_delegate(System.IntPtr obj,   Efl.TextFontWidth width);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate> efl_text_font_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_width_set_api_delegate>(_Module, "efl_text_font_width_set");
+    private static  void font_width_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontWidth width)
+   {
+      Eina.Log.Debug("function efl_text_font_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetFontWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_font_width_set_delegate efl_text_font_width_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_font_lang_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_font_lang_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate> efl_text_font_lang_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_get_api_delegate>(_Module, "efl_text_font_lang_get");
+    private static  System.String font_lang_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetFontLang();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_lang_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_lang_get_delegate efl_text_font_lang_get_static_delegate;
+
+
+    private delegate  void efl_text_font_lang_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+
+
+    public delegate  void efl_text_font_lang_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String lang);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate> efl_text_font_lang_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_lang_set_api_delegate>(_Module, "efl_text_font_lang_set");
+    private static  void font_lang_set(System.IntPtr obj, System.IntPtr pd,   System.String lang)
+   {
+      Eina.Log.Debug("function efl_text_font_lang_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetFontLang( lang);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_lang_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  lang);
+      }
+   }
+   private static efl_text_font_lang_set_delegate efl_text_font_lang_set_static_delegate;
+
+
+    private delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFontBitmapScalable efl_text_font_bitmap_scalable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate> efl_text_font_bitmap_scalable_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_get_api_delegate>(_Module, "efl_text_font_bitmap_scalable_get");
+    private static Efl.TextFontBitmapScalable font_bitmap_scalable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFontBitmapScalable _ret_var = default(Efl.TextFontBitmapScalable);
+         try {
+            _ret_var = ((Text)wrapper).GetFontBitmapScalable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_font_bitmap_scalable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_font_bitmap_scalable_get_delegate efl_text_font_bitmap_scalable_get_static_delegate;
+
+
+    private delegate  void efl_text_font_bitmap_scalable_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFontBitmapScalable scalable);
+
+
+    public delegate  void efl_text_font_bitmap_scalable_set_api_delegate(System.IntPtr obj,   Efl.TextFontBitmapScalable scalable);
+    public static Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate> efl_text_font_bitmap_scalable_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_font_bitmap_scalable_set_api_delegate>(_Module, "efl_text_font_bitmap_scalable_set");
+    private static  void font_bitmap_scalable_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFontBitmapScalable scalable)
+   {
+      Eina.Log.Debug("function efl_text_font_bitmap_scalable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetFontBitmapScalable( scalable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_font_bitmap_scalable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scalable);
+      }
+   }
+   private static efl_text_font_bitmap_scalable_set_delegate efl_text_font_bitmap_scalable_set_static_delegate;
+
+
+    private delegate double efl_text_ellipsis_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_ellipsis_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate> efl_text_ellipsis_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_get_api_delegate>(_Module, "efl_text_ellipsis_get");
+    private static double ellipsis_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Text)wrapper).GetEllipsis();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_ellipsis_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_ellipsis_get_delegate efl_text_ellipsis_get_static_delegate;
+
+
+    private delegate  void efl_text_ellipsis_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_ellipsis_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate> efl_text_ellipsis_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_ellipsis_set_api_delegate>(_Module, "efl_text_ellipsis_set");
+    private static  void ellipsis_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_ellipsis_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetEllipsis( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_ellipsis_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_ellipsis_set_delegate efl_text_ellipsis_set_static_delegate;
+
+
+    private delegate Efl.TextFormatWrap efl_text_wrap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatWrap efl_text_wrap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate> efl_text_wrap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_get_api_delegate>(_Module, "efl_text_wrap_get");
+    private static Efl.TextFormatWrap wrap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_wrap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatWrap _ret_var = default(Efl.TextFormatWrap);
+         try {
+            _ret_var = ((Text)wrapper).GetWrap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_wrap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_wrap_get_delegate efl_text_wrap_get_static_delegate;
+
+
+    private delegate  void efl_text_wrap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatWrap wrap);
+
+
+    public delegate  void efl_text_wrap_set_api_delegate(System.IntPtr obj,   Efl.TextFormatWrap wrap);
+    public static Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate> efl_text_wrap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_wrap_set_api_delegate>(_Module, "efl_text_wrap_set");
+    private static  void wrap_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatWrap wrap)
+   {
+      Eina.Log.Debug("function efl_text_wrap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetWrap( wrap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_wrap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  wrap);
+      }
+   }
+   private static efl_text_wrap_set_delegate efl_text_wrap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_multiline_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_multiline_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate> efl_text_multiline_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_get_api_delegate>(_Module, "efl_text_multiline_get");
+    private static bool multiline_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_multiline_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetMultiline();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_multiline_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_multiline_get_delegate efl_text_multiline_get_static_delegate;
+
+
+    private delegate  void efl_text_multiline_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_multiline_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate> efl_text_multiline_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_multiline_set_api_delegate>(_Module, "efl_text_multiline_set");
+    private static  void multiline_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_multiline_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetMultiline( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_multiline_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_multiline_set_delegate efl_text_multiline_set_static_delegate;
+
+
+    private delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextFormatHorizontalAlignmentAutoType efl_text_halign_auto_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate> efl_text_halign_auto_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_get_api_delegate>(_Module, "efl_text_halign_auto_type_get");
+    private static Efl.TextFormatHorizontalAlignmentAutoType halign_auto_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextFormatHorizontalAlignmentAutoType _ret_var = default(Efl.TextFormatHorizontalAlignmentAutoType);
+         try {
+            _ret_var = ((Text)wrapper).GetHalignAutoType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_auto_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_auto_type_get_delegate efl_text_halign_auto_type_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_auto_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextFormatHorizontalAlignmentAutoType value);
+
+
+    public delegate  void efl_text_halign_auto_type_set_api_delegate(System.IntPtr obj,   Efl.TextFormatHorizontalAlignmentAutoType value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate> efl_text_halign_auto_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_auto_type_set_api_delegate>(_Module, "efl_text_halign_auto_type_set");
+    private static  void halign_auto_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextFormatHorizontalAlignmentAutoType value)
+   {
+      Eina.Log.Debug("function efl_text_halign_auto_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetHalignAutoType( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_auto_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_auto_type_set_delegate efl_text_halign_auto_type_set_static_delegate;
+
+
+    private delegate double efl_text_halign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_halign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate> efl_text_halign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_get_api_delegate>(_Module, "efl_text_halign_get");
+    private static double halign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_halign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Text)wrapper).GetHalign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_halign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_halign_get_delegate efl_text_halign_get_static_delegate;
+
+
+    private delegate  void efl_text_halign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_halign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate> efl_text_halign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_halign_set_api_delegate>(_Module, "efl_text_halign_set");
+    private static  void halign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_halign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetHalign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_halign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_halign_set_delegate efl_text_halign_set_static_delegate;
+
+
+    private delegate double efl_text_valign_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_valign_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate> efl_text_valign_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_get_api_delegate>(_Module, "efl_text_valign_get");
+    private static double valign_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_valign_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Text)wrapper).GetValign();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_valign_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_valign_get_delegate efl_text_valign_get_static_delegate;
+
+
+    private delegate  void efl_text_valign_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_valign_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate> efl_text_valign_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_valign_set_api_delegate>(_Module, "efl_text_valign_set");
+    private static  void valign_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_valign_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetValign( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_valign_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_valign_set_delegate efl_text_valign_set_static_delegate;
+
+
+    private delegate double efl_text_linegap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linegap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate> efl_text_linegap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_get_api_delegate>(_Module, "efl_text_linegap_get");
+    private static double linegap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linegap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Text)wrapper).GetLinegap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linegap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linegap_get_delegate efl_text_linegap_get_static_delegate;
+
+
+    private delegate  void efl_text_linegap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linegap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate> efl_text_linegap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linegap_set_api_delegate>(_Module, "efl_text_linegap_set");
+    private static  void linegap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linegap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetLinegap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linegap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linegap_set_delegate efl_text_linegap_set_static_delegate;
+
+
+    private delegate double efl_text_linerelgap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_linerelgap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate> efl_text_linerelgap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_get_api_delegate>(_Module, "efl_text_linerelgap_get");
+    private static double linerelgap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Text)wrapper).GetLinerelgap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_linerelgap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_linerelgap_get_delegate efl_text_linerelgap_get_static_delegate;
+
+
+    private delegate  void efl_text_linerelgap_set_delegate(System.IntPtr obj, System.IntPtr pd,   double value);
+
+
+    public delegate  void efl_text_linerelgap_set_api_delegate(System.IntPtr obj,   double value);
+    public static Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate> efl_text_linerelgap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_linerelgap_set_api_delegate>(_Module, "efl_text_linerelgap_set");
+    private static  void linerelgap_set(System.IntPtr obj, System.IntPtr pd,  double value)
+   {
+      Eina.Log.Debug("function efl_text_linerelgap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetLinerelgap( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_linerelgap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_linerelgap_set_delegate efl_text_linerelgap_set_static_delegate;
+
+
+    private delegate  int efl_text_tabstops_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_tabstops_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate> efl_text_tabstops_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_get_api_delegate>(_Module, "efl_text_tabstops_get");
+    private static  int tabstops_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetTabstops();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_tabstops_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_tabstops_get_delegate efl_text_tabstops_get_static_delegate;
+
+
+    private delegate  void efl_text_tabstops_set_delegate(System.IntPtr obj, System.IntPtr pd,    int value);
+
+
+    public delegate  void efl_text_tabstops_set_api_delegate(System.IntPtr obj,    int value);
+    public static Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate> efl_text_tabstops_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_tabstops_set_api_delegate>(_Module, "efl_text_tabstops_set");
+    private static  void tabstops_set(System.IntPtr obj, System.IntPtr pd,   int value)
+   {
+      Eina.Log.Debug("function efl_text_tabstops_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetTabstops( value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_tabstops_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  value);
+      }
+   }
+   private static efl_text_tabstops_set_delegate efl_text_tabstops_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_password_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_password_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate> efl_text_password_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_get_api_delegate>(_Module, "efl_text_password_get");
+    private static bool password_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_password_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetPassword();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_password_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_password_get_delegate efl_text_password_get_static_delegate;
+
+
+    private delegate  void efl_text_password_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_text_password_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate> efl_text_password_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_password_set_api_delegate>(_Module, "efl_text_password_set");
+    private static  void password_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_text_password_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetPassword( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_password_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_text_password_set_delegate efl_text_password_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_replacement_char_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_replacement_char_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate> efl_text_replacement_char_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_get_api_delegate>(_Module, "efl_text_replacement_char_get");
+    private static  System.String replacement_char_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetReplacementChar();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_replacement_char_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_replacement_char_get_delegate efl_text_replacement_char_get_static_delegate;
+
+
+    private delegate  void efl_text_replacement_char_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+
+
+    public delegate  void efl_text_replacement_char_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String repch);
+    public static Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate> efl_text_replacement_char_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_replacement_char_set_api_delegate>(_Module, "efl_text_replacement_char_set");
+    private static  void replacement_char_set(System.IntPtr obj, System.IntPtr pd,   System.String repch)
+   {
+      Eina.Log.Debug("function efl_text_replacement_char_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetReplacementChar( repch);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_replacement_char_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repch);
+      }
+   }
+   private static efl_text_replacement_char_set_delegate efl_text_replacement_char_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_interactive_selection_allowed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_interactive_selection_allowed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_get_api_delegate> efl_text_interactive_selection_allowed_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_get_api_delegate>(_Module, "efl_text_interactive_selection_allowed_get");
+    private static bool selection_allowed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_interactive_selection_allowed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetSelectionAllowed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_interactive_selection_allowed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_interactive_selection_allowed_get_delegate efl_text_interactive_selection_allowed_get_static_delegate;
+
+
+    private delegate  void efl_text_interactive_selection_allowed_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool allowed);
+
+
+    public delegate  void efl_text_interactive_selection_allowed_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool allowed);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_set_api_delegate> efl_text_interactive_selection_allowed_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_selection_allowed_set_api_delegate>(_Module, "efl_text_interactive_selection_allowed_set");
+    private static  void selection_allowed_set(System.IntPtr obj, System.IntPtr pd,  bool allowed)
+   {
+      Eina.Log.Debug("function efl_text_interactive_selection_allowed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetSelectionAllowed( allowed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_interactive_selection_allowed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  allowed);
+      }
+   }
+   private static efl_text_interactive_selection_allowed_set_delegate efl_text_interactive_selection_allowed_set_static_delegate;
+
+
+    private delegate  void efl_text_interactive_selection_cursors_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Efl.TextCursorCursor start,   out Efl.TextCursorCursor end);
+
+
+    public delegate  void efl_text_interactive_selection_cursors_get_api_delegate(System.IntPtr obj,   out Efl.TextCursorCursor start,   out Efl.TextCursorCursor end);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_selection_cursors_get_api_delegate> efl_text_interactive_selection_cursors_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_selection_cursors_get_api_delegate>(_Module, "efl_text_interactive_selection_cursors_get");
+    private static  void selection_cursors_get(System.IntPtr obj, System.IntPtr pd,  out Efl.TextCursorCursor start,  out Efl.TextCursorCursor end)
+   {
+      Eina.Log.Debug("function efl_text_interactive_selection_cursors_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           start = default(Efl.TextCursorCursor);      end = default(Efl.TextCursorCursor);                     
+         try {
+            ((Text)wrapper).GetSelectionCursors( out start,  out end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_text_interactive_selection_cursors_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out start,  out end);
+      }
+   }
+   private static efl_text_interactive_selection_cursors_get_delegate efl_text_interactive_selection_cursors_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_text_interactive_editable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_text_interactive_editable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_editable_get_api_delegate> efl_text_interactive_editable_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_editable_get_api_delegate>(_Module, "efl_text_interactive_editable_get");
+    private static bool editable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_interactive_editable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetEditable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_interactive_editable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_interactive_editable_get_delegate efl_text_interactive_editable_get_static_delegate;
+
+
+    private delegate  void efl_text_interactive_editable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+
+
+    public delegate  void efl_text_interactive_editable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool editable);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_editable_set_api_delegate> efl_text_interactive_editable_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_editable_set_api_delegate>(_Module, "efl_text_interactive_editable_set");
+    private static  void editable_set(System.IntPtr obj, System.IntPtr pd,  bool editable)
+   {
+      Eina.Log.Debug("function efl_text_interactive_editable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetEditable( editable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_interactive_editable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  editable);
+      }
+   }
+   private static efl_text_interactive_editable_set_delegate efl_text_interactive_editable_set_static_delegate;
+
+
+    private delegate  void efl_text_interactive_select_none_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_text_interactive_select_none_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_interactive_select_none_api_delegate> efl_text_interactive_select_none_ptr = new Efl.Eo.FunctionWrapper<efl_text_interactive_select_none_api_delegate>(_Module, "efl_text_interactive_select_none");
+    private static  void select_none(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_interactive_select_none was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Text)wrapper).SelectNone();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_text_interactive_select_none_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_interactive_select_none_delegate efl_text_interactive_select_none_static_delegate;
+
+
+    private delegate  void efl_text_normal_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_normal_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate> efl_text_normal_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_get_api_delegate>(_Module, "efl_text_normal_color_get");
+    private static  void normal_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetNormalColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_normal_color_get_delegate efl_text_normal_color_get_static_delegate;
+
+
+    private delegate  void efl_text_normal_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_normal_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate> efl_text_normal_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_normal_color_set_api_delegate>(_Module, "efl_text_normal_color_set");
+    private static  void normal_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_normal_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetNormalColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_normal_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_normal_color_set_delegate efl_text_normal_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleBackingType efl_text_backing_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleBackingType efl_text_backing_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate> efl_text_backing_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_get_api_delegate>(_Module, "efl_text_backing_type_get");
+    private static Efl.TextStyleBackingType backing_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleBackingType _ret_var = default(Efl.TextStyleBackingType);
+         try {
+            _ret_var = ((Text)wrapper).GetBackingType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_backing_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_backing_type_get_delegate efl_text_backing_type_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleBackingType type);
+
+
+    public delegate  void efl_text_backing_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleBackingType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate> efl_text_backing_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_type_set_api_delegate>(_Module, "efl_text_backing_type_set");
+    private static  void backing_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleBackingType type)
+   {
+      Eina.Log.Debug("function efl_text_backing_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetBackingType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_backing_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_backing_type_set_delegate efl_text_backing_type_set_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_backing_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate> efl_text_backing_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_get_api_delegate>(_Module, "efl_text_backing_color_get");
+    private static  void backing_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetBackingColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_backing_color_get_delegate efl_text_backing_color_get_static_delegate;
+
+
+    private delegate  void efl_text_backing_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_backing_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate> efl_text_backing_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_backing_color_set_api_delegate>(_Module, "efl_text_backing_color_set");
+    private static  void backing_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_backing_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetBackingColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_backing_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_backing_color_set_delegate efl_text_backing_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleUnderlineType efl_text_underline_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate> efl_text_underline_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_get_api_delegate>(_Module, "efl_text_underline_type_get");
+    private static Efl.TextStyleUnderlineType underline_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleUnderlineType _ret_var = default(Efl.TextStyleUnderlineType);
+         try {
+            _ret_var = ((Text)wrapper).GetUnderlineType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_type_get_delegate efl_text_underline_type_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleUnderlineType type);
+
+
+    public delegate  void efl_text_underline_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleUnderlineType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate> efl_text_underline_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_type_set_api_delegate>(_Module, "efl_text_underline_type_set");
+    private static  void underline_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleUnderlineType type)
+   {
+      Eina.Log.Debug("function efl_text_underline_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetUnderlineType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_underline_type_set_delegate efl_text_underline_type_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate> efl_text_underline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_get_api_delegate>(_Module, "efl_text_underline_color_get");
+    private static  void underline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetUnderlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_color_get_delegate efl_text_underline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate> efl_text_underline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_color_set_api_delegate>(_Module, "efl_text_underline_color_set");
+    private static  void underline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetUnderlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_color_set_delegate efl_text_underline_color_set_static_delegate;
+
+
+    private delegate double efl_text_underline_height_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_text_underline_height_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate> efl_text_underline_height_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_get_api_delegate>(_Module, "efl_text_underline_height_get");
+    private static double underline_height_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Text)wrapper).GetUnderlineHeight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_height_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_height_get_delegate efl_text_underline_height_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_height_set_delegate(System.IntPtr obj, System.IntPtr pd,   double height);
+
+
+    public delegate  void efl_text_underline_height_set_api_delegate(System.IntPtr obj,   double height);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate> efl_text_underline_height_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_height_set_api_delegate>(_Module, "efl_text_underline_height_set");
+    private static  void underline_height_set(System.IntPtr obj, System.IntPtr pd,  double height)
+   {
+      Eina.Log.Debug("function efl_text_underline_height_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetUnderlineHeight( height);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_height_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  height);
+      }
+   }
+   private static efl_text_underline_height_set_delegate efl_text_underline_height_set_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate> efl_text_underline_dashed_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_get_api_delegate>(_Module, "efl_text_underline_dashed_color_get");
+    private static  void underline_dashed_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetUnderlineDashedColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline_dashed_color_get_delegate efl_text_underline_dashed_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline_dashed_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate> efl_text_underline_dashed_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_color_set_api_delegate>(_Module, "efl_text_underline_dashed_color_set");
+    private static  void underline_dashed_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetUnderlineDashedColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline_dashed_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline_dashed_color_set_delegate efl_text_underline_dashed_color_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_width_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_width_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate> efl_text_underline_dashed_width_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_get_api_delegate>(_Module, "efl_text_underline_dashed_width_get");
+    private static  int underline_dashed_width_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetUnderlineDashedWidth();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_width_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_width_get_delegate efl_text_underline_dashed_width_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_width_set_delegate(System.IntPtr obj, System.IntPtr pd,    int width);
+
+
+    public delegate  void efl_text_underline_dashed_width_set_api_delegate(System.IntPtr obj,    int width);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate> efl_text_underline_dashed_width_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_width_set_api_delegate>(_Module, "efl_text_underline_dashed_width_set");
+    private static  void underline_dashed_width_set(System.IntPtr obj, System.IntPtr pd,   int width)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_width_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetUnderlineDashedWidth( width);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_width_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  width);
+      }
+   }
+   private static efl_text_underline_dashed_width_set_delegate efl_text_underline_dashed_width_set_static_delegate;
+
+
+    private delegate  int efl_text_underline_dashed_gap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_text_underline_dashed_gap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate> efl_text_underline_dashed_gap_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_get_api_delegate>(_Module, "efl_text_underline_dashed_gap_get");
+    private static  int underline_dashed_gap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetUnderlineDashedGap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_underline_dashed_gap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_underline_dashed_gap_get_delegate efl_text_underline_dashed_gap_get_static_delegate;
+
+
+    private delegate  void efl_text_underline_dashed_gap_set_delegate(System.IntPtr obj, System.IntPtr pd,    int gap);
+
+
+    public delegate  void efl_text_underline_dashed_gap_set_api_delegate(System.IntPtr obj,    int gap);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate> efl_text_underline_dashed_gap_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline_dashed_gap_set_api_delegate>(_Module, "efl_text_underline_dashed_gap_set");
+    private static  void underline_dashed_gap_set(System.IntPtr obj, System.IntPtr pd,   int gap)
+   {
+      Eina.Log.Debug("function efl_text_underline_dashed_gap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetUnderlineDashedGap( gap);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_underline_dashed_gap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gap);
+      }
+   }
+   private static efl_text_underline_dashed_gap_set_delegate efl_text_underline_dashed_gap_set_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_underline2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate> efl_text_underline2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_get_api_delegate>(_Module, "efl_text_underline2_color_get");
+    private static  void underline2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetUnderline2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_underline2_color_get_delegate efl_text_underline2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_underline2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_underline2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate> efl_text_underline2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_underline2_color_set_api_delegate>(_Module, "efl_text_underline2_color_set");
+    private static  void underline2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_underline2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetUnderline2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_underline2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_underline2_color_set_delegate efl_text_underline2_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleStrikethroughType efl_text_strikethrough_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate> efl_text_strikethrough_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_get_api_delegate>(_Module, "efl_text_strikethrough_type_get");
+    private static Efl.TextStyleStrikethroughType strikethrough_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleStrikethroughType _ret_var = default(Efl.TextStyleStrikethroughType);
+         try {
+            _ret_var = ((Text)wrapper).GetStrikethroughType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_strikethrough_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_strikethrough_type_get_delegate efl_text_strikethrough_type_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleStrikethroughType type);
+
+
+    public delegate  void efl_text_strikethrough_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleStrikethroughType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate> efl_text_strikethrough_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_type_set_api_delegate>(_Module, "efl_text_strikethrough_type_set");
+    private static  void strikethrough_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleStrikethroughType type)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetStrikethroughType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_strikethrough_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_strikethrough_type_set_delegate efl_text_strikethrough_type_set_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate> efl_text_strikethrough_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_get_api_delegate>(_Module, "efl_text_strikethrough_color_get");
+    private static  void strikethrough_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetStrikethroughColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_strikethrough_color_get_delegate efl_text_strikethrough_color_get_static_delegate;
+
+
+    private delegate  void efl_text_strikethrough_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_strikethrough_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate> efl_text_strikethrough_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_strikethrough_color_set_api_delegate>(_Module, "efl_text_strikethrough_color_set");
+    private static  void strikethrough_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_strikethrough_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetStrikethroughColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_strikethrough_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_strikethrough_color_set_delegate efl_text_strikethrough_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleEffectType efl_text_effect_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleEffectType efl_text_effect_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate> efl_text_effect_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_get_api_delegate>(_Module, "efl_text_effect_type_get");
+    private static Efl.TextStyleEffectType effect_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleEffectType _ret_var = default(Efl.TextStyleEffectType);
+         try {
+            _ret_var = ((Text)wrapper).GetEffectType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_effect_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_effect_type_get_delegate efl_text_effect_type_get_static_delegate;
+
+
+    private delegate  void efl_text_effect_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleEffectType type);
+
+
+    public delegate  void efl_text_effect_type_set_api_delegate(System.IntPtr obj,   Efl.TextStyleEffectType type);
+    public static Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate> efl_text_effect_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_effect_type_set_api_delegate>(_Module, "efl_text_effect_type_set");
+    private static  void effect_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleEffectType type)
+   {
+      Eina.Log.Debug("function efl_text_effect_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetEffectType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_effect_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_effect_type_set_delegate efl_text_effect_type_set_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_outline_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate> efl_text_outline_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_get_api_delegate>(_Module, "efl_text_outline_color_get");
+    private static  void outline_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetOutlineColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_outline_color_get_delegate efl_text_outline_color_get_static_delegate;
+
+
+    private delegate  void efl_text_outline_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_outline_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate> efl_text_outline_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_outline_color_set_api_delegate>(_Module, "efl_text_outline_color_set");
+    private static  void outline_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_outline_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetOutlineColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_outline_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_outline_color_set_delegate efl_text_outline_color_set_static_delegate;
+
+
+    private delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.TextStyleShadowDirection efl_text_shadow_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate> efl_text_shadow_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_get_api_delegate>(_Module, "efl_text_shadow_direction_get");
+    private static Efl.TextStyleShadowDirection shadow_direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.TextStyleShadowDirection _ret_var = default(Efl.TextStyleShadowDirection);
+         try {
+            _ret_var = ((Text)wrapper).GetShadowDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_shadow_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_shadow_direction_get_delegate efl_text_shadow_direction_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.TextStyleShadowDirection type);
+
+
+    public delegate  void efl_text_shadow_direction_set_api_delegate(System.IntPtr obj,   Efl.TextStyleShadowDirection type);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate> efl_text_shadow_direction_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_direction_set_api_delegate>(_Module, "efl_text_shadow_direction_set");
+    private static  void shadow_direction_set(System.IntPtr obj, System.IntPtr pd,  Efl.TextStyleShadowDirection type)
+   {
+      Eina.Log.Debug("function efl_text_shadow_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetShadowDirection( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_shadow_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_text_shadow_direction_set_delegate efl_text_shadow_direction_set_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_shadow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate> efl_text_shadow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_get_api_delegate>(_Module, "efl_text_shadow_color_get");
+    private static  void shadow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetShadowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_shadow_color_get_delegate efl_text_shadow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_shadow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_shadow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate> efl_text_shadow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_shadow_color_set_api_delegate>(_Module, "efl_text_shadow_color_set");
+    private static  void shadow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_shadow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetShadowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_shadow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_shadow_color_set_delegate efl_text_shadow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate> efl_text_glow_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_get_api_delegate>(_Module, "efl_text_glow_color_get");
+    private static  void glow_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetGlowColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow_color_get_delegate efl_text_glow_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate> efl_text_glow_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow_color_set_api_delegate>(_Module, "efl_text_glow_color_set");
+    private static  void glow_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetGlowColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow_color_set_delegate efl_text_glow_color_set_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+
+
+    public delegate  void efl_text_glow2_color_get_api_delegate(System.IntPtr obj,   out  byte r,   out  byte g,   out  byte b,   out  byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate> efl_text_glow2_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_get_api_delegate>(_Module, "efl_text_glow2_color_get");
+    private static  void glow2_color_get(System.IntPtr obj, System.IntPtr pd,  out  byte r,  out  byte g,  out  byte b,  out  byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( byte);      g = default( byte);      b = default( byte);      a = default( byte);                                 
+         try {
+            ((Text)wrapper).GetGlow2Color( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_text_glow2_color_get_delegate efl_text_glow2_color_get_static_delegate;
+
+
+    private delegate  void efl_text_glow2_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    byte r,    byte g,    byte b,    byte a);
+
+
+    public delegate  void efl_text_glow2_color_set_api_delegate(System.IntPtr obj,    byte r,    byte g,    byte b,    byte a);
+    public static Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate> efl_text_glow2_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_glow2_color_set_api_delegate>(_Module, "efl_text_glow2_color_set");
+    private static  void glow2_color_set(System.IntPtr obj, System.IntPtr pd,   byte r,   byte g,   byte b,   byte a)
+   {
+      Eina.Log.Debug("function efl_text_glow2_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Text)wrapper).SetGlow2Color( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_text_glow2_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_text_glow2_color_set_delegate efl_text_glow2_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_gfx_filter_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_gfx_filter_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate> efl_text_gfx_filter_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_get_api_delegate>(_Module, "efl_text_gfx_filter_get");
+    private static  System.String gfx_filter_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetGfxFilter();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_gfx_filter_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_gfx_filter_get_delegate efl_text_gfx_filter_get_static_delegate;
+
+
+    private delegate  void efl_text_gfx_filter_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+
+
+    public delegate  void efl_text_gfx_filter_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code);
+    public static Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate> efl_text_gfx_filter_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_gfx_filter_set_api_delegate>(_Module, "efl_text_gfx_filter_set");
+    private static  void gfx_filter_set(System.IntPtr obj, System.IntPtr pd,   System.String code)
+   {
+      Eina.Log.Debug("function efl_text_gfx_filter_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Text)wrapper).SetGfxFilter( code);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_gfx_filter_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code);
+      }
+   }
+   private static efl_text_gfx_filter_set_delegate efl_text_gfx_filter_set_static_delegate;
+
+
+    private delegate Eina.Unicode efl_access_text_character_get_delegate(System.IntPtr obj, System.IntPtr pd,    int offset);
+
+
+    public delegate Eina.Unicode efl_access_text_character_get_api_delegate(System.IntPtr obj,    int offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_character_get_api_delegate> efl_access_text_character_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_character_get_api_delegate>(_Module, "efl_access_text_character_get");
+    private static Eina.Unicode character_get(System.IntPtr obj, System.IntPtr pd,   int offset)
+   {
+      Eina.Log.Debug("function efl_access_text_character_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Unicode _ret_var = default(Eina.Unicode);
+         try {
+            _ret_var = ((Text)wrapper).GetCharacter( offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_text_character_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset);
+      }
+   }
+   private static efl_access_text_character_get_delegate efl_access_text_character_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_text_string_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.TextGranularity granularity,    System.IntPtr start_offset,    System.IntPtr end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_text_string_get_api_delegate(System.IntPtr obj,   Efl.Access.TextGranularity granularity,    System.IntPtr start_offset,    System.IntPtr end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_string_get_api_delegate> efl_access_text_string_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_string_get_api_delegate>(_Module, "efl_access_text_string_get");
+    private static  System.String string_get(System.IntPtr obj, System.IntPtr pd,  Efl.Access.TextGranularity granularity,   System.IntPtr start_offset,   System.IntPtr end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_string_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_start_offset = Eina.PrimitiveConversion.PointerToManaged< int>(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.PointerToManaged< int>(end_offset);
+                                              System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetString( granularity,  _in_start_offset,  _in_end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_text_string_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  granularity,  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_string_get_delegate efl_access_text_string_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_text_get_delegate(System.IntPtr obj, System.IntPtr pd,    int start_offset,    int end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_text_get_api_delegate(System.IntPtr obj,    int start_offset,    int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_get_api_delegate> efl_access_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_get_api_delegate>(_Module, "efl_access_text_get");
+    private static  System.String access_text_get(System.IntPtr obj, System.IntPtr pd,   int start_offset,   int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Text)wrapper).GetAccessText( start_offset,  end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_get_delegate efl_access_text_get_static_delegate;
+
+
+    private delegate  int efl_access_text_caret_offset_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_text_caret_offset_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_get_api_delegate> efl_access_text_caret_offset_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_get_api_delegate>(_Module, "efl_access_text_caret_offset_get");
+    private static  int caret_offset_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_caret_offset_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetCaretOffset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_text_caret_offset_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_caret_offset_get_delegate efl_access_text_caret_offset_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_caret_offset_set_delegate(System.IntPtr obj, System.IntPtr pd,    int offset);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_caret_offset_set_api_delegate(System.IntPtr obj,    int offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_set_api_delegate> efl_access_text_caret_offset_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_caret_offset_set_api_delegate>(_Module, "efl_access_text_caret_offset_set");
+    private static bool caret_offset_set(System.IntPtr obj, System.IntPtr pd,   int offset)
+   {
+      Eina.Log.Debug("function efl_access_text_caret_offset_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SetCaretOffset( offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_text_caret_offset_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset);
+      }
+   }
+   private static efl_access_text_caret_offset_set_delegate efl_access_text_caret_offset_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_attribute_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,    System.IntPtr start_offset,    System.IntPtr end_offset,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]  out  System.String value);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_attribute_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,    System.IntPtr start_offset,    System.IntPtr end_offset,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))]  out  System.String value);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_attribute_get_api_delegate> efl_access_text_attribute_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_attribute_get_api_delegate>(_Module, "efl_access_text_attribute_get");
+    private static bool attribute_get(System.IntPtr obj, System.IntPtr pd,   System.String name,   System.IntPtr start_offset,   System.IntPtr end_offset,  out  System.String value)
+   {
+      Eina.Log.Debug("function efl_access_text_attribute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_start_offset = Eina.PrimitiveConversion.PointerToManaged< int>(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.PointerToManaged< int>(end_offset);
+                              value = default( System.String);                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetAttribute( name,  _in_start_offset,  _in_end_offset,  out value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_access_text_attribute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  start_offset,  end_offset,  out value);
+      }
+   }
+   private static efl_access_text_attribute_get_delegate efl_access_text_attribute_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_text_attributes_get_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr start_offset,    System.IntPtr end_offset);
+
+
+    public delegate  System.IntPtr efl_access_text_attributes_get_api_delegate(System.IntPtr obj,    System.IntPtr start_offset,    System.IntPtr end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_attributes_get_api_delegate> efl_access_text_attributes_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_attributes_get_api_delegate>(_Module, "efl_access_text_attributes_get");
+    private static  System.IntPtr text_attributes_get(System.IntPtr obj, System.IntPtr pd,   System.IntPtr start_offset,   System.IntPtr end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_attributes_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_start_offset = Eina.PrimitiveConversion.PointerToManaged< int>(start_offset);
+      var _in_end_offset = Eina.PrimitiveConversion.PointerToManaged< int>(end_offset);
+                                 Eina.List<Efl.Access.TextAttribute> _ret_var = default(Eina.List<Efl.Access.TextAttribute>);
+         try {
+            _ret_var = ((Text)wrapper).GetTextAttributes( _in_start_offset,  _in_end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_text_attributes_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_attributes_get_delegate efl_access_text_attributes_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_text_default_attributes_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_text_default_attributes_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_default_attributes_get_api_delegate> efl_access_text_default_attributes_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_default_attributes_get_api_delegate>(_Module, "efl_access_text_default_attributes_get");
+    private static  System.IntPtr default_attributes_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_default_attributes_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.TextAttribute> _ret_var = default(Eina.List<Efl.Access.TextAttribute>);
+         try {
+            _ret_var = ((Text)wrapper).GetDefaultAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_text_default_attributes_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_default_attributes_get_delegate efl_access_text_default_attributes_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_character_extents_get_delegate(System.IntPtr obj, System.IntPtr pd,    int offset,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   out Eina.Rect_StructInternal rect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_character_extents_get_api_delegate(System.IntPtr obj,    int offset,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   out Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_character_extents_get_api_delegate> efl_access_text_character_extents_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_character_extents_get_api_delegate>(_Module, "efl_access_text_character_extents_get");
+    private static bool character_extents_get(System.IntPtr obj, System.IntPtr pd,   int offset,  bool screen_coords,  out Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_access_text_character_extents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                             Eina.Rect _out_rect = default(Eina.Rect);
+                           bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetCharacterExtents( offset,  screen_coords,  out _out_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  rect = Eina.Rect_StructConversion.ToInternal(_out_rect);
+                        return _ret_var;
+      } else {
+         return efl_access_text_character_extents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  offset,  screen_coords,  out rect);
+      }
+   }
+   private static efl_access_text_character_extents_get_delegate efl_access_text_character_extents_get_static_delegate;
+
+
+    private delegate  int efl_access_text_character_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_text_character_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_character_count_get_api_delegate> efl_access_text_character_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_character_count_get_api_delegate>(_Module, "efl_access_text_character_count_get");
+    private static  int character_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_character_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetCharacterCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_text_character_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_character_count_get_delegate efl_access_text_character_count_get_static_delegate;
+
+
+    private delegate  int efl_access_text_offset_at_point_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+    public delegate  int efl_access_text_offset_at_point_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_offset_at_point_get_api_delegate> efl_access_text_offset_at_point_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_offset_at_point_get_api_delegate>(_Module, "efl_access_text_offset_at_point_get");
+    private static  int offset_at_point_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_text_offset_at_point_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                         int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetOffsetAtPoint( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_text_offset_at_point_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_text_offset_at_point_get_delegate efl_access_text_offset_at_point_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_text_bounded_ranges_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect,   Efl.Access.TextClipType xclip,   Efl.Access.TextClipType yclip);
+
+
+    public delegate  System.IntPtr efl_access_text_bounded_ranges_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect,   Efl.Access.TextClipType xclip,   Efl.Access.TextClipType yclip);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_bounded_ranges_get_api_delegate> efl_access_text_bounded_ranges_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_bounded_ranges_get_api_delegate>(_Module, "efl_access_text_bounded_ranges_get");
+    private static  System.IntPtr bounded_ranges_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,  Eina.Rect_StructInternal rect,  Efl.Access.TextClipType xclip,  Efl.Access.TextClipType yclip)
+   {
+      Eina.Log.Debug("function efl_access_text_bounded_ranges_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                                                     Eina.List<Efl.Access.TextRange> _ret_var = default(Eina.List<Efl.Access.TextRange>);
+         try {
+            _ret_var = ((Text)wrapper).GetBoundedRanges( screen_coords,  _in_rect,  xclip,  yclip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_text_bounded_ranges_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  rect,  xclip,  yclip);
+      }
+   }
+   private static efl_access_text_bounded_ranges_get_delegate efl_access_text_bounded_ranges_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_range_extents_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int start_offset,    int end_offset,   out Eina.Rect_StructInternal rect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_range_extents_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int start_offset,    int end_offset,   out Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_range_extents_get_api_delegate> efl_access_text_range_extents_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_range_extents_get_api_delegate>(_Module, "efl_access_text_range_extents_get");
+    private static bool range_extents_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int start_offset,   int end_offset,  out Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_access_text_range_extents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                         Eina.Rect _out_rect = default(Eina.Rect);
+                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).GetRangeExtents( screen_coords,  start_offset,  end_offset,  out _out_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        rect = Eina.Rect_StructConversion.ToInternal(_out_rect);
+                              return _ret_var;
+      } else {
+         return efl_access_text_range_extents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  start_offset,  end_offset,  out rect);
+      }
+   }
+   private static efl_access_text_range_extents_get_delegate efl_access_text_range_extents_get_static_delegate;
+
+
+    private delegate  int efl_access_text_selections_count_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_text_selections_count_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_selections_count_get_api_delegate> efl_access_text_selections_count_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_selections_count_get_api_delegate>(_Module, "efl_access_text_selections_count_get");
+    private static  int selections_count_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_text_selections_count_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Text)wrapper).GetSelectionsCount();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_text_selections_count_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_text_selections_count_get_delegate efl_access_text_selections_count_get_static_delegate;
+
+
+    private delegate  void efl_access_text_access_selection_get_delegate(System.IntPtr obj, System.IntPtr pd,    int selection_number,   out  int start_offset,   out  int end_offset);
+
+
+    public delegate  void efl_access_text_access_selection_get_api_delegate(System.IntPtr obj,    int selection_number,   out  int start_offset,   out  int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_access_selection_get_api_delegate> efl_access_text_access_selection_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_access_selection_get_api_delegate>(_Module, "efl_access_text_access_selection_get");
+    private static  void access_selection_get(System.IntPtr obj, System.IntPtr pd,   int selection_number,  out  int start_offset,  out  int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_access_selection_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       start_offset = default( int);      end_offset = default( int);                           
+         try {
+            ((Text)wrapper).GetAccessSelection( selection_number,  out start_offset,  out end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_access_text_access_selection_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selection_number,  out start_offset,  out end_offset);
+      }
+   }
+   private static efl_access_text_access_selection_get_delegate efl_access_text_access_selection_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_access_selection_set_delegate(System.IntPtr obj, System.IntPtr pd,    int selection_number,    int start_offset,    int end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_access_selection_set_api_delegate(System.IntPtr obj,    int selection_number,    int start_offset,    int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_access_selection_set_api_delegate> efl_access_text_access_selection_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_access_selection_set_api_delegate>(_Module, "efl_access_text_access_selection_set");
+    private static bool access_selection_set(System.IntPtr obj, System.IntPtr pd,   int selection_number,   int start_offset,   int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_access_selection_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SetAccessSelection( selection_number,  start_offset,  end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_text_access_selection_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selection_number,  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_access_selection_set_delegate efl_access_text_access_selection_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_selection_add_delegate(System.IntPtr obj, System.IntPtr pd,    int start_offset,    int end_offset);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_selection_add_api_delegate(System.IntPtr obj,    int start_offset,    int end_offset);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_selection_add_api_delegate> efl_access_text_selection_add_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_selection_add_api_delegate>(_Module, "efl_access_text_selection_add");
+    private static bool selection_add(System.IntPtr obj, System.IntPtr pd,   int start_offset,   int end_offset)
+   {
+      Eina.Log.Debug("function efl_access_text_selection_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).AddSelection( start_offset,  end_offset);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_text_selection_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start_offset,  end_offset);
+      }
+   }
+   private static efl_access_text_selection_add_delegate efl_access_text_selection_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_text_selection_remove_delegate(System.IntPtr obj, System.IntPtr pd,    int selection_number);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_text_selection_remove_api_delegate(System.IntPtr obj,    int selection_number);
+    public static Efl.Eo.FunctionWrapper<efl_access_text_selection_remove_api_delegate> efl_access_text_selection_remove_ptr = new Efl.Eo.FunctionWrapper<efl_access_text_selection_remove_api_delegate>(_Module, "efl_access_text_selection_remove");
+    private static bool selection_remove(System.IntPtr obj, System.IntPtr pd,   int selection_number)
+   {
+      Eina.Log.Debug("function efl_access_text_selection_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SelectionRemove( selection_number);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_text_selection_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  selection_number);
+      }
+   }
+   private static efl_access_text_selection_remove_delegate efl_access_text_selection_remove_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_content_set_api_delegate> efl_access_editable_text_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_content_set_api_delegate>(_Module, "efl_access_editable_text_content_set");
+    private static bool text_content_set(System.IntPtr obj, System.IntPtr pd,   System.String kw_string)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).SetTextContent( kw_string);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_editable_text_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_string);
+      }
+   }
+   private static efl_access_editable_text_content_set_delegate efl_access_editable_text_content_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_insert_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string,    int position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_insert_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String kw_string,    int position);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_insert_api_delegate> efl_access_editable_text_insert_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_insert_api_delegate>(_Module, "efl_access_editable_text_insert");
+    private static bool insert(System.IntPtr obj, System.IntPtr pd,   System.String kw_string,   int position)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_insert was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Insert( kw_string,  position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_insert_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_string,  position);
+      }
+   }
+   private static efl_access_editable_text_insert_delegate efl_access_editable_text_insert_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_copy_delegate(System.IntPtr obj, System.IntPtr pd,    int start,    int end);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_copy_api_delegate(System.IntPtr obj,    int start,    int end);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_copy_api_delegate> efl_access_editable_text_copy_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_copy_api_delegate>(_Module, "efl_access_editable_text_copy");
+    private static bool copy(System.IntPtr obj, System.IntPtr pd,   int start,   int end)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_copy was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Copy( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_copy_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_access_editable_text_copy_delegate efl_access_editable_text_copy_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_cut_delegate(System.IntPtr obj, System.IntPtr pd,    int start,    int end);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_cut_api_delegate(System.IntPtr obj,    int start,    int end);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_cut_api_delegate> efl_access_editable_text_cut_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_cut_api_delegate>(_Module, "efl_access_editable_text_cut");
+    private static bool cut(System.IntPtr obj, System.IntPtr pd,   int start,   int end)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_cut was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Cut( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_cut_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_access_editable_text_cut_delegate efl_access_editable_text_cut_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_delete_delegate(System.IntPtr obj, System.IntPtr pd,    int start,    int end);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_delete_api_delegate(System.IntPtr obj,    int start,    int end);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_delete_api_delegate> efl_access_editable_text_delete_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_delete_api_delegate>(_Module, "efl_access_editable_text_delete");
+    private static bool kw_delete(System.IntPtr obj, System.IntPtr pd,   int start,   int end)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_delete was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Delete( start,  end);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_editable_text_delete_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  start,  end);
+      }
+   }
+   private static efl_access_editable_text_delete_delegate efl_access_editable_text_delete_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_editable_text_paste_delegate(System.IntPtr obj, System.IntPtr pd,    int position);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_editable_text_paste_api_delegate(System.IntPtr obj,    int position);
+    public static Efl.Eo.FunctionWrapper<efl_access_editable_text_paste_api_delegate> efl_access_editable_text_paste_ptr = new Efl.Eo.FunctionWrapper<efl_access_editable_text_paste_api_delegate>(_Module, "efl_access_editable_text_paste");
+    private static bool paste(System.IntPtr obj, System.IntPtr pd,   int position)
+   {
+      Eina.Log.Debug("function efl_access_editable_text_paste was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Text)wrapper).Paste( position);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_editable_text_paste_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  position);
+      }
+   }
+   private static efl_access_editable_text_paste_delegate efl_access_editable_text_paste_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_alert_popup.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_alert_popup.eo.cs
new file mode 100755 (executable)
index 0000000..e0bc679
--- /dev/null
@@ -0,0 +1,210 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>EFL UI Text Alert Popup class</summary>
+[TextAlertPopupNativeInherit]
+public class TextAlertPopup : Efl.Ui.AlertPopup, Efl.Eo.IWrapper,Efl.Text
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextAlertPopupNativeInherit nativeInherit = new Efl.Ui.TextAlertPopupNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextAlertPopup))
+            return Efl.Ui.TextAlertPopupNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_alert_popup_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TextAlertPopup(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_text_alert_popup_class_get(), typeof(TextAlertPopup), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextAlertPopup(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TextAlertPopup(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TextAlertPopup static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextAlertPopup(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Set the expandable of popup.
+   /// If the contents of the popup has min size, the popup will be increased by min size along the Y axis. If max hint is set it will be increased to the value of max hint and scrolling will occur.</summary>
+   /// <param name="max_size">A 2D max size in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetExpandable( Eina.Size2D max_size) {
+       var _in_max_size = Eina.Size2D_StructConversion.ToInternal(max_size);
+                  Efl.Ui.TextAlertPopupNativeInherit.efl_ui_text_alert_popup_expandable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_max_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the expandable of popup.
+/// If the contents of the popup has min size, the popup will be increased by min size along the Y axis. If max hint is set it will be increased to the value of max hint and scrolling will occur.</summary>
+/// <value>A 2D max size in pixel units.</value>
+   public Eina.Size2D Expandable {
+      set { SetExpandable( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextAlertPopup.efl_ui_text_alert_popup_class_get();
+   }
+}
+public class TextAlertPopupNativeInherit : Efl.Ui.AlertPopupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_text_alert_popup_expandable_set_static_delegate == null)
+      efl_ui_text_alert_popup_expandable_set_static_delegate = new efl_ui_text_alert_popup_expandable_set_delegate(expandable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_alert_popup_expandable_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_alert_popup_expandable_set_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextAlertPopup.efl_ui_text_alert_popup_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextAlertPopup.efl_ui_text_alert_popup_class_get();
+   }
+
+
+    private delegate  void efl_ui_text_alert_popup_expandable_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal max_size);
+
+
+    public delegate  void efl_ui_text_alert_popup_expandable_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal max_size);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_alert_popup_expandable_set_api_delegate> efl_ui_text_alert_popup_expandable_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_alert_popup_expandable_set_api_delegate>(_Module, "efl_ui_text_alert_popup_expandable_set");
+    private static  void expandable_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal max_size)
+   {
+      Eina.Log.Debug("function efl_ui_text_alert_popup_expandable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_max_size = Eina.Size2D_StructConversion.ToManaged(max_size);
+                     
+         try {
+            ((TextAlertPopup)wrapper).SetExpandable( _in_max_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_text_alert_popup_expandable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  max_size);
+      }
+   }
+   private static efl_ui_text_alert_popup_expandable_set_delegate efl_ui_text_alert_popup_expandable_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextAlertPopup)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextAlertPopup)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_alert_popup_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_alert_popup_part.eo.cs
new file mode 100755 (executable)
index 0000000..5e4cb3e
--- /dev/null
@@ -0,0 +1,322 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Text Alert Popup internal part class</summary>
+[TextAlertPopupPartNativeInherit]
+public class TextAlertPopupPart : Efl.Ui.LayoutPart, Efl.Eo.IWrapper,Efl.Content,Efl.Text
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextAlertPopupPartNativeInherit nativeInherit = new Efl.Ui.TextAlertPopupPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextAlertPopupPart))
+            return Efl.Ui.TextAlertPopupPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_alert_popup_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public TextAlertPopupPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_text_alert_popup_part_class_get(), typeof(TextAlertPopupPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextAlertPopupPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TextAlertPopupPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TextAlertPopupPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextAlertPopupPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextAlertPopupPart.efl_ui_text_alert_popup_part_class_get();
+   }
+}
+public class TextAlertPopupPartNativeInherit : Efl.Ui.LayoutPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextAlertPopupPart.efl_ui_text_alert_popup_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextAlertPopupPart.efl_ui_text_alert_popup_part_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((TextAlertPopupPart)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((TextAlertPopupPart)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((TextAlertPopupPart)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((TextAlertPopupPart)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((TextAlertPopupPart)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_async.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_async.eo.cs
new file mode 100755 (executable)
index 0000000..65ce357
--- /dev/null
@@ -0,0 +1,95 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI text async class
+/// 1.21</summary>
+[TextAsyncNativeInherit]
+public class TextAsync : Efl.Ui.Text, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextAsyncNativeInherit nativeInherit = new Efl.Ui.TextAsyncNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextAsync))
+            return Efl.Ui.TextAsyncNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_async_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TextAsync(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_text_async_class_get(), typeof(TextAsync), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextAsync(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TextAsync(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TextAsync static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextAsync(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextAsync.efl_ui_text_async_class_get();
+   }
+}
+public class TextAsyncNativeInherit : Efl.Ui.TextNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextAsync.efl_ui_text_async_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextAsync.efl_ui_text_async_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_editable.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_editable.eo.cs
new file mode 100755 (executable)
index 0000000..5d1c6d6
--- /dev/null
@@ -0,0 +1,94 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI text editable class</summary>
+[TextEditableNativeInherit]
+public class TextEditable : Efl.Ui.Text, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextEditableNativeInherit nativeInherit = new Efl.Ui.TextEditableNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextEditable))
+            return Efl.Ui.TextEditableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_editable_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TextEditable(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_text_editable_class_get(), typeof(TextEditable), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextEditable(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TextEditable(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TextEditable static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextEditable(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextEditable.efl_ui_text_editable_class_get();
+   }
+}
+public class TextEditableNativeInherit : Efl.Ui.TextNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextEditable.efl_ui_text_editable_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextEditable.efl_ui_text_editable_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_factory_emoticons.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_factory_emoticons.eo.cs
new file mode 100755 (executable)
index 0000000..fa138e3
--- /dev/null
@@ -0,0 +1,132 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace TextFactory { 
+/// <summary>Factory that creates emoticons from the current theme given a key.
+/// 1.21</summary>
+[EmoticonsNativeInherit]
+public class Emoticons : Efl.Object, Efl.Eo.IWrapper,Efl.Canvas.TextFactory
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextFactory.EmoticonsNativeInherit nativeInherit = new Efl.Ui.TextFactory.EmoticonsNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Emoticons))
+            return Efl.Ui.TextFactory.EmoticonsNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_factory_emoticons_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Emoticons(Efl.Object parent= null
+         ) :
+      base(efl_ui_text_factory_emoticons_class_get(), typeof(Emoticons), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Emoticons(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Emoticons(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Emoticons static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Emoticons(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Translates a given <c>key</c> to an item object, and returns the object. The returned object should be owned by the passed <c>object</c>.
+   /// 1.21</summary>
+   /// <param name="kw_object">The parent of the created object
+   /// 1.21</param>
+   /// <param name="key">Key that is associated to an item object
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public Efl.Canvas.Object Create( Efl.Canvas.Object kw_object,   System.String key) {
+                                           var _ret_var = Efl.Canvas.TextFactoryNativeInherit.efl_canvas_text_factory_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_object,  key);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextFactory.Emoticons.efl_ui_text_factory_emoticons_class_get();
+   }
+}
+public class EmoticonsNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_text_factory_create_static_delegate == null)
+      efl_canvas_text_factory_create_static_delegate = new efl_canvas_text_factory_create_delegate(create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_text_factory_create"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_text_factory_create_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextFactory.Emoticons.efl_ui_text_factory_emoticons_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextFactory.Emoticons.efl_ui_text_factory_emoticons_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] private delegate Efl.Canvas.Object efl_canvas_text_factory_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] public delegate Efl.Canvas.Object efl_canvas_text_factory_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate> efl_canvas_text_factory_create_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate>(_Module, "efl_canvas_text_factory_create");
+    private static Efl.Canvas.Object create(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object kw_object,   System.String key)
+   {
+      Eina.Log.Debug("function efl_canvas_text_factory_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Emoticons)wrapper).Create( kw_object,  key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_text_factory_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_object,  key);
+      }
+   }
+   private static efl_canvas_text_factory_create_delegate efl_canvas_text_factory_create_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_factory_fallback.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_factory_fallback.eo.cs
new file mode 100755 (executable)
index 0000000..690e264
--- /dev/null
@@ -0,0 +1,133 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace TextFactory { 
+/// <summary>Internal factory for fallback cases.
+/// This wraps some internal functionality: - Contains 2 factories: image and emoticon - Strips off &quot;file://&quot; prefix for image items, to be used with the image factory.
+/// 1.21</summary>
+[FallbackNativeInherit]
+public class Fallback : Efl.Object, Efl.Eo.IWrapper,Efl.Canvas.TextFactory
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextFactory.FallbackNativeInherit nativeInherit = new Efl.Ui.TextFactory.FallbackNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Fallback))
+            return Efl.Ui.TextFactory.FallbackNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_factory_fallback_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Fallback(Efl.Object parent= null
+         ) :
+      base(efl_ui_text_factory_fallback_class_get(), typeof(Fallback), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Fallback(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Fallback(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Fallback static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Fallback(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Translates a given <c>key</c> to an item object, and returns the object. The returned object should be owned by the passed <c>object</c>.
+   /// 1.21</summary>
+   /// <param name="kw_object">The parent of the created object
+   /// 1.21</param>
+   /// <param name="key">Key that is associated to an item object
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public Efl.Canvas.Object Create( Efl.Canvas.Object kw_object,   System.String key) {
+                                           var _ret_var = Efl.Canvas.TextFactoryNativeInherit.efl_canvas_text_factory_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_object,  key);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextFactory.Fallback.efl_ui_text_factory_fallback_class_get();
+   }
+}
+public class FallbackNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_canvas_text_factory_create_static_delegate == null)
+      efl_canvas_text_factory_create_static_delegate = new efl_canvas_text_factory_create_delegate(create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_text_factory_create"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_text_factory_create_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextFactory.Fallback.efl_ui_text_factory_fallback_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextFactory.Fallback.efl_ui_text_factory_fallback_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] private delegate Efl.Canvas.Object efl_canvas_text_factory_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] public delegate Efl.Canvas.Object efl_canvas_text_factory_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate> efl_canvas_text_factory_create_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate>(_Module, "efl_canvas_text_factory_create");
+    private static Efl.Canvas.Object create(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object kw_object,   System.String key)
+   {
+      Eina.Log.Debug("function efl_canvas_text_factory_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Fallback)wrapper).Create( kw_object,  key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_text_factory_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_object,  key);
+      }
+   }
+   private static efl_canvas_text_factory_create_delegate efl_canvas_text_factory_create_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_factory_images.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_factory_images.eo.cs
new file mode 100755 (executable)
index 0000000..890becf
--- /dev/null
@@ -0,0 +1,305 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { namespace TextFactory { 
+/// <summary>Factory that creates images given key string
+/// The key can be either a full image path, or associated with one. The factory will fallback if key was not matches with an image, and try to load it as a full path.
+/// 1.21</summary>
+[ImagesNativeInherit]
+public class Images : Efl.Object, Efl.Eo.IWrapper,Efl.Canvas.TextFactory
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextFactory.ImagesNativeInherit nativeInherit = new Efl.Ui.TextFactory.ImagesNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Images))
+            return Efl.Ui.TextFactory.ImagesNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_factory_images_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Images(Efl.Object parent= null
+         ) :
+      base(efl_ui_text_factory_images_class_get(), typeof(Images), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Images(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Images(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Images static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Images(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Associates given name with a path of an image or EET file.
+   /// This can be used for quick retrieval (instead of providing actual filenames.
+   /// 
+   /// This <c>file</c> is associated with <c>name</c> is considered a full file path.
+   /// 
+   /// see <see cref="Efl.Ui.TextFactory.Images.AddMatchesMmap"/> for mmap version see <see cref="Efl.Ui.TextFactory.Images.DelMatches"/>
+   /// 1.21</summary>
+   /// <param name="name">the name associated with filename
+   /// 1.21</param>
+   /// <param name="path">the image or EET file path
+   /// 1.21</param>
+   /// <param name="key">the key to use (in cases of loading an EET file
+   /// 1.21</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.21</returns>
+   virtual public bool AddMatches(  System.String name,   System.String path,   System.String key) {
+                                                             var _ret_var = Efl.Ui.TextFactory.ImagesNativeInherit.efl_ui_text_factory_images_matches_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  path,  key);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Deletes an association of <c>key</c> with its respective file path.
+   /// see <see cref="Efl.Ui.TextFactory.Images.AddMatches"/>
+   /// 1.21</summary>
+   /// <param name="key">the entry&apos;s key to delete
+   /// 1.21</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.21</returns>
+   virtual public bool DelMatches(  System.String key) {
+                         var _ret_var = Efl.Ui.TextFactory.ImagesNativeInherit.efl_ui_text_factory_images_matches_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Associates given name with a mmap&apos;d image or EET file and key.
+   /// see <see cref="Efl.Ui.TextFactory.Images.AddMatches"/> for string file path version see <see cref="Efl.Ui.TextFactory.Images.DelMatchesMmap"/>
+   /// 1.21</summary>
+   /// <param name="name">the name associated with filename
+   /// 1.21</param>
+   /// <param name="file">the image or EET file
+   /// 1.21</param>
+   /// <param name="key">the key to use (in cases of loading an EET file
+   /// 1.21</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.21</returns>
+   virtual public bool AddMatchesMmap(  System.String name,  Eina.File file,   System.String key) {
+                                                             var _ret_var = Efl.Ui.TextFactory.ImagesNativeInherit.efl_ui_text_factory_images_matches_mmap_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  file,  key);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Deletes an association of <c>key</c> with its respective file.
+   /// see <see cref="Efl.Ui.TextFactory.Images.AddMatchesMmap"/>
+   /// 1.21</summary>
+   /// <param name="key">the entry&apos;s key to delete
+   /// 1.21</param>
+   /// <returns><c>true</c> if successful, <c>false</c> otherwise
+   /// 1.21</returns>
+   virtual public bool DelMatchesMmap(  System.String key) {
+                         var _ret_var = Efl.Ui.TextFactory.ImagesNativeInherit.efl_ui_text_factory_images_matches_mmap_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Translates a given <c>key</c> to an item object, and returns the object. The returned object should be owned by the passed <c>object</c>.
+   /// 1.21</summary>
+   /// <param name="kw_object">The parent of the created object
+   /// 1.21</param>
+   /// <param name="key">Key that is associated to an item object
+   /// 1.21</param>
+   /// <returns></returns>
+   virtual public Efl.Canvas.Object Create( Efl.Canvas.Object kw_object,   System.String key) {
+                                           var _ret_var = Efl.Canvas.TextFactoryNativeInherit.efl_canvas_text_factory_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_object,  key);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextFactory.Images.efl_ui_text_factory_images_class_get();
+   }
+}
+public class ImagesNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_text_factory_images_matches_add_static_delegate == null)
+      efl_ui_text_factory_images_matches_add_static_delegate = new efl_ui_text_factory_images_matches_add_delegate(matches_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_factory_images_matches_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_factory_images_matches_add_static_delegate)});
+      if (efl_ui_text_factory_images_matches_del_static_delegate == null)
+      efl_ui_text_factory_images_matches_del_static_delegate = new efl_ui_text_factory_images_matches_del_delegate(matches_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_factory_images_matches_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_factory_images_matches_del_static_delegate)});
+      if (efl_ui_text_factory_images_matches_mmap_add_static_delegate == null)
+      efl_ui_text_factory_images_matches_mmap_add_static_delegate = new efl_ui_text_factory_images_matches_mmap_add_delegate(matches_mmap_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_factory_images_matches_mmap_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_factory_images_matches_mmap_add_static_delegate)});
+      if (efl_ui_text_factory_images_matches_mmap_del_static_delegate == null)
+      efl_ui_text_factory_images_matches_mmap_del_static_delegate = new efl_ui_text_factory_images_matches_mmap_del_delegate(matches_mmap_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_text_factory_images_matches_mmap_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_text_factory_images_matches_mmap_del_static_delegate)});
+      if (efl_canvas_text_factory_create_static_delegate == null)
+      efl_canvas_text_factory_create_static_delegate = new efl_canvas_text_factory_create_delegate(create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_text_factory_create"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_text_factory_create_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextFactory.Images.efl_ui_text_factory_images_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextFactory.Images.efl_ui_text_factory_images_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_factory_images_matches_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String path,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_factory_images_matches_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String path,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_add_api_delegate> efl_ui_text_factory_images_matches_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_add_api_delegate>(_Module, "efl_ui_text_factory_images_matches_add");
+    private static bool matches_add(System.IntPtr obj, System.IntPtr pd,   System.String name,   System.String path,   System.String key)
+   {
+      Eina.Log.Debug("function efl_ui_text_factory_images_matches_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Images)wrapper).AddMatches( name,  path,  key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_text_factory_images_matches_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  path,  key);
+      }
+   }
+   private static efl_ui_text_factory_images_matches_add_delegate efl_ui_text_factory_images_matches_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_factory_images_matches_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_factory_images_matches_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_del_api_delegate> efl_ui_text_factory_images_matches_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_del_api_delegate>(_Module, "efl_ui_text_factory_images_matches_del");
+    private static bool matches_del(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_ui_text_factory_images_matches_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Images)wrapper).DelMatches( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_text_factory_images_matches_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_ui_text_factory_images_matches_del_delegate efl_ui_text_factory_images_matches_del_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_factory_images_matches_mmap_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,   Eina.File file,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_factory_images_matches_mmap_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,   Eina.File file,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_mmap_add_api_delegate> efl_ui_text_factory_images_matches_mmap_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_mmap_add_api_delegate>(_Module, "efl_ui_text_factory_images_matches_mmap_add");
+    private static bool matches_mmap_add(System.IntPtr obj, System.IntPtr pd,   System.String name,  Eina.File file,   System.String key)
+   {
+      Eina.Log.Debug("function efl_ui_text_factory_images_matches_mmap_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Images)wrapper).AddMatchesMmap( name,  file,  key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_text_factory_images_matches_mmap_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  file,  key);
+      }
+   }
+   private static efl_ui_text_factory_images_matches_mmap_add_delegate efl_ui_text_factory_images_matches_mmap_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_text_factory_images_matches_mmap_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_text_factory_images_matches_mmap_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_mmap_del_api_delegate> efl_ui_text_factory_images_matches_mmap_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_text_factory_images_matches_mmap_del_api_delegate>(_Module, "efl_ui_text_factory_images_matches_mmap_del");
+    private static bool matches_mmap_del(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_ui_text_factory_images_matches_mmap_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Images)wrapper).DelMatchesMmap( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_text_factory_images_matches_mmap_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_ui_text_factory_images_matches_mmap_del_delegate efl_ui_text_factory_images_matches_mmap_del_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] private delegate Efl.Canvas.Object efl_canvas_text_factory_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.OwnTag>))] public delegate Efl.Canvas.Object efl_canvas_text_factory_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_object,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate> efl_canvas_text_factory_create_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_text_factory_create_api_delegate>(_Module, "efl_canvas_text_factory_create");
+    private static Efl.Canvas.Object create(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object kw_object,   System.String key)
+   {
+      Eina.Log.Debug("function efl_canvas_text_factory_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Images)wrapper).Create( kw_object,  key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_canvas_text_factory_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_object,  key);
+      }
+   }
+   private static efl_canvas_text_factory_create_delegate efl_canvas_text_factory_create_static_delegate;
+}
+} } } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_text_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_text_part.eo.cs
new file mode 100755 (executable)
index 0000000..7bfb9d1
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Text internal part class</summary>
+[TextPartNativeInherit]
+public class TextPart : Efl.Ui.LayoutPartText, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextPartNativeInherit nativeInherit = new Efl.Ui.TextPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextPart))
+            return Efl.Ui.TextPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_text_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public TextPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_text_part_class_get(), typeof(TextPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TextPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TextPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextPart.efl_ui_text_part_class_get();
+   }
+}
+public class TextPartNativeInherit : Efl.Ui.LayoutPartTextNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextPart.efl_ui_text_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextPart.efl_ui_text_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_textpath.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_textpath.eo.cs
new file mode 100755 (executable)
index 0000000..d4b248a
--- /dev/null
@@ -0,0 +1,1280 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl Ui Textpath class</summary>
+[TextpathNativeInherit]
+public class Textpath : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.Text,Efl.Gfx.Path
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextpathNativeInherit nativeInherit = new Efl.Ui.TextpathNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Textpath))
+            return Efl.Ui.TextpathNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_textpath_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Textpath(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_textpath_class_get(), typeof(Textpath), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Textpath(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Textpath(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Textpath static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Textpath(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The number of slices. The larger the number of slice_num is, The better the text follows the path.
+   /// @internal</summary>
+   /// <returns>Number of slices</returns>
+   virtual public  int GetSliceNumber() {
+       var _ret_var = Efl.Ui.TextpathNativeInherit.efl_ui_textpath_slice_number_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The number of slices. The larger the number of slice_num is, The better the text follows the path.
+   /// @internal</summary>
+   /// <param name="slice_no">Number of slices</param>
+   /// <returns></returns>
+   virtual public  void SetSliceNumber(  int slice_no) {
+                         Efl.Ui.TextpathNativeInherit.efl_ui_textpath_slice_number_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), slice_no);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the ellipsis behavior of the textpath.
+   /// @since_tizen 5.5</summary>
+   /// <returns>To ellipsis text or not</returns>
+   virtual public bool GetEllipsis() {
+       var _ret_var = Efl.Ui.TextpathNativeInherit.efl_ui_textpath_ellipsis_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the ellipsis behavior of the textpath.
+   /// @since_tizen 5.5</summary>
+   /// <param name="ellipsis">To ellipsis text or not</param>
+   /// <returns></returns>
+   virtual public  void SetEllipsis( bool ellipsis) {
+                         Efl.Ui.TextpathNativeInherit.efl_ui_textpath_ellipsis_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ellipsis);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set a circle with given center, radius, and start angle.
+   /// @since_tizen 5.5</summary>
+   /// <param name="x">X coordinate of center</param>
+   /// <param name="y">Y coordinate of center</param>
+   /// <param name="radius">Radius of the circle</param>
+   /// <param name="start_angle">Start angle of the circle</param>
+   /// <param name="direction">Textpath direction</param>
+   /// <returns></returns>
+   virtual public  void SetCircle( double x,  double y,  double radius,  double start_angle,  Efl.Ui.TextpathDirection direction) {
+                                                                                                 Efl.Ui.TextpathNativeInherit.efl_ui_textpath_circle_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  radius,  start_angle,  direction);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   virtual public  void GetPath( out Efl.Gfx.PathCommandType op,  out double points) {
+                   System.IntPtr _out_op = System.IntPtr.Zero;
+      System.IntPtr _out_points = System.IntPtr.Zero;
+                  Efl.Gfx.PathNativeInherit.efl_gfx_path_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_op,  out _out_points);
+      Eina.Error.RaiseIfUnhandledException();
+      op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(_out_op);
+      points = Eina.PrimitiveConversion.PointerToManaged<double>(_out_points);
+                   }
+   /// <summary>Set the list of commands and points to be used to create the content of path.
+   /// 1.18</summary>
+   /// <param name="op">Command list</param>
+   /// <param name="points">Point list</param>
+   /// <returns></returns>
+   virtual public  void SetPath( Efl.Gfx.PathCommandType op,  double points) {
+       var _in_op = Eina.PrimitiveConversion.ManagedToPointerAlloc(op);
+      var _in_points = Eina.PrimitiveConversion.ManagedToPointerAlloc(points);
+                              Efl.Gfx.PathNativeInherit.efl_gfx_path_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_op,  _in_points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Path length property</summary>
+   /// <param name="commands">Commands</param>
+   /// <param name="points">Points</param>
+   /// <returns></returns>
+   virtual public  void GetLength( out  uint commands,  out  uint points) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_length_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out commands,  out points);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current point coordinates</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   virtual public  void GetCurrent( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Current control point coordinates</summary>
+   /// <param name="x">X co-ordinate of control point.</param>
+   /// <param name="y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   virtual public  void GetCurrentCtrl( out double x,  out double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_current_ctrl_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Copy the path data from the object specified.
+   /// 1.18</summary>
+   /// <param name="dup_from">Shape object from where data will be copied.</param>
+   /// <returns></returns>
+   virtual public  void CopyFrom( Efl.Object dup_from) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_copy_from_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dup_from);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Compute and return the bounding box of the currently set path
+   /// 1.18</summary>
+   /// <param name="r">Contain the bounding box of the currently set path</param>
+   /// <returns></returns>
+   virtual public  void GetBounds( out Eina.Rect r) {
+             var _out_r = new Eina.Rect_StructInternal();
+            Efl.Gfx.PathNativeInherit.efl_gfx_path_bounds_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_r);
+      Eina.Error.RaiseIfUnhandledException();
+      r = Eina.Rect_StructConversion.ToManaged(_out_r);
+             }
+   /// <summary>Reset the path data of the path object.
+   /// 1.18</summary>
+   /// <returns></returns>
+   virtual public  void Reset() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_reset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Moves the current point to the given point,  implicitly starting a new subpath and closing the previous one.
+   /// See also <see cref="Efl.Gfx.Path.CloseAppend"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the current point.</param>
+   /// <param name="y">Y co-ordinate of the current point.</param>
+   /// <returns></returns>
+   virtual public  void AppendMoveTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_move_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a straight line from the current position to the given end point. After the line is drawn, the current position is updated to be at the end point of the line.
+   /// If no current position present, it draws a line to itself, basically a point.
+   /// 
+   /// See also <see cref="Efl.Gfx.Path.AppendMoveTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   virtual public  void AppendLineTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_line_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a quadratic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x, ctrl_y). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of control point.</param>
+   /// <returns></returns>
+   virtual public  void AppendQuadraticTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_quadratic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Same as efl_gfx_path_append_quadratic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendQuadraticTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   virtual public  void AppendSquadraticTo( double x,  double y) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_append_squadratic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Adds a cubic Bezier curve between the current position and the given end point (x,y) using the control points specified by (ctrl_x0, ctrl_y0), and (ctrl_x1, ctrl_y1). After the path is drawn, the current position is updated to be at the end point of the path.
+   /// 1.18</summary>
+   /// <param name="ctrl_x0">X co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_y0">Y co-ordinate of 1st control point.</param>
+   /// <param name="ctrl_x1">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y1">Y co-ordinate of 2nd control point.</param>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <returns></returns>
+   virtual public  void AppendCubicTo( double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_cubic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Same as efl_gfx_path_append_cubic_to() api only difference is that it uses the current control point to draw the bezier.
+   /// See also <see cref="Efl.Gfx.Path.AppendCubicTo"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the line.</param>
+   /// <param name="y">Y co-ordinate of end point of the line.</param>
+   /// <param name="ctrl_x">X co-ordinate of 2nd control point.</param>
+   /// <param name="ctrl_y">Y co-ordinate of 2nd control point.</param>
+   /// <returns></returns>
+   virtual public  void AppendScubicTo( double x,  double y,  double ctrl_x,  double ctrl_y) {
+                                                                               Efl.Gfx.PathNativeInherit.efl_gfx_path_append_scubic_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  ctrl_x,  ctrl_y);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Append an arc that connects from the current point int the point list to the given point (x,y). The arc is defined by the given radius in  x-direction (rx) and radius in y direction (ry).
+   /// Use this api if you know the end point&apos;s of the arc otherwise use more convenient function <see cref="Efl.Gfx.Path.AppendArc"/>.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of end point of the arc.</param>
+   /// <param name="y">Y co-ordinate of end point of the arc.</param>
+   /// <param name="rx">Radius of arc in x direction.</param>
+   /// <param name="ry">Radius of arc in y direction.</param>
+   /// <param name="angle">X-axis rotation , normally 0.</param>
+   /// <param name="large_arc">Defines whether to draw the larger arc or smaller arc joining two point.</param>
+   /// <param name="sweep">Defines whether the arc will be drawn counter-clockwise or clockwise from current point to the end point taking into account the large_arc property.</param>
+   /// <returns></returns>
+   virtual public  void AppendArcTo( double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep) {
+                                                                                                                                     Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                           }
+   /// <summary>Append an arc that enclosed in the given rectangle (x, y, w, h). The angle is defined in counter clock wise , use -ve angle for clockwise arc.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rect.</param>
+   /// <param name="y">Y co-ordinate of the rect.</param>
+   /// <param name="w">Width of the rect.</param>
+   /// <param name="h">Height of the rect.</param>
+   /// <param name="start_angle">Angle at which the arc will start</param>
+   /// <param name="sweep_length">@ Length of the arc.</param>
+   /// <returns></returns>
+   virtual public  void AppendArc( double x,  double y,  double w,  double h,  double start_angle,  double sweep_length) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_arc_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  w,  h,  start_angle,  sweep_length);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Closes the current subpath by drawing a line to the beginning of the subpath, automatically starting a new path. The current point of the new path is (0, 0).
+   /// If the subpath does not contain any points, this function does nothing.
+   /// 1.18</summary>
+   /// <returns></returns>
+   virtual public  void CloseAppend() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_append_close_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Append a circle with given center and radius.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the center of the circle.</param>
+   /// <param name="y">Y co-ordinate of the center of the circle.</param>
+   /// <param name="radius">Radius of the circle.</param>
+   /// <returns></returns>
+   virtual public  void AppendCircle( double x,  double y,  double radius) {
+                                                             Efl.Gfx.PathNativeInherit.efl_gfx_path_append_circle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  radius);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Append the given rectangle with rounded corner to the path.
+   /// The xr and yr arguments specify the radii of the ellipses defining the corners of the rounded rectangle.
+   /// 
+   /// xr and yr are specified in terms of width and height respectively.
+   /// 
+   /// If xr and yr are 0, then it will draw a rectangle without rounded corner.
+   /// 1.18</summary>
+   /// <param name="x">X co-ordinate of the rectangle.</param>
+   /// <param name="y">Y co-ordinate of the rectangle.</param>
+   /// <param name="w">Width of the rectangle.</param>
+   /// <param name="h">Height of the rectangle.</param>
+   /// <param name="rx">The x radius of the rounded corner and should be in range [ 0 to w/2 ]</param>
+   /// <param name="ry">The y radius of the rounded corner and should be in range [ 0 to h/2 ]</param>
+   /// <returns></returns>
+   virtual public  void AppendRect( double x,  double y,  double w,  double h,  double rx,  double ry) {
+                                                                                                                   Efl.Gfx.PathNativeInherit.efl_gfx_path_append_rect_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y,  w,  h,  rx,  ry);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                               }
+   /// <summary>Append SVG path data</summary>
+   /// <param name="svg_path_data">SVG path data to append</param>
+   /// <returns></returns>
+   virtual public  void AppendSvgPath(  System.String svg_path_data) {
+                         Efl.Gfx.PathNativeInherit.efl_gfx_path_append_svg_path_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), svg_path_data);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Creates intermediary path part-way between two paths
+   /// Sets the points of the <c>obj</c> as the linear interpolation of the points in the <c>from</c> and <c>to</c> paths.  The path&apos;s x,y position and control point coordinates are likewise interpolated.
+   /// 
+   /// The <c>from</c> and <c>to</c> paths must not already have equivalent points, and <c>to</c> must contain at least as many points as <c>from</c>, else the function returns <c>false</c> with no interpolation performed.  If <c>to</c> has more points than <c>from</c>, the excess points are ignored.</summary>
+   /// <param name="from">Source path</param>
+   /// <param name="to">Destination path</param>
+   /// <param name="pos_map">Position map in range 0.0 to 1.0</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool Interpolate( Efl.Object from,  Efl.Object to,  double pos_map) {
+                                                             var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_interpolate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), from,  to,  pos_map);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Equal commands in object</summary>
+   /// <param name="with">Object</param>
+   /// <returns>True on success, <c>false</c> otherwise</returns>
+   virtual public bool EqualCommands( Efl.Object with) {
+                         var _ret_var = Efl.Gfx.PathNativeInherit.efl_gfx_path_equal_commands_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), with);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Reserve path commands buffer in advance. If you know the count of path commands coming, you can reserve commands buffer in advance to avoid buffer growing job.
+   /// 1.22</summary>
+   /// <param name="cmd_count">Commands count to reserve</param>
+   /// <param name="pts_count">Pointers count to reserve</param>
+   /// <returns></returns>
+   virtual public  void Reserve(  uint cmd_count,   uint pts_count) {
+                                           Efl.Gfx.PathNativeInherit.efl_gfx_path_reserve_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cmd_count,  pts_count);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Request to update the path object.
+   /// One path object may get appending several path calls (such as append_cubic, append_rect, etc) to construct the final path data. Here commit means all path data is prepared and now object could update its own internal status based on the last path information.</summary>
+   /// <returns></returns>
+   virtual public  void Commit() {
+       Efl.Gfx.PathNativeInherit.efl_gfx_path_commit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The number of slices. The larger the number of slice_num is, The better the text follows the path.
+/// @internal</summary>
+/// <value>Number of slices</value>
+   public  int SliceNumber {
+      get { return GetSliceNumber(); }
+      set { SetSliceNumber( value); }
+   }
+   /// <summary>Control the ellipsis behavior of the textpath.
+/// @since_tizen 5.5</summary>
+/// <value>To ellipsis text or not</value>
+   public bool Ellipsis {
+      get { return GetEllipsis(); }
+      set { SetEllipsis( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Textpath.efl_ui_textpath_class_get();
+   }
+}
+public class TextpathNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_textpath_slice_number_get_static_delegate == null)
+      efl_ui_textpath_slice_number_get_static_delegate = new efl_ui_textpath_slice_number_get_delegate(slice_number_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_textpath_slice_number_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_textpath_slice_number_get_static_delegate)});
+      if (efl_ui_textpath_slice_number_set_static_delegate == null)
+      efl_ui_textpath_slice_number_set_static_delegate = new efl_ui_textpath_slice_number_set_delegate(slice_number_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_textpath_slice_number_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_textpath_slice_number_set_static_delegate)});
+      if (efl_ui_textpath_ellipsis_get_static_delegate == null)
+      efl_ui_textpath_ellipsis_get_static_delegate = new efl_ui_textpath_ellipsis_get_delegate(ellipsis_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_textpath_ellipsis_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_textpath_ellipsis_get_static_delegate)});
+      if (efl_ui_textpath_ellipsis_set_static_delegate == null)
+      efl_ui_textpath_ellipsis_set_static_delegate = new efl_ui_textpath_ellipsis_set_delegate(ellipsis_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_textpath_ellipsis_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_textpath_ellipsis_set_static_delegate)});
+      if (efl_ui_textpath_circle_set_static_delegate == null)
+      efl_ui_textpath_circle_set_static_delegate = new efl_ui_textpath_circle_set_delegate(circle_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_textpath_circle_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_textpath_circle_set_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_gfx_path_get_static_delegate == null)
+      efl_gfx_path_get_static_delegate = new efl_gfx_path_get_delegate(path_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_get_static_delegate)});
+      if (efl_gfx_path_set_static_delegate == null)
+      efl_gfx_path_set_static_delegate = new efl_gfx_path_set_delegate(path_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_set_static_delegate)});
+      if (efl_gfx_path_length_get_static_delegate == null)
+      efl_gfx_path_length_get_static_delegate = new efl_gfx_path_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_length_get_static_delegate)});
+      if (efl_gfx_path_current_get_static_delegate == null)
+      efl_gfx_path_current_get_static_delegate = new efl_gfx_path_current_get_delegate(current_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_get_static_delegate)});
+      if (efl_gfx_path_current_ctrl_get_static_delegate == null)
+      efl_gfx_path_current_ctrl_get_static_delegate = new efl_gfx_path_current_ctrl_get_delegate(current_ctrl_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_current_ctrl_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_current_ctrl_get_static_delegate)});
+      if (efl_gfx_path_copy_from_static_delegate == null)
+      efl_gfx_path_copy_from_static_delegate = new efl_gfx_path_copy_from_delegate(copy_from);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_copy_from"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_copy_from_static_delegate)});
+      if (efl_gfx_path_bounds_get_static_delegate == null)
+      efl_gfx_path_bounds_get_static_delegate = new efl_gfx_path_bounds_get_delegate(bounds_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_bounds_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_bounds_get_static_delegate)});
+      if (efl_gfx_path_reset_static_delegate == null)
+      efl_gfx_path_reset_static_delegate = new efl_gfx_path_reset_delegate(reset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reset"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reset_static_delegate)});
+      if (efl_gfx_path_append_move_to_static_delegate == null)
+      efl_gfx_path_append_move_to_static_delegate = new efl_gfx_path_append_move_to_delegate(append_move_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_move_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_move_to_static_delegate)});
+      if (efl_gfx_path_append_line_to_static_delegate == null)
+      efl_gfx_path_append_line_to_static_delegate = new efl_gfx_path_append_line_to_delegate(append_line_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_line_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_line_to_static_delegate)});
+      if (efl_gfx_path_append_quadratic_to_static_delegate == null)
+      efl_gfx_path_append_quadratic_to_static_delegate = new efl_gfx_path_append_quadratic_to_delegate(append_quadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_quadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_quadratic_to_static_delegate)});
+      if (efl_gfx_path_append_squadratic_to_static_delegate == null)
+      efl_gfx_path_append_squadratic_to_static_delegate = new efl_gfx_path_append_squadratic_to_delegate(append_squadratic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_squadratic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_squadratic_to_static_delegate)});
+      if (efl_gfx_path_append_cubic_to_static_delegate == null)
+      efl_gfx_path_append_cubic_to_static_delegate = new efl_gfx_path_append_cubic_to_delegate(append_cubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_cubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_cubic_to_static_delegate)});
+      if (efl_gfx_path_append_scubic_to_static_delegate == null)
+      efl_gfx_path_append_scubic_to_static_delegate = new efl_gfx_path_append_scubic_to_delegate(append_scubic_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_scubic_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_scubic_to_static_delegate)});
+      if (efl_gfx_path_append_arc_to_static_delegate == null)
+      efl_gfx_path_append_arc_to_static_delegate = new efl_gfx_path_append_arc_to_delegate(append_arc_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc_to"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_to_static_delegate)});
+      if (efl_gfx_path_append_arc_static_delegate == null)
+      efl_gfx_path_append_arc_static_delegate = new efl_gfx_path_append_arc_delegate(append_arc);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_arc"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_arc_static_delegate)});
+      if (efl_gfx_path_append_close_static_delegate == null)
+      efl_gfx_path_append_close_static_delegate = new efl_gfx_path_append_close_delegate(append_close);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_close"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_close_static_delegate)});
+      if (efl_gfx_path_append_circle_static_delegate == null)
+      efl_gfx_path_append_circle_static_delegate = new efl_gfx_path_append_circle_delegate(append_circle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_circle"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_circle_static_delegate)});
+      if (efl_gfx_path_append_rect_static_delegate == null)
+      efl_gfx_path_append_rect_static_delegate = new efl_gfx_path_append_rect_delegate(append_rect);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_rect"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_rect_static_delegate)});
+      if (efl_gfx_path_append_svg_path_static_delegate == null)
+      efl_gfx_path_append_svg_path_static_delegate = new efl_gfx_path_append_svg_path_delegate(append_svg_path);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_append_svg_path"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_append_svg_path_static_delegate)});
+      if (efl_gfx_path_interpolate_static_delegate == null)
+      efl_gfx_path_interpolate_static_delegate = new efl_gfx_path_interpolate_delegate(interpolate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_interpolate"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_interpolate_static_delegate)});
+      if (efl_gfx_path_equal_commands_static_delegate == null)
+      efl_gfx_path_equal_commands_static_delegate = new efl_gfx_path_equal_commands_delegate(equal_commands);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_equal_commands"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_equal_commands_static_delegate)});
+      if (efl_gfx_path_reserve_static_delegate == null)
+      efl_gfx_path_reserve_static_delegate = new efl_gfx_path_reserve_delegate(reserve);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_reserve"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_reserve_static_delegate)});
+      if (efl_gfx_path_commit_static_delegate == null)
+      efl_gfx_path_commit_static_delegate = new efl_gfx_path_commit_delegate(commit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_path_commit"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_path_commit_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Textpath.efl_ui_textpath_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Textpath.efl_ui_textpath_class_get();
+   }
+
+
+    private delegate  int efl_ui_textpath_slice_number_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_ui_textpath_slice_number_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_textpath_slice_number_get_api_delegate> efl_ui_textpath_slice_number_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_textpath_slice_number_get_api_delegate>(_Module, "efl_ui_textpath_slice_number_get");
+    private static  int slice_number_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_textpath_slice_number_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Textpath)wrapper).GetSliceNumber();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_textpath_slice_number_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_textpath_slice_number_get_delegate efl_ui_textpath_slice_number_get_static_delegate;
+
+
+    private delegate  void efl_ui_textpath_slice_number_set_delegate(System.IntPtr obj, System.IntPtr pd,    int slice_no);
+
+
+    public delegate  void efl_ui_textpath_slice_number_set_api_delegate(System.IntPtr obj,    int slice_no);
+    public static Efl.Eo.FunctionWrapper<efl_ui_textpath_slice_number_set_api_delegate> efl_ui_textpath_slice_number_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_textpath_slice_number_set_api_delegate>(_Module, "efl_ui_textpath_slice_number_set");
+    private static  void slice_number_set(System.IntPtr obj, System.IntPtr pd,   int slice_no)
+   {
+      Eina.Log.Debug("function efl_ui_textpath_slice_number_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Textpath)wrapper).SetSliceNumber( slice_no);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_textpath_slice_number_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  slice_no);
+      }
+   }
+   private static efl_ui_textpath_slice_number_set_delegate efl_ui_textpath_slice_number_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_textpath_ellipsis_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_textpath_ellipsis_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_textpath_ellipsis_get_api_delegate> efl_ui_textpath_ellipsis_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_textpath_ellipsis_get_api_delegate>(_Module, "efl_ui_textpath_ellipsis_get");
+    private static bool ellipsis_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_textpath_ellipsis_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Textpath)wrapper).GetEllipsis();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_textpath_ellipsis_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_textpath_ellipsis_get_delegate efl_ui_textpath_ellipsis_get_static_delegate;
+
+
+    private delegate  void efl_ui_textpath_ellipsis_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool ellipsis);
+
+
+    public delegate  void efl_ui_textpath_ellipsis_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool ellipsis);
+    public static Efl.Eo.FunctionWrapper<efl_ui_textpath_ellipsis_set_api_delegate> efl_ui_textpath_ellipsis_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_textpath_ellipsis_set_api_delegate>(_Module, "efl_ui_textpath_ellipsis_set");
+    private static  void ellipsis_set(System.IntPtr obj, System.IntPtr pd,  bool ellipsis)
+   {
+      Eina.Log.Debug("function efl_ui_textpath_ellipsis_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Textpath)wrapper).SetEllipsis( ellipsis);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_textpath_ellipsis_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ellipsis);
+      }
+   }
+   private static efl_ui_textpath_ellipsis_set_delegate efl_ui_textpath_ellipsis_set_static_delegate;
+
+
+    private delegate  void efl_ui_textpath_circle_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double radius,   double start_angle,   Efl.Ui.TextpathDirection direction);
+
+
+    public delegate  void efl_ui_textpath_circle_set_api_delegate(System.IntPtr obj,   double x,   double y,   double radius,   double start_angle,   Efl.Ui.TextpathDirection direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_textpath_circle_set_api_delegate> efl_ui_textpath_circle_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_textpath_circle_set_api_delegate>(_Module, "efl_ui_textpath_circle_set");
+    private static  void circle_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double radius,  double start_angle,  Efl.Ui.TextpathDirection direction)
+   {
+      Eina.Log.Debug("function efl_ui_textpath_circle_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((Textpath)wrapper).SetCircle( x,  y,  radius,  start_angle,  direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_ui_textpath_circle_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  radius,  start_angle,  direction);
+      }
+   }
+   private static efl_ui_textpath_circle_set_delegate efl_ui_textpath_circle_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Textpath)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Textpath)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    private delegate  void efl_gfx_path_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  System.IntPtr op,   out  System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_get_api_delegate(System.IntPtr obj,   out  System.IntPtr op,   out  System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate> efl_gfx_path_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_get_api_delegate>(_Module, "efl_gfx_path_get");
+    private static  void path_get(System.IntPtr obj, System.IntPtr pd,  out  System.IntPtr op,  out  System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           Efl.Gfx.PathCommandType _out_op = default(Efl.Gfx.PathCommandType);
+      double _out_points = default(double);
+                     
+         try {
+            ((Textpath)wrapper).GetPath( out _out_op,  out _out_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      op = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_op);
+      points = Eina.PrimitiveConversion.ManagedToPointerAlloc(_out_points);
+                        } else {
+         efl_gfx_path_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out op,  out points);
+      }
+   }
+   private static efl_gfx_path_get_delegate efl_gfx_path_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr op,    System.IntPtr points);
+
+
+    public delegate  void efl_gfx_path_set_api_delegate(System.IntPtr obj,    System.IntPtr op,    System.IntPtr points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate> efl_gfx_path_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_set_api_delegate>(_Module, "efl_gfx_path_set");
+    private static  void path_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr op,   System.IntPtr points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_op = Eina.PrimitiveConversion.PointerToManaged<Efl.Gfx.PathCommandType>(op);
+      var _in_points = Eina.PrimitiveConversion.PointerToManaged<double>(points);
+                                 
+         try {
+            ((Textpath)wrapper).SetPath( _in_op,  _in_points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  op,  points);
+      }
+   }
+   private static efl_gfx_path_set_delegate efl_gfx_path_set_static_delegate;
+
+
+    private delegate  void efl_gfx_path_length_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  uint commands,   out  uint points);
+
+
+    public delegate  void efl_gfx_path_length_get_api_delegate(System.IntPtr obj,   out  uint commands,   out  uint points);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate> efl_gfx_path_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_length_get_api_delegate>(_Module, "efl_gfx_path_length_get");
+    private static  void length_get(System.IntPtr obj, System.IntPtr pd,  out  uint commands,  out  uint points)
+   {
+      Eina.Log.Debug("function efl_gfx_path_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           commands = default( uint);      points = default( uint);                     
+         try {
+            ((Textpath)wrapper).GetLength( out commands,  out points);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out commands,  out points);
+      }
+   }
+   private static efl_gfx_path_length_get_delegate efl_gfx_path_length_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate> efl_gfx_path_current_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_get_api_delegate>(_Module, "efl_gfx_path_current_get");
+    private static  void current_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Textpath)wrapper).GetCurrent( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_get_delegate efl_gfx_path_current_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_current_ctrl_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void efl_gfx_path_current_ctrl_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate> efl_gfx_path_current_ctrl_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_current_ctrl_get_api_delegate>(_Module, "efl_gfx_path_current_ctrl_get");
+    private static  void current_ctrl_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_current_ctrl_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((Textpath)wrapper).GetCurrentCtrl( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_current_ctrl_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_gfx_path_current_ctrl_get_delegate efl_gfx_path_current_ctrl_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_copy_from_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+
+
+    public delegate  void efl_gfx_path_copy_from_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object dup_from);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate> efl_gfx_path_copy_from_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_copy_from_api_delegate>(_Module, "efl_gfx_path_copy_from");
+    private static  void copy_from(System.IntPtr obj, System.IntPtr pd,  Efl.Object dup_from)
+   {
+      Eina.Log.Debug("function efl_gfx_path_copy_from was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Textpath)wrapper).CopyFrom( dup_from);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_copy_from_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dup_from);
+      }
+   }
+   private static efl_gfx_path_copy_from_delegate efl_gfx_path_copy_from_static_delegate;
+
+
+    private delegate  void efl_gfx_path_bounds_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Eina.Rect_StructInternal r);
+
+
+    public delegate  void efl_gfx_path_bounds_get_api_delegate(System.IntPtr obj,   out Eina.Rect_StructInternal r);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate> efl_gfx_path_bounds_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_bounds_get_api_delegate>(_Module, "efl_gfx_path_bounds_get");
+    private static  void bounds_get(System.IntPtr obj, System.IntPtr pd,  out Eina.Rect_StructInternal r)
+   {
+      Eina.Log.Debug("function efl_gfx_path_bounds_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     Eina.Rect _out_r = default(Eina.Rect);
+               
+         try {
+            ((Textpath)wrapper).GetBounds( out _out_r);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      r = Eina.Rect_StructConversion.ToInternal(_out_r);
+                  } else {
+         efl_gfx_path_bounds_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r);
+      }
+   }
+   private static efl_gfx_path_bounds_get_delegate efl_gfx_path_bounds_get_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_reset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate> efl_gfx_path_reset_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reset_api_delegate>(_Module, "efl_gfx_path_reset");
+    private static  void reset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Textpath)wrapper).Reset();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_reset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_reset_delegate efl_gfx_path_reset_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_move_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_move_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate> efl_gfx_path_append_move_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_move_to_api_delegate>(_Module, "efl_gfx_path_append_move_to");
+    private static  void append_move_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_move_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Textpath)wrapper).AppendMoveTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_move_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_move_to_delegate efl_gfx_path_append_move_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_line_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_line_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate> efl_gfx_path_append_line_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_line_to_api_delegate>(_Module, "efl_gfx_path_append_line_to");
+    private static  void append_line_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_line_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Textpath)wrapper).AppendLineTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_line_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_line_to_delegate efl_gfx_path_append_line_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_quadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_quadratic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate> efl_gfx_path_append_quadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_quadratic_to_api_delegate>(_Module, "efl_gfx_path_append_quadratic_to");
+    private static  void append_quadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_quadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Textpath)wrapper).AppendQuadraticTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_quadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_quadratic_to_delegate efl_gfx_path_append_quadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_squadratic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_squadratic_to_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate> efl_gfx_path_append_squadratic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_squadratic_to_api_delegate>(_Module, "efl_gfx_path_append_squadratic_to");
+    private static  void append_squadratic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_squadratic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Textpath)wrapper).AppendSquadraticTo( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_append_squadratic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_squadratic_to_delegate efl_gfx_path_append_squadratic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_cubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+
+
+    public delegate  void efl_gfx_path_append_cubic_to_api_delegate(System.IntPtr obj,   double ctrl_x0,   double ctrl_y0,   double ctrl_x1,   double ctrl_y1,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate> efl_gfx_path_append_cubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_cubic_to_api_delegate>(_Module, "efl_gfx_path_append_cubic_to");
+    private static  void append_cubic_to(System.IntPtr obj, System.IntPtr pd,  double ctrl_x0,  double ctrl_y0,  double ctrl_x1,  double ctrl_y1,  double x,  double y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_cubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((Textpath)wrapper).AppendCubicTo( ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_cubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ctrl_x0,  ctrl_y0,  ctrl_x1,  ctrl_y1,  x,  y);
+      }
+   }
+   private static efl_gfx_path_append_cubic_to_delegate efl_gfx_path_append_cubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_scubic_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double ctrl_x,   double ctrl_y);
+
+
+    public delegate  void efl_gfx_path_append_scubic_to_api_delegate(System.IntPtr obj,   double x,   double y,   double ctrl_x,   double ctrl_y);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate> efl_gfx_path_append_scubic_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_scubic_to_api_delegate>(_Module, "efl_gfx_path_append_scubic_to");
+    private static  void append_scubic_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double ctrl_x,  double ctrl_y)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_scubic_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Textpath)wrapper).AppendScubicTo( x,  y,  ctrl_x,  ctrl_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_path_append_scubic_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  ctrl_x,  ctrl_y);
+      }
+   }
+   private static efl_gfx_path_append_scubic_to_delegate efl_gfx_path_append_scubic_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_to_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+
+
+    public delegate  void efl_gfx_path_append_arc_to_api_delegate(System.IntPtr obj,   double x,   double y,   double rx,   double ry,   double angle,  [MarshalAs(UnmanagedType.U1)]  bool large_arc,  [MarshalAs(UnmanagedType.U1)]  bool sweep);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate> efl_gfx_path_append_arc_to_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_to_api_delegate>(_Module, "efl_gfx_path_append_arc_to");
+    private static  void append_arc_to(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double rx,  double ry,  double angle,  bool large_arc,  bool sweep)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                                                
+         try {
+            ((Textpath)wrapper).AppendArcTo( x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                                } else {
+         efl_gfx_path_append_arc_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  rx,  ry,  angle,  large_arc,  sweep);
+      }
+   }
+   private static efl_gfx_path_append_arc_to_delegate efl_gfx_path_append_arc_to_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_arc_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+
+
+    public delegate  void efl_gfx_path_append_arc_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double start_angle,   double sweep_length);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate> efl_gfx_path_append_arc_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_arc_api_delegate>(_Module, "efl_gfx_path_append_arc");
+    private static  void append_arc(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double start_angle,  double sweep_length)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_arc was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((Textpath)wrapper).AppendArc( x,  y,  w,  h,  start_angle,  sweep_length);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_arc_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  start_angle,  sweep_length);
+      }
+   }
+   private static efl_gfx_path_append_arc_delegate efl_gfx_path_append_arc_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_close_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_append_close_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate> efl_gfx_path_append_close_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_close_api_delegate>(_Module, "efl_gfx_path_append_close");
+    private static  void append_close(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_close was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Textpath)wrapper).CloseAppend();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_append_close_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_append_close_delegate efl_gfx_path_append_close_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_circle_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double radius);
+
+
+    public delegate  void efl_gfx_path_append_circle_api_delegate(System.IntPtr obj,   double x,   double y,   double radius);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate> efl_gfx_path_append_circle_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_circle_api_delegate>(_Module, "efl_gfx_path_append_circle");
+    private static  void append_circle(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double radius)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_circle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Textpath)wrapper).AppendCircle( x,  y,  radius);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_path_append_circle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  radius);
+      }
+   }
+   private static efl_gfx_path_append_circle_delegate efl_gfx_path_append_circle_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_rect_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y,   double w,   double h,   double rx,   double ry);
+
+
+    public delegate  void efl_gfx_path_append_rect_api_delegate(System.IntPtr obj,   double x,   double y,   double w,   double h,   double rx,   double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate> efl_gfx_path_append_rect_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_rect_api_delegate>(_Module, "efl_gfx_path_append_rect");
+    private static  void append_rect(System.IntPtr obj, System.IntPtr pd,  double x,  double y,  double w,  double h,  double rx,  double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_rect was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                                              
+         try {
+            ((Textpath)wrapper).AppendRect( x,  y,  w,  h,  rx,  ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                    } else {
+         efl_gfx_path_append_rect_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h,  rx,  ry);
+      }
+   }
+   private static efl_gfx_path_append_rect_delegate efl_gfx_path_append_rect_static_delegate;
+
+
+    private delegate  void efl_gfx_path_append_svg_path_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+
+
+    public delegate  void efl_gfx_path_append_svg_path_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svg_path_data);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate> efl_gfx_path_append_svg_path_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_append_svg_path_api_delegate>(_Module, "efl_gfx_path_append_svg_path");
+    private static  void append_svg_path(System.IntPtr obj, System.IntPtr pd,   System.String svg_path_data)
+   {
+      Eina.Log.Debug("function efl_gfx_path_append_svg_path was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Textpath)wrapper).AppendSvgPath( svg_path_data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_path_append_svg_path_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  svg_path_data);
+      }
+   }
+   private static efl_gfx_path_append_svg_path_delegate efl_gfx_path_append_svg_path_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_interpolate_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_interpolate_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object from, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object to,   double pos_map);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate> efl_gfx_path_interpolate_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_interpolate_api_delegate>(_Module, "efl_gfx_path_interpolate");
+    private static bool interpolate(System.IntPtr obj, System.IntPtr pd,  Efl.Object from,  Efl.Object to,  double pos_map)
+   {
+      Eina.Log.Debug("function efl_gfx_path_interpolate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Textpath)wrapper).Interpolate( from,  to,  pos_map);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_gfx_path_interpolate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  from,  to,  pos_map);
+      }
+   }
+   private static efl_gfx_path_interpolate_delegate efl_gfx_path_interpolate_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_path_equal_commands_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_path_equal_commands_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))]  Efl.Object with);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate> efl_gfx_path_equal_commands_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_equal_commands_api_delegate>(_Module, "efl_gfx_path_equal_commands");
+    private static bool equal_commands(System.IntPtr obj, System.IntPtr pd,  Efl.Object with)
+   {
+      Eina.Log.Debug("function efl_gfx_path_equal_commands was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Textpath)wrapper).EqualCommands( with);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_path_equal_commands_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  with);
+      }
+   }
+   private static efl_gfx_path_equal_commands_delegate efl_gfx_path_equal_commands_static_delegate;
+
+
+    private delegate  void efl_gfx_path_reserve_delegate(System.IntPtr obj, System.IntPtr pd,    uint cmd_count,    uint pts_count);
+
+
+    public delegate  void efl_gfx_path_reserve_api_delegate(System.IntPtr obj,    uint cmd_count,    uint pts_count);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate> efl_gfx_path_reserve_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_reserve_api_delegate>(_Module, "efl_gfx_path_reserve");
+    private static  void reserve(System.IntPtr obj, System.IntPtr pd,   uint cmd_count,   uint pts_count)
+   {
+      Eina.Log.Debug("function efl_gfx_path_reserve was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Textpath)wrapper).Reserve( cmd_count,  pts_count);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_path_reserve_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cmd_count,  pts_count);
+      }
+   }
+   private static efl_gfx_path_reserve_delegate efl_gfx_path_reserve_static_delegate;
+
+
+    private delegate  void efl_gfx_path_commit_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_path_commit_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate> efl_gfx_path_commit_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_path_commit_api_delegate>(_Module, "efl_gfx_path_commit");
+    private static  void commit(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_path_commit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Textpath)wrapper).Commit();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_path_commit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_path_commit_delegate efl_gfx_path_commit_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Textpath direction
+/// @since_tizen 5.5</summary>
+public enum TextpathDirection
+{
+/// <summary>Clockwise</summary>
+Cw = 0,
+/// <summary>Counter-clockwise</summary>
+Ccw = 1,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_textpath_legacy.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_textpath_legacy.eo.cs
new file mode 100755 (executable)
index 0000000..075be69
--- /dev/null
@@ -0,0 +1,94 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Textpath widget</summary>
+[TextpathLegacyNativeInherit]
+public class TextpathLegacy : Efl.Ui.Textpath, Efl.Eo.IWrapper,Efl.Ui.Legacy
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextpathLegacyNativeInherit nativeInherit = new Efl.Ui.TextpathLegacyNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextpathLegacy))
+            return Efl.Ui.TextpathLegacyNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_textpath_legacy_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public TextpathLegacy(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_textpath_legacy_class_get(), typeof(TextpathLegacy), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextpathLegacy(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TextpathLegacy(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TextpathLegacy static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextpathLegacy(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextpathLegacy.efl_ui_textpath_legacy_class_get();
+   }
+}
+public class TextpathLegacyNativeInherit : Efl.Ui.TextpathNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextpathLegacy.efl_ui_textpath_legacy_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextpathLegacy.efl_ui_textpath_legacy_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_textpath_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_textpath_part.eo.cs
new file mode 100755 (executable)
index 0000000..032d1c7
--- /dev/null
@@ -0,0 +1,91 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI Textpath internal part class</summary>
+[TextpathPartNativeInherit]
+public class TextpathPart : Efl.Ui.LayoutPartText, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TextpathPartNativeInherit nativeInherit = new Efl.Ui.TextpathPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (TextpathPart))
+            return Efl.Ui.TextpathPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_textpath_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public TextpathPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_textpath_part_class_get(), typeof(TextpathPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public TextpathPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected TextpathPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static TextpathPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new TextpathPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextpathPart.efl_ui_textpath_part_class_get();
+   }
+}
+public class TextpathPartNativeInherit : Efl.Ui.LayoutPartTextNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.TextpathPart.efl_ui_textpath_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.TextpathPart.efl_ui_textpath_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_theme.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_theme.eo.cs
new file mode 100755 (executable)
index 0000000..b1a8a7f
--- /dev/null
@@ -0,0 +1,264 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl Ui Theme class</summary>
+[ThemeNativeInherit]
+public class Theme : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.ThemeNativeInherit nativeInherit = new Efl.Ui.ThemeNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Theme))
+            return Efl.Ui.ThemeNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_theme_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Theme(Efl.Object parent= null
+         ) :
+      base(efl_ui_theme_class_get(), typeof(Theme), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Theme(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Theme(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Theme static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Theme(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Gets the default theme handle.</summary>
+   /// <returns>The default theme handle</returns>
+   public static Efl.Ui.Theme GetDefault() {
+       var _ret_var = Efl.Ui.ThemeNativeInherit.efl_ui_theme_default_get_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Appends a theme extension to the list of extensions. This is intended when an application needs more styles of widgets or new widget themes that the default does not provide (or may not provide). The application has &quot;extended&quot; usage by coming up with new custom style names for widgets for specific uses, but as these are not &quot;standard&quot;, they are not guaranteed to be provided by a default theme. This means the application is required to provide these extra elements itself in specific Edje files. This call adds one of those Edje files to the theme search path to be searched after the default theme. The use of this call is encouraged when default styles do not meet the needs of the application. Use this call instead of <see cref="Efl.Ui.Theme.AddOverlay"/> for almost all cases.</summary>
+   /// <param name="item">The Edje file path to be used</param>
+   /// <returns></returns>
+   virtual public  void AddExtension(  System.String item) {
+                         Efl.Ui.ThemeNativeInherit.efl_ui_theme_extension_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Deletes a theme extension from the list of extensions.</summary>
+   /// <param name="item">The Edje file path not to be used</param>
+   /// <returns></returns>
+   virtual public  void DelExtension(  System.String item) {
+                         Efl.Ui.ThemeNativeInherit.efl_ui_theme_extension_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Prepends a theme overlay to the list of overlays. Use this if your application needs to provide some custom overlay theme (An Edje file that replaces some default styles of widgets) where adding new styles, or changing system theme configuration is not possible. Do NOT use this instead of a proper system theme configuration. Use proper configuration files, profiles, environment variables etc. to set a theme so that the theme can be altered by simple configuration by a user. Using this call to achieve that effect is abusing the API and will create lots of trouble.</summary>
+   /// <param name="item">The Edje file path to be used</param>
+   /// <returns></returns>
+   virtual public  void AddOverlay(  System.String item) {
+                         Efl.Ui.ThemeNativeInherit.efl_ui_theme_overlay_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Delete a theme overlay from the list of overlays.</summary>
+   /// <param name="item">The Edje file path not to be used</param>
+   /// <returns></returns>
+   virtual public  void DelOverlay(  System.String item) {
+                         Efl.Ui.ThemeNativeInherit.efl_ui_theme_overlay_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This is the default theme.
+/// All widgets use the default theme implicitly unless a specific theme is set.</summary>
+/// <value>The default theme handle</value>
+   public static Efl.Ui.Theme Default {
+      get { return GetDefault(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Theme.efl_ui_theme_class_get();
+   }
+}
+public class ThemeNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_theme_extension_add_static_delegate == null)
+      efl_ui_theme_extension_add_static_delegate = new efl_ui_theme_extension_add_delegate(extension_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_theme_extension_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_theme_extension_add_static_delegate)});
+      if (efl_ui_theme_extension_del_static_delegate == null)
+      efl_ui_theme_extension_del_static_delegate = new efl_ui_theme_extension_del_delegate(extension_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_theme_extension_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_theme_extension_del_static_delegate)});
+      if (efl_ui_theme_overlay_add_static_delegate == null)
+      efl_ui_theme_overlay_add_static_delegate = new efl_ui_theme_overlay_add_delegate(overlay_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_theme_overlay_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_theme_overlay_add_static_delegate)});
+      if (efl_ui_theme_overlay_del_static_delegate == null)
+      efl_ui_theme_overlay_del_static_delegate = new efl_ui_theme_overlay_del_delegate(overlay_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_theme_overlay_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_theme_overlay_del_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Theme.efl_ui_theme_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Theme.efl_ui_theme_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Theme, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Theme efl_ui_theme_default_get_delegate();
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Theme, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Theme efl_ui_theme_default_get_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_ui_theme_default_get_api_delegate> efl_ui_theme_default_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_theme_default_get_api_delegate>(_Module, "efl_ui_theme_default_get");
+    private static Efl.Ui.Theme default_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_theme_default_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Theme _ret_var = default(Efl.Ui.Theme);
+         try {
+            _ret_var = Theme.GetDefault();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_theme_default_get_ptr.Value.Delegate();
+      }
+   }
+
+
+    private delegate  void efl_ui_theme_extension_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+
+
+    public delegate  void efl_ui_theme_extension_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_theme_extension_add_api_delegate> efl_ui_theme_extension_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_theme_extension_add_api_delegate>(_Module, "efl_ui_theme_extension_add");
+    private static  void extension_add(System.IntPtr obj, System.IntPtr pd,   System.String item)
+   {
+      Eina.Log.Debug("function efl_ui_theme_extension_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Theme)wrapper).AddExtension( item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_theme_extension_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item);
+      }
+   }
+   private static efl_ui_theme_extension_add_delegate efl_ui_theme_extension_add_static_delegate;
+
+
+    private delegate  void efl_ui_theme_extension_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+
+
+    public delegate  void efl_ui_theme_extension_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_theme_extension_del_api_delegate> efl_ui_theme_extension_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_theme_extension_del_api_delegate>(_Module, "efl_ui_theme_extension_del");
+    private static  void extension_del(System.IntPtr obj, System.IntPtr pd,   System.String item)
+   {
+      Eina.Log.Debug("function efl_ui_theme_extension_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Theme)wrapper).DelExtension( item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_theme_extension_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item);
+      }
+   }
+   private static efl_ui_theme_extension_del_delegate efl_ui_theme_extension_del_static_delegate;
+
+
+    private delegate  void efl_ui_theme_overlay_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+
+
+    public delegate  void efl_ui_theme_overlay_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_theme_overlay_add_api_delegate> efl_ui_theme_overlay_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_theme_overlay_add_api_delegate>(_Module, "efl_ui_theme_overlay_add");
+    private static  void overlay_add(System.IntPtr obj, System.IntPtr pd,   System.String item)
+   {
+      Eina.Log.Debug("function efl_ui_theme_overlay_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Theme)wrapper).AddOverlay( item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_theme_overlay_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item);
+      }
+   }
+   private static efl_ui_theme_overlay_add_delegate efl_ui_theme_overlay_add_static_delegate;
+
+
+    private delegate  void efl_ui_theme_overlay_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+
+
+    public delegate  void efl_ui_theme_overlay_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_theme_overlay_del_api_delegate> efl_ui_theme_overlay_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_theme_overlay_del_api_delegate>(_Module, "efl_ui_theme_overlay_del");
+    private static  void overlay_del(System.IntPtr obj, System.IntPtr pd,   System.String item)
+   {
+      Eina.Log.Debug("function efl_ui_theme_overlay_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Theme)wrapper).DelOverlay( item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_theme_overlay_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item);
+      }
+   }
+   private static efl_ui_theme_overlay_del_delegate efl_ui_theme_overlay_del_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_timepicker.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_timepicker.eo.cs
new file mode 100755 (executable)
index 0000000..d2761f3
--- /dev/null
@@ -0,0 +1,291 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Timepicker widget
+/// This is a widget which allows the user to pick a time using internal spinner. User can use the internal spinner to select hour, minute, AM/PM or user can input value using internal entry.</summary>
+[TimepickerNativeInherit]
+public class Timepicker : Efl.Ui.LayoutBase, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.TimepickerNativeInherit nativeInherit = new Efl.Ui.TimepickerNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Timepicker))
+            return Efl.Ui.TimepickerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_timepicker_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Timepicker(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_timepicker_class_get(), typeof(Timepicker), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Timepicker(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Timepicker(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Timepicker static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Timepicker(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when date is changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_TIMEPICKER_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_TIMEPICKER_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+   }
+   /// <summary>The current value of time
+   /// <c>hour</c>: Hour. The hour value is in terms of 24 hour format from 0 to 23.
+   /// 
+   /// <c>min</c>: Minute. The minute range is from 0 to 59.</summary>
+   /// <param name="hour">The hour value from 0 to 23.</param>
+   /// <param name="min">The minute value from 0 to 59.</param>
+   /// <returns></returns>
+   virtual public  void GetTime( out  int hour,  out  int min) {
+                                           Efl.Ui.TimepickerNativeInherit.efl_ui_timepicker_time_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out hour,  out min);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The current value of time
+   /// <c>hour</c>: Hour. The hour value is in terms of 24 hour format from 0 to 23.
+   /// 
+   /// <c>min</c>: Minute. The minute range is from 0 to 59.</summary>
+   /// <param name="hour">The hour value from 0 to 23.</param>
+   /// <param name="min">The minute value from 0 to 59.</param>
+   /// <returns></returns>
+   virtual public  void SetTime(  int hour,   int min) {
+                                           Efl.Ui.TimepickerNativeInherit.efl_ui_timepicker_time_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hour,  min);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control if the Timepicker displays 24 hour time or 12 hour time including AM/PM button.</summary>
+   /// <returns><c>true</c> to display the 24 hour time, <c>false</c> to display 12 hour time including AM/PM button.</returns>
+   virtual public bool GetAmpm() {
+       var _ret_var = Efl.Ui.TimepickerNativeInherit.efl_ui_timepicker_ampm_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control if the Timepicker displays 24 hour time or 12 hour time including AM/PM button.</summary>
+   /// <param name="is_24hour"><c>true</c> to display the 24 hour time, <c>false</c> to display 12 hour time including AM/PM button.</param>
+   /// <returns></returns>
+   virtual public  void SetAmpm( bool is_24hour) {
+                         Efl.Ui.TimepickerNativeInherit.efl_ui_timepicker_ampm_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_24hour);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control if the Timepicker displays 24 hour time or 12 hour time including AM/PM button.</summary>
+/// <value><c>true</c> to display the 24 hour time, <c>false</c> to display 12 hour time including AM/PM button.</value>
+   public bool Ampm {
+      get { return GetAmpm(); }
+      set { SetAmpm( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Timepicker.efl_ui_timepicker_class_get();
+   }
+}
+public class TimepickerNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_timepicker_time_get_static_delegate == null)
+      efl_ui_timepicker_time_get_static_delegate = new efl_ui_timepicker_time_get_delegate(time_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_timepicker_time_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_timepicker_time_get_static_delegate)});
+      if (efl_ui_timepicker_time_set_static_delegate == null)
+      efl_ui_timepicker_time_set_static_delegate = new efl_ui_timepicker_time_set_delegate(time_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_timepicker_time_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_timepicker_time_set_static_delegate)});
+      if (efl_ui_timepicker_ampm_get_static_delegate == null)
+      efl_ui_timepicker_ampm_get_static_delegate = new efl_ui_timepicker_ampm_get_delegate(ampm_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_timepicker_ampm_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_timepicker_ampm_get_static_delegate)});
+      if (efl_ui_timepicker_ampm_set_static_delegate == null)
+      efl_ui_timepicker_ampm_set_static_delegate = new efl_ui_timepicker_ampm_set_delegate(ampm_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_timepicker_ampm_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_timepicker_ampm_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Timepicker.efl_ui_timepicker_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Timepicker.efl_ui_timepicker_class_get();
+   }
+
+
+    private delegate  void efl_ui_timepicker_time_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int hour,   out  int min);
+
+
+    public delegate  void efl_ui_timepicker_time_get_api_delegate(System.IntPtr obj,   out  int hour,   out  int min);
+    public static Efl.Eo.FunctionWrapper<efl_ui_timepicker_time_get_api_delegate> efl_ui_timepicker_time_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_timepicker_time_get_api_delegate>(_Module, "efl_ui_timepicker_time_get");
+    private static  void time_get(System.IntPtr obj, System.IntPtr pd,  out  int hour,  out  int min)
+   {
+      Eina.Log.Debug("function efl_ui_timepicker_time_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hour = default( int);      min = default( int);                     
+         try {
+            ((Timepicker)wrapper).GetTime( out hour,  out min);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_timepicker_time_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hour,  out min);
+      }
+   }
+   private static efl_ui_timepicker_time_get_delegate efl_ui_timepicker_time_get_static_delegate;
+
+
+    private delegate  void efl_ui_timepicker_time_set_delegate(System.IntPtr obj, System.IntPtr pd,    int hour,    int min);
+
+
+    public delegate  void efl_ui_timepicker_time_set_api_delegate(System.IntPtr obj,    int hour,    int min);
+    public static Efl.Eo.FunctionWrapper<efl_ui_timepicker_time_set_api_delegate> efl_ui_timepicker_time_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_timepicker_time_set_api_delegate>(_Module, "efl_ui_timepicker_time_set");
+    private static  void time_set(System.IntPtr obj, System.IntPtr pd,   int hour,   int min)
+   {
+      Eina.Log.Debug("function efl_ui_timepicker_time_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Timepicker)wrapper).SetTime( hour,  min);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_timepicker_time_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hour,  min);
+      }
+   }
+   private static efl_ui_timepicker_time_set_delegate efl_ui_timepicker_time_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_timepicker_ampm_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_timepicker_ampm_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_timepicker_ampm_get_api_delegate> efl_ui_timepicker_ampm_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_timepicker_ampm_get_api_delegate>(_Module, "efl_ui_timepicker_ampm_get");
+    private static bool ampm_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_timepicker_ampm_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Timepicker)wrapper).GetAmpm();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_timepicker_ampm_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_timepicker_ampm_get_delegate efl_ui_timepicker_ampm_get_static_delegate;
+
+
+    private delegate  void efl_ui_timepicker_ampm_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_24hour);
+
+
+    public delegate  void efl_ui_timepicker_ampm_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_24hour);
+    public static Efl.Eo.FunctionWrapper<efl_ui_timepicker_ampm_set_api_delegate> efl_ui_timepicker_ampm_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_timepicker_ampm_set_api_delegate>(_Module, "efl_ui_timepicker_ampm_set");
+    private static  void ampm_set(System.IntPtr obj, System.IntPtr pd,  bool is_24hour)
+   {
+      Eina.Log.Debug("function efl_ui_timepicker_ampm_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Timepicker)wrapper).SetAmpm( is_24hour);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_timepicker_ampm_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_24hour);
+      }
+   }
+   private static efl_ui_timepicker_ampm_set_delegate efl_ui_timepicker_ampm_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_types.eot.cs b/internals/src/EflSharp/EflSharp/efl_ui_types.eot.cs
new file mode 100755 (executable)
index 0000000..6434897
--- /dev/null
@@ -0,0 +1,20 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Permitted directions for dragging objects.</summary>
+public enum DragDir
+{
+/// <summary>Not draggable in any direction.</summary>
+None = 0,
+/// <summary>Draggable horizontally.</summary>
+X = 1,
+/// <summary>Draggable vertically.</summary>
+Y = 2,
+/// <summary>Draggable in both directions.</summary>
+Xy = 3,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_video.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_video.eo.cs
new file mode 100755 (executable)
index 0000000..6c4ff1b
--- /dev/null
@@ -0,0 +1,1225 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI video class</summary>
+[VideoNativeInherit]
+public class Video : Efl.Ui.LayoutBase, Efl.Eo.IWrapper,Efl.File,Efl.Player
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.VideoNativeInherit nativeInherit = new Efl.Ui.VideoNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Video))
+            return Efl.Ui.VideoNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_video_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Video(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_video_class_get(), typeof(Video), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Video(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Video(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Video static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Video(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Set whether the object can remember the last played position.
+   /// Note: This API only serves as indication. System support is required.</summary>
+   /// <returns><c>true</c> when the object can remember the last position, <c>false</c> otherwise</returns>
+   virtual public bool GetRememberPosition() {
+       var _ret_var = Efl.Ui.VideoNativeInherit.efl_ui_video_remember_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set whether the object can remember the last played position.
+   /// Note: This API only serves as indication. System support is required.</summary>
+   /// <param name="remember"><c>true</c> when the object can remember the last position, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetRememberPosition( bool remember) {
+                         Efl.Ui.VideoNativeInherit.efl_ui_video_remember_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), remember);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the underlying Emotion object.</summary>
+   /// <returns>The underlying Emotion object.</returns>
+   virtual public Efl.Canvas.Object GetEmotion() {
+       var _ret_var = Efl.Ui.VideoNativeInherit.efl_ui_video_emotion_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the title (for instance DVD title) from this emotion object.
+   /// This function is only useful when playing a DVD.
+   /// 
+   /// Note: Don&apos;t change or free the string returned by this function.</summary>
+   /// <returns>A string containing the title.</returns>
+   virtual public  System.String GetTitle() {
+       var _ret_var = Efl.Ui.VideoNativeInherit.efl_ui_video_title_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Whether or not the playable can be played.</summary>
+   /// <returns><c>true</c> if the object have playable data, <c>false</c> otherwise</returns>
+   virtual public bool GetPlayable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_playable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get play/pause state of the media file.</summary>
+   /// <returns><c>true</c> if playing, <c>false</c> otherwise.</returns>
+   virtual public bool GetPlay() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set play/pause state of the media file.
+   /// This functions sets the currently playing status of the video. Using this function to play or pause the video doesn&apos;t alter it&apos;s current position.</summary>
+   /// <param name="play"><c>true</c> if playing, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetPlay( bool play) {
+                         Efl.PlayerNativeInherit.efl_player_play_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), play);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the position in the media file.
+   /// The position is returned as the number of seconds since the beginning of the media file.</summary>
+   /// <returns>The position (in seconds).</returns>
+   virtual public double GetPos() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_pos_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the position in the media file.
+   /// This functions sets the current position of the media file to &quot;sec&quot;, this only works on seekable streams. Setting the position doesn&apos;t change the playing state of the media file.</summary>
+   /// <param name="sec">The position (in seconds).</param>
+   /// <returns></returns>
+   virtual public  void SetPos( double sec) {
+                         Efl.PlayerNativeInherit.efl_player_pos_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sec);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get how much of the file has been played.
+   /// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+   /// <returns>The progress within the [0, 1] range.</returns>
+   virtual public double GetProgress() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_progress_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <returns>The play speed in the [0, infinity) range.</returns>
+   virtual public double GetPlaySpeed() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_play_speed_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the play speed of the media file.
+   /// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+   /// <param name="speed">The play speed in the [0, infinity) range.</param>
+   /// <returns></returns>
+   virtual public  void SetPlaySpeed( double speed) {
+                         Efl.PlayerNativeInherit.efl_player_play_speed_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), speed);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <returns>The volume level</returns>
+   virtual public double GetVolume() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_volume_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the audio volume.
+   /// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+   /// <param name="volume">The volume level</param>
+   /// <returns></returns>
+   virtual public  void SetVolume( double volume) {
+                         Efl.PlayerNativeInherit.efl_player_volume_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), volume);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <returns>The mute state. <c>true</c> or <c>false</c>.</returns>
+   virtual public bool GetMute() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_mute_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This property controls the audio mute state.</summary>
+   /// <param name="mute">The mute state. <c>true</c> or <c>false</c>.</param>
+   /// <returns></returns>
+   virtual public  void SetMute( bool mute) {
+                         Efl.PlayerNativeInherit.efl_player_mute_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mute);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the length of play for the media file.</summary>
+   /// <returns>The length of the stream in seconds.</returns>
+   virtual public double GetLength() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_length_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get whether the media file is seekable.</summary>
+   /// <returns><c>true</c> if seekable.</returns>
+   virtual public bool GetSeekable() {
+       var _ret_var = Efl.PlayerNativeInherit.efl_player_seekable_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start a playing playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Start() {
+       Efl.PlayerNativeInherit.efl_player_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stop playable object.</summary>
+   /// <returns></returns>
+   virtual public  void Stop() {
+       Efl.PlayerNativeInherit.efl_player_stop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Set whether the object can remember the last played position.
+/// Note: This API only serves as indication. System support is required.</summary>
+/// <value><c>true</c> when the object can remember the last position, <c>false</c> otherwise</value>
+   public bool RememberPosition {
+      get { return GetRememberPosition(); }
+      set { SetRememberPosition( value); }
+   }
+   /// <summary>Get the underlying Emotion object.</summary>
+/// <value>The underlying Emotion object.</value>
+   public Efl.Canvas.Object Emotion {
+      get { return GetEmotion(); }
+   }
+   /// <summary>Get the title (for instance DVD title) from this emotion object.
+/// This function is only useful when playing a DVD.
+/// 
+/// Note: Don&apos;t change or free the string returned by this function.</summary>
+/// <value>A string containing the title.</value>
+   public  System.String Title {
+      get { return GetTitle(); }
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Whether or not the playable can be played.</summary>
+/// <value><c>true</c> if the object have playable data, <c>false</c> otherwise</value>
+   public bool Playable {
+      get { return GetPlayable(); }
+   }
+   /// <summary>Get play/pause state of the media file.</summary>
+/// <value><c>true</c> if playing, <c>false</c> otherwise.</value>
+   public bool Play {
+      get { return GetPlay(); }
+      set { SetPlay( value); }
+   }
+   /// <summary>Get the position in the media file.
+/// The position is returned as the number of seconds since the beginning of the media file.</summary>
+/// <value>The position (in seconds).</value>
+   public double Pos {
+      get { return GetPos(); }
+      set { SetPos( value); }
+   }
+   /// <summary>Get how much of the file has been played.
+/// This function gets the progress in playing the file, the return value is in the [0, 1] range.</summary>
+/// <value>The progress within the [0, 1] range.</value>
+   public double Progress {
+      get { return GetProgress(); }
+   }
+   /// <summary>Control the play speed of the media file.
+/// This function control the speed with which the media file will be played. 1.0 represents the normal speed, 2 double speed, 0.5 half speed and so on.</summary>
+/// <value>The play speed in the [0, infinity) range.</value>
+   public double PlaySpeed {
+      get { return GetPlaySpeed(); }
+      set { SetPlaySpeed( value); }
+   }
+   /// <summary>Control the audio volume.
+/// Controls the audio volume of the stream being played. This has nothing to do with the system volume. This volume will be multiplied by the system volume. e.g.: if the current volume level is 0.5, and the system volume is 50%, it will be 0.5 * 0.5 = 0.25.</summary>
+/// <value>The volume level</value>
+   public double Volume {
+      get { return GetVolume(); }
+      set { SetVolume( value); }
+   }
+   /// <summary>This property controls the audio mute state.</summary>
+/// <value>The mute state. <c>true</c> or <c>false</c>.</value>
+   public bool Mute {
+      get { return GetMute(); }
+      set { SetMute( value); }
+   }
+   /// <summary>Get the length of play for the media file.</summary>
+/// <value>The length of the stream in seconds.</value>
+   public double Length {
+      get { return GetLength(); }
+   }
+   /// <summary>Get whether the media file is seekable.</summary>
+/// <value><c>true</c> if seekable.</value>
+   public bool Seekable {
+      get { return GetSeekable(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Video.efl_ui_video_class_get();
+   }
+}
+public class VideoNativeInherit : Efl.Ui.LayoutBaseNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_video_remember_position_get_static_delegate == null)
+      efl_ui_video_remember_position_get_static_delegate = new efl_ui_video_remember_position_get_delegate(remember_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_video_remember_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_video_remember_position_get_static_delegate)});
+      if (efl_ui_video_remember_position_set_static_delegate == null)
+      efl_ui_video_remember_position_set_static_delegate = new efl_ui_video_remember_position_set_delegate(remember_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_video_remember_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_video_remember_position_set_static_delegate)});
+      if (efl_ui_video_emotion_get_static_delegate == null)
+      efl_ui_video_emotion_get_static_delegate = new efl_ui_video_emotion_get_delegate(emotion_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_video_emotion_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_video_emotion_get_static_delegate)});
+      if (efl_ui_video_title_get_static_delegate == null)
+      efl_ui_video_title_get_static_delegate = new efl_ui_video_title_get_delegate(title_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_video_title_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_video_title_get_static_delegate)});
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_player_playable_get_static_delegate == null)
+      efl_player_playable_get_static_delegate = new efl_player_playable_get_delegate(playable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_playable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_playable_get_static_delegate)});
+      if (efl_player_play_get_static_delegate == null)
+      efl_player_play_get_static_delegate = new efl_player_play_get_delegate(play_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_get_static_delegate)});
+      if (efl_player_play_set_static_delegate == null)
+      efl_player_play_set_static_delegate = new efl_player_play_set_delegate(play_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_set_static_delegate)});
+      if (efl_player_pos_get_static_delegate == null)
+      efl_player_pos_get_static_delegate = new efl_player_pos_get_delegate(pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_get_static_delegate)});
+      if (efl_player_pos_set_static_delegate == null)
+      efl_player_pos_set_static_delegate = new efl_player_pos_set_delegate(pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_pos_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_pos_set_static_delegate)});
+      if (efl_player_progress_get_static_delegate == null)
+      efl_player_progress_get_static_delegate = new efl_player_progress_get_delegate(progress_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_progress_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_progress_get_static_delegate)});
+      if (efl_player_play_speed_get_static_delegate == null)
+      efl_player_play_speed_get_static_delegate = new efl_player_play_speed_get_delegate(play_speed_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_get_static_delegate)});
+      if (efl_player_play_speed_set_static_delegate == null)
+      efl_player_play_speed_set_static_delegate = new efl_player_play_speed_set_delegate(play_speed_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_play_speed_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_play_speed_set_static_delegate)});
+      if (efl_player_volume_get_static_delegate == null)
+      efl_player_volume_get_static_delegate = new efl_player_volume_get_delegate(volume_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_get_static_delegate)});
+      if (efl_player_volume_set_static_delegate == null)
+      efl_player_volume_set_static_delegate = new efl_player_volume_set_delegate(volume_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_volume_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_volume_set_static_delegate)});
+      if (efl_player_mute_get_static_delegate == null)
+      efl_player_mute_get_static_delegate = new efl_player_mute_get_delegate(mute_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_get_static_delegate)});
+      if (efl_player_mute_set_static_delegate == null)
+      efl_player_mute_set_static_delegate = new efl_player_mute_set_delegate(mute_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_mute_set"), func = Marshal.GetFunctionPointerForDelegate(efl_player_mute_set_static_delegate)});
+      if (efl_player_length_get_static_delegate == null)
+      efl_player_length_get_static_delegate = new efl_player_length_get_delegate(length_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_length_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_length_get_static_delegate)});
+      if (efl_player_seekable_get_static_delegate == null)
+      efl_player_seekable_get_static_delegate = new efl_player_seekable_get_delegate(seekable_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_seekable_get"), func = Marshal.GetFunctionPointerForDelegate(efl_player_seekable_get_static_delegate)});
+      if (efl_player_start_static_delegate == null)
+      efl_player_start_static_delegate = new efl_player_start_delegate(start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_start"), func = Marshal.GetFunctionPointerForDelegate(efl_player_start_static_delegate)});
+      if (efl_player_stop_static_delegate == null)
+      efl_player_stop_static_delegate = new efl_player_stop_delegate(stop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_player_stop"), func = Marshal.GetFunctionPointerForDelegate(efl_player_stop_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Video.efl_ui_video_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Video.efl_ui_video_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_video_remember_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_video_remember_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_video_remember_position_get_api_delegate> efl_ui_video_remember_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_video_remember_position_get_api_delegate>(_Module, "efl_ui_video_remember_position_get");
+    private static bool remember_position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_video_remember_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Video)wrapper).GetRememberPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_video_remember_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_video_remember_position_get_delegate efl_ui_video_remember_position_get_static_delegate;
+
+
+    private delegate  void efl_ui_video_remember_position_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool remember);
+
+
+    public delegate  void efl_ui_video_remember_position_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool remember);
+    public static Efl.Eo.FunctionWrapper<efl_ui_video_remember_position_set_api_delegate> efl_ui_video_remember_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_video_remember_position_set_api_delegate>(_Module, "efl_ui_video_remember_position_set");
+    private static  void remember_position_set(System.IntPtr obj, System.IntPtr pd,  bool remember)
+   {
+      Eina.Log.Debug("function efl_ui_video_remember_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Video)wrapper).SetRememberPosition( remember);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_video_remember_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  remember);
+      }
+   }
+   private static efl_ui_video_remember_position_set_delegate efl_ui_video_remember_position_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_video_emotion_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_video_emotion_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_video_emotion_get_api_delegate> efl_ui_video_emotion_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_video_emotion_get_api_delegate>(_Module, "efl_ui_video_emotion_get");
+    private static Efl.Canvas.Object emotion_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_video_emotion_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Video)wrapper).GetEmotion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_video_emotion_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_video_emotion_get_delegate efl_ui_video_emotion_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_video_title_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_video_title_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_video_title_get_api_delegate> efl_ui_video_title_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_video_title_get_api_delegate>(_Module, "efl_ui_video_title_get");
+    private static  System.String title_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_video_title_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Video)wrapper).GetTitle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_video_title_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_video_title_get_delegate efl_ui_video_title_get_static_delegate;
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((Video)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Video)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Video)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Video)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Video)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Video)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Video)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((Video)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Video)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_playable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_playable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate> efl_player_playable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_playable_get_api_delegate>(_Module, "efl_player_playable_get");
+    private static bool playable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_playable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Video)wrapper).GetPlayable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_playable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_playable_get_delegate efl_player_playable_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_play_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_play_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate> efl_player_play_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_get_api_delegate>(_Module, "efl_player_play_get");
+    private static bool play_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Video)wrapper).GetPlay();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_get_delegate efl_player_play_get_static_delegate;
+
+
+    private delegate  void efl_player_play_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool play);
+
+
+    public delegate  void efl_player_play_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool play);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate> efl_player_play_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_set_api_delegate>(_Module, "efl_player_play_set");
+    private static  void play_set(System.IntPtr obj, System.IntPtr pd,  bool play)
+   {
+      Eina.Log.Debug("function efl_player_play_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Video)wrapper).SetPlay( play);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  play);
+      }
+   }
+   private static efl_player_play_set_delegate efl_player_play_set_static_delegate;
+
+
+    private delegate double efl_player_pos_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_pos_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate> efl_player_pos_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_get_api_delegate>(_Module, "efl_player_pos_get");
+    private static double pos_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Video)wrapper).GetPos();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_pos_get_delegate efl_player_pos_get_static_delegate;
+
+
+    private delegate  void efl_player_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,   double sec);
+
+
+    public delegate  void efl_player_pos_set_api_delegate(System.IntPtr obj,   double sec);
+    public static Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate> efl_player_pos_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_pos_set_api_delegate>(_Module, "efl_player_pos_set");
+    private static  void pos_set(System.IntPtr obj, System.IntPtr pd,  double sec)
+   {
+      Eina.Log.Debug("function efl_player_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Video)wrapper).SetPos( sec);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sec);
+      }
+   }
+   private static efl_player_pos_set_delegate efl_player_pos_set_static_delegate;
+
+
+    private delegate double efl_player_progress_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_progress_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate> efl_player_progress_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_progress_get_api_delegate>(_Module, "efl_player_progress_get");
+    private static double progress_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_progress_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Video)wrapper).GetProgress();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_progress_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_progress_get_delegate efl_player_progress_get_static_delegate;
+
+
+    private delegate double efl_player_play_speed_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_play_speed_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate> efl_player_play_speed_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_get_api_delegate>(_Module, "efl_player_play_speed_get");
+    private static double play_speed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Video)wrapper).GetPlaySpeed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_play_speed_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_play_speed_get_delegate efl_player_play_speed_get_static_delegate;
+
+
+    private delegate  void efl_player_play_speed_set_delegate(System.IntPtr obj, System.IntPtr pd,   double speed);
+
+
+    public delegate  void efl_player_play_speed_set_api_delegate(System.IntPtr obj,   double speed);
+    public static Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate> efl_player_play_speed_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_play_speed_set_api_delegate>(_Module, "efl_player_play_speed_set");
+    private static  void play_speed_set(System.IntPtr obj, System.IntPtr pd,  double speed)
+   {
+      Eina.Log.Debug("function efl_player_play_speed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Video)wrapper).SetPlaySpeed( speed);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_play_speed_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  speed);
+      }
+   }
+   private static efl_player_play_speed_set_delegate efl_player_play_speed_set_static_delegate;
+
+
+    private delegate double efl_player_volume_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_volume_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate> efl_player_volume_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_get_api_delegate>(_Module, "efl_player_volume_get");
+    private static double volume_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_volume_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Video)wrapper).GetVolume();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_volume_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_volume_get_delegate efl_player_volume_get_static_delegate;
+
+
+    private delegate  void efl_player_volume_set_delegate(System.IntPtr obj, System.IntPtr pd,   double volume);
+
+
+    public delegate  void efl_player_volume_set_api_delegate(System.IntPtr obj,   double volume);
+    public static Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate> efl_player_volume_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_volume_set_api_delegate>(_Module, "efl_player_volume_set");
+    private static  void volume_set(System.IntPtr obj, System.IntPtr pd,  double volume)
+   {
+      Eina.Log.Debug("function efl_player_volume_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Video)wrapper).SetVolume( volume);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_volume_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  volume);
+      }
+   }
+   private static efl_player_volume_set_delegate efl_player_volume_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_mute_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_mute_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate> efl_player_mute_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_get_api_delegate>(_Module, "efl_player_mute_get");
+    private static bool mute_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_mute_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Video)wrapper).GetMute();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_mute_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_mute_get_delegate efl_player_mute_get_static_delegate;
+
+
+    private delegate  void efl_player_mute_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+
+
+    public delegate  void efl_player_mute_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool mute);
+    public static Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate> efl_player_mute_set_ptr = new Efl.Eo.FunctionWrapper<efl_player_mute_set_api_delegate>(_Module, "efl_player_mute_set");
+    private static  void mute_set(System.IntPtr obj, System.IntPtr pd,  bool mute)
+   {
+      Eina.Log.Debug("function efl_player_mute_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Video)wrapper).SetMute( mute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_player_mute_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mute);
+      }
+   }
+   private static efl_player_mute_set_delegate efl_player_mute_set_static_delegate;
+
+
+    private delegate double efl_player_length_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_player_length_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate> efl_player_length_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_length_get_api_delegate>(_Module, "efl_player_length_get");
+    private static double length_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_length_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Video)wrapper).GetLength();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_length_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_length_get_delegate efl_player_length_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_player_seekable_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_player_seekable_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate> efl_player_seekable_get_ptr = new Efl.Eo.FunctionWrapper<efl_player_seekable_get_api_delegate>(_Module, "efl_player_seekable_get");
+    private static bool seekable_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_seekable_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Video)wrapper).GetSeekable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_player_seekable_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_seekable_get_delegate efl_player_seekable_get_static_delegate;
+
+
+    private delegate  void efl_player_start_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_start_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_start_api_delegate> efl_player_start_ptr = new Efl.Eo.FunctionWrapper<efl_player_start_api_delegate>(_Module, "efl_player_start");
+    private static  void start(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Video)wrapper).Start();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_start_delegate efl_player_start_static_delegate;
+
+
+    private delegate  void efl_player_stop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_player_stop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate> efl_player_stop_ptr = new Efl.Eo.FunctionWrapper<efl_player_stop_api_delegate>(_Module, "efl_player_stop");
+    private static  void stop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_player_stop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Video)wrapper).Stop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_player_stop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_player_stop_delegate efl_player_stop_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_view.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_view.eo.cs
new file mode 100755 (executable)
index 0000000..4b3e37f
--- /dev/null
@@ -0,0 +1,194 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI view interface</summary>
+[ViewNativeInherit]
+public interface View : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Model that is/will be</summary>
+/// <returns>Efl model</returns>
+Efl.Model GetModel();
+   /// <summary>Model that is/will be</summary>
+/// <param name="model">Efl model</param>
+/// <returns></returns>
+ void SetModel( Efl.Model model);
+         /// <summary>Model that is/will be</summary>
+/// <value>Efl model</value>
+   Efl.Model Model {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl UI view interface</summary>
+sealed public class ViewConcrete : 
+
+View
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ViewConcrete))
+            return Efl.Ui.ViewNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_view_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ViewConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ViewConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ViewConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ViewConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Model that is/will be</summary>
+   /// <returns>Efl model</returns>
+   public Efl.Model GetModel() {
+       var _ret_var = Efl.Ui.ViewNativeInherit.efl_ui_view_model_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Model that is/will be</summary>
+   /// <param name="model">Efl model</param>
+   /// <returns></returns>
+   public  void SetModel( Efl.Model model) {
+                         Efl.Ui.ViewNativeInherit.efl_ui_view_model_set_ptr.Value.Delegate(this.NativeHandle, model);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Model that is/will be</summary>
+/// <value>Efl model</value>
+   public Efl.Model Model {
+      get { return GetModel(); }
+      set { SetModel( value); }
+   }
+}
+public class ViewNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_view_model_get_static_delegate == null)
+      efl_ui_view_model_get_static_delegate = new efl_ui_view_model_get_delegate(model_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_get_static_delegate)});
+      if (efl_ui_view_model_set_static_delegate == null)
+      efl_ui_view_model_set_static_delegate = new efl_ui_view_model_set_delegate(model_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_view_model_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_view_model_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ViewConcrete.efl_ui_view_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ViewConcrete.efl_ui_view_interface_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Model efl_ui_view_model_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Model efl_ui_view_model_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate> efl_ui_view_model_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_get_api_delegate>(_Module, "efl_ui_view_model_get");
+    private static Efl.Model model_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Model _ret_var = default(Efl.Model);
+         try {
+            _ret_var = ((View)wrapper).GetModel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_view_model_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_view_model_get_delegate efl_ui_view_model_get_static_delegate;
+
+
+    private delegate  void efl_ui_view_model_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+
+
+    public delegate  void efl_ui_view_model_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model);
+    public static Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate> efl_ui_view_model_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_view_model_set_api_delegate>(_Module, "efl_ui_view_model_set");
+    private static  void model_set(System.IntPtr obj, System.IntPtr pd,  Efl.Model model)
+   {
+      Eina.Log.Debug("function efl_ui_view_model_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((View)wrapper).SetModel( model);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_view_model_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  model);
+      }
+   }
+   private static efl_ui_view_model_set_delegate efl_ui_view_model_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_widget.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_widget.eo.cs
new file mode 100755 (executable)
index 0000000..2a38e9c
--- /dev/null
@@ -0,0 +1,7034 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+/// <param name="obj">Canvas object</param>
+/// <param name="region">Showed region</param>
+/// <returns></returns>
+public delegate  void ScrollableOnShowRegion( Efl.Canvas.Object obj,  Eina.Rect region);
+public delegate  void ScrollableOnShowRegionInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj,   Eina.Rect_StructInternal region);
+internal class ScrollableOnShowRegionWrapper
+{
+
+   private ScrollableOnShowRegionInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal ScrollableOnShowRegionWrapper (ScrollableOnShowRegionInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~ScrollableOnShowRegionWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  void ManagedCb( Efl.Canvas.Object obj, Eina.Rect region)
+   {
+            var _in_region = Eina.Rect_StructConversion.ToInternal(region);
+                              _cb(_cb_data,  obj,  _in_region);
+      Eina.Error.RaiseIfUnhandledException();
+                                 }
+
+      internal static  void Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object obj,   Eina.Rect_StructInternal region)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      ScrollableOnShowRegion cb = (ScrollableOnShowRegion)handle.Target;
+            var _in_region = Eina.Rect_StructConversion.ToManaged(region);
+                                 
+      try {
+         cb( obj,  _in_region);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                                 }
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI widget abstract class</summary>
+[WidgetNativeInherit]
+public class Widget : Efl.Canvas.Group, Efl.Eo.IWrapper,Efl.Part,Efl.Access.Action,Efl.Access.Component,Efl.Access.Object,Efl.Access.Widget.Action,Efl.Ui.Dnd,Efl.Ui.L10n,Efl.Ui.Selection,Efl.Ui.Focus.Object
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WidgetNativeInherit nativeInherit = new Efl.Ui.WidgetNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Widget))
+            return Efl.Ui.WidgetNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_widget_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Widget(Efl.Object parent
+         ,  System.String style = null) :
+      base(efl_ui_widget_class_get(), typeof(Widget), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Widget(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Widget(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Widget static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Widget(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object LanguageChangedEvtKey = new object();
+   /// <summary>Called when widget language changed</summary>
+   public event EventHandler LanguageChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_LANGUAGE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_LanguageChangedEvt_delegate)) {
+               eventHandlers.AddHandler(LanguageChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_LANGUAGE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_LanguageChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(LanguageChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event LanguageChangedEvt.</summary>
+   public void On_LanguageChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[LanguageChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_LanguageChangedEvt_delegate;
+   private void on_LanguageChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_LanguageChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AccessChangedEvtKey = new object();
+   /// <summary>Called when accessibility changed</summary>
+   public event EventHandler AccessChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_ACCESS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AccessChangedEvt_delegate)) {
+               eventHandlers.AddHandler(AccessChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_ACCESS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_AccessChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AccessChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AccessChangedEvt.</summary>
+   public void On_AccessChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AccessChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AccessChangedEvt_delegate;
+   private void on_AccessChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AccessChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AtspiHighlightedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler AtspiHighlightedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_ATSPI_HIGHLIGHTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AtspiHighlightedEvt_delegate)) {
+               eventHandlers.AddHandler(AtspiHighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_ATSPI_HIGHLIGHTED";
+            if (remove_cpp_event_handler(key, this.evt_AtspiHighlightedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AtspiHighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AtspiHighlightedEvt.</summary>
+   public void On_AtspiHighlightedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AtspiHighlightedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AtspiHighlightedEvt_delegate;
+   private void on_AtspiHighlightedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AtspiHighlightedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AtspiUnhighlightedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler AtspiUnhighlightedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_ATSPI_UNHIGHLIGHTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AtspiUnhighlightedEvt_delegate)) {
+               eventHandlers.AddHandler(AtspiUnhighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIDGET_EVENT_ATSPI_UNHIGHLIGHTED";
+            if (remove_cpp_event_handler(key, this.evt_AtspiUnhighlightedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AtspiUnhighlightedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AtspiUnhighlightedEvt.</summary>
+   public void On_AtspiUnhighlightedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AtspiUnhighlightedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AtspiUnhighlightedEvt_delegate;
+   private void on_AtspiUnhighlightedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AtspiUnhighlightedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PropertyChangedEvtKey = new object();
+   /// <summary>Called when property has changed</summary>
+   public event EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args> PropertyChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_PROPERTY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PropertyChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PropertyChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_PROPERTY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PropertyChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PropertyChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PropertyChangedEvt.</summary>
+   public void On_PropertyChangedEvt(Efl.Access.ObjectPropertyChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args>)eventHandlers[PropertyChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PropertyChangedEvt_delegate;
+   private void on_PropertyChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectPropertyChangedEvt_Args args = new Efl.Access.ObjectPropertyChangedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_PropertyChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildrenChangedEvtKey = new object();
+   /// <summary>Called when children have changed</summary>
+   public event EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args> ChildrenChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_CHILDREN_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChildrenChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildrenChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_CHILDREN_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChildrenChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildrenChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildrenChangedEvt.</summary>
+   public void On_ChildrenChangedEvt(Efl.Access.ObjectChildrenChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args>)eventHandlers[ChildrenChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildrenChangedEvt_delegate;
+   private void on_ChildrenChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectChildrenChangedEvt_Args args = new Efl.Access.ObjectChildrenChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChildrenChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StateChangedEvtKey = new object();
+   /// <summary>Called when state has changed</summary>
+   public event EventHandler<Efl.Access.ObjectStateChangedEvt_Args> StateChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_STATE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_StateChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_STATE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StateChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StateChangedEvt.</summary>
+   public void On_StateChangedEvt(Efl.Access.ObjectStateChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectStateChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectStateChangedEvt_Args>)eventHandlers[StateChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StateChangedEvt_delegate;
+   private void on_StateChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectStateChangedEvt_Args args = new Efl.Access.ObjectStateChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_StateChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BoundsChangedEvtKey = new object();
+   /// <summary>Called when boundaries have changed</summary>
+   public event EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args> BoundsChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_BOUNDS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_BoundsChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BoundsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_BOUNDS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BoundsChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BoundsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BoundsChangedEvt.</summary>
+   public void On_BoundsChangedEvt(Efl.Access.ObjectBoundsChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args>)eventHandlers[BoundsChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BoundsChangedEvt_delegate;
+   private void on_BoundsChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectBoundsChangedEvt_Args args = new Efl.Access.ObjectBoundsChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_BoundsChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object VisibleDataChangedEvtKey = new object();
+   /// <summary>Called when visibility has changed</summary>
+   public event EventHandler VisibleDataChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_VISIBLE_DATA_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_VisibleDataChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibleDataChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_VISIBLE_DATA_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibleDataChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibleDataChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibleDataChangedEvt.</summary>
+   public void On_VisibleDataChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[VisibleDataChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibleDataChangedEvt_delegate;
+   private void on_VisibleDataChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_VisibleDataChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ActiveDescendantChangedEvtKey = new object();
+   /// <summary>Called when active state of descendant has changed</summary>
+   public event EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args> ActiveDescendantChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ACTIVE_DESCENDANT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ActiveDescendantChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ActiveDescendantChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ACTIVE_DESCENDANT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ActiveDescendantChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ActiveDescendantChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ActiveDescendantChangedEvt.</summary>
+   public void On_ActiveDescendantChangedEvt(Efl.Access.ObjectActiveDescendantChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args>)eventHandlers[ActiveDescendantChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ActiveDescendantChangedEvt_delegate;
+   private void on_ActiveDescendantChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectActiveDescendantChangedEvt_Args args = new Efl.Access.ObjectActiveDescendantChangedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ActiveDescendantChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AddedEvtKey = new object();
+   /// <summary>Called when item is added</summary>
+   public event EventHandler AddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AddedEvt_delegate)) {
+               eventHandlers.AddHandler(AddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_AddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AddedEvt.</summary>
+   public void On_AddedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AddedEvt_delegate;
+   private void on_AddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RemovedEvtKey = new object();
+   /// <summary>Called when item is removed</summary>
+   public event EventHandler RemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RemovedEvt_delegate)) {
+               eventHandlers.AddHandler(RemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_RemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RemovedEvt.</summary>
+   public void On_RemovedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RemovedEvt_delegate;
+   private void on_RemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MoveOutedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler MoveOutedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_MOVE_OUTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_MoveOutedEvt_delegate)) {
+               eventHandlers.AddHandler(MoveOutedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_MOVE_OUTED";
+            if (remove_cpp_event_handler(key, this.evt_MoveOutedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MoveOutedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MoveOutedEvt.</summary>
+   public void On_MoveOutedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[MoveOutedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MoveOutedEvt_delegate;
+   private void on_MoveOutedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_MoveOutedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ReadingStateChangedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler ReadingStateChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WIDGET_ACTION_EVENT_READING_STATE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ReadingStateChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ReadingStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WIDGET_ACTION_EVENT_READING_STATE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ReadingStateChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ReadingStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ReadingStateChangedEvt.</summary>
+   public void On_ReadingStateChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ReadingStateChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ReadingStateChangedEvt_delegate;
+   private void on_ReadingStateChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ReadingStateChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragAcceptEvtKey = new object();
+   /// <summary>accept drag data</summary>
+   public event EventHandler<Efl.Ui.DndDragAcceptEvt_Args> DragAcceptEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ACCEPT";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragAcceptEvt_delegate)) {
+               eventHandlers.AddHandler(DragAcceptEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ACCEPT";
+            if (remove_cpp_event_handler(key, this.evt_DragAcceptEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragAcceptEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragAcceptEvt.</summary>
+   public void On_DragAcceptEvt(Efl.Ui.DndDragAcceptEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DndDragAcceptEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DndDragAcceptEvt_Args>)eventHandlers[DragAcceptEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragAcceptEvt_delegate;
+   private void on_DragAcceptEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DndDragAcceptEvt_Args args = new Efl.Ui.DndDragAcceptEvt_Args();
+      args.arg = (bool)Marshal.PtrToStructure(evt.Info, typeof(bool));
+      try {
+         On_DragAcceptEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragDoneEvtKey = new object();
+   /// <summary>drag is done (mouse up)</summary>
+   public event EventHandler DragDoneEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DONE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragDoneEvt_delegate)) {
+               eventHandlers.AddHandler(DragDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DONE";
+            if (remove_cpp_event_handler(key, this.evt_DragDoneEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragDoneEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragDoneEvt.</summary>
+   public void On_DragDoneEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragDoneEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragDoneEvt_delegate;
+   private void on_DragDoneEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragDoneEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragEnterEvtKey = new object();
+   /// <summary>called when the drag object enters this object</summary>
+   public event EventHandler DragEnterEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ENTER";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragEnterEvt_delegate)) {
+               eventHandlers.AddHandler(DragEnterEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_ENTER";
+            if (remove_cpp_event_handler(key, this.evt_DragEnterEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragEnterEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragEnterEvt.</summary>
+   public void On_DragEnterEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragEnterEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragEnterEvt_delegate;
+   private void on_DragEnterEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragEnterEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragLeaveEvtKey = new object();
+   /// <summary>called when the drag object leaves this object</summary>
+   public event EventHandler DragLeaveEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_LEAVE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragLeaveEvt_delegate)) {
+               eventHandlers.AddHandler(DragLeaveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_LEAVE";
+            if (remove_cpp_event_handler(key, this.evt_DragLeaveEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragLeaveEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragLeaveEvt.</summary>
+   public void On_DragLeaveEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DragLeaveEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragLeaveEvt_delegate;
+   private void on_DragLeaveEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DragLeaveEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragPosEvtKey = new object();
+   /// <summary>called when the drag object changes drag position</summary>
+   public event EventHandler<Efl.Ui.DndDragPosEvt_Args> DragPosEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_POS";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragPosEvt_delegate)) {
+               eventHandlers.AddHandler(DragPosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_POS";
+            if (remove_cpp_event_handler(key, this.evt_DragPosEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragPosEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragPosEvt.</summary>
+   public void On_DragPosEvt(Efl.Ui.DndDragPosEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DndDragPosEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DndDragPosEvt_Args>)eventHandlers[DragPosEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragPosEvt_delegate;
+   private void on_DragPosEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DndDragPosEvt_Args args = new Efl.Ui.DndDragPosEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_DragPosEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DragDropEvtKey = new object();
+   /// <summary>called when the drag object dropped on this object</summary>
+   public event EventHandler<Efl.Ui.DndDragDropEvt_Args> DragDropEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DROP";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DragDropEvt_delegate)) {
+               eventHandlers.AddHandler(DragDropEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_DND_EVENT_DRAG_DROP";
+            if (remove_cpp_event_handler(key, this.evt_DragDropEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DragDropEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DragDropEvt.</summary>
+   public void On_DragDropEvt(Efl.Ui.DndDragDropEvt_Args e)
+   {
+      EventHandler<Efl.Ui.DndDragDropEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.DndDragDropEvt_Args>)eventHandlers[DragDropEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DragDropEvt_delegate;
+   private void on_DragDropEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.DndDragDropEvt_Args args = new Efl.Ui.DndDragDropEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_DragDropEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SelectionChangedEvtKey = new object();
+   /// <summary>Called when display server&apos;s selection has changed</summary>
+   public event EventHandler<Efl.Ui.SelectionSelectionChangedEvt_Args> SelectionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_SELECTION_EVENT_SELECTION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_SelectionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_SELECTION_EVENT_SELECTION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SelectionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SelectionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SelectionChangedEvt.</summary>
+   public void On_SelectionChangedEvt(Efl.Ui.SelectionSelectionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.SelectionSelectionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.SelectionSelectionChangedEvt_Args>)eventHandlers[SelectionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SelectionChangedEvt_delegate;
+   private void on_SelectionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.SelectionSelectionChangedEvt_Args args = new Efl.Ui.SelectionSelectionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SelectionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FocusChangedEvtKey = new object();
+   /// <summary>Emitted if the focus state has changed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args> FocusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FocusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(FocusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_FocusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FocusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FocusChangedEvt.</summary>
+   public void On_FocusChangedEvt(Efl.Ui.Focus.ObjectFocusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocusChangedEvt_Args>)eventHandlers[FocusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FocusChangedEvt_delegate;
+   private void on_FocusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocusChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocusChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_FocusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_managerChangedEvtKey = new object();
+   /// <summary>Emitted when a new manager is the parent for this object.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args> Focus_managerChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_MANAGER_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_managerChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_managerChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_MANAGER_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_managerChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_managerChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_managerChangedEvt.</summary>
+   public void On_Focus_managerChangedEvt(Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args>)eventHandlers[Focus_managerChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_managerChangedEvt_delegate;
+   private void on_Focus_managerChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocus_managerChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_Focus_managerChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_parentChangedEvtKey = new object();
+   /// <summary>Emitted when a new logical parent should be used.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args> Focus_parentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_PARENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_parentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_parentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_PARENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_parentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_parentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_parentChangedEvt.</summary>
+   public void On_Focus_parentChangedEvt(Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args>)eventHandlers[Focus_parentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_parentChangedEvt_delegate;
+   private void on_Focus_parentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args args = new Efl.Ui.Focus.ObjectFocus_parentChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Focus_parentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Child_focusChangedEvtKey = new object();
+   /// <summary>Emitted if child_focus has changed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args> Child_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_CHILD_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Child_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Child_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_CHILD_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Child_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Child_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Child_focusChangedEvt.</summary>
+   public void On_Child_focusChangedEvt(Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args>)eventHandlers[Child_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Child_focusChangedEvt_delegate;
+   private void on_Child_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args args = new Efl.Ui.Focus.ObjectChild_focusChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Child_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Focus_geometryChangedEvtKey = new object();
+   /// <summary>Emitted if focus geometry of this object has changed.
+   /// 1.20</summary>
+   public event EventHandler Focus_geometryChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_GEOMETRY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Focus_geometryChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Focus_geometryChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_OBJECT_EVENT_FOCUS_GEOMETRY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Focus_geometryChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Focus_geometryChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Focus_geometryChangedEvt.</summary>
+   public void On_Focus_geometryChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[Focus_geometryChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Focus_geometryChangedEvt_delegate;
+   private void on_Focus_geometryChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_Focus_geometryChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_LanguageChangedEvt_delegate = new Efl.EventCb(on_LanguageChangedEvt_NativeCallback);
+      evt_AccessChangedEvt_delegate = new Efl.EventCb(on_AccessChangedEvt_NativeCallback);
+      evt_AtspiHighlightedEvt_delegate = new Efl.EventCb(on_AtspiHighlightedEvt_NativeCallback);
+      evt_AtspiUnhighlightedEvt_delegate = new Efl.EventCb(on_AtspiUnhighlightedEvt_NativeCallback);
+      evt_PropertyChangedEvt_delegate = new Efl.EventCb(on_PropertyChangedEvt_NativeCallback);
+      evt_ChildrenChangedEvt_delegate = new Efl.EventCb(on_ChildrenChangedEvt_NativeCallback);
+      evt_StateChangedEvt_delegate = new Efl.EventCb(on_StateChangedEvt_NativeCallback);
+      evt_BoundsChangedEvt_delegate = new Efl.EventCb(on_BoundsChangedEvt_NativeCallback);
+      evt_VisibleDataChangedEvt_delegate = new Efl.EventCb(on_VisibleDataChangedEvt_NativeCallback);
+      evt_ActiveDescendantChangedEvt_delegate = new Efl.EventCb(on_ActiveDescendantChangedEvt_NativeCallback);
+      evt_AddedEvt_delegate = new Efl.EventCb(on_AddedEvt_NativeCallback);
+      evt_RemovedEvt_delegate = new Efl.EventCb(on_RemovedEvt_NativeCallback);
+      evt_MoveOutedEvt_delegate = new Efl.EventCb(on_MoveOutedEvt_NativeCallback);
+      evt_ReadingStateChangedEvt_delegate = new Efl.EventCb(on_ReadingStateChangedEvt_NativeCallback);
+      evt_DragAcceptEvt_delegate = new Efl.EventCb(on_DragAcceptEvt_NativeCallback);
+      evt_DragDoneEvt_delegate = new Efl.EventCb(on_DragDoneEvt_NativeCallback);
+      evt_DragEnterEvt_delegate = new Efl.EventCb(on_DragEnterEvt_NativeCallback);
+      evt_DragLeaveEvt_delegate = new Efl.EventCb(on_DragLeaveEvt_NativeCallback);
+      evt_DragPosEvt_delegate = new Efl.EventCb(on_DragPosEvt_NativeCallback);
+      evt_DragDropEvt_delegate = new Efl.EventCb(on_DragDropEvt_NativeCallback);
+      evt_SelectionChangedEvt_delegate = new Efl.EventCb(on_SelectionChangedEvt_NativeCallback);
+      evt_FocusChangedEvt_delegate = new Efl.EventCb(on_FocusChangedEvt_NativeCallback);
+      evt_Focus_managerChangedEvt_delegate = new Efl.EventCb(on_Focus_managerChangedEvt_NativeCallback);
+      evt_Focus_parentChangedEvt_delegate = new Efl.EventCb(on_Focus_parentChangedEvt_NativeCallback);
+      evt_Child_focusChangedEvt_delegate = new Efl.EventCb(on_Child_focusChangedEvt_NativeCallback);
+      evt_Focus_geometryChangedEvt_delegate = new Efl.EventCb(on_Focus_geometryChangedEvt_NativeCallback);
+   }
+   /// <summary></summary>
+   public Efl.Ui.WidgetPartBg Background
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "background");
+         return Efl.Ui.WidgetPartBg.static_cast(obj);
+      }
+   }
+   /// <summary></summary>
+   public Efl.Ui.WidgetPartShadow Shadow
+   {
+      get
+      {
+         Efl.Object obj = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate(NativeHandle, "shadow");
+         return Efl.Ui.WidgetPartShadow.static_cast(obj);
+      }
+   }
+   /// <summary>Returns the current cursor name.</summary>
+   /// <returns>The cursor name, defined either by the display system or the theme.</returns>
+   virtual public  System.String GetCursor() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_cursor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets or unsets the current cursor.
+   /// If <c>cursor</c> is <c>null</c> this function will reset the cursor to the default one.</summary>
+   /// <param name="cursor">The cursor name, defined either by the display system or the theme.</param>
+   /// <returns><c>true</c> if successful.</returns>
+   virtual public bool SetCursor(  System.String cursor) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_cursor_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cursor);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the current cursor style name.</summary>
+   /// <returns>A specific style to use, eg. default, transparent, ....</returns>
+   virtual public  System.String GetCursorStyle() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_cursor_style_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets a style for the current cursor. Call after <see cref="Efl.Ui.Widget.SetCursor"/>.</summary>
+   /// <param name="style">A specific style to use, eg. default, transparent, ....</param>
+   /// <returns><c>true</c> if successful.</returns>
+   virtual public bool SetCursorStyle(  System.String style) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_cursor_style_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns the current state of theme cursors search.</summary>
+   /// <returns>Whether to use theme cursors.</returns>
+   virtual public bool GetCursorThemeSearchEnabled() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_cursor_theme_search_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enables or disables theme cursors.</summary>
+   /// <param name="allow">Whether to use theme cursors.</param>
+   /// <returns><c>true</c> if successful.</returns>
+   virtual public bool SetCursorThemeSearchEnabled( bool allow) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_cursor_theme_search_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), allow);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the new resize object for this widget.</summary>
+   /// <param name="sobj">A canvas object (often a <see cref="Efl.Canvas.Layout"/> object).</param>
+   /// <returns></returns>
+   virtual public  void SetResizeObject( Efl.Canvas.Object sobj) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_resize_object_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sobj);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns whether the widget is disabled.
+   /// This will return <c>true</c> if any widget in the parent hierarchy is disabled. Re-enabling that parent may in turn change the disabled state of this widget.</summary>
+   /// <returns><c>true</c> if the widget is disabled.</returns>
+   virtual public bool GetDisabled() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enables or disables this widget.
+   /// Disabling a widget will disable all its children recursively, but only this widget will be marked as disabled internally.</summary>
+   /// <param name="disabled"><c>true</c> if the widget is disabled.</param>
+   /// <returns></returns>
+   virtual public  void SetDisabled( bool disabled) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns the current style of a widget.</summary>
+   /// <returns>Name of the style to use. Refer to each widget&apos;s documentation for the available style names, or to the themes in use.</returns>
+   virtual public  System.String GetStyle() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_style_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Can only be called during construction, before finalize.</summary>
+   /// <param name="style">Name of the style to use. Refer to each widget&apos;s documentation for the available style names, or to the themes in use.</param>
+   /// <returns>Whether the style was successfully applied or not, see the values of <see cref="Efl.Ui.ThemeApplyResult"/> for more information.</returns>
+   virtual public Efl.Ui.ThemeApplyResult SetStyle(  System.String style) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_style_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The ability for a widget to be focused.
+   /// Unfocusable objects do nothing when programmatically focused. The nearest focusable parent object the one really getting focus. Also, when they receive mouse input, they will get the event, but not take away the focus from where it was previously.
+   /// 
+   /// Note: Objects which are meant to be interacted with by input events are created able to be focused, by default. All the others are not.
+   /// 
+   /// This property&apos;s default value depends on the widget (eg. a box is not focusable, but a button is).</summary>
+   /// <returns>Whether the object is focusable.</returns>
+   virtual public bool GetFocusAllow() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_allow_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The ability for a widget to be focused.
+   /// Unfocusable objects do nothing when programmatically focused. The nearest focusable parent object the one really getting focus. Also, when they receive mouse input, they will get the event, but not take away the focus from where it was previously.
+   /// 
+   /// Note: Objects which are meant to be interacted with by input events are created able to be focused, by default. All the others are not.
+   /// 
+   /// This property&apos;s default value depends on the widget (eg. a box is not focusable, but a button is).</summary>
+   /// <param name="can_focus">Whether the object is focusable.</param>
+   /// <returns></returns>
+   virtual public  void SetFocusAllow( bool can_focus) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_allow_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The internal parent of this widget.
+   /// <see cref="Efl.Ui.Widget"/> objects have a parent hierarchy that may differ slightly from their <see cref="Efl.Object"/> or <see cref="Efl.Canvas.Object"/> hierarchy. This is meant for internal handling.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.GetWidgetTop"/>.</summary>
+   /// <returns>Widget parent object</returns>
+   virtual public Efl.Ui.Widget GetWidgetParent() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The internal parent of this widget.
+   /// <see cref="Efl.Ui.Widget"/> objects have a parent hierarchy that may differ slightly from their <see cref="Efl.Object"/> or <see cref="Efl.Canvas.Object"/> hierarchy. This is meant for internal handling.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.GetWidgetTop"/>.</summary>
+   /// <param name="parent">Widget parent object</param>
+   /// <returns></returns>
+   virtual public  void SetWidgetParent( Efl.Ui.Widget parent) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_parent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), parent);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Root widget in the widget hierarchy.
+   /// This returns the top widget, in terms of widget hierarchy. This is usually a window (<see cref="Efl.Ui.Win"/>). This function walks the list of <see cref="Efl.Ui.Widget.WidgetParent"/>.
+   /// 
+   /// If this widget has no parent (in terms of widget hierarchy) this will return <c>null</c>.
+   /// 
+   /// Note: This may not be a display manager window in case of nested canvases. If a &quot;real&quot; window is required, then you might want to verify that the returned object is a <see cref="Efl.Ui.WinInlined"/>, and then get <see cref="Efl.Ui.WinInlined.GetInlinedParent"/> to find an object in the master window.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.WidgetParent"/>.</summary>
+   /// <returns>Top widget, usually a window.</returns>
+   virtual public Efl.Ui.Widget GetWidgetTop() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_top_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessibility information.
+   /// This is a replacement string to be read by the accessibility text-to-speech engine, if accessibility is enabled by configuration. This will take precedence over the default text for this object, which means for instance that the label of a button won&apos;t be read out loud, instead <c>txt</c> will be read out.</summary>
+   /// <returns>Accessibility text description.</returns>
+   virtual public  System.String GetAccessInfo() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_access_info_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessibility information.
+   /// This is a replacement string to be read by the accessibility text-to-speech engine, if accessibility is enabled by configuration. This will take precedence over the default text for this object, which means for instance that the label of a button won&apos;t be read out loud, instead <c>txt</c> will be read out.</summary>
+   /// <param name="txt">Accessibility text description.</param>
+   /// <returns></returns>
+   virtual public  void SetAccessInfo(  System.String txt) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_access_info_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), txt);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether the widget&apos;s automatic orientation is enabled or not.
+   /// Orientation mode is used for widgets to change their style or send signals based on the canvas rotation (i.e. the window orientation). If the orientation mode is enabled, the widget will emit signals such as &quot;elm,state,orient,N&quot; where <c>N</c> is one of 0, 90, 180, 270, depending on the window orientation. Such signals may be handled by the theme in order to provide a different look for the widget based on the canvas orientation.
+   /// 
+   /// By default orientation mode is enabled.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.UpdateOnOrientation"/>.</summary>
+   /// <returns>How window orientation should affect this widget.</returns>
+   virtual public Efl.Ui.WidgetOrientationMode GetOrientationMode() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_orientation_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether the widget&apos;s automatic orientation is enabled or not.
+   /// Orientation mode is used for widgets to change their style or send signals based on the canvas rotation (i.e. the window orientation). If the orientation mode is enabled, the widget will emit signals such as &quot;elm,state,orient,N&quot; where <c>N</c> is one of 0, 90, 180, 270, depending on the window orientation. Such signals may be handled by the theme in order to provide a different look for the widget based on the canvas orientation.
+   /// 
+   /// By default orientation mode is enabled.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.UpdateOnOrientation"/>.</summary>
+   /// <param name="mode">How window orientation should affect this widget.</param>
+   /// <returns></returns>
+   virtual public  void SetOrientationMode( Efl.Ui.WidgetOrientationMode mode) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_orientation_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Region of interest inside this widget, that should be given priority to be visible inside a scroller.
+   /// When this widget or one of its subwidgets is given focus, this region should be shown, which means any parent scroller should attempt to display the given area of this widget. For instance, an entry given focus should scroll to show the text cursor if that cursor moves. In this example, this region defines the relative geometry of the cursor within the widget.
+   /// 
+   /// Note: The region is relative to the top-left corner of the widget, i.e. X,Y start from 0,0 to indicate the top-left corner of the widget. W,H must be greater or equal to 1 for this region to be taken into account, otherwise it is ignored.</summary>
+   /// <returns>The relative region to show. If width or height is &lt;= 0 it will be ignored, and no action will be taken.</returns>
+   virtual public Eina.Rect GetInterestRegion() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_interest_region_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>This is a read-only property.</summary>
+   /// <returns>The rectangle area.</returns>
+   virtual public Eina.Rect GetFocusHighlightGeometry() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_highlight_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Focus order property</summary>
+   /// <returns>FIXME</returns>
+   virtual public  uint GetFocusOrder() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_order_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>A custom chain of objects to pass focus.
+   /// Note: On focus cycle, only will be evaluated children of this container.</summary>
+   /// <returns>Chain of objects</returns>
+   virtual public Eina.List<Efl.Canvas.Object> GetFocusCustomChain() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_custom_chain_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Canvas.Object>(_ret_var, false, false);
+ }
+   /// <summary>This function overwrites any previous custom focus chain within the list of objects. The previous list will be deleted and this list will be managed by elementary. After it is set, don&apos;t modify it.</summary>
+   /// <param name="objs">Chain of objects to pass focus</param>
+   /// <returns></returns>
+   virtual public  void SetFocusCustomChain( Eina.List<Efl.Canvas.Object> objs) {
+       var _in_objs = objs.Handle;
+                  Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_custom_chain_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_objs);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Current focused object in object tree.</summary>
+   /// <returns>Current focused or <c>null</c>, if there is no focused object.</returns>
+   virtual public Efl.Canvas.Object GetFocusedObject() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focused_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The widget&apos;s focus move policy.</summary>
+   /// <returns>Focus move policy</returns>
+   virtual public Efl.Ui.Focus.MovePolicy GetFocusMovePolicy() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_move_policy_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The widget&apos;s focus move policy.</summary>
+   /// <param name="policy">Focus move policy</param>
+   /// <returns></returns>
+   virtual public  void SetFocusMovePolicy( Efl.Ui.Focus.MovePolicy policy) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_move_policy_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), policy);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the widget&apos;s focus_move_policy mode setting.
+   /// 1.18</summary>
+   /// <returns><c>true</c> to follow system focus move policy change, <c>false</c> otherwise</returns>
+   virtual public bool GetFocusMovePolicyAutomatic() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_move_policy_automatic_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the widget&apos;s focus_move_policy mode setting.
+   /// 1.18</summary>
+   /// <param name="automatic"><c>true</c> to follow system focus move policy change, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetFocusMovePolicyAutomatic( bool automatic) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_move_policy_automatic_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), automatic);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Virtual function handling input events on the widget.
+   /// This method should return <c>true</c> if the event has been processed. Only key down, key up and pointer wheel events will be propagated through this function.
+   /// 
+   /// It is common for the event to be also marked as processed as in <see cref="Efl.Input.Event.Processed"/>, if this operation was successful. This makes sure other widgets will not also process this input event.</summary>
+   /// <param name="eo_event">EO event struct with an Efl.Input.Event as info.</param>
+   /// <param name="source">Source object where the event originated. Often same as this.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool WidgetEvent( ref Efl.Event eo_event,  Efl.Canvas.Object source) {
+       var _in_eo_event = Efl.Event_StructConversion.ToInternal(eo_event);
+                                    var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_event_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ref _in_eo_event,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                  eo_event = Efl.Event_StructConversion.ToManaged(_in_eo_event);
+            return _ret_var;
+ }
+   /// <summary>Hook function called when widget is activated through accessibility.
+   /// This meant to be overridden by subclasses to support accessibility. This is an unstable API.</summary>
+   /// <param name="act">Type of activation.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool OnAccessActivate( Efl.Ui.Activate act) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_on_access_activate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), act);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Hook function called when accessibility is changed on the widget.
+   /// This meant to be overridden by subclasses to support accessibility. This is an unstable API.</summary>
+   /// <param name="enable"><c>true</c> if accessibility is enabled.</param>
+   /// <returns></returns>
+   virtual public  void UpdateOnAccess( bool enable) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_on_access_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>&apos;Virtual&apos; function on the widget being set screen reader.</summary>
+   /// <param name="is_screen_reader"></param>
+   /// <returns></returns>
+   virtual public  void ScreenReader( bool is_screen_reader) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_screen_reader_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_screen_reader);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>&apos;Virtual&apos; function on the widget being set atspi.</summary>
+   /// <param name="is_atspi"></param>
+   /// <returns></returns>
+   virtual public  void Atspi( bool is_atspi) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_atspi_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), is_atspi);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Virtual function handling sub objects being added.
+   /// Sub objects can be any canvas object, not necessarily widgets.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.WidgetParent"/>.</summary>
+   /// <param name="sub_obj">Sub object to be added. Not necessarily a widget itself.</param>
+   /// <returns>Indicates if the operation succeeded.</returns>
+   virtual public bool AddWidgetSubObject( Efl.Canvas.Object sub_obj) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_sub_object_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sub_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Virtual function handling sub objects being removed.
+   /// Sub objects can be any canvas object, not necessarily widgets.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.WidgetParent"/>.</summary>
+   /// <param name="sub_obj">Sub object to be removed. Should be a child of this widget.</param>
+   /// <returns>Indicates if the operation succeeded.</returns>
+   virtual public bool DelWidgetSubObject( Efl.Canvas.Object sub_obj) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_sub_object_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sub_obj);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Virtual function handling canvas orientation changes.
+   /// This method will be called recursively from the top widget (the window) to all the children objects whenever the window rotation is changed. The given <c>rotation</c> will be one of 0, 90, 180, 270 or the special value -1 if <see cref="Efl.Ui.Widget.OrientationMode"/> is <c>disabled</c>.
+   /// 
+   /// If <see cref="Efl.Ui.Widget.OrientationMode"/> is <c>default</c>, the widget implementation will emit the signal &quot;elm,state,orient,<c>R</c>&quot; will be emitted (where <c>R</c> is the rotation angle in degrees).
+   /// 
+   /// Note: This function may be called even if the orientation has not actually changed, like when a widget needs to be reconfigured.
+   /// 
+   /// See also <see cref="Efl.Ui.Widget.OrientationMode"/>.</summary>
+   /// <param name="rotation">Orientation in degrees: 0, 90, 180, 270 or -1 if <see cref="Efl.Ui.Widget.OrientationMode"/> is <c>disabled</c>.</param>
+   /// <returns></returns>
+   virtual public  void UpdateOnOrientation(  int rotation) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_on_orientation_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), rotation);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Virtual function called when the widget needs to re-apply its theme.
+   /// This may be called when the object is first created, or whenever the widget is modified in any way that may require a reload of the theme. This may include but is not limited to scale, theme, or mirrored mode changes.
+   /// 
+   /// Note: even widgets not based on layouts may override this method to handle widget updates (scale, mirrored mode, etc...).</summary>
+   /// <returns>Indicates success, and if the current theme or default theme was used.</returns>
+   virtual public Efl.Ui.ThemeApplyResult ThemeApply() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_theme_apply_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Push scroll hold</summary>
+   /// <returns></returns>
+   virtual public  void PushScrollHold() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_scroll_hold_push_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Pop scroller hold</summary>
+   /// <returns></returns>
+   virtual public  void PopScrollHold() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_scroll_hold_pop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Push scroller freeze</summary>
+   /// <returns></returns>
+   virtual public  void PushScrollFreeze() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_scroll_freeze_push_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Pop scroller freeze</summary>
+   /// <returns></returns>
+   virtual public  void PopScrollFreeze() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_scroll_freeze_pop_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the access object of given part of the widget.
+   /// 1.18</summary>
+   /// <param name="part">The object&apos;s part name to get access object</param>
+   /// <returns></returns>
+   virtual public Efl.Canvas.Object GetPartAccessObject(  System.String part) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_part_access_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get newest focus in order</summary>
+   /// <param name="newest_focus_order">Newest focus order</param>
+   /// <param name="can_focus_only"><c>true</c> only us widgets which can focus, <c>false</c> otherweise</param>
+   /// <returns>Handle to focused widget</returns>
+   virtual public Efl.Canvas.Object GetNewestFocusOrder( out  uint newest_focus_order,  bool can_focus_only) {
+                                           var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_newest_focus_order_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out newest_focus_order,  can_focus_only);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Set the next object with specific focus direction.
+   /// 1.8</summary>
+   /// <param name="next">Focus next object</param>
+   /// <param name="dir">Focus direction</param>
+   /// <returns></returns>
+   virtual public  void SetFocusNextObject( Efl.Canvas.Object next,  Efl.Ui.Focus.Direction dir) {
+                                           Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_next_object_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), next,  dir);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the next object with specific focus direction.
+   /// 1.8</summary>
+   /// <param name="dir">Focus direction</param>
+   /// <returns>Focus next object</returns>
+   virtual public Efl.Canvas.Object GetFocusNextObject( Efl.Ui.Focus.Direction dir) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_next_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set the next object item with specific focus direction.
+   /// 1.16</summary>
+   /// <param name="next_item">Focus next object item</param>
+   /// <param name="dir">Focus direction</param>
+   /// <returns></returns>
+   virtual public  void SetFocusNextItem( Elm.Widget.Item next_item,  Efl.Ui.Focus.Direction dir) {
+                                           Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_next_item_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), next_item,  dir);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the next object item with specific focus direction.
+   /// 1.16</summary>
+   /// <param name="dir">Focus direction</param>
+   /// <returns>Focus next object item</returns>
+   virtual public Elm.Widget.Item GetFocusNextItem( Efl.Ui.Focus.Direction dir) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_next_item_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Handle focus tree unfocusable</summary>
+   /// <returns></returns>
+   virtual public  void FocusTreeUnfocusableHandle() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_tree_unfocusable_handle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Prepend object to custom focus chain.
+   /// Note: If @&quot;relative_child&quot; equal to <c>null</c> or not in custom chain, the object will be added in begin.
+   /// 
+   /// Note: On focus cycle, only will be evaluated children of this container.</summary>
+   /// <param name="child">The child to be added in custom chain.</param>
+   /// <param name="relative_child">The relative object to position the child.</param>
+   /// <returns></returns>
+   virtual public  void FocusCustomChainPrepend( Efl.Canvas.Object child,  Efl.Canvas.Object relative_child) {
+                                           Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_custom_chain_prepend_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  relative_child);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Give focus to next object with specific focus direction in object tree.</summary>
+   /// <param name="dir">Direction to move the focus.</param>
+   /// <returns></returns>
+   virtual public  void FocusCycle( Efl.Ui.Focus.Direction dir) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_cycle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>&apos;Virtual&apos; function handling passing focus to sub-objects given a direction, in degrees.</summary>
+   /// <param name="kw_base">Base object</param>
+   /// <param name="degree">Degree</param>
+   /// <param name="direction">Direction</param>
+   /// <param name="direction_item">Direction item</param>
+   /// <param name="weight">Weight</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool FocusDirection( Efl.Canvas.Object kw_base,  double degree,  out Efl.Canvas.Object direction,  out Elm.Widget.Item direction_item,  out double weight) {
+                                                                                                 var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_direction_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_base,  degree,  out direction,  out direction_item,  out weight);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>&apos;Virtual&apos; function which checks if handling of passing focus to sub-objects is supported by widget.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool IsFocusNextManager() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_next_manager_is_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get focus list direction</summary>
+   /// <param name="kw_base">Base object</param>
+   /// <param name="items">Item list</param>
+   /// <param name="list_data_get">Data get function</param>
+   /// <param name="degree">Degree</param>
+   /// <param name="direction">Direction</param>
+   /// <param name="direction_item">Direction item</param>
+   /// <param name="weight">Weight</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool GetFocusListDirection( Efl.Canvas.Object kw_base,  Eina.List<Efl.Object> items,   System.IntPtr list_data_get,  double degree,  out Efl.Canvas.Object direction,  out Elm.Widget.Item direction_item,  out double weight) {
+             var _in_items = items.Handle;
+                                                                                                                        var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_list_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_base,  _in_items,  list_data_get,  degree,  out direction,  out direction_item,  out weight);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                                          return _ret_var;
+ }
+   /// <summary>Clear focused object</summary>
+   /// <returns></returns>
+   virtual public  void ClearFocusedObject() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focused_object_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Go in focus direction</summary>
+   /// <param name="degree">Degree</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool FocusDirectionGo( double degree) {
+                         var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_direction_go_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), degree);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get next focus item</summary>
+   /// <param name="dir">Focus direction</param>
+   /// <param name="next">Next object</param>
+   /// <param name="next_item">Next item</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool GetFocusNext( Efl.Ui.Focus.Direction dir,  out Efl.Canvas.Object next,  out Elm.Widget.Item next_item) {
+                                                             var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_next_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir,  out next,  out next_item);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Restore the focus state of the sub-tree.
+   /// This API will restore the focus state of the sub-tree to the latest state. If a sub-tree is unfocused and wants to get back to the latest focus state, this API will be helpful.</summary>
+   /// <returns></returns>
+   virtual public  void FocusRestore() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_restore_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Unset a custom focus chain on a given Elementary widget.
+   /// Any focus chain previously set is removed entirely after this call.</summary>
+   /// <returns></returns>
+   virtual public  void UnsetFocusCustomChain() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_custom_chain_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Steal focus</summary>
+   /// <param name="item">Widget to steal focus from</param>
+   /// <returns></returns>
+   virtual public  void FocusSteal( Elm.Widget.Item item) {
+                         Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_steal_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), item);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Handle hide focus</summary>
+   /// <returns></returns>
+   virtual public  void FocusHideHandle() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_hide_handle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>&apos;Virtual&apos; function handling passing focus to sub-objects.</summary>
+   /// <param name="dir">Focus direction</param>
+   /// <param name="next">Next object</param>
+   /// <param name="next_item">Next item</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool FocusNext( Efl.Ui.Focus.Direction dir,  out Efl.Canvas.Object next,  out Elm.Widget.Item next_item) {
+                                                             var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_next_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir,  out next,  out next_item);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Get next item in focus list</summary>
+   /// <param name="items">Item list</param>
+   /// <param name="list_data_get">Function type</param>
+   /// <param name="dir">Focus direction</param>
+   /// <param name="next">Next object</param>
+   /// <param name="next_item">Next item</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool GetFocusListNext( Eina.List<Efl.Object> items,   System.IntPtr list_data_get,  Efl.Ui.Focus.Direction dir,  out Efl.Canvas.Object next,  out Elm.Widget.Item next_item) {
+       var _in_items = items.Handle;
+                                                                                          var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_list_next_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_items,  list_data_get,  dir,  out next,  out next_item);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Handle focus mouse up</summary>
+   /// <returns></returns>
+   virtual public  void FocusMouseUpHandle() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_mouse_up_handle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get focus direction</summary>
+   /// <param name="kw_base">Base</param>
+   /// <param name="degree">Degree</param>
+   /// <param name="direction">Direction</param>
+   /// <param name="direction_item">Direction item</param>
+   /// <param name="weight">Weight</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool GetFocusDirection( Efl.Canvas.Object kw_base,  double degree,  out Efl.Canvas.Object direction,  out Elm.Widget.Item direction_item,  out double weight) {
+                                                                                                 var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_direction_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_base,  degree,  out direction,  out direction_item,  out weight);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Handle disable widget focus</summary>
+   /// <returns></returns>
+   virtual public  void FocusDisabledHandle() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_disabled_handle_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Append object to custom focus chain.
+   /// Note: If @&quot;relative_child&quot; equal to <c>null</c> or not in custom chain, the object will be added in end.
+   /// 
+   /// Note: On focus cycle, only will be evaluated children of this container.</summary>
+   /// <param name="child">The child to be added in custom chain.</param>
+   /// <param name="relative_child">The relative object to position the child.</param>
+   /// <returns></returns>
+   virtual public  void AppendFocusCustomChain( Efl.Canvas.Object child,  Efl.Canvas.Object relative_child) {
+                                           Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_custom_chain_append_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child,  relative_child);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>No description supplied.
+   /// 1.18</summary>
+   /// <returns></returns>
+   virtual public  void FocusReconfigure() {
+       Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_reconfigure_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Virtual function which checks if this widget can handle passing focus to sub-object, in a given direction.</summary>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool IsFocusDirectionManager() {
+       var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_direction_manager_is_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Register focus with the given configuration.
+   /// The implementation can feel free to change the logical flag as it wants, but other than that it should strictly keep the configuration.
+   /// 
+   /// The implementation in elm.widget updates the current state into what is passed as configured state, respecting manager changes, registeration and unregistration based on if it should be registered or unregistered.
+   /// 
+   /// A manager field that is <c>null</c> means that the widget should not or was not registered.</summary>
+   /// <param name="current_state">The focus manager to register with.</param>
+   /// <param name="configured_state">The evaluated Focus state that should be used.</param>
+   /// <param name="redirect">A redirect that will be set by the elm.widget implementation.</param>
+   /// <returns>Returns whether the widget is registered or not.</returns>
+   virtual public bool FocusStateApply( Efl.Ui.WidgetFocusState current_state,  ref Efl.Ui.WidgetFocusState configured_state,  Efl.Ui.Widget redirect) {
+       var _in_current_state = Efl.Ui.WidgetFocusState_StructConversion.ToInternal(current_state);
+                        var _out_configured_state = new Efl.Ui.WidgetFocusState_StructInternal();
+                              var _ret_var = Efl.Ui.WidgetNativeInherit.efl_ui_widget_focus_state_apply_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_current_state,  ref _out_configured_state,  redirect);
+      Eina.Error.RaiseIfUnhandledException();
+            configured_state = Efl.Ui.WidgetFocusState_StructConversion.ToManaged(_out_configured_state);
+                              return _ret_var;
+ }
+   /// <summary>Get a proxy object referring to a part of an object.</summary>
+   /// <param name="name">The part name.</param>
+   /// <returns>A (proxy) object, valid for a single call.</returns>
+   virtual public Efl.Object GetPart(  System.String name) {
+                         var _ret_var = Efl.PartNativeInherit.efl_part_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets action name for given id</summary>
+   /// <param name="id">ID to get action name for</param>
+   /// <returns>Action name</returns>
+   virtual public  System.String GetActionName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets localized action name for given id</summary>
+   /// <param name="id">ID to get localized name for</param>
+   /// <returns>Localized name</returns>
+   virtual public  System.String GetActionLocalizedName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_localized_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get list of available widget actions</summary>
+   /// <returns>Contains statically allocated strings.</returns>
+   virtual public Eina.List<Efl.Access.ActionData> GetActions() {
+       var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_actions_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.ActionData>(_ret_var, false, false);
+ }
+   /// <summary>Performs action on given widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns><c>true</c> if action was performed, <c>false</c> otherwise</returns>
+   virtual public bool ActionDo(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_do_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets configured keybinding for specific action and widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns>Should be freed by the user.</returns>
+   virtual public  System.String GetActionKeybinding(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_keybinding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+   /// <returns>Z order of component</returns>
+   virtual public  int GetZOrder() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_z_order_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Geometry of accessible widget.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <returns>The geometry.</returns>
+   virtual public Eina.Rect GetExtents( bool screen_coords) {
+                         var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_extents_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords);
+      Eina.Error.RaiseIfUnhandledException();
+                  return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Geometry of accessible widget.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="rect">The geometry.</param>
+   /// <returns><c>true</c> if geometry was set, <c>false</c> otherwise</returns>
+   virtual public bool SetExtents( bool screen_coords,  Eina.Rect rect) {
+             var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                              var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_extents_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Position of accessible widget.</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   virtual public  void GetScreenPosition( out  int x,  out  int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_screen_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Position of accessible widget.</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns><c>true</c> if position was set, <c>false</c> otherwise</returns>
+   virtual public bool SetScreenPosition(  int x,   int y) {
+                                           var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_screen_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets position of socket offset.</summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   virtual public  void GetSocketOffset( out  int x,  out  int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_socket_offset_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets position of socket offset.</summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   virtual public  void SetSocketOffset(  int x,   int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_socket_offset_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Contains accessible widget</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns><c>true</c> if params have been set, <c>false</c> otherwise</returns>
+   virtual public bool Contains( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_contains_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Focuses accessible widget.</summary>
+   /// <returns><c>true</c> if focus grab focus succeed, <c>false</c> otherwise.</returns>
+   virtual public bool GrabFocus() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_focus_grab_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets top component object occupying space at given coordinates.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns>Top component object at given coordinate</returns>
+   virtual public Efl.Object GetAccessibleAtPoint( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_accessible_at_point_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Highlights accessible widget. returns true if highlight grab has successed, false otherwise.
+   /// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns></returns>
+   virtual public bool GrabHighlight() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_highlight_grab_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Clears highlight of accessible widget. returns true if clear has successed, false otherwise.
+   /// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns></returns>
+   virtual public bool ClearHighlight() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_highlight_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+   /// <returns>Localized accessible object role name</returns>
+   virtual public  System.String GetLocalizedRoleName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_localized_role_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessible name of the object.</summary>
+   /// <returns>Accessible name</returns>
+   virtual public  System.String GetI18nName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_i18n_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessible name of the object.</summary>
+   /// <param name="i18n_name">Accessible name</param>
+   /// <returns></returns>
+   virtual public  void SetI18nName(  System.String i18n_name) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_i18n_name_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), i18n_name);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Sets name information callback about widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="name_cb">reading information callback</param>
+   /// <param name="data"></param>
+   /// <returns></returns>
+   virtual public  void SetNameCb( Efl.Access.ReadingInfoCb name_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_name_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+   /// <returns>Accessible relation set</returns>
+   virtual public Efl.Access.RelationSet GetRelationSet() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_relation_set_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The role of the object in accessibility domain.</summary>
+   /// <returns>Accessible role</returns>
+   virtual public Efl.Access.Role GetRole() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_role_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the role of the object in accessibility domain.</summary>
+   /// <param name="role">Accessible role</param>
+   /// <returns></returns>
+   virtual public  void SetRole( Efl.Access.Role role) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_role_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), role);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+   /// <returns>Accessible parent</returns>
+   virtual public Efl.Access.Object GetAccessParent() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+   /// <param name="parent">Accessible parent</param>
+   /// <returns></returns>
+   virtual public  void SetAccessParent( Efl.Access.Object parent) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_access_parent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), parent);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Sets contextual information callback about widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="description_cb">The function called to provide the accessible description.</param>
+   /// <param name="data">The data passed to @c description_cb.</param>
+   /// <returns></returns>
+   virtual public  void SetDescriptionCb( Efl.Access.ReadingInfoCb description_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_description_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), description_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets gesture callback to give widget.
+   /// Warning: Please do not abuse this API. The purpose of this API is to support special application such as screen-reader guidance. Before using this API, please check if there is another way.
+   /// 
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="gesture_cb"></param>
+   /// <param name="data"></param>
+   /// <returns></returns>
+   virtual public  void SetGestureCb( Efl.Access.GestureCb gesture_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_gesture_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), gesture_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets object&apos;s accessible children.</summary>
+   /// <returns>List of widget&apos;s children</returns>
+   virtual public Eina.List<Efl.Access.Object> GetAccessChildren() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_children_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.Object>(_ret_var, true, false);
+ }
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+   /// <returns>Accessible role name</returns>
+   virtual public  System.String GetRoleName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_role_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+   /// <returns>List of object attributes, Must be freed by the user</returns>
+   virtual public Eina.List<Efl.Access.Attribute> GetAttributes() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_attributes_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.Attribute>(_ret_var, true, true);
+ }
+   /// <summary>Gets reading information types of an accessible object.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns>Reading information types</returns>
+   virtual public Efl.Access.ReadingInfoTypeMask GetReadingInfoType() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_reading_info_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets reading information of an accessible object.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="reading_info">Reading information types</param>
+   /// <returns></returns>
+   virtual public  void SetReadingInfoType( Efl.Access.ReadingInfoTypeMask reading_info) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_reading_info_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), reading_info);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+   /// <returns>Index in children list</returns>
+   virtual public  int GetIndexInParent() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_index_in_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets contextual information about object.</summary>
+   /// <returns>Accessible contextual information</returns>
+   virtual public  System.String GetDescription() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_description_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets widget contextual information.</summary>
+   /// <param name="description">Accessible contextual information</param>
+   /// <returns></returns>
+   virtual public  void SetDescription(  System.String description) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_description_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), description);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets set describing object accessible states.</summary>
+   /// <returns>Accessible state set</returns>
+   virtual public Efl.Access.StateSet GetStateSet() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_state_set_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets highlightable of given widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns>If @c true, the object is highlightable.</returns>
+   virtual public bool GetCanHighlight() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_can_highlight_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets highlightable to given widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="can_highlight">If @c true, the object is highlightable.</param>
+   /// <returns></returns>
+   virtual public  void SetCanHighlight( bool can_highlight) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_can_highlight_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_highlight);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+   /// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+   /// 
+   /// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+   /// 
+   /// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+   /// <returns>Translation domain</returns>
+   virtual public  System.String GetTranslationDomain() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_translation_domain_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+   /// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+   /// 
+   /// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+   /// 
+   /// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+   /// <param name="domain">Translation domain</param>
+   /// <returns></returns>
+   virtual public  void SetTranslationDomain(  System.String domain) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_translation_domain_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), domain);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get root object of accessible object hierarchy</summary>
+   /// <returns>Root object</returns>
+   public static Efl.Object GetAccessRoot() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_root_get_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Handles gesture on given widget.</summary>
+   /// <param name="gesture_info"></param>
+   /// <returns></returns>
+   virtual public bool GestureDo( Efl.Access.GestureInfo gesture_info) {
+       var _in_gesture_info = Efl.Access.GestureInfo_StructConversion.ToInternal(gesture_info);
+                  var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_gesture_do_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_gesture_info);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Add key-value pair identifying object extra attribute
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="key">The string key to give extra information</param>
+   /// <param name="value">The string value to give extra information</param>
+   /// <returns></returns>
+   virtual public  void AppendAttribute(  System.String key,   System.String value) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_attribute_append_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Removes all attributes in accessible object.</summary>
+   /// <returns></returns>
+   virtual public  void ClearAttributes() {
+       Efl.Access.ObjectNativeInherit.efl_access_object_attributes_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Register accessibility event listener</summary>
+   /// <param name="cb">Callback</param>
+   /// <param name="data">Data</param>
+   /// <returns>Event handler</returns>
+   public static Efl.Access.Event.Handler AddEventHandler( Efl.EventCb cb,   System.IntPtr data) {
+                                           var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_event_handler_add_ptr.Value.Delegate( cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Deregister accessibility event listener</summary>
+   /// <param name="handler">Event handler</param>
+   /// <returns></returns>
+   public static  void DelEventHandler( Efl.Access.Event.Handler handler) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_event_handler_del_ptr.Value.Delegate( handler);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Emit event</summary>
+   /// <param name="accessible">Accessibility object.</param>
+   /// <param name="kw_event">Accessibility event type.</param>
+   /// <param name="event_info">Accessibility event details.</param>
+   /// <returns></returns>
+   public static  void EmitEvent( Efl.Access.Object accessible,  Efl.EventDescription kw_event,   System.IntPtr event_info) {
+             var _in_kw_event = Eina.PrimitiveConversion.ManagedToPointerAlloc(kw_event);
+                                                Efl.Access.ObjectNativeInherit.efl_access_object_event_emit_ptr.Value.Delegate( accessible,  _in_kw_event,  event_info);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Defines the relationship between two accessible objects.
+   /// Adds a unique relationship between source object and relation_object of a given type.
+   /// 
+   /// Relationships can be queried by Assistive Technology clients to provide customized feedback, improving overall user experience.
+   /// 
+   /// Relationship_append API is asymmetric, which means that appending, for example, relation EFL_ACCESS_RELATION_FLOWS_TO from object A to B, do NOT append relation EFL_ACCESS_RELATION_FLOWS_FROM from object B to object A.</summary>
+   /// <param name="type">Relation type</param>
+   /// <param name="relation_object">Object to relate to</param>
+   /// <returns><c>true</c> if relationship was successfully appended, <c>false</c> otherwise</returns>
+   virtual public bool AppendRelationship( Efl.Access.RelationType type,  Efl.Access.Object relation_object) {
+                                           var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_relationship_append_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  relation_object);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Removes the relationship between two accessible objects.
+   /// If relation_object is NULL function removes all relations of the given type.</summary>
+   /// <param name="type">Relation type</param>
+   /// <param name="relation_object">Object to remove relation from</param>
+   /// <returns></returns>
+   virtual public  void RelationshipRemove( Efl.Access.RelationType type,  Efl.Access.Object relation_object) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_relationship_remove_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  relation_object);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Removes all relationships in accessible object.</summary>
+   /// <returns></returns>
+   virtual public  void ClearRelationships() {
+       Efl.Access.ObjectNativeInherit.efl_access_object_relationships_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Notifies accessibility clients about current state of the accessible object.
+   /// Function limits information broadcast to clients to types specified by state_types_mask parameter.
+   /// 
+   /// if recursive parameter is set, function will traverse all accessible children and call state_notify function on them.</summary>
+   /// <param name="state_types_mask"></param>
+   /// <param name="recursive"></param>
+   /// <returns></returns>
+   virtual public  void StateNotify( Efl.Access.StateSet state_types_mask,  bool recursive) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_state_notify_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), state_types_mask,  recursive);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Elementary actions</summary>
+   /// <returns>NULL-terminated array of Efl.Access.Action_Data.</returns>
+   virtual public Efl.Access.ActionData GetElmActions() {
+       var _ret_var = Efl.Access.Widget.ActionNativeInherit.efl_access_widget_action_elm_actions_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Start a drag and drop process at the drag side. During dragging, there are three events emitted as belows: - EFL_UI_DND_EVENT_DRAG_POS - EFL_UI_DND_EVENT_DRAG_ACCEPT - EFL_UI_DND_EVENT_DRAG_DONE</summary>
+   /// <param name="format">The data format</param>
+   /// <param name="data">The drag data</param>
+   /// <param name="action">Action when data is transferred</param>
+   /// <param name="icon_func">Function pointer to create icon</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   virtual public  void DragStart( Efl.Ui.SelectionFormat format,  Eina.Slice data,  Efl.Ui.SelectionAction action,  Efl.Dnd.DragIconCreate icon_func,   uint seat) {
+                                                                                     GCHandle icon_func_handle = GCHandle.Alloc(icon_func);
+            Efl.Ui.DndNativeInherit.efl_ui_dnd_drag_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), format,  data,  action, GCHandle.ToIntPtr(icon_func_handle), Efl.Dnd.DragIconCreateWrapper.Cb, Efl.Eo.Globals.free_gchandle,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Set the action for the drag</summary>
+   /// <param name="action">Drag action</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   virtual public  void SetDragAction( Efl.Ui.SelectionAction action,   uint seat) {
+                                           Efl.Ui.DndNativeInherit.efl_ui_dnd_drag_action_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), action,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Cancel the on-going drag</summary>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   virtual public  void DragCancel(  uint seat) {
+                         Efl.Ui.DndNativeInherit.efl_ui_dnd_drag_cancel_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Make the current object as drop target. There are four events emitted: - EFL_UI_DND_EVENT_DRAG_ENTER - EFL_UI_DND_EVENT_DRAG_LEAVE - EFL_UI_DND_EVENT_DRAG_POS - EFL_UI_DND_EVENT_DRAG_DROP.</summary>
+   /// <param name="format">Accepted data format</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   virtual public  void AddDropTarget( Efl.Ui.SelectionFormat format,   uint seat) {
+                                           Efl.Ui.DndNativeInherit.efl_ui_dnd_drop_target_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), format,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Delete the dropable status from object</summary>
+   /// <param name="format">Accepted data format</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   virtual public  void DelDropTarget( Efl.Ui.SelectionFormat format,   uint seat) {
+                                           Efl.Ui.DndNativeInherit.efl_ui_dnd_drop_target_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), format,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>A unique string to be translated.
+   /// Often this will be a human-readable string (e.g. in English) but it can also be a unique string identifier that must then be translated to the current locale with <c>dgettext</c>() or any similar mechanism.
+   /// 
+   /// Setting this property will enable translation for this object or part.</summary>
+   /// <param name="domain">A translation domain. If <c>null</c> this means the default domain is used.</param>
+   /// <returns>This returns the untranslated value of <c>label</c>. The translated string can usually be retrieved with <see cref="Efl.Text.GetText"/>.</returns>
+   virtual public  System.String GetL10nText( out  System.String domain) {
+                         var _ret_var = Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out domain);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Sets the new untranslated string and domain for this object.</summary>
+   /// <param name="label">A unique (untranslated) string.</param>
+   /// <param name="domain">A translation domain. If <c>null</c> this uses the default domain (eg. set by <c>textdomain</c>()).</param>
+   /// <returns></returns>
+   virtual public  void SetL10nText(  System.String label,   System.String domain) {
+                                           Efl.Ui.L10nNativeInherit.efl_ui_l10n_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), label,  domain);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Requests this object to update its text strings for the current locale.
+   /// Currently strings are translated with <c>dgettext</c>, so support for this function may depend on the platform. It is up to the application to provide its own translation data.
+   /// 
+   /// This function is a hook meant to be implemented by any object that supports translation. This can be called whenever a new object is created or when the current locale changes, for instance. This should only trigger further calls to <see cref="Efl.Ui.L10n.UpdateTranslation"/> to children objects.</summary>
+   /// <returns></returns>
+   virtual public  void UpdateTranslation() {
+       Efl.Ui.L10nNativeInherit.efl_ui_l10n_translation_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Set the selection data to the object</summary>
+   /// <param name="type">Selection Type</param>
+   /// <param name="format">Selection Format</param>
+   /// <param name="data"></param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns>Future for tracking when the selection is lost</returns>
+   virtual public  Eina.Future SetSelection( Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Eina.Slice data,   uint seat) {
+                                                                               var _ret_var = Efl.Ui.SelectionNativeInherit.efl_ui_selection_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  format,  data,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Get the data from the object that has selection</summary>
+   /// <param name="type">Selection Type</param>
+   /// <param name="format">Selection Format</param>
+   /// <param name="data_func">Data ready function pointer</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   virtual public  void GetSelection( Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Efl.Ui.SelectionDataReady data_func,   uint seat) {
+                                                                   GCHandle data_func_handle = GCHandle.Alloc(data_func);
+            Efl.Ui.SelectionNativeInherit.efl_ui_selection_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  format, GCHandle.ToIntPtr(data_func_handle), Efl.Ui.SelectionDataReadyWrapper.Cb, Efl.Eo.Globals.free_gchandle,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Clear the selection data from the object</summary>
+   /// <param name="type">Selection Type</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns></returns>
+   virtual public  void ClearSelection( Efl.Ui.SelectionType type,   uint seat) {
+                                           Efl.Ui.SelectionNativeInherit.efl_ui_selection_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Determine whether the selection data has owner</summary>
+   /// <param name="type">Selection type</param>
+   /// <param name="seat">Specified seat for multiple seats case.</param>
+   /// <returns>EINA_TRUE if there is object owns selection, otherwise EINA_FALSE</returns>
+   virtual public bool HasOwner( Efl.Ui.SelectionType type,   uint seat) {
+                                           var _ret_var = Efl.Ui.SelectionNativeInherit.efl_ui_selection_has_owner_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+   /// 1.20</summary>
+   /// <returns>The geometry to use.
+   /// 1.20</returns>
+   virtual public Eina.Rect GetFocusGeometry() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Returns whether the widget is currently focused or not.
+   /// 1.20</summary>
+   /// <returns>The focused state of the object.
+   /// 1.20</returns>
+   virtual public bool GetFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This is called by the manager and should never be called by anyone else.
+   /// The function emits the focus state events, if focus is different to the previous state.
+   /// 1.20</summary>
+   /// <param name="focus">The focused state of the object.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetFocus( bool focus) {
+                         Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+   /// 1.20</summary>
+   /// <returns>The manager object
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetFocusManager() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_manager_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Describes which logical parent is used by this object.
+   /// 1.20</summary>
+   /// <returns>The focus parent.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetFocusParent() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_focus_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates if a child of this object has focus set to true.
+   /// 1.20</summary>
+   /// <returns><c>true</c> if a child has focus.
+   /// 1.20</returns>
+   virtual public bool GetChildFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_child_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Indicates if a child of this object has focus set to true.
+   /// 1.20</summary>
+   /// <param name="child_focus"><c>true</c> if a child has focus.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetChildFocus( bool child_focus) {
+                         Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_child_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child_focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Tells the object that its children will be queried soon by the focus manager. Overwrite this to update the order of the children. Deleting items in this call will result in undefined behaviour and may cause your system to crash.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void SetupOrder() {
+       Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_setup_order_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This is called when <see cref="Efl.Ui.Focus.Object.SetupOrder"/> is called, but only on the first call, additional recursive calls to <see cref="Efl.Ui.Focus.Object.SetupOrder"/> will not call this function again.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void SetupOrderNonRecursive() {
+       Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_setup_order_non_recursive_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Virtual function handling focus in/out events on the widget
+   /// 1.20</summary>
+   /// <returns><c>true</c> if this widget can handle focus, <c>false</c> otherwise
+   /// 1.20</returns>
+   virtual public bool UpdateOnFocus() {
+       var _ret_var = Efl.Ui.Focus.ObjectNativeInherit.efl_ui_focus_object_on_focus_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   public System.Threading.Tasks.Task<Eina.Value> SetSelectionAsync( Efl.Ui.SelectionType type, Efl.Ui.SelectionFormat format, Eina.Slice data,  uint seat, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = SetSelection(  type,  format,  data,  seat);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   /// <summary>The cursor to be shown when mouse is over the object
+/// This is the cursor that will be displayed when mouse is over the object. The object can have only one cursor set to it so if <see cref="Efl.Ui.Widget.SetCursor"/> is called twice for an object, the previous set will be unset.
+/// 
+/// If using X cursors, a definition of all the valid cursor names is listed on Elementary_Cursors.h. If an invalid name is set the default cursor will be used.</summary>
+/// <value>The cursor name, defined either by the display system or the theme.</value>
+   public  System.String Cursor {
+      get { return GetCursor(); }
+      set { SetCursor( value); }
+   }
+   /// <summary>A different style for the cursor.
+/// This only makes sense if theme cursors are used. The cursor should be set with <see cref="Efl.Ui.Widget.SetCursor"/> first before setting its style with this property.</summary>
+/// <value>A specific style to use, eg. default, transparent, ....</value>
+   public  System.String CursorStyle {
+      get { return GetCursorStyle(); }
+      set { SetCursorStyle( value); }
+   }
+   /// <summary>Whether the cursor may be looked in the theme or not.
+/// If <c>false</c>, the cursor may only come from the render engine, i.e. from the display manager.</summary>
+/// <value>Whether to use theme cursors.</value>
+   public bool CursorThemeSearchEnabled {
+      get { return GetCursorThemeSearchEnabled(); }
+      set { SetCursorThemeSearchEnabled( value); }
+   }
+   /// <summary>This is the internal canvas object managed by a widget.
+/// This property is protected as it is meant for widget implementations only, to set and access the internal canvas object. Do use this function unless you&apos;re implementing a widget.</summary>
+/// <value>A canvas object (often a <see cref="Efl.Canvas.Layout"/> object).</value>
+   public Efl.Canvas.Object ResizeObject {
+      set { SetResizeObject( value); }
+   }
+   /// <summary>Whether the widget is enabled (accepts and reacts to user inputs).
+/// The property works counted, this means, whenever n-caller set the value to <c>true</c>, n-caller have to set it to <c>false</c> in order to get it out of the disabled state again.
+/// 
+/// Each widget may handle the disabled state differently, but overall disabled widgets shall not respond to any input events. This is <c>false</c> by default, meaning the widget is enabled.</summary>
+/// <value><c>true</c> if the widget is disabled.</value>
+   public bool Disabled {
+      get { return GetDisabled(); }
+      set { SetDisabled( value); }
+   }
+   /// <summary>The widget style to use.
+/// Styles define different look and feel for widgets, and may provide different parts for layout-based widgets. Styles vary from widget to widget and may be defined by other themes by means of extensions and overlays.
+/// 
+/// The style can only be set before <see cref="Efl.Object.FinalizeAdd"/>, which means at construction time of the object (inside <c>efl_add</c> in C).</summary>
+/// <value>Name of the style to use. Refer to each widget&apos;s documentation for the available style names, or to the themes in use.</value>
+   public  System.String Style {
+      get { return GetStyle(); }
+      set { SetStyle( value); }
+   }
+   /// <summary>The ability for a widget to be focused.
+/// Unfocusable objects do nothing when programmatically focused. The nearest focusable parent object the one really getting focus. Also, when they receive mouse input, they will get the event, but not take away the focus from where it was previously.
+/// 
+/// Note: Objects which are meant to be interacted with by input events are created able to be focused, by default. All the others are not.
+/// 
+/// This property&apos;s default value depends on the widget (eg. a box is not focusable, but a button is).</summary>
+/// <value>Whether the object is focusable.</value>
+   public bool FocusAllow {
+      get { return GetFocusAllow(); }
+      set { SetFocusAllow( value); }
+   }
+   /// <summary>The internal parent of this widget.
+/// <see cref="Efl.Ui.Widget"/> objects have a parent hierarchy that may differ slightly from their <see cref="Efl.Object"/> or <see cref="Efl.Canvas.Object"/> hierarchy. This is meant for internal handling.
+/// 
+/// See also <see cref="Efl.Ui.Widget.GetWidgetTop"/>.</summary>
+/// <value>Widget parent object</value>
+   public Efl.Ui.Widget WidgetParent {
+      get { return GetWidgetParent(); }
+      set { SetWidgetParent( value); }
+   }
+   /// <summary>Root widget in the widget hierarchy.
+/// This returns the top widget, in terms of widget hierarchy. This is usually a window (<see cref="Efl.Ui.Win"/>). This function walks the list of <see cref="Efl.Ui.Widget.WidgetParent"/>.
+/// 
+/// If this widget has no parent (in terms of widget hierarchy) this will return <c>null</c>.
+/// 
+/// Note: This may not be a display manager window in case of nested canvases. If a &quot;real&quot; window is required, then you might want to verify that the returned object is a <see cref="Efl.Ui.WinInlined"/>, and then get <see cref="Efl.Ui.WinInlined.GetInlinedParent"/> to find an object in the master window.
+/// 
+/// See also <see cref="Efl.Ui.Widget.WidgetParent"/>.</summary>
+/// <value>Top widget, usually a window.</value>
+   public Efl.Ui.Widget WidgetTop {
+      get { return GetWidgetTop(); }
+   }
+   /// <summary>Accessibility information.
+/// This is a replacement string to be read by the accessibility text-to-speech engine, if accessibility is enabled by configuration. This will take precedence over the default text for this object, which means for instance that the label of a button won&apos;t be read out loud, instead <c>txt</c> will be read out.</summary>
+/// <value>Accessibility text description.</value>
+   public  System.String AccessInfo {
+      get { return GetAccessInfo(); }
+      set { SetAccessInfo( value); }
+   }
+   /// <summary>Whether the widget&apos;s automatic orientation is enabled or not.
+/// Orientation mode is used for widgets to change their style or send signals based on the canvas rotation (i.e. the window orientation). If the orientation mode is enabled, the widget will emit signals such as &quot;elm,state,orient,N&quot; where <c>N</c> is one of 0, 90, 180, 270, depending on the window orientation. Such signals may be handled by the theme in order to provide a different look for the widget based on the canvas orientation.
+/// 
+/// By default orientation mode is enabled.
+/// 
+/// See also <see cref="Efl.Ui.Widget.UpdateOnOrientation"/>.</summary>
+/// <value>How window orientation should affect this widget.</value>
+   public Efl.Ui.WidgetOrientationMode OrientationMode {
+      get { return GetOrientationMode(); }
+      set { SetOrientationMode( value); }
+   }
+   /// <summary>Region of interest inside this widget, that should be given priority to be visible inside a scroller.
+/// When this widget or one of its subwidgets is given focus, this region should be shown, which means any parent scroller should attempt to display the given area of this widget. For instance, an entry given focus should scroll to show the text cursor if that cursor moves. In this example, this region defines the relative geometry of the cursor within the widget.
+/// 
+/// Note: The region is relative to the top-left corner of the widget, i.e. X,Y start from 0,0 to indicate the top-left corner of the widget. W,H must be greater or equal to 1 for this region to be taken into account, otherwise it is ignored.</summary>
+/// <value>The relative region to show. If width or height is &lt;= 0 it will be ignored, and no action will be taken.</value>
+   public Eina.Rect InterestRegion {
+      get { return GetInterestRegion(); }
+   }
+   /// <summary>The rectangle region to be highlighted on focus.
+/// This is a rectangle region where the focus highlight should be displayed.</summary>
+/// <value>The rectangle area.</value>
+   public Eina.Rect FocusHighlightGeometry {
+      get { return GetFocusHighlightGeometry(); }
+   }
+   /// <summary>Focus order property</summary>
+/// <value>FIXME</value>
+   public  uint FocusOrder {
+      get { return GetFocusOrder(); }
+   }
+   /// <summary>A custom chain of objects to pass focus.
+/// Note: On focus cycle, only will be evaluated children of this container.</summary>
+/// <value>Chain of objects to pass focus</value>
+   public Eina.List<Efl.Canvas.Object> FocusCustomChain {
+      get { return GetFocusCustomChain(); }
+      set { SetFocusCustomChain( value); }
+   }
+   /// <summary>Current focused object in object tree.</summary>
+/// <value>Current focused or <c>null</c>, if there is no focused object.</value>
+   public Efl.Canvas.Object FocusedObject {
+      get { return GetFocusedObject(); }
+   }
+   /// <summary>The widget&apos;s focus move policy.</summary>
+/// <value>Focus move policy</value>
+   public Efl.Ui.Focus.MovePolicy FocusMovePolicy {
+      get { return GetFocusMovePolicy(); }
+      set { SetFocusMovePolicy( value); }
+   }
+   /// <summary>Control the widget&apos;s focus_move_policy mode setting.
+/// 1.18</summary>
+/// <value><c>true</c> to follow system focus move policy change, <c>false</c> otherwise</value>
+   public bool FocusMovePolicyAutomatic {
+      get { return GetFocusMovePolicyAutomatic(); }
+      set { SetFocusMovePolicyAutomatic( value); }
+   }
+   /// <summary>Get list of available widget actions</summary>
+/// <value>Contains statically allocated strings.</value>
+   public Eina.List<Efl.Access.ActionData> Actions {
+      get { return GetActions(); }
+   }
+   /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+/// <value>Z order of component</value>
+   public  int ZOrder {
+      get { return GetZOrder(); }
+   }
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+/// <value>Localized accessible object role name</value>
+   public  System.String LocalizedRoleName {
+      get { return GetLocalizedRoleName(); }
+   }
+   /// <summary>Accessible name of the object.</summary>
+/// <value>Accessible name</value>
+   public  System.String I18nName {
+      get { return GetI18nName(); }
+      set { SetI18nName( value); }
+   }
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+/// <value>Accessible relation set</value>
+   public Efl.Access.RelationSet RelationSet {
+      get { return GetRelationSet(); }
+   }
+   /// <summary>The role of the object in accessibility domain.</summary>
+/// <value>Accessible role</value>
+   public Efl.Access.Role Role {
+      get { return GetRole(); }
+      set { SetRole( value); }
+   }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+/// <value>Accessible parent</value>
+   public Efl.Access.Object AccessParent {
+      get { return GetAccessParent(); }
+      set { SetAccessParent( value); }
+   }
+   /// <summary>Gets object&apos;s accessible children.</summary>
+/// <value>List of widget&apos;s children</value>
+   public Eina.List<Efl.Access.Object> AccessChildren {
+      get { return GetAccessChildren(); }
+   }
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+/// <value>Accessible role name</value>
+   public  System.String RoleName {
+      get { return GetRoleName(); }
+   }
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+/// <value>List of object attributes, Must be freed by the user</value>
+   public Eina.List<Efl.Access.Attribute> Attributes {
+      get { return GetAttributes(); }
+   }
+   /// <summary>Gets reading information types of an accessible object.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>Reading information types</value>
+   public Efl.Access.ReadingInfoTypeMask ReadingInfoType {
+      get { return GetReadingInfoType(); }
+      set { SetReadingInfoType( value); }
+   }
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+/// <value>Index in children list</value>
+   public  int IndexInParent {
+      get { return GetIndexInParent(); }
+   }
+   /// <summary>Gets contextual information about object.</summary>
+/// <value>Accessible contextual information</value>
+   public  System.String Description {
+      get { return GetDescription(); }
+      set { SetDescription( value); }
+   }
+   /// <summary>Gets set describing object accessible states.</summary>
+/// <value>Accessible state set</value>
+   public Efl.Access.StateSet StateSet {
+      get { return GetStateSet(); }
+   }
+   /// <summary>Gets highlightable of given widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>If @c true, the object is highlightable.</value>
+   public bool CanHighlight {
+      get { return GetCanHighlight(); }
+      set { SetCanHighlight( value); }
+   }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+/// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+/// 
+/// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+/// 
+/// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+/// <value>Translation domain</value>
+   public  System.String TranslationDomain {
+      get { return GetTranslationDomain(); }
+      set { SetTranslationDomain( value); }
+   }
+   /// <summary>Get root object of accessible object hierarchy</summary>
+/// <value>Root object</value>
+   public static Efl.Object AccessRoot {
+      get { return GetAccessRoot(); }
+   }
+   /// <summary>Elementary actions</summary>
+/// <value>NULL-terminated array of Efl.Access.Action_Data.</value>
+   public Efl.Access.ActionData ElmActions {
+      get { return GetElmActions(); }
+   }
+   /// <summary>The geometry (that is, the bounding rectangle) used to calculate the relationship with other objects.
+/// 1.20</summary>
+/// <value>The geometry to use.
+/// 1.20</value>
+   public Eina.Rect FocusGeometry {
+      get { return GetFocusGeometry(); }
+   }
+   /// <summary>Returns whether the widget is currently focused or not.
+/// 1.20</summary>
+/// <value>The focused state of the object.
+/// 1.20</value>
+   public bool Focus {
+      get { return GetFocus(); }
+      set { SetFocus( value); }
+   }
+   /// <summary>This is the focus manager where this focus object is registered in. The element which is the <c>root</c> of a Efl.Ui.Focus.Manager will not have this focus manager as this object, but rather the second focus manager where it is registered in.
+/// 1.20</summary>
+/// <value>The manager object
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager FocusManager {
+      get { return GetFocusManager(); }
+   }
+   /// <summary>Describes which logical parent is used by this object.
+/// 1.20</summary>
+/// <value>The focus parent.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object FocusParent {
+      get { return GetFocusParent(); }
+   }
+   /// <summary>Indicates if a child of this object has focus set to true.
+/// 1.20</summary>
+/// <value><c>true</c> if a child has focus.
+/// 1.20</value>
+   public bool ChildFocus {
+      get { return GetChildFocus(); }
+      set { SetChildFocus( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Widget.efl_ui_widget_class_get();
+   }
+}
+public class WidgetNativeInherit : Efl.Canvas.GroupNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_widget_cursor_get_static_delegate == null)
+      efl_ui_widget_cursor_get_static_delegate = new efl_ui_widget_cursor_get_delegate(cursor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_cursor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_cursor_get_static_delegate)});
+      if (efl_ui_widget_cursor_set_static_delegate == null)
+      efl_ui_widget_cursor_set_static_delegate = new efl_ui_widget_cursor_set_delegate(cursor_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_cursor_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_cursor_set_static_delegate)});
+      if (efl_ui_widget_cursor_style_get_static_delegate == null)
+      efl_ui_widget_cursor_style_get_static_delegate = new efl_ui_widget_cursor_style_get_delegate(cursor_style_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_cursor_style_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_cursor_style_get_static_delegate)});
+      if (efl_ui_widget_cursor_style_set_static_delegate == null)
+      efl_ui_widget_cursor_style_set_static_delegate = new efl_ui_widget_cursor_style_set_delegate(cursor_style_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_cursor_style_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_cursor_style_set_static_delegate)});
+      if (efl_ui_widget_cursor_theme_search_enabled_get_static_delegate == null)
+      efl_ui_widget_cursor_theme_search_enabled_get_static_delegate = new efl_ui_widget_cursor_theme_search_enabled_get_delegate(cursor_theme_search_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_cursor_theme_search_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_cursor_theme_search_enabled_get_static_delegate)});
+      if (efl_ui_widget_cursor_theme_search_enabled_set_static_delegate == null)
+      efl_ui_widget_cursor_theme_search_enabled_set_static_delegate = new efl_ui_widget_cursor_theme_search_enabled_set_delegate(cursor_theme_search_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_cursor_theme_search_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_cursor_theme_search_enabled_set_static_delegate)});
+      if (efl_ui_widget_resize_object_set_static_delegate == null)
+      efl_ui_widget_resize_object_set_static_delegate = new efl_ui_widget_resize_object_set_delegate(resize_object_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_resize_object_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_resize_object_set_static_delegate)});
+      if (efl_ui_widget_disabled_get_static_delegate == null)
+      efl_ui_widget_disabled_get_static_delegate = new efl_ui_widget_disabled_get_delegate(disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_disabled_get_static_delegate)});
+      if (efl_ui_widget_disabled_set_static_delegate == null)
+      efl_ui_widget_disabled_set_static_delegate = new efl_ui_widget_disabled_set_delegate(disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_disabled_set_static_delegate)});
+      if (efl_ui_widget_style_get_static_delegate == null)
+      efl_ui_widget_style_get_static_delegate = new efl_ui_widget_style_get_delegate(style_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_style_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_style_get_static_delegate)});
+      if (efl_ui_widget_style_set_static_delegate == null)
+      efl_ui_widget_style_set_static_delegate = new efl_ui_widget_style_set_delegate(style_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_style_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_style_set_static_delegate)});
+      if (efl_ui_widget_focus_allow_get_static_delegate == null)
+      efl_ui_widget_focus_allow_get_static_delegate = new efl_ui_widget_focus_allow_get_delegate(focus_allow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_allow_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_allow_get_static_delegate)});
+      if (efl_ui_widget_focus_allow_set_static_delegate == null)
+      efl_ui_widget_focus_allow_set_static_delegate = new efl_ui_widget_focus_allow_set_delegate(focus_allow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_allow_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_allow_set_static_delegate)});
+      if (efl_ui_widget_parent_get_static_delegate == null)
+      efl_ui_widget_parent_get_static_delegate = new efl_ui_widget_parent_get_delegate(widget_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_parent_get_static_delegate)});
+      if (efl_ui_widget_parent_set_static_delegate == null)
+      efl_ui_widget_parent_set_static_delegate = new efl_ui_widget_parent_set_delegate(widget_parent_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_parent_set_static_delegate)});
+      if (efl_ui_widget_top_get_static_delegate == null)
+      efl_ui_widget_top_get_static_delegate = new efl_ui_widget_top_get_delegate(widget_top_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_top_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_top_get_static_delegate)});
+      if (efl_ui_widget_access_info_get_static_delegate == null)
+      efl_ui_widget_access_info_get_static_delegate = new efl_ui_widget_access_info_get_delegate(access_info_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_access_info_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_access_info_get_static_delegate)});
+      if (efl_ui_widget_access_info_set_static_delegate == null)
+      efl_ui_widget_access_info_set_static_delegate = new efl_ui_widget_access_info_set_delegate(access_info_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_access_info_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_access_info_set_static_delegate)});
+      if (efl_ui_widget_orientation_mode_get_static_delegate == null)
+      efl_ui_widget_orientation_mode_get_static_delegate = new efl_ui_widget_orientation_mode_get_delegate(orientation_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_orientation_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_orientation_mode_get_static_delegate)});
+      if (efl_ui_widget_orientation_mode_set_static_delegate == null)
+      efl_ui_widget_orientation_mode_set_static_delegate = new efl_ui_widget_orientation_mode_set_delegate(orientation_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_orientation_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_orientation_mode_set_static_delegate)});
+      if (efl_ui_widget_interest_region_get_static_delegate == null)
+      efl_ui_widget_interest_region_get_static_delegate = new efl_ui_widget_interest_region_get_delegate(interest_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_interest_region_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_interest_region_get_static_delegate)});
+      if (efl_ui_widget_focus_highlight_geometry_get_static_delegate == null)
+      efl_ui_widget_focus_highlight_geometry_get_static_delegate = new efl_ui_widget_focus_highlight_geometry_get_delegate(focus_highlight_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_highlight_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_highlight_geometry_get_static_delegate)});
+      if (efl_ui_widget_focus_order_get_static_delegate == null)
+      efl_ui_widget_focus_order_get_static_delegate = new efl_ui_widget_focus_order_get_delegate(focus_order_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_order_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_order_get_static_delegate)});
+      if (efl_ui_widget_focus_custom_chain_get_static_delegate == null)
+      efl_ui_widget_focus_custom_chain_get_static_delegate = new efl_ui_widget_focus_custom_chain_get_delegate(focus_custom_chain_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_custom_chain_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_custom_chain_get_static_delegate)});
+      if (efl_ui_widget_focus_custom_chain_set_static_delegate == null)
+      efl_ui_widget_focus_custom_chain_set_static_delegate = new efl_ui_widget_focus_custom_chain_set_delegate(focus_custom_chain_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_custom_chain_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_custom_chain_set_static_delegate)});
+      if (efl_ui_widget_focused_object_get_static_delegate == null)
+      efl_ui_widget_focused_object_get_static_delegate = new efl_ui_widget_focused_object_get_delegate(focused_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focused_object_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focused_object_get_static_delegate)});
+      if (efl_ui_widget_focus_move_policy_get_static_delegate == null)
+      efl_ui_widget_focus_move_policy_get_static_delegate = new efl_ui_widget_focus_move_policy_get_delegate(focus_move_policy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_move_policy_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_move_policy_get_static_delegate)});
+      if (efl_ui_widget_focus_move_policy_set_static_delegate == null)
+      efl_ui_widget_focus_move_policy_set_static_delegate = new efl_ui_widget_focus_move_policy_set_delegate(focus_move_policy_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_move_policy_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_move_policy_set_static_delegate)});
+      if (efl_ui_widget_focus_move_policy_automatic_get_static_delegate == null)
+      efl_ui_widget_focus_move_policy_automatic_get_static_delegate = new efl_ui_widget_focus_move_policy_automatic_get_delegate(focus_move_policy_automatic_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_move_policy_automatic_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_move_policy_automatic_get_static_delegate)});
+      if (efl_ui_widget_focus_move_policy_automatic_set_static_delegate == null)
+      efl_ui_widget_focus_move_policy_automatic_set_static_delegate = new efl_ui_widget_focus_move_policy_automatic_set_delegate(focus_move_policy_automatic_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_move_policy_automatic_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_move_policy_automatic_set_static_delegate)});
+      if (efl_ui_widget_event_static_delegate == null)
+      efl_ui_widget_event_static_delegate = new efl_ui_widget_event_delegate(widget_event);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_event"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_event_static_delegate)});
+      if (efl_ui_widget_on_access_activate_static_delegate == null)
+      efl_ui_widget_on_access_activate_static_delegate = new efl_ui_widget_on_access_activate_delegate(on_access_activate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_on_access_activate"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_on_access_activate_static_delegate)});
+      if (efl_ui_widget_on_access_update_static_delegate == null)
+      efl_ui_widget_on_access_update_static_delegate = new efl_ui_widget_on_access_update_delegate(on_access_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_on_access_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_on_access_update_static_delegate)});
+      if (efl_ui_widget_screen_reader_static_delegate == null)
+      efl_ui_widget_screen_reader_static_delegate = new efl_ui_widget_screen_reader_delegate(screen_reader);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_screen_reader"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_screen_reader_static_delegate)});
+      if (efl_ui_widget_atspi_static_delegate == null)
+      efl_ui_widget_atspi_static_delegate = new efl_ui_widget_atspi_delegate(atspi);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_atspi"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_atspi_static_delegate)});
+      if (efl_ui_widget_sub_object_add_static_delegate == null)
+      efl_ui_widget_sub_object_add_static_delegate = new efl_ui_widget_sub_object_add_delegate(widget_sub_object_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_sub_object_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_sub_object_add_static_delegate)});
+      if (efl_ui_widget_sub_object_del_static_delegate == null)
+      efl_ui_widget_sub_object_del_static_delegate = new efl_ui_widget_sub_object_del_delegate(widget_sub_object_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_sub_object_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_sub_object_del_static_delegate)});
+      if (efl_ui_widget_on_orientation_update_static_delegate == null)
+      efl_ui_widget_on_orientation_update_static_delegate = new efl_ui_widget_on_orientation_update_delegate(on_orientation_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_on_orientation_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_on_orientation_update_static_delegate)});
+      if (efl_ui_widget_theme_apply_static_delegate == null)
+      efl_ui_widget_theme_apply_static_delegate = new efl_ui_widget_theme_apply_delegate(theme_apply);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_theme_apply"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_theme_apply_static_delegate)});
+      if (efl_ui_widget_scroll_hold_push_static_delegate == null)
+      efl_ui_widget_scroll_hold_push_static_delegate = new efl_ui_widget_scroll_hold_push_delegate(scroll_hold_push);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_scroll_hold_push"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_scroll_hold_push_static_delegate)});
+      if (efl_ui_widget_scroll_hold_pop_static_delegate == null)
+      efl_ui_widget_scroll_hold_pop_static_delegate = new efl_ui_widget_scroll_hold_pop_delegate(scroll_hold_pop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_scroll_hold_pop"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_scroll_hold_pop_static_delegate)});
+      if (efl_ui_widget_scroll_freeze_push_static_delegate == null)
+      efl_ui_widget_scroll_freeze_push_static_delegate = new efl_ui_widget_scroll_freeze_push_delegate(scroll_freeze_push);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_scroll_freeze_push"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_scroll_freeze_push_static_delegate)});
+      if (efl_ui_widget_scroll_freeze_pop_static_delegate == null)
+      efl_ui_widget_scroll_freeze_pop_static_delegate = new efl_ui_widget_scroll_freeze_pop_delegate(scroll_freeze_pop);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_scroll_freeze_pop"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_scroll_freeze_pop_static_delegate)});
+      if (efl_ui_widget_part_access_object_get_static_delegate == null)
+      efl_ui_widget_part_access_object_get_static_delegate = new efl_ui_widget_part_access_object_get_delegate(part_access_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_part_access_object_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_part_access_object_get_static_delegate)});
+      if (efl_ui_widget_newest_focus_order_get_static_delegate == null)
+      efl_ui_widget_newest_focus_order_get_static_delegate = new efl_ui_widget_newest_focus_order_get_delegate(newest_focus_order_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_newest_focus_order_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_newest_focus_order_get_static_delegate)});
+      if (efl_ui_widget_focus_next_object_set_static_delegate == null)
+      efl_ui_widget_focus_next_object_set_static_delegate = new efl_ui_widget_focus_next_object_set_delegate(focus_next_object_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_next_object_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_next_object_set_static_delegate)});
+      if (efl_ui_widget_focus_next_object_get_static_delegate == null)
+      efl_ui_widget_focus_next_object_get_static_delegate = new efl_ui_widget_focus_next_object_get_delegate(focus_next_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_next_object_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_next_object_get_static_delegate)});
+      if (efl_ui_widget_focus_next_item_set_static_delegate == null)
+      efl_ui_widget_focus_next_item_set_static_delegate = new efl_ui_widget_focus_next_item_set_delegate(focus_next_item_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_next_item_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_next_item_set_static_delegate)});
+      if (efl_ui_widget_focus_next_item_get_static_delegate == null)
+      efl_ui_widget_focus_next_item_get_static_delegate = new efl_ui_widget_focus_next_item_get_delegate(focus_next_item_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_next_item_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_next_item_get_static_delegate)});
+      if (efl_ui_widget_focus_tree_unfocusable_handle_static_delegate == null)
+      efl_ui_widget_focus_tree_unfocusable_handle_static_delegate = new efl_ui_widget_focus_tree_unfocusable_handle_delegate(focus_tree_unfocusable_handle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_tree_unfocusable_handle"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_tree_unfocusable_handle_static_delegate)});
+      if (efl_ui_widget_focus_custom_chain_prepend_static_delegate == null)
+      efl_ui_widget_focus_custom_chain_prepend_static_delegate = new efl_ui_widget_focus_custom_chain_prepend_delegate(focus_custom_chain_prepend);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_custom_chain_prepend"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_custom_chain_prepend_static_delegate)});
+      if (efl_ui_widget_focus_cycle_static_delegate == null)
+      efl_ui_widget_focus_cycle_static_delegate = new efl_ui_widget_focus_cycle_delegate(focus_cycle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_cycle"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_cycle_static_delegate)});
+      if (efl_ui_widget_focus_direction_static_delegate == null)
+      efl_ui_widget_focus_direction_static_delegate = new efl_ui_widget_focus_direction_delegate(focus_direction);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_direction"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_direction_static_delegate)});
+      if (efl_ui_widget_focus_next_manager_is_static_delegate == null)
+      efl_ui_widget_focus_next_manager_is_static_delegate = new efl_ui_widget_focus_next_manager_is_delegate(focus_next_manager_is);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_next_manager_is"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_next_manager_is_static_delegate)});
+      if (efl_ui_widget_focus_list_direction_get_static_delegate == null)
+      efl_ui_widget_focus_list_direction_get_static_delegate = new efl_ui_widget_focus_list_direction_get_delegate(focus_list_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_list_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_list_direction_get_static_delegate)});
+      if (efl_ui_widget_focused_object_clear_static_delegate == null)
+      efl_ui_widget_focused_object_clear_static_delegate = new efl_ui_widget_focused_object_clear_delegate(focused_object_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focused_object_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focused_object_clear_static_delegate)});
+      if (efl_ui_widget_focus_direction_go_static_delegate == null)
+      efl_ui_widget_focus_direction_go_static_delegate = new efl_ui_widget_focus_direction_go_delegate(focus_direction_go);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_direction_go"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_direction_go_static_delegate)});
+      if (efl_ui_widget_focus_next_get_static_delegate == null)
+      efl_ui_widget_focus_next_get_static_delegate = new efl_ui_widget_focus_next_get_delegate(focus_next_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_next_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_next_get_static_delegate)});
+      if (efl_ui_widget_focus_restore_static_delegate == null)
+      efl_ui_widget_focus_restore_static_delegate = new efl_ui_widget_focus_restore_delegate(focus_restore);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_restore"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_restore_static_delegate)});
+      if (efl_ui_widget_focus_custom_chain_unset_static_delegate == null)
+      efl_ui_widget_focus_custom_chain_unset_static_delegate = new efl_ui_widget_focus_custom_chain_unset_delegate(focus_custom_chain_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_custom_chain_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_custom_chain_unset_static_delegate)});
+      if (efl_ui_widget_focus_steal_static_delegate == null)
+      efl_ui_widget_focus_steal_static_delegate = new efl_ui_widget_focus_steal_delegate(focus_steal);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_steal"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_steal_static_delegate)});
+      if (efl_ui_widget_focus_hide_handle_static_delegate == null)
+      efl_ui_widget_focus_hide_handle_static_delegate = new efl_ui_widget_focus_hide_handle_delegate(focus_hide_handle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_hide_handle"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_hide_handle_static_delegate)});
+      if (efl_ui_widget_focus_next_static_delegate == null)
+      efl_ui_widget_focus_next_static_delegate = new efl_ui_widget_focus_next_delegate(focus_next);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_next"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_next_static_delegate)});
+      if (efl_ui_widget_focus_list_next_get_static_delegate == null)
+      efl_ui_widget_focus_list_next_get_static_delegate = new efl_ui_widget_focus_list_next_get_delegate(focus_list_next_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_list_next_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_list_next_get_static_delegate)});
+      if (efl_ui_widget_focus_mouse_up_handle_static_delegate == null)
+      efl_ui_widget_focus_mouse_up_handle_static_delegate = new efl_ui_widget_focus_mouse_up_handle_delegate(focus_mouse_up_handle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_mouse_up_handle"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_mouse_up_handle_static_delegate)});
+      if (efl_ui_widget_focus_direction_get_static_delegate == null)
+      efl_ui_widget_focus_direction_get_static_delegate = new efl_ui_widget_focus_direction_get_delegate(focus_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_direction_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_direction_get_static_delegate)});
+      if (efl_ui_widget_focus_disabled_handle_static_delegate == null)
+      efl_ui_widget_focus_disabled_handle_static_delegate = new efl_ui_widget_focus_disabled_handle_delegate(focus_disabled_handle);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_disabled_handle"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_disabled_handle_static_delegate)});
+      if (efl_ui_widget_focus_custom_chain_append_static_delegate == null)
+      efl_ui_widget_focus_custom_chain_append_static_delegate = new efl_ui_widget_focus_custom_chain_append_delegate(focus_custom_chain_append);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_custom_chain_append"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_custom_chain_append_static_delegate)});
+      if (efl_ui_widget_focus_reconfigure_static_delegate == null)
+      efl_ui_widget_focus_reconfigure_static_delegate = new efl_ui_widget_focus_reconfigure_delegate(focus_reconfigure);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_reconfigure"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_reconfigure_static_delegate)});
+      if (efl_ui_widget_focus_direction_manager_is_static_delegate == null)
+      efl_ui_widget_focus_direction_manager_is_static_delegate = new efl_ui_widget_focus_direction_manager_is_delegate(focus_direction_manager_is);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_direction_manager_is"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_direction_manager_is_static_delegate)});
+      if (efl_ui_widget_focus_state_apply_static_delegate == null)
+      efl_ui_widget_focus_state_apply_static_delegate = new efl_ui_widget_focus_state_apply_delegate(focus_state_apply);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_state_apply"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_state_apply_static_delegate)});
+      if (efl_part_get_static_delegate == null)
+      efl_part_get_static_delegate = new efl_part_get_delegate(part_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_part_get"), func = Marshal.GetFunctionPointerForDelegate(efl_part_get_static_delegate)});
+      if (efl_access_action_name_get_static_delegate == null)
+      efl_access_action_name_get_static_delegate = new efl_access_action_name_get_delegate(action_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_name_get_static_delegate)});
+      if (efl_access_action_localized_name_get_static_delegate == null)
+      efl_access_action_localized_name_get_static_delegate = new efl_access_action_localized_name_get_delegate(action_localized_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_localized_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_localized_name_get_static_delegate)});
+      if (efl_access_action_actions_get_static_delegate == null)
+      efl_access_action_actions_get_static_delegate = new efl_access_action_actions_get_delegate(actions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_actions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_actions_get_static_delegate)});
+      if (efl_access_action_do_static_delegate == null)
+      efl_access_action_do_static_delegate = new efl_access_action_do_delegate(action_do);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_do"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_do_static_delegate)});
+      if (efl_access_action_keybinding_get_static_delegate == null)
+      efl_access_action_keybinding_get_static_delegate = new efl_access_action_keybinding_get_delegate(action_keybinding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_keybinding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_keybinding_get_static_delegate)});
+      if (efl_access_component_z_order_get_static_delegate == null)
+      efl_access_component_z_order_get_static_delegate = new efl_access_component_z_order_get_delegate(z_order_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_z_order_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_z_order_get_static_delegate)});
+      if (efl_access_component_extents_get_static_delegate == null)
+      efl_access_component_extents_get_static_delegate = new efl_access_component_extents_get_delegate(extents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_extents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_extents_get_static_delegate)});
+      if (efl_access_component_extents_set_static_delegate == null)
+      efl_access_component_extents_set_static_delegate = new efl_access_component_extents_set_delegate(extents_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_extents_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_extents_set_static_delegate)});
+      if (efl_access_component_screen_position_get_static_delegate == null)
+      efl_access_component_screen_position_get_static_delegate = new efl_access_component_screen_position_get_delegate(screen_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_screen_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_screen_position_get_static_delegate)});
+      if (efl_access_component_screen_position_set_static_delegate == null)
+      efl_access_component_screen_position_set_static_delegate = new efl_access_component_screen_position_set_delegate(screen_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_screen_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_screen_position_set_static_delegate)});
+      if (efl_access_component_socket_offset_get_static_delegate == null)
+      efl_access_component_socket_offset_get_static_delegate = new efl_access_component_socket_offset_get_delegate(socket_offset_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_socket_offset_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_socket_offset_get_static_delegate)});
+      if (efl_access_component_socket_offset_set_static_delegate == null)
+      efl_access_component_socket_offset_set_static_delegate = new efl_access_component_socket_offset_set_delegate(socket_offset_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_socket_offset_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_socket_offset_set_static_delegate)});
+      if (efl_access_component_contains_static_delegate == null)
+      efl_access_component_contains_static_delegate = new efl_access_component_contains_delegate(contains);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_contains"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_contains_static_delegate)});
+      if (efl_access_component_focus_grab_static_delegate == null)
+      efl_access_component_focus_grab_static_delegate = new efl_access_component_focus_grab_delegate(focus_grab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_focus_grab"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_focus_grab_static_delegate)});
+      if (efl_access_component_accessible_at_point_get_static_delegate == null)
+      efl_access_component_accessible_at_point_get_static_delegate = new efl_access_component_accessible_at_point_get_delegate(accessible_at_point_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_accessible_at_point_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_accessible_at_point_get_static_delegate)});
+      if (efl_access_component_highlight_grab_static_delegate == null)
+      efl_access_component_highlight_grab_static_delegate = new efl_access_component_highlight_grab_delegate(highlight_grab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_highlight_grab"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_highlight_grab_static_delegate)});
+      if (efl_access_component_highlight_clear_static_delegate == null)
+      efl_access_component_highlight_clear_static_delegate = new efl_access_component_highlight_clear_delegate(highlight_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_highlight_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_highlight_clear_static_delegate)});
+      if (efl_access_object_localized_role_name_get_static_delegate == null)
+      efl_access_object_localized_role_name_get_static_delegate = new efl_access_object_localized_role_name_get_delegate(localized_role_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_localized_role_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_localized_role_name_get_static_delegate)});
+      if (efl_access_object_i18n_name_get_static_delegate == null)
+      efl_access_object_i18n_name_get_static_delegate = new efl_access_object_i18n_name_get_delegate(i18n_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_i18n_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_i18n_name_get_static_delegate)});
+      if (efl_access_object_i18n_name_set_static_delegate == null)
+      efl_access_object_i18n_name_set_static_delegate = new efl_access_object_i18n_name_set_delegate(i18n_name_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_i18n_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_i18n_name_set_static_delegate)});
+      if (efl_access_object_name_cb_set_static_delegate == null)
+      efl_access_object_name_cb_set_static_delegate = new efl_access_object_name_cb_set_delegate(name_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_name_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_name_cb_set_static_delegate)});
+      if (efl_access_object_relation_set_get_static_delegate == null)
+      efl_access_object_relation_set_get_static_delegate = new efl_access_object_relation_set_get_delegate(relation_set_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relation_set_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relation_set_get_static_delegate)});
+      if (efl_access_object_role_get_static_delegate == null)
+      efl_access_object_role_get_static_delegate = new efl_access_object_role_get_delegate(role_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_get_static_delegate)});
+      if (efl_access_object_role_set_static_delegate == null)
+      efl_access_object_role_set_static_delegate = new efl_access_object_role_set_delegate(role_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_set_static_delegate)});
+      if (efl_access_object_access_parent_get_static_delegate == null)
+      efl_access_object_access_parent_get_static_delegate = new efl_access_object_access_parent_get_delegate(access_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_parent_get_static_delegate)});
+      if (efl_access_object_access_parent_set_static_delegate == null)
+      efl_access_object_access_parent_set_static_delegate = new efl_access_object_access_parent_set_delegate(access_parent_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_parent_set_static_delegate)});
+      if (efl_access_object_description_cb_set_static_delegate == null)
+      efl_access_object_description_cb_set_static_delegate = new efl_access_object_description_cb_set_delegate(description_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_cb_set_static_delegate)});
+      if (efl_access_object_gesture_cb_set_static_delegate == null)
+      efl_access_object_gesture_cb_set_static_delegate = new efl_access_object_gesture_cb_set_delegate(gesture_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_gesture_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_gesture_cb_set_static_delegate)});
+      if (efl_access_object_access_children_get_static_delegate == null)
+      efl_access_object_access_children_get_static_delegate = new efl_access_object_access_children_get_delegate(access_children_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_children_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_children_get_static_delegate)});
+      if (efl_access_object_role_name_get_static_delegate == null)
+      efl_access_object_role_name_get_static_delegate = new efl_access_object_role_name_get_delegate(role_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_name_get_static_delegate)});
+      if (efl_access_object_attributes_get_static_delegate == null)
+      efl_access_object_attributes_get_static_delegate = new efl_access_object_attributes_get_delegate(attributes_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attributes_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attributes_get_static_delegate)});
+      if (efl_access_object_reading_info_type_get_static_delegate == null)
+      efl_access_object_reading_info_type_get_static_delegate = new efl_access_object_reading_info_type_get_delegate(reading_info_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_reading_info_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_reading_info_type_get_static_delegate)});
+      if (efl_access_object_reading_info_type_set_static_delegate == null)
+      efl_access_object_reading_info_type_set_static_delegate = new efl_access_object_reading_info_type_set_delegate(reading_info_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_reading_info_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_reading_info_type_set_static_delegate)});
+      if (efl_access_object_index_in_parent_get_static_delegate == null)
+      efl_access_object_index_in_parent_get_static_delegate = new efl_access_object_index_in_parent_get_delegate(index_in_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_index_in_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_index_in_parent_get_static_delegate)});
+      if (efl_access_object_description_get_static_delegate == null)
+      efl_access_object_description_get_static_delegate = new efl_access_object_description_get_delegate(description_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_get_static_delegate)});
+      if (efl_access_object_description_set_static_delegate == null)
+      efl_access_object_description_set_static_delegate = new efl_access_object_description_set_delegate(description_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_set_static_delegate)});
+      if (efl_access_object_state_set_get_static_delegate == null)
+      efl_access_object_state_set_get_static_delegate = new efl_access_object_state_set_get_delegate(state_set_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_state_set_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_state_set_get_static_delegate)});
+      if (efl_access_object_can_highlight_get_static_delegate == null)
+      efl_access_object_can_highlight_get_static_delegate = new efl_access_object_can_highlight_get_delegate(can_highlight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_can_highlight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_can_highlight_get_static_delegate)});
+      if (efl_access_object_can_highlight_set_static_delegate == null)
+      efl_access_object_can_highlight_set_static_delegate = new efl_access_object_can_highlight_set_delegate(can_highlight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_can_highlight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_can_highlight_set_static_delegate)});
+      if (efl_access_object_translation_domain_get_static_delegate == null)
+      efl_access_object_translation_domain_get_static_delegate = new efl_access_object_translation_domain_get_delegate(translation_domain_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_translation_domain_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_translation_domain_get_static_delegate)});
+      if (efl_access_object_translation_domain_set_static_delegate == null)
+      efl_access_object_translation_domain_set_static_delegate = new efl_access_object_translation_domain_set_delegate(translation_domain_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_translation_domain_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_translation_domain_set_static_delegate)});
+      if (efl_access_object_gesture_do_static_delegate == null)
+      efl_access_object_gesture_do_static_delegate = new efl_access_object_gesture_do_delegate(gesture_do);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_gesture_do"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_gesture_do_static_delegate)});
+      if (efl_access_object_attribute_append_static_delegate == null)
+      efl_access_object_attribute_append_static_delegate = new efl_access_object_attribute_append_delegate(attribute_append);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attribute_append"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attribute_append_static_delegate)});
+      if (efl_access_object_attributes_clear_static_delegate == null)
+      efl_access_object_attributes_clear_static_delegate = new efl_access_object_attributes_clear_delegate(attributes_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attributes_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attributes_clear_static_delegate)});
+      if (efl_access_object_relationship_append_static_delegate == null)
+      efl_access_object_relationship_append_static_delegate = new efl_access_object_relationship_append_delegate(relationship_append);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationship_append"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationship_append_static_delegate)});
+      if (efl_access_object_relationship_remove_static_delegate == null)
+      efl_access_object_relationship_remove_static_delegate = new efl_access_object_relationship_remove_delegate(relationship_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationship_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationship_remove_static_delegate)});
+      if (efl_access_object_relationships_clear_static_delegate == null)
+      efl_access_object_relationships_clear_static_delegate = new efl_access_object_relationships_clear_delegate(relationships_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationships_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationships_clear_static_delegate)});
+      if (efl_access_object_state_notify_static_delegate == null)
+      efl_access_object_state_notify_static_delegate = new efl_access_object_state_notify_delegate(state_notify);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_state_notify"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_state_notify_static_delegate)});
+      if (efl_access_widget_action_elm_actions_get_static_delegate == null)
+      efl_access_widget_action_elm_actions_get_static_delegate = new efl_access_widget_action_elm_actions_get_delegate(elm_actions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_widget_action_elm_actions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_widget_action_elm_actions_get_static_delegate)});
+      if (efl_ui_dnd_drag_start_static_delegate == null)
+      efl_ui_dnd_drag_start_static_delegate = new efl_ui_dnd_drag_start_delegate(drag_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drag_start"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drag_start_static_delegate)});
+      if (efl_ui_dnd_drag_action_set_static_delegate == null)
+      efl_ui_dnd_drag_action_set_static_delegate = new efl_ui_dnd_drag_action_set_delegate(drag_action_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drag_action_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drag_action_set_static_delegate)});
+      if (efl_ui_dnd_drag_cancel_static_delegate == null)
+      efl_ui_dnd_drag_cancel_static_delegate = new efl_ui_dnd_drag_cancel_delegate(drag_cancel);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drag_cancel"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drag_cancel_static_delegate)});
+      if (efl_ui_dnd_drop_target_add_static_delegate == null)
+      efl_ui_dnd_drop_target_add_static_delegate = new efl_ui_dnd_drop_target_add_delegate(drop_target_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drop_target_add"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drop_target_add_static_delegate)});
+      if (efl_ui_dnd_drop_target_del_static_delegate == null)
+      efl_ui_dnd_drop_target_del_static_delegate = new efl_ui_dnd_drop_target_del_delegate(drop_target_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_dnd_drop_target_del"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_dnd_drop_target_del_static_delegate)});
+      if (efl_ui_l10n_text_get_static_delegate == null)
+      efl_ui_l10n_text_get_static_delegate = new efl_ui_l10n_text_get_delegate(l10n_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_get_static_delegate)});
+      if (efl_ui_l10n_text_set_static_delegate == null)
+      efl_ui_l10n_text_set_static_delegate = new efl_ui_l10n_text_set_delegate(l10n_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_text_set_static_delegate)});
+      if (efl_ui_l10n_translation_update_static_delegate == null)
+      efl_ui_l10n_translation_update_static_delegate = new efl_ui_l10n_translation_update_delegate(translation_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_l10n_translation_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_l10n_translation_update_static_delegate)});
+      if (efl_ui_selection_set_static_delegate == null)
+      efl_ui_selection_set_static_delegate = new efl_ui_selection_set_delegate(selection_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_set_static_delegate)});
+      if (efl_ui_selection_get_static_delegate == null)
+      efl_ui_selection_get_static_delegate = new efl_ui_selection_get_delegate(selection_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_get_static_delegate)});
+      if (efl_ui_selection_clear_static_delegate == null)
+      efl_ui_selection_clear_static_delegate = new efl_ui_selection_clear_delegate(selection_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_clear_static_delegate)});
+      if (efl_ui_selection_has_owner_static_delegate == null)
+      efl_ui_selection_has_owner_static_delegate = new efl_ui_selection_has_owner_delegate(has_owner);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_selection_has_owner"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_selection_has_owner_static_delegate)});
+      if (efl_ui_focus_object_focus_geometry_get_static_delegate == null)
+      efl_ui_focus_object_focus_geometry_get_static_delegate = new efl_ui_focus_object_focus_geometry_get_delegate(focus_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_geometry_get_static_delegate)});
+      if (efl_ui_focus_object_focus_get_static_delegate == null)
+      efl_ui_focus_object_focus_get_static_delegate = new efl_ui_focus_object_focus_get_delegate(focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_get_static_delegate)});
+      if (efl_ui_focus_object_focus_set_static_delegate == null)
+      efl_ui_focus_object_focus_set_static_delegate = new efl_ui_focus_object_focus_set_delegate(focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_set_static_delegate)});
+      if (efl_ui_focus_object_focus_manager_get_static_delegate == null)
+      efl_ui_focus_object_focus_manager_get_static_delegate = new efl_ui_focus_object_focus_manager_get_delegate(focus_manager_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_manager_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_manager_get_static_delegate)});
+      if (efl_ui_focus_object_focus_parent_get_static_delegate == null)
+      efl_ui_focus_object_focus_parent_get_static_delegate = new efl_ui_focus_object_focus_parent_get_delegate(focus_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_focus_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_focus_parent_get_static_delegate)});
+      if (efl_ui_focus_object_child_focus_get_static_delegate == null)
+      efl_ui_focus_object_child_focus_get_static_delegate = new efl_ui_focus_object_child_focus_get_delegate(child_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_child_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_child_focus_get_static_delegate)});
+      if (efl_ui_focus_object_child_focus_set_static_delegate == null)
+      efl_ui_focus_object_child_focus_set_static_delegate = new efl_ui_focus_object_child_focus_set_delegate(child_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_child_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_child_focus_set_static_delegate)});
+      if (efl_ui_focus_object_setup_order_static_delegate == null)
+      efl_ui_focus_object_setup_order_static_delegate = new efl_ui_focus_object_setup_order_delegate(setup_order);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_setup_order"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_setup_order_static_delegate)});
+      if (efl_ui_focus_object_setup_order_non_recursive_static_delegate == null)
+      efl_ui_focus_object_setup_order_non_recursive_static_delegate = new efl_ui_focus_object_setup_order_non_recursive_delegate(setup_order_non_recursive);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_setup_order_non_recursive"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_setup_order_non_recursive_static_delegate)});
+      if (efl_ui_focus_object_on_focus_update_static_delegate == null)
+      efl_ui_focus_object_on_focus_update_static_delegate = new efl_ui_focus_object_on_focus_update_delegate(on_focus_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_object_on_focus_update"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_object_on_focus_update_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Widget.efl_ui_widget_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Widget.efl_ui_widget_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_widget_cursor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_widget_cursor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_get_api_delegate> efl_ui_widget_cursor_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_get_api_delegate>(_Module, "efl_ui_widget_cursor_get");
+    private static  System.String cursor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_cursor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetCursor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_cursor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_cursor_get_delegate efl_ui_widget_cursor_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_cursor_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cursor);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_cursor_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cursor);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_set_api_delegate> efl_ui_widget_cursor_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_set_api_delegate>(_Module, "efl_ui_widget_cursor_set");
+    private static bool cursor_set(System.IntPtr obj, System.IntPtr pd,   System.String cursor)
+   {
+      Eina.Log.Debug("function efl_ui_widget_cursor_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).SetCursor( cursor);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_cursor_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cursor);
+      }
+   }
+   private static efl_ui_widget_cursor_set_delegate efl_ui_widget_cursor_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_widget_cursor_style_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_widget_cursor_style_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_style_get_api_delegate> efl_ui_widget_cursor_style_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_style_get_api_delegate>(_Module, "efl_ui_widget_cursor_style_get");
+    private static  System.String cursor_style_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_cursor_style_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetCursorStyle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_cursor_style_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_cursor_style_get_delegate efl_ui_widget_cursor_style_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_cursor_style_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_cursor_style_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_style_set_api_delegate> efl_ui_widget_cursor_style_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_style_set_api_delegate>(_Module, "efl_ui_widget_cursor_style_set");
+    private static bool cursor_style_set(System.IntPtr obj, System.IntPtr pd,   System.String style)
+   {
+      Eina.Log.Debug("function efl_ui_widget_cursor_style_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).SetCursorStyle( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_cursor_style_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_ui_widget_cursor_style_set_delegate efl_ui_widget_cursor_style_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_cursor_theme_search_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_cursor_theme_search_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_theme_search_enabled_get_api_delegate> efl_ui_widget_cursor_theme_search_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_theme_search_enabled_get_api_delegate>(_Module, "efl_ui_widget_cursor_theme_search_enabled_get");
+    private static bool cursor_theme_search_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_cursor_theme_search_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetCursorThemeSearchEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_cursor_theme_search_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_cursor_theme_search_enabled_get_delegate efl_ui_widget_cursor_theme_search_enabled_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_cursor_theme_search_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool allow);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_cursor_theme_search_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool allow);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_theme_search_enabled_set_api_delegate> efl_ui_widget_cursor_theme_search_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_cursor_theme_search_enabled_set_api_delegate>(_Module, "efl_ui_widget_cursor_theme_search_enabled_set");
+    private static bool cursor_theme_search_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool allow)
+   {
+      Eina.Log.Debug("function efl_ui_widget_cursor_theme_search_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).SetCursorThemeSearchEnabled( allow);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_cursor_theme_search_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  allow);
+      }
+   }
+   private static efl_ui_widget_cursor_theme_search_enabled_set_delegate efl_ui_widget_cursor_theme_search_enabled_set_static_delegate;
+
+
+    private delegate  void efl_ui_widget_resize_object_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sobj);
+
+
+    public delegate  void efl_ui_widget_resize_object_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sobj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_resize_object_set_api_delegate> efl_ui_widget_resize_object_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_resize_object_set_api_delegate>(_Module, "efl_ui_widget_resize_object_set");
+    private static  void resize_object_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object sobj)
+   {
+      Eina.Log.Debug("function efl_ui_widget_resize_object_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetResizeObject( sobj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_resize_object_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sobj);
+      }
+   }
+   private static efl_ui_widget_resize_object_set_delegate efl_ui_widget_resize_object_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_disabled_get_api_delegate> efl_ui_widget_disabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_disabled_get_api_delegate>(_Module, "efl_ui_widget_disabled_get");
+    private static bool disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_disabled_get_delegate efl_ui_widget_disabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void efl_ui_widget_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_disabled_set_api_delegate> efl_ui_widget_disabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_disabled_set_api_delegate>(_Module, "efl_ui_widget_disabled_set");
+    private static  void disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function efl_ui_widget_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static efl_ui_widget_disabled_set_delegate efl_ui_widget_disabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_widget_style_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_widget_style_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_style_get_api_delegate> efl_ui_widget_style_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_style_get_api_delegate>(_Module, "efl_ui_widget_style_get");
+    private static  System.String style_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_style_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetStyle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_style_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_style_get_delegate efl_ui_widget_style_get_static_delegate;
+
+
+    private delegate Efl.Ui.ThemeApplyResult efl_ui_widget_style_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    public delegate Efl.Ui.ThemeApplyResult efl_ui_widget_style_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_style_set_api_delegate> efl_ui_widget_style_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_style_set_api_delegate>(_Module, "efl_ui_widget_style_set");
+    private static Efl.Ui.ThemeApplyResult style_set(System.IntPtr obj, System.IntPtr pd,   System.String style)
+   {
+      Eina.Log.Debug("function efl_ui_widget_style_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.ThemeApplyResult _ret_var = default(Efl.Ui.ThemeApplyResult);
+         try {
+            _ret_var = ((Widget)wrapper).SetStyle( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_style_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_ui_widget_style_set_delegate efl_ui_widget_style_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_allow_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_allow_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_allow_get_api_delegate> efl_ui_widget_focus_allow_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_allow_get_api_delegate>(_Module, "efl_ui_widget_focus_allow_get");
+    private static bool focus_allow_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_allow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusAllow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_focus_allow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_allow_get_delegate efl_ui_widget_focus_allow_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_allow_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_focus);
+
+
+    public delegate  void efl_ui_widget_focus_allow_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_allow_set_api_delegate> efl_ui_widget_focus_allow_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_allow_set_api_delegate>(_Module, "efl_ui_widget_focus_allow_set");
+    private static  void focus_allow_set(System.IntPtr obj, System.IntPtr pd,  bool can_focus)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_allow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetFocusAllow( can_focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_focus_allow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_focus);
+      }
+   }
+   private static efl_ui_widget_focus_allow_set_delegate efl_ui_widget_focus_allow_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Widget efl_ui_widget_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Widget efl_ui_widget_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_parent_get_api_delegate> efl_ui_widget_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_parent_get_api_delegate>(_Module, "efl_ui_widget_parent_get");
+    private static Efl.Ui.Widget widget_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Widget _ret_var = default(Efl.Ui.Widget);
+         try {
+            _ret_var = ((Widget)wrapper).GetWidgetParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_parent_get_delegate efl_ui_widget_parent_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))]  Efl.Ui.Widget parent);
+
+
+    public delegate  void efl_ui_widget_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))]  Efl.Ui.Widget parent);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_parent_set_api_delegate> efl_ui_widget_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_parent_set_api_delegate>(_Module, "efl_ui_widget_parent_set");
+    private static  void widget_parent_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Widget parent)
+   {
+      Eina.Log.Debug("function efl_ui_widget_parent_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetWidgetParent( parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent);
+      }
+   }
+   private static efl_ui_widget_parent_set_delegate efl_ui_widget_parent_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Widget efl_ui_widget_top_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Widget efl_ui_widget_top_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_top_get_api_delegate> efl_ui_widget_top_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_top_get_api_delegate>(_Module, "efl_ui_widget_top_get");
+    private static Efl.Ui.Widget widget_top_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_top_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Widget _ret_var = default(Efl.Ui.Widget);
+         try {
+            _ret_var = ((Widget)wrapper).GetWidgetTop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_top_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_top_get_delegate efl_ui_widget_top_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_widget_access_info_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_widget_access_info_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_access_info_get_api_delegate> efl_ui_widget_access_info_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_access_info_get_api_delegate>(_Module, "efl_ui_widget_access_info_get");
+    private static  System.String access_info_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_access_info_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetAccessInfo();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_access_info_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_access_info_get_delegate efl_ui_widget_access_info_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_access_info_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String txt);
+
+
+    public delegate  void efl_ui_widget_access_info_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String txt);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_access_info_set_api_delegate> efl_ui_widget_access_info_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_access_info_set_api_delegate>(_Module, "efl_ui_widget_access_info_set");
+    private static  void access_info_set(System.IntPtr obj, System.IntPtr pd,   System.String txt)
+   {
+      Eina.Log.Debug("function efl_ui_widget_access_info_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetAccessInfo( txt);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_access_info_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  txt);
+      }
+   }
+   private static efl_ui_widget_access_info_set_delegate efl_ui_widget_access_info_set_static_delegate;
+
+
+    private delegate Efl.Ui.WidgetOrientationMode efl_ui_widget_orientation_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.WidgetOrientationMode efl_ui_widget_orientation_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_orientation_mode_get_api_delegate> efl_ui_widget_orientation_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_orientation_mode_get_api_delegate>(_Module, "efl_ui_widget_orientation_mode_get");
+    private static Efl.Ui.WidgetOrientationMode orientation_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_orientation_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.WidgetOrientationMode _ret_var = default(Efl.Ui.WidgetOrientationMode);
+         try {
+            _ret_var = ((Widget)wrapper).GetOrientationMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_orientation_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_orientation_mode_get_delegate efl_ui_widget_orientation_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_orientation_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WidgetOrientationMode mode);
+
+
+    public delegate  void efl_ui_widget_orientation_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.WidgetOrientationMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_orientation_mode_set_api_delegate> efl_ui_widget_orientation_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_orientation_mode_set_api_delegate>(_Module, "efl_ui_widget_orientation_mode_set");
+    private static  void orientation_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WidgetOrientationMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_widget_orientation_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetOrientationMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_orientation_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_widget_orientation_mode_set_delegate efl_ui_widget_orientation_mode_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_widget_interest_region_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_widget_interest_region_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_interest_region_get_api_delegate> efl_ui_widget_interest_region_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_interest_region_get_api_delegate>(_Module, "efl_ui_widget_interest_region_get");
+    private static Eina.Rect_StructInternal interest_region_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_interest_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Widget)wrapper).GetInterestRegion();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_widget_interest_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_interest_region_get_delegate efl_ui_widget_interest_region_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_widget_focus_highlight_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_widget_focus_highlight_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_highlight_geometry_get_api_delegate> efl_ui_widget_focus_highlight_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_highlight_geometry_get_api_delegate>(_Module, "efl_ui_widget_focus_highlight_geometry_get");
+    private static Eina.Rect_StructInternal focus_highlight_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_highlight_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusHighlightGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_widget_focus_highlight_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_highlight_geometry_get_delegate efl_ui_widget_focus_highlight_geometry_get_static_delegate;
+
+
+    private delegate  uint efl_ui_widget_focus_order_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  uint efl_ui_widget_focus_order_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_order_get_api_delegate> efl_ui_widget_focus_order_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_order_get_api_delegate>(_Module, "efl_ui_widget_focus_order_get");
+    private static  uint focus_order_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_order_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   uint _ret_var = default( uint);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_focus_order_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_order_get_delegate efl_ui_widget_focus_order_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_widget_focus_custom_chain_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_widget_focus_custom_chain_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_get_api_delegate> efl_ui_widget_focus_custom_chain_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_get_api_delegate>(_Module, "efl_ui_widget_focus_custom_chain_get");
+    private static  System.IntPtr focus_custom_chain_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_custom_chain_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Canvas.Object> _ret_var = default(Eina.List<Efl.Canvas.Object>);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusCustomChain();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_widget_focus_custom_chain_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_custom_chain_get_delegate efl_ui_widget_focus_custom_chain_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_custom_chain_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr objs);
+
+
+    public delegate  void efl_ui_widget_focus_custom_chain_set_api_delegate(System.IntPtr obj,    System.IntPtr objs);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_set_api_delegate> efl_ui_widget_focus_custom_chain_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_set_api_delegate>(_Module, "efl_ui_widget_focus_custom_chain_set");
+    private static  void focus_custom_chain_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr objs)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_custom_chain_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_objs = new Eina.List<Efl.Canvas.Object>(objs, false, false);
+                     
+         try {
+            ((Widget)wrapper).SetFocusCustomChain( _in_objs);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_focus_custom_chain_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  objs);
+      }
+   }
+   private static efl_ui_widget_focus_custom_chain_set_delegate efl_ui_widget_focus_custom_chain_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_widget_focused_object_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_widget_focused_object_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focused_object_get_api_delegate> efl_ui_widget_focused_object_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focused_object_get_api_delegate>(_Module, "efl_ui_widget_focused_object_get");
+    private static Efl.Canvas.Object focused_object_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focused_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusedObject();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_focused_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focused_object_get_delegate efl_ui_widget_focused_object_get_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.MovePolicy efl_ui_widget_focus_move_policy_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.MovePolicy efl_ui_widget_focus_move_policy_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_get_api_delegate> efl_ui_widget_focus_move_policy_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_get_api_delegate>(_Module, "efl_ui_widget_focus_move_policy_get");
+    private static Efl.Ui.Focus.MovePolicy focus_move_policy_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_move_policy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.MovePolicy _ret_var = default(Efl.Ui.Focus.MovePolicy);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusMovePolicy();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_focus_move_policy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_move_policy_get_delegate efl_ui_widget_focus_move_policy_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_move_policy_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.MovePolicy policy);
+
+
+    public delegate  void efl_ui_widget_focus_move_policy_set_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.MovePolicy policy);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_set_api_delegate> efl_ui_widget_focus_move_policy_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_set_api_delegate>(_Module, "efl_ui_widget_focus_move_policy_set");
+    private static  void focus_move_policy_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.MovePolicy policy)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_move_policy_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetFocusMovePolicy( policy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_focus_move_policy_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  policy);
+      }
+   }
+   private static efl_ui_widget_focus_move_policy_set_delegate efl_ui_widget_focus_move_policy_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_move_policy_automatic_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_move_policy_automatic_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_automatic_get_api_delegate> efl_ui_widget_focus_move_policy_automatic_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_automatic_get_api_delegate>(_Module, "efl_ui_widget_focus_move_policy_automatic_get");
+    private static bool focus_move_policy_automatic_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_move_policy_automatic_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusMovePolicyAutomatic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_focus_move_policy_automatic_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_move_policy_automatic_get_delegate efl_ui_widget_focus_move_policy_automatic_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_move_policy_automatic_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+
+
+    public delegate  void efl_ui_widget_focus_move_policy_automatic_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool automatic);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_automatic_set_api_delegate> efl_ui_widget_focus_move_policy_automatic_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_move_policy_automatic_set_api_delegate>(_Module, "efl_ui_widget_focus_move_policy_automatic_set");
+    private static  void focus_move_policy_automatic_set(System.IntPtr obj, System.IntPtr pd,  bool automatic)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_move_policy_automatic_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetFocusMovePolicyAutomatic( automatic);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_focus_move_policy_automatic_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  automatic);
+      }
+   }
+   private static efl_ui_widget_focus_move_policy_automatic_set_delegate efl_ui_widget_focus_move_policy_automatic_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_event_delegate(System.IntPtr obj, System.IntPtr pd,   ref Efl.Event_StructInternal eo_event, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object source);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_event_api_delegate(System.IntPtr obj,   ref Efl.Event_StructInternal eo_event, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object source);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_event_api_delegate> efl_ui_widget_event_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_event_api_delegate>(_Module, "efl_ui_widget_event");
+    private static bool widget_event(System.IntPtr obj, System.IntPtr pd,  ref Efl.Event_StructInternal eo_event,  Efl.Canvas.Object source)
+   {
+      Eina.Log.Debug("function efl_ui_widget_event was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_eo_event = Efl.Event_StructConversion.ToManaged(eo_event);
+                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).WidgetEvent( ref _in_eo_event,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  eo_event = Efl.Event_StructConversion.ToInternal(_in_eo_event);
+            return _ret_var;
+      } else {
+         return efl_ui_widget_event_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ref eo_event,  source);
+      }
+   }
+   private static efl_ui_widget_event_delegate efl_ui_widget_event_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_on_access_activate_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Activate act);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_on_access_activate_api_delegate(System.IntPtr obj,   Efl.Ui.Activate act);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_on_access_activate_api_delegate> efl_ui_widget_on_access_activate_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_on_access_activate_api_delegate>(_Module, "efl_ui_widget_on_access_activate");
+    private static bool on_access_activate(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Activate act)
+   {
+      Eina.Log.Debug("function efl_ui_widget_on_access_activate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).OnAccessActivate( act);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_on_access_activate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  act);
+      }
+   }
+   private static efl_ui_widget_on_access_activate_delegate efl_ui_widget_on_access_activate_static_delegate;
+
+
+    private delegate  void efl_ui_widget_on_access_update_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_ui_widget_on_access_update_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_on_access_update_api_delegate> efl_ui_widget_on_access_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_on_access_update_api_delegate>(_Module, "efl_ui_widget_on_access_update");
+    private static  void on_access_update(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function efl_ui_widget_on_access_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).UpdateOnAccess( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_on_access_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static efl_ui_widget_on_access_update_delegate efl_ui_widget_on_access_update_static_delegate;
+
+
+    private delegate  void efl_ui_widget_screen_reader_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_screen_reader);
+
+
+    public delegate  void efl_ui_widget_screen_reader_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_screen_reader);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_screen_reader_api_delegate> efl_ui_widget_screen_reader_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_screen_reader_api_delegate>(_Module, "efl_ui_widget_screen_reader");
+    private static  void screen_reader(System.IntPtr obj, System.IntPtr pd,  bool is_screen_reader)
+   {
+      Eina.Log.Debug("function efl_ui_widget_screen_reader was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).ScreenReader( is_screen_reader);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_screen_reader_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_screen_reader);
+      }
+   }
+   private static efl_ui_widget_screen_reader_delegate efl_ui_widget_screen_reader_static_delegate;
+
+
+    private delegate  void efl_ui_widget_atspi_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool is_atspi);
+
+
+    public delegate  void efl_ui_widget_atspi_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool is_atspi);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_atspi_api_delegate> efl_ui_widget_atspi_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_atspi_api_delegate>(_Module, "efl_ui_widget_atspi");
+    private static  void atspi(System.IntPtr obj, System.IntPtr pd,  bool is_atspi)
+   {
+      Eina.Log.Debug("function efl_ui_widget_atspi was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).Atspi( is_atspi);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_atspi_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  is_atspi);
+      }
+   }
+   private static efl_ui_widget_atspi_delegate efl_ui_widget_atspi_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_sub_object_add_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_sub_object_add_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_sub_object_add_api_delegate> efl_ui_widget_sub_object_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_sub_object_add_api_delegate>(_Module, "efl_ui_widget_sub_object_add");
+    private static bool widget_sub_object_add(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object sub_obj)
+   {
+      Eina.Log.Debug("function efl_ui_widget_sub_object_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).AddWidgetSubObject( sub_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_sub_object_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sub_obj);
+      }
+   }
+   private static efl_ui_widget_sub_object_add_delegate efl_ui_widget_sub_object_add_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_sub_object_del_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_sub_object_del_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object sub_obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_sub_object_del_api_delegate> efl_ui_widget_sub_object_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_sub_object_del_api_delegate>(_Module, "efl_ui_widget_sub_object_del");
+    private static bool widget_sub_object_del(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object sub_obj)
+   {
+      Eina.Log.Debug("function efl_ui_widget_sub_object_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).DelWidgetSubObject( sub_obj);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_sub_object_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sub_obj);
+      }
+   }
+   private static efl_ui_widget_sub_object_del_delegate efl_ui_widget_sub_object_del_static_delegate;
+
+
+    private delegate  void efl_ui_widget_on_orientation_update_delegate(System.IntPtr obj, System.IntPtr pd,    int rotation);
+
+
+    public delegate  void efl_ui_widget_on_orientation_update_api_delegate(System.IntPtr obj,    int rotation);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_on_orientation_update_api_delegate> efl_ui_widget_on_orientation_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_on_orientation_update_api_delegate>(_Module, "efl_ui_widget_on_orientation_update");
+    private static  void on_orientation_update(System.IntPtr obj, System.IntPtr pd,   int rotation)
+   {
+      Eina.Log.Debug("function efl_ui_widget_on_orientation_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).UpdateOnOrientation( rotation);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_on_orientation_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rotation);
+      }
+   }
+   private static efl_ui_widget_on_orientation_update_delegate efl_ui_widget_on_orientation_update_static_delegate;
+
+
+    private delegate Efl.Ui.ThemeApplyResult efl_ui_widget_theme_apply_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ThemeApplyResult efl_ui_widget_theme_apply_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_theme_apply_api_delegate> efl_ui_widget_theme_apply_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_theme_apply_api_delegate>(_Module, "efl_ui_widget_theme_apply");
+    private static Efl.Ui.ThemeApplyResult theme_apply(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_theme_apply was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ThemeApplyResult _ret_var = default(Efl.Ui.ThemeApplyResult);
+         try {
+            _ret_var = ((Widget)wrapper).ThemeApply();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_theme_apply_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_theme_apply_delegate efl_ui_widget_theme_apply_static_delegate;
+
+
+    private delegate  void efl_ui_widget_scroll_hold_push_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_scroll_hold_push_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_hold_push_api_delegate> efl_ui_widget_scroll_hold_push_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_hold_push_api_delegate>(_Module, "efl_ui_widget_scroll_hold_push");
+    private static  void scroll_hold_push(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_scroll_hold_push was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).PushScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_scroll_hold_push_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_scroll_hold_push_delegate efl_ui_widget_scroll_hold_push_static_delegate;
+
+
+    private delegate  void efl_ui_widget_scroll_hold_pop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_scroll_hold_pop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_hold_pop_api_delegate> efl_ui_widget_scroll_hold_pop_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_hold_pop_api_delegate>(_Module, "efl_ui_widget_scroll_hold_pop");
+    private static  void scroll_hold_pop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_scroll_hold_pop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).PopScrollHold();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_scroll_hold_pop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_scroll_hold_pop_delegate efl_ui_widget_scroll_hold_pop_static_delegate;
+
+
+    private delegate  void efl_ui_widget_scroll_freeze_push_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_scroll_freeze_push_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_freeze_push_api_delegate> efl_ui_widget_scroll_freeze_push_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_freeze_push_api_delegate>(_Module, "efl_ui_widget_scroll_freeze_push");
+    private static  void scroll_freeze_push(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_scroll_freeze_push was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).PushScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_scroll_freeze_push_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_scroll_freeze_push_delegate efl_ui_widget_scroll_freeze_push_static_delegate;
+
+
+    private delegate  void efl_ui_widget_scroll_freeze_pop_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_scroll_freeze_pop_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_freeze_pop_api_delegate> efl_ui_widget_scroll_freeze_pop_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_scroll_freeze_pop_api_delegate>(_Module, "efl_ui_widget_scroll_freeze_pop");
+    private static  void scroll_freeze_pop(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_scroll_freeze_pop was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).PopScrollFreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_scroll_freeze_pop_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_scroll_freeze_pop_delegate efl_ui_widget_scroll_freeze_pop_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_widget_part_access_object_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_widget_part_access_object_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_part_access_object_get_api_delegate> efl_ui_widget_part_access_object_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_part_access_object_get_api_delegate>(_Module, "efl_ui_widget_part_access_object_get");
+    private static Efl.Canvas.Object part_access_object_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function efl_ui_widget_part_access_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetPartAccessObject( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_part_access_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static efl_ui_widget_part_access_object_get_delegate efl_ui_widget_part_access_object_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_widget_newest_focus_order_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  uint newest_focus_order,  [MarshalAs(UnmanagedType.U1)]  bool can_focus_only);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_widget_newest_focus_order_get_api_delegate(System.IntPtr obj,   out  uint newest_focus_order,  [MarshalAs(UnmanagedType.U1)]  bool can_focus_only);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_newest_focus_order_get_api_delegate> efl_ui_widget_newest_focus_order_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_newest_focus_order_get_api_delegate>(_Module, "efl_ui_widget_newest_focus_order_get");
+    private static Efl.Canvas.Object newest_focus_order_get(System.IntPtr obj, System.IntPtr pd,  out  uint newest_focus_order,  bool can_focus_only)
+   {
+      Eina.Log.Debug("function efl_ui_widget_newest_focus_order_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           newest_focus_order = default( uint);                           Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetNewestFocusOrder( out newest_focus_order,  can_focus_only);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_widget_newest_focus_order_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out newest_focus_order,  can_focus_only);
+      }
+   }
+   private static efl_ui_widget_newest_focus_order_get_delegate efl_ui_widget_newest_focus_order_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_next_object_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object next,   Efl.Ui.Focus.Direction dir);
+
+
+    public delegate  void efl_ui_widget_focus_next_object_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object next,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_object_set_api_delegate> efl_ui_widget_focus_next_object_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_object_set_api_delegate>(_Module, "efl_ui_widget_focus_next_object_set");
+    private static  void focus_next_object_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object next,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_next_object_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetFocusNextObject( next,  dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_widget_focus_next_object_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  next,  dir);
+      }
+   }
+   private static efl_ui_widget_focus_next_object_set_delegate efl_ui_widget_focus_next_object_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_widget_focus_next_object_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction dir);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_widget_focus_next_object_get_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_object_get_api_delegate> efl_ui_widget_focus_next_object_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_object_get_api_delegate>(_Module, "efl_ui_widget_focus_next_object_get");
+    private static Efl.Canvas.Object focus_next_object_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_next_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusNextObject( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_next_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_widget_focus_next_object_get_delegate efl_ui_widget_focus_next_object_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_next_item_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  Elm.Widget.Item next_item,   Efl.Ui.Focus.Direction dir);
+
+
+    public delegate  void efl_ui_widget_focus_next_item_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  Elm.Widget.Item next_item,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_item_set_api_delegate> efl_ui_widget_focus_next_item_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_item_set_api_delegate>(_Module, "efl_ui_widget_focus_next_item_set");
+    private static  void focus_next_item_set(System.IntPtr obj, System.IntPtr pd,  Elm.Widget.Item next_item,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_next_item_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetFocusNextItem( next_item,  dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_widget_focus_next_item_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  next_item,  dir);
+      }
+   }
+   private static efl_ui_widget_focus_next_item_set_delegate efl_ui_widget_focus_next_item_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))] private delegate Elm.Widget.Item efl_ui_widget_focus_next_item_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction dir);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))] public delegate Elm.Widget.Item efl_ui_widget_focus_next_item_get_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_item_get_api_delegate> efl_ui_widget_focus_next_item_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_item_get_api_delegate>(_Module, "efl_ui_widget_focus_next_item_get");
+    private static Elm.Widget.Item focus_next_item_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_next_item_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Elm.Widget.Item _ret_var = default(Elm.Widget.Item);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusNextItem( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_next_item_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_widget_focus_next_item_get_delegate efl_ui_widget_focus_next_item_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_tree_unfocusable_handle_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focus_tree_unfocusable_handle_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_tree_unfocusable_handle_api_delegate> efl_ui_widget_focus_tree_unfocusable_handle_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_tree_unfocusable_handle_api_delegate>(_Module, "efl_ui_widget_focus_tree_unfocusable_handle");
+    private static  void focus_tree_unfocusable_handle(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_tree_unfocusable_handle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).FocusTreeUnfocusableHandle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focus_tree_unfocusable_handle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_tree_unfocusable_handle_delegate efl_ui_widget_focus_tree_unfocusable_handle_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_custom_chain_prepend_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object relative_child);
+
+
+    public delegate  void efl_ui_widget_focus_custom_chain_prepend_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object relative_child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_prepend_api_delegate> efl_ui_widget_focus_custom_chain_prepend_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_prepend_api_delegate>(_Module, "efl_ui_widget_focus_custom_chain_prepend");
+    private static  void focus_custom_chain_prepend(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object child,  Efl.Canvas.Object relative_child)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_custom_chain_prepend was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).FocusCustomChainPrepend( child,  relative_child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_widget_focus_custom_chain_prepend_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  relative_child);
+      }
+   }
+   private static efl_ui_widget_focus_custom_chain_prepend_delegate efl_ui_widget_focus_custom_chain_prepend_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_cycle_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction dir);
+
+
+    public delegate  void efl_ui_widget_focus_cycle_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_cycle_api_delegate> efl_ui_widget_focus_cycle_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_cycle_api_delegate>(_Module, "efl_ui_widget_focus_cycle");
+    private static  void focus_cycle(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_cycle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).FocusCycle( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_focus_cycle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static efl_ui_widget_focus_cycle_delegate efl_ui_widget_focus_cycle_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_direction_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_base,   double degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item direction_item,   out double weight);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_direction_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_base,   double degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item direction_item,   out double weight);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_api_delegate> efl_ui_widget_focus_direction_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_api_delegate>(_Module, "efl_ui_widget_focus_direction");
+    private static bool focus_direction(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object kw_base,  double degree,  out Efl.Canvas.Object direction,  out Elm.Widget.Item direction_item,  out double weight)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_direction was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                         direction = default(Efl.Canvas.Object);      direction_item = default(Elm.Widget.Item);      weight = default(double);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).FocusDirection( kw_base,  degree,  out direction,  out direction_item,  out weight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_direction_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_base,  degree,  out direction,  out direction_item,  out weight);
+      }
+   }
+   private static efl_ui_widget_focus_direction_delegate efl_ui_widget_focus_direction_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_next_manager_is_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_next_manager_is_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_manager_is_api_delegate> efl_ui_widget_focus_next_manager_is_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_manager_is_api_delegate>(_Module, "efl_ui_widget_focus_next_manager_is");
+    private static bool focus_next_manager_is(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_next_manager_is was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).IsFocusNextManager();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_focus_next_manager_is_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_next_manager_is_delegate efl_ui_widget_focus_next_manager_is_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_list_direction_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_base,    System.IntPtr items,    System.IntPtr list_data_get,   double degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item direction_item,   out double weight);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_list_direction_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_base,    System.IntPtr items,    System.IntPtr list_data_get,   double degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item direction_item,   out double weight);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_list_direction_get_api_delegate> efl_ui_widget_focus_list_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_list_direction_get_api_delegate>(_Module, "efl_ui_widget_focus_list_direction_get");
+    private static bool focus_list_direction_get(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object kw_base,   System.IntPtr items,   System.IntPtr list_data_get,  double degree,  out Efl.Canvas.Object direction,  out Elm.Widget.Item direction_item,  out double weight)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_list_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_items = new Eina.List<Efl.Object>(items, false, false);
+                                                            direction = default(Efl.Canvas.Object);      direction_item = default(Elm.Widget.Item);      weight = default(double);                                                   bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusListDirection( kw_base,  _in_items,  list_data_get,  degree,  out direction,  out direction_item,  out weight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                                          return _ret_var;
+      } else {
+         return efl_ui_widget_focus_list_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_base,  items,  list_data_get,  degree,  out direction,  out direction_item,  out weight);
+      }
+   }
+   private static efl_ui_widget_focus_list_direction_get_delegate efl_ui_widget_focus_list_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focused_object_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focused_object_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focused_object_clear_api_delegate> efl_ui_widget_focused_object_clear_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focused_object_clear_api_delegate>(_Module, "efl_ui_widget_focused_object_clear");
+    private static  void focused_object_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focused_object_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).ClearFocusedObject();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focused_object_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focused_object_clear_delegate efl_ui_widget_focused_object_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_direction_go_delegate(System.IntPtr obj, System.IntPtr pd,   double degree);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_direction_go_api_delegate(System.IntPtr obj,   double degree);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_go_api_delegate> efl_ui_widget_focus_direction_go_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_go_api_delegate>(_Module, "efl_ui_widget_focus_direction_go");
+    private static bool focus_direction_go(System.IntPtr obj, System.IntPtr pd,  double degree)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_direction_go was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).FocusDirectionGo( degree);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_direction_go_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  degree);
+      }
+   }
+   private static efl_ui_widget_focus_direction_go_delegate efl_ui_widget_focus_direction_go_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_next_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction dir, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object next, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item next_item);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_next_get_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction dir, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object next, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item next_item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_get_api_delegate> efl_ui_widget_focus_next_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_get_api_delegate>(_Module, "efl_ui_widget_focus_next_get");
+    private static bool focus_next_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir,  out Efl.Canvas.Object next,  out Elm.Widget.Item next_item)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_next_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       next = default(Efl.Canvas.Object);      next_item = default(Elm.Widget.Item);                           bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusNext( dir,  out next,  out next_item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_widget_focus_next_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir,  out next,  out next_item);
+      }
+   }
+   private static efl_ui_widget_focus_next_get_delegate efl_ui_widget_focus_next_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_restore_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focus_restore_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_restore_api_delegate> efl_ui_widget_focus_restore_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_restore_api_delegate>(_Module, "efl_ui_widget_focus_restore");
+    private static  void focus_restore(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_restore was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).FocusRestore();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focus_restore_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_restore_delegate efl_ui_widget_focus_restore_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_custom_chain_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focus_custom_chain_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_unset_api_delegate> efl_ui_widget_focus_custom_chain_unset_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_unset_api_delegate>(_Module, "efl_ui_widget_focus_custom_chain_unset");
+    private static  void focus_custom_chain_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_custom_chain_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).UnsetFocusCustomChain();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focus_custom_chain_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_custom_chain_unset_delegate efl_ui_widget_focus_custom_chain_unset_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_steal_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  Elm.Widget.Item item);
+
+
+    public delegate  void efl_ui_widget_focus_steal_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  Elm.Widget.Item item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_steal_api_delegate> efl_ui_widget_focus_steal_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_steal_api_delegate>(_Module, "efl_ui_widget_focus_steal");
+    private static  void focus_steal(System.IntPtr obj, System.IntPtr pd,  Elm.Widget.Item item)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_steal was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).FocusSteal( item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_focus_steal_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  item);
+      }
+   }
+   private static efl_ui_widget_focus_steal_delegate efl_ui_widget_focus_steal_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_hide_handle_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focus_hide_handle_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_hide_handle_api_delegate> efl_ui_widget_focus_hide_handle_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_hide_handle_api_delegate>(_Module, "efl_ui_widget_focus_hide_handle");
+    private static  void focus_hide_handle(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_hide_handle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).FocusHideHandle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focus_hide_handle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_hide_handle_delegate efl_ui_widget_focus_hide_handle_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_next_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction dir, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object next, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item next_item);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_next_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction dir, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object next, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item next_item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_api_delegate> efl_ui_widget_focus_next_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_next_api_delegate>(_Module, "efl_ui_widget_focus_next");
+    private static bool focus_next(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir,  out Efl.Canvas.Object next,  out Elm.Widget.Item next_item)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_next was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       next = default(Efl.Canvas.Object);      next_item = default(Elm.Widget.Item);                           bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).FocusNext( dir,  out next,  out next_item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_widget_focus_next_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir,  out next,  out next_item);
+      }
+   }
+   private static efl_ui_widget_focus_next_delegate efl_ui_widget_focus_next_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_list_next_get_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr items,    System.IntPtr list_data_get,   Efl.Ui.Focus.Direction dir, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object next, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item next_item);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_list_next_get_api_delegate(System.IntPtr obj,    System.IntPtr items,    System.IntPtr list_data_get,   Efl.Ui.Focus.Direction dir, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object next, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item next_item);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_list_next_get_api_delegate> efl_ui_widget_focus_list_next_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_list_next_get_api_delegate>(_Module, "efl_ui_widget_focus_list_next_get");
+    private static bool focus_list_next_get(System.IntPtr obj, System.IntPtr pd,   System.IntPtr items,   System.IntPtr list_data_get,  Efl.Ui.Focus.Direction dir,  out Efl.Canvas.Object next,  out Elm.Widget.Item next_item)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_list_next_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_items = new Eina.List<Efl.Object>(items, false, false);
+                                                next = default(Efl.Canvas.Object);      next_item = default(Elm.Widget.Item);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusListNext( _in_items,  list_data_get,  dir,  out next,  out next_item);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_list_next_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  items,  list_data_get,  dir,  out next,  out next_item);
+      }
+   }
+   private static efl_ui_widget_focus_list_next_get_delegate efl_ui_widget_focus_list_next_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_mouse_up_handle_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focus_mouse_up_handle_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_mouse_up_handle_api_delegate> efl_ui_widget_focus_mouse_up_handle_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_mouse_up_handle_api_delegate>(_Module, "efl_ui_widget_focus_mouse_up_handle");
+    private static  void focus_mouse_up_handle(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_mouse_up_handle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).FocusMouseUpHandle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focus_mouse_up_handle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_mouse_up_handle_delegate efl_ui_widget_focus_mouse_up_handle_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_direction_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_base,   double degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item direction_item,   out double weight);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_direction_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object kw_base,   double degree, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  out Efl.Canvas.Object direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  out Elm.Widget.Item direction_item,   out double weight);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_get_api_delegate> efl_ui_widget_focus_direction_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_get_api_delegate>(_Module, "efl_ui_widget_focus_direction_get");
+    private static bool focus_direction_get(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object kw_base,  double degree,  out Efl.Canvas.Object direction,  out Elm.Widget.Item direction_item,  out double weight)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                         direction = default(Efl.Canvas.Object);      direction_item = default(Elm.Widget.Item);      weight = default(double);                                       bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusDirection( kw_base,  degree,  out direction,  out direction_item,  out weight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_base,  degree,  out direction,  out direction_item,  out weight);
+      }
+   }
+   private static efl_ui_widget_focus_direction_get_delegate efl_ui_widget_focus_direction_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_disabled_handle_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focus_disabled_handle_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_disabled_handle_api_delegate> efl_ui_widget_focus_disabled_handle_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_disabled_handle_api_delegate>(_Module, "efl_ui_widget_focus_disabled_handle");
+    private static  void focus_disabled_handle(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_disabled_handle was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).FocusDisabledHandle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focus_disabled_handle_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_disabled_handle_delegate efl_ui_widget_focus_disabled_handle_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_custom_chain_append_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object relative_child);
+
+
+    public delegate  void efl_ui_widget_focus_custom_chain_append_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object child, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object relative_child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_append_api_delegate> efl_ui_widget_focus_custom_chain_append_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_custom_chain_append_api_delegate>(_Module, "efl_ui_widget_focus_custom_chain_append");
+    private static  void focus_custom_chain_append(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object child,  Efl.Canvas.Object relative_child)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_custom_chain_append was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).AppendFocusCustomChain( child,  relative_child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_widget_focus_custom_chain_append_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child,  relative_child);
+      }
+   }
+   private static efl_ui_widget_focus_custom_chain_append_delegate efl_ui_widget_focus_custom_chain_append_static_delegate;
+
+
+    private delegate  void efl_ui_widget_focus_reconfigure_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_widget_focus_reconfigure_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_reconfigure_api_delegate> efl_ui_widget_focus_reconfigure_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_reconfigure_api_delegate>(_Module, "efl_ui_widget_focus_reconfigure");
+    private static  void focus_reconfigure(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_reconfigure was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).FocusReconfigure();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_widget_focus_reconfigure_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_reconfigure_delegate efl_ui_widget_focus_reconfigure_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_direction_manager_is_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_direction_manager_is_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_manager_is_api_delegate> efl_ui_widget_focus_direction_manager_is_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_direction_manager_is_api_delegate>(_Module, "efl_ui_widget_focus_direction_manager_is");
+    private static bool focus_direction_manager_is(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_direction_manager_is was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).IsFocusDirectionManager();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_focus_direction_manager_is_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_focus_direction_manager_is_delegate efl_ui_widget_focus_direction_manager_is_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_widget_focus_state_apply_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WidgetFocusState_StructInternal current_state,   ref Efl.Ui.WidgetFocusState_StructInternal configured_state, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))]  Efl.Ui.Widget redirect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_widget_focus_state_apply_api_delegate(System.IntPtr obj,   Efl.Ui.WidgetFocusState_StructInternal current_state,   ref Efl.Ui.WidgetFocusState_StructInternal configured_state, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Widget, Efl.Eo.NonOwnTag>))]  Efl.Ui.Widget redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_state_apply_api_delegate> efl_ui_widget_focus_state_apply_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_state_apply_api_delegate>(_Module, "efl_ui_widget_focus_state_apply");
+    private static bool focus_state_apply(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WidgetFocusState_StructInternal current_state,  ref Efl.Ui.WidgetFocusState_StructInternal configured_state,  Efl.Ui.Widget redirect)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_state_apply was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_current_state = Efl.Ui.WidgetFocusState_StructConversion.ToManaged(current_state);
+                        Efl.Ui.WidgetFocusState _out_configured_state = default(Efl.Ui.WidgetFocusState);
+                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).FocusStateApply( _in_current_state,  ref _out_configured_state,  redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            configured_state = Efl.Ui.WidgetFocusState_StructConversion.ToInternal(_out_configured_state);
+                              return _ret_var;
+      } else {
+         return efl_ui_widget_focus_state_apply_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  current_state,  ref configured_state,  redirect);
+      }
+   }
+   private static efl_ui_widget_focus_state_apply_delegate efl_ui_widget_focus_state_apply_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_part_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_part_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_part_get_api_delegate> efl_part_get_ptr = new Efl.Eo.FunctionWrapper<efl_part_get_api_delegate>(_Module, "efl_part_get");
+    private static Efl.Object part_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_part_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetPart( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_part_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_part_get_delegate efl_part_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate> efl_access_action_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate>(_Module, "efl_access_action_name_get");
+    private static  System.String action_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetActionName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_name_get_delegate efl_access_action_name_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_localized_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_localized_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate> efl_access_action_localized_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate>(_Module, "efl_access_action_localized_name_get");
+    private static  System.String action_localized_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_localized_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetActionLocalizedName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_localized_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_localized_name_get_delegate efl_access_action_localized_name_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_action_actions_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_action_actions_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate> efl_access_action_actions_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate>(_Module, "efl_access_action_actions_get");
+    private static  System.IntPtr actions_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_action_actions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.ActionData> _ret_var = default(Eina.List<Efl.Access.ActionData>);
+         try {
+            _ret_var = ((Widget)wrapper).GetActions();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_access_action_actions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_action_actions_get_delegate efl_access_action_actions_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_action_do_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_action_do_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate> efl_access_action_do_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate>(_Module, "efl_access_action_do");
+    private static bool action_do(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_do was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).ActionDo( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_do_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_do_delegate efl_access_action_do_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_action_keybinding_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_action_keybinding_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate> efl_access_action_keybinding_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate>(_Module, "efl_access_action_keybinding_get");
+    private static  System.String action_keybinding_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_keybinding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetActionKeybinding( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_keybinding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_keybinding_get_delegate efl_access_action_keybinding_get_static_delegate;
+
+
+    private delegate  int efl_access_component_z_order_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_component_z_order_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_z_order_get_api_delegate> efl_access_component_z_order_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_z_order_get_api_delegate>(_Module, "efl_access_component_z_order_get");
+    private static  int z_order_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_z_order_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Widget)wrapper).GetZOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_z_order_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_z_order_get_delegate efl_access_component_z_order_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_access_component_extents_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords);
+
+
+    public delegate Eina.Rect_StructInternal efl_access_component_extents_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_extents_get_api_delegate> efl_access_component_extents_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_extents_get_api_delegate>(_Module, "efl_access_component_extents_get");
+    private static Eina.Rect_StructInternal extents_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords)
+   {
+      Eina.Log.Debug("function efl_access_component_extents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Widget)wrapper).GetExtents( screen_coords);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_access_component_extents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords);
+      }
+   }
+   private static efl_access_component_extents_get_delegate efl_access_component_extents_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_extents_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_extents_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_extents_set_api_delegate> efl_access_component_extents_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_extents_set_api_delegate>(_Module, "efl_access_component_extents_set");
+    private static bool extents_set(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_access_component_extents_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).SetExtents( screen_coords,  _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_component_extents_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  rect);
+      }
+   }
+   private static efl_access_component_extents_set_delegate efl_access_component_extents_set_static_delegate;
+
+
+    private delegate  void efl_access_component_screen_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void efl_access_component_screen_position_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_screen_position_get_api_delegate> efl_access_component_screen_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_screen_position_get_api_delegate>(_Module, "efl_access_component_screen_position_get");
+    private static  void screen_position_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function efl_access_component_screen_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((Widget)wrapper).GetScreenPosition( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_screen_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_access_component_screen_position_get_delegate efl_access_component_screen_position_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_screen_position_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_screen_position_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_screen_position_set_api_delegate> efl_access_component_screen_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_screen_position_set_api_delegate>(_Module, "efl_access_component_screen_position_set");
+    private static bool screen_position_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_screen_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).SetScreenPosition( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_component_screen_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_access_component_screen_position_set_delegate efl_access_component_screen_position_set_static_delegate;
+
+
+    private delegate  void efl_access_component_socket_offset_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void efl_access_component_socket_offset_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_get_api_delegate> efl_access_component_socket_offset_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_get_api_delegate>(_Module, "efl_access_component_socket_offset_get");
+    private static  void socket_offset_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function efl_access_component_socket_offset_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((Widget)wrapper).GetSocketOffset( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_socket_offset_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_access_component_socket_offset_get_delegate efl_access_component_socket_offset_get_static_delegate;
+
+
+    private delegate  void efl_access_component_socket_offset_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void efl_access_component_socket_offset_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_set_api_delegate> efl_access_component_socket_offset_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_set_api_delegate>(_Module, "efl_access_component_socket_offset_set");
+    private static  void socket_offset_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_socket_offset_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetSocketOffset( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_socket_offset_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_access_component_socket_offset_set_delegate efl_access_component_socket_offset_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_contains_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_contains_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_contains_api_delegate> efl_access_component_contains_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_contains_api_delegate>(_Module, "efl_access_component_contains");
+    private static bool contains(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_contains was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).Contains( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_component_contains_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_component_contains_delegate efl_access_component_contains_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_focus_grab_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_focus_grab_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_focus_grab_api_delegate> efl_access_component_focus_grab_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_focus_grab_api_delegate>(_Module, "efl_access_component_focus_grab");
+    private static bool focus_grab(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_focus_grab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GrabFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_focus_grab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_focus_grab_delegate efl_access_component_focus_grab_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_component_accessible_at_point_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_component_accessible_at_point_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_accessible_at_point_get_api_delegate> efl_access_component_accessible_at_point_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_accessible_at_point_get_api_delegate>(_Module, "efl_access_component_accessible_at_point_get");
+    private static Efl.Object accessible_at_point_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_accessible_at_point_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetAccessibleAtPoint( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_component_accessible_at_point_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_component_accessible_at_point_get_delegate efl_access_component_accessible_at_point_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_highlight_grab_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_highlight_grab_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_highlight_grab_api_delegate> efl_access_component_highlight_grab_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_highlight_grab_api_delegate>(_Module, "efl_access_component_highlight_grab");
+    private static bool highlight_grab(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_highlight_grab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GrabHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_highlight_grab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_highlight_grab_delegate efl_access_component_highlight_grab_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_highlight_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_highlight_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_highlight_clear_api_delegate> efl_access_component_highlight_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_highlight_clear_api_delegate>(_Module, "efl_access_component_highlight_clear");
+    private static bool highlight_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_highlight_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).ClearHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_highlight_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_highlight_clear_delegate efl_access_component_highlight_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_localized_role_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_localized_role_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_localized_role_name_get_api_delegate> efl_access_object_localized_role_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_localized_role_name_get_api_delegate>(_Module, "efl_access_object_localized_role_name_get");
+    private static  System.String localized_role_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_localized_role_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetLocalizedRoleName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_localized_role_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_localized_role_name_get_delegate efl_access_object_localized_role_name_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_i18n_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_i18n_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_get_api_delegate> efl_access_object_i18n_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_get_api_delegate>(_Module, "efl_access_object_i18n_name_get");
+    private static  System.String i18n_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_i18n_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetI18nName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_i18n_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_i18n_name_get_delegate efl_access_object_i18n_name_get_static_delegate;
+
+
+    private delegate  void efl_access_object_i18n_name_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String i18n_name);
+
+
+    public delegate  void efl_access_object_i18n_name_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String i18n_name);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_set_api_delegate> efl_access_object_i18n_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_set_api_delegate>(_Module, "efl_access_object_i18n_name_set");
+    private static  void i18n_name_set(System.IntPtr obj, System.IntPtr pd,   System.String i18n_name)
+   {
+      Eina.Log.Debug("function efl_access_object_i18n_name_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetI18nName( i18n_name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_i18n_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  i18n_name);
+      }
+   }
+   private static efl_access_object_i18n_name_set_delegate efl_access_object_i18n_name_set_static_delegate;
+
+
+    private delegate  void efl_access_object_name_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoCb name_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_name_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoCb name_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_name_cb_set_api_delegate> efl_access_object_name_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_name_cb_set_api_delegate>(_Module, "efl_access_object_name_cb_set");
+    private static  void name_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoCb name_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_name_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetNameCb( name_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_name_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name_cb,  data);
+      }
+   }
+   private static efl_access_object_name_cb_set_delegate efl_access_object_name_cb_set_static_delegate;
+
+
+    private delegate Efl.Access.RelationSet efl_access_object_relation_set_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.RelationSet efl_access_object_relation_set_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relation_set_get_api_delegate> efl_access_object_relation_set_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relation_set_get_api_delegate>(_Module, "efl_access_object_relation_set_get");
+    private static Efl.Access.RelationSet relation_set_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_relation_set_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.RelationSet _ret_var = default(Efl.Access.RelationSet);
+         try {
+            _ret_var = ((Widget)wrapper).GetRelationSet();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_relation_set_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_relation_set_get_delegate efl_access_object_relation_set_get_static_delegate;
+
+
+    private delegate Efl.Access.Role efl_access_object_role_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.Role efl_access_object_role_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_get_api_delegate> efl_access_object_role_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_get_api_delegate>(_Module, "efl_access_object_role_get");
+    private static Efl.Access.Role role_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_role_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.Role _ret_var = default(Efl.Access.Role);
+         try {
+            _ret_var = ((Widget)wrapper).GetRole();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_role_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_role_get_delegate efl_access_object_role_get_static_delegate;
+
+
+    private delegate  void efl_access_object_role_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.Role role);
+
+
+    public delegate  void efl_access_object_role_set_api_delegate(System.IntPtr obj,   Efl.Access.Role role);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_set_api_delegate> efl_access_object_role_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_set_api_delegate>(_Module, "efl_access_object_role_set");
+    private static  void role_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Role role)
+   {
+      Eina.Log.Debug("function efl_access_object_role_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetRole( role);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_role_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  role);
+      }
+   }
+   private static efl_access_object_role_set_delegate efl_access_object_role_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Access.Object efl_access_object_access_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Access.Object efl_access_object_access_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_parent_get_api_delegate> efl_access_object_access_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_parent_get_api_delegate>(_Module, "efl_access_object_access_parent_get");
+    private static Efl.Access.Object access_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.Object _ret_var = default(Efl.Access.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetAccessParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_access_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_access_parent_get_delegate efl_access_object_access_parent_get_static_delegate;
+
+
+    private delegate  void efl_access_object_access_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object parent);
+
+
+    public delegate  void efl_access_object_access_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object parent);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_parent_set_api_delegate> efl_access_object_access_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_parent_set_api_delegate>(_Module, "efl_access_object_access_parent_set");
+    private static  void access_parent_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Object parent)
+   {
+      Eina.Log.Debug("function efl_access_object_access_parent_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetAccessParent( parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_access_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent);
+      }
+   }
+   private static efl_access_object_access_parent_set_delegate efl_access_object_access_parent_set_static_delegate;
+
+
+    private delegate  void efl_access_object_description_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoCb description_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_description_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoCb description_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_cb_set_api_delegate> efl_access_object_description_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_cb_set_api_delegate>(_Module, "efl_access_object_description_cb_set");
+    private static  void description_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoCb description_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_description_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetDescriptionCb( description_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_description_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  description_cb,  data);
+      }
+   }
+   private static efl_access_object_description_cb_set_delegate efl_access_object_description_cb_set_static_delegate;
+
+
+    private delegate  void efl_access_object_gesture_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.GestureCb gesture_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_gesture_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.GestureCb gesture_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_gesture_cb_set_api_delegate> efl_access_object_gesture_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_gesture_cb_set_api_delegate>(_Module, "efl_access_object_gesture_cb_set");
+    private static  void gesture_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.GestureCb gesture_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_gesture_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetGestureCb( gesture_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_gesture_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gesture_cb,  data);
+      }
+   }
+   private static efl_access_object_gesture_cb_set_delegate efl_access_object_gesture_cb_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_object_access_children_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_object_access_children_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_children_get_api_delegate> efl_access_object_access_children_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_children_get_api_delegate>(_Module, "efl_access_object_access_children_get");
+    private static  System.IntPtr access_children_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_children_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.Object> _ret_var = default(Eina.List<Efl.Access.Object>);
+         try {
+            _ret_var = ((Widget)wrapper).GetAccessChildren();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_access_object_access_children_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_access_children_get_delegate efl_access_object_access_children_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_role_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_role_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_name_get_api_delegate> efl_access_object_role_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_name_get_api_delegate>(_Module, "efl_access_object_role_name_get");
+    private static  System.String role_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_role_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetRoleName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_role_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_role_name_get_delegate efl_access_object_role_name_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_object_attributes_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_object_attributes_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attributes_get_api_delegate> efl_access_object_attributes_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attributes_get_api_delegate>(_Module, "efl_access_object_attributes_get");
+    private static  System.IntPtr attributes_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_attributes_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.Attribute> _ret_var = default(Eina.List<Efl.Access.Attribute>);
+         try {
+            _ret_var = ((Widget)wrapper).GetAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_object_attributes_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_attributes_get_delegate efl_access_object_attributes_get_static_delegate;
+
+
+    private delegate Efl.Access.ReadingInfoTypeMask efl_access_object_reading_info_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.ReadingInfoTypeMask efl_access_object_reading_info_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_get_api_delegate> efl_access_object_reading_info_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_get_api_delegate>(_Module, "efl_access_object_reading_info_type_get");
+    private static Efl.Access.ReadingInfoTypeMask reading_info_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_reading_info_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.ReadingInfoTypeMask _ret_var = default(Efl.Access.ReadingInfoTypeMask);
+         try {
+            _ret_var = ((Widget)wrapper).GetReadingInfoType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_reading_info_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_reading_info_type_get_delegate efl_access_object_reading_info_type_get_static_delegate;
+
+
+    private delegate  void efl_access_object_reading_info_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoTypeMask reading_info);
+
+
+    public delegate  void efl_access_object_reading_info_type_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoTypeMask reading_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_set_api_delegate> efl_access_object_reading_info_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_set_api_delegate>(_Module, "efl_access_object_reading_info_type_set");
+    private static  void reading_info_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoTypeMask reading_info)
+   {
+      Eina.Log.Debug("function efl_access_object_reading_info_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetReadingInfoType( reading_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_reading_info_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  reading_info);
+      }
+   }
+   private static efl_access_object_reading_info_type_set_delegate efl_access_object_reading_info_type_set_static_delegate;
+
+
+    private delegate  int efl_access_object_index_in_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_object_index_in_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_index_in_parent_get_api_delegate> efl_access_object_index_in_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_index_in_parent_get_api_delegate>(_Module, "efl_access_object_index_in_parent_get");
+    private static  int index_in_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_index_in_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Widget)wrapper).GetIndexInParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_index_in_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_index_in_parent_get_delegate efl_access_object_index_in_parent_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_description_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_description_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_get_api_delegate> efl_access_object_description_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_get_api_delegate>(_Module, "efl_access_object_description_get");
+    private static  System.String description_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_description_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetDescription();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_description_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_description_get_delegate efl_access_object_description_get_static_delegate;
+
+
+    private delegate  void efl_access_object_description_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String description);
+
+
+    public delegate  void efl_access_object_description_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String description);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_set_api_delegate> efl_access_object_description_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_set_api_delegate>(_Module, "efl_access_object_description_set");
+    private static  void description_set(System.IntPtr obj, System.IntPtr pd,   System.String description)
+   {
+      Eina.Log.Debug("function efl_access_object_description_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetDescription( description);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_description_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  description);
+      }
+   }
+   private static efl_access_object_description_set_delegate efl_access_object_description_set_static_delegate;
+
+
+    private delegate Efl.Access.StateSet efl_access_object_state_set_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.StateSet efl_access_object_state_set_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_state_set_get_api_delegate> efl_access_object_state_set_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_state_set_get_api_delegate>(_Module, "efl_access_object_state_set_get");
+    private static Efl.Access.StateSet state_set_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_state_set_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.StateSet _ret_var = default(Efl.Access.StateSet);
+         try {
+            _ret_var = ((Widget)wrapper).GetStateSet();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_state_set_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_state_set_get_delegate efl_access_object_state_set_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_can_highlight_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_can_highlight_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_get_api_delegate> efl_access_object_can_highlight_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_get_api_delegate>(_Module, "efl_access_object_can_highlight_get");
+    private static bool can_highlight_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_can_highlight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetCanHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_can_highlight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_can_highlight_get_delegate efl_access_object_can_highlight_get_static_delegate;
+
+
+    private delegate  void efl_access_object_can_highlight_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_highlight);
+
+
+    public delegate  void efl_access_object_can_highlight_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_highlight);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_set_api_delegate> efl_access_object_can_highlight_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_set_api_delegate>(_Module, "efl_access_object_can_highlight_set");
+    private static  void can_highlight_set(System.IntPtr obj, System.IntPtr pd,  bool can_highlight)
+   {
+      Eina.Log.Debug("function efl_access_object_can_highlight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetCanHighlight( can_highlight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_can_highlight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_highlight);
+      }
+   }
+   private static efl_access_object_can_highlight_set_delegate efl_access_object_can_highlight_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_translation_domain_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_translation_domain_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_get_api_delegate> efl_access_object_translation_domain_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_get_api_delegate>(_Module, "efl_access_object_translation_domain_get");
+    private static  System.String translation_domain_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_translation_domain_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetTranslationDomain();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_translation_domain_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_translation_domain_get_delegate efl_access_object_translation_domain_get_static_delegate;
+
+
+    private delegate  void efl_access_object_translation_domain_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+
+
+    public delegate  void efl_access_object_translation_domain_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_set_api_delegate> efl_access_object_translation_domain_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_set_api_delegate>(_Module, "efl_access_object_translation_domain_set");
+    private static  void translation_domain_set(System.IntPtr obj, System.IntPtr pd,   System.String domain)
+   {
+      Eina.Log.Debug("function efl_access_object_translation_domain_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetTranslationDomain( domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_translation_domain_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  domain);
+      }
+   }
+   private static efl_access_object_translation_domain_set_delegate efl_access_object_translation_domain_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_object_access_root_get_delegate();
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_object_access_root_get_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_root_get_api_delegate> efl_access_object_access_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_root_get_api_delegate>(_Module, "efl_access_object_access_root_get");
+    private static Efl.Object access_root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = Widget.GetAccessRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_access_root_get_ptr.Value.Delegate();
+      }
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_gesture_do_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.GestureInfo_StructInternal gesture_info);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_gesture_do_api_delegate(System.IntPtr obj,   Efl.Access.GestureInfo_StructInternal gesture_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_gesture_do_api_delegate> efl_access_object_gesture_do_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_gesture_do_api_delegate>(_Module, "efl_access_object_gesture_do");
+    private static bool gesture_do(System.IntPtr obj, System.IntPtr pd,  Efl.Access.GestureInfo_StructInternal gesture_info)
+   {
+      Eina.Log.Debug("function efl_access_object_gesture_do was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_gesture_info = Efl.Access.GestureInfo_StructConversion.ToManaged(gesture_info);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GestureDo( _in_gesture_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_object_gesture_do_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gesture_info);
+      }
+   }
+   private static efl_access_object_gesture_do_delegate efl_access_object_gesture_do_static_delegate;
+
+
+    private delegate  void efl_access_object_attribute_append_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+
+
+    public delegate  void efl_access_object_attribute_append_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attribute_append_api_delegate> efl_access_object_attribute_append_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attribute_append_api_delegate>(_Module, "efl_access_object_attribute_append");
+    private static  void attribute_append(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String value)
+   {
+      Eina.Log.Debug("function efl_access_object_attribute_append was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).AppendAttribute( key,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_attribute_append_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  value);
+      }
+   }
+   private static efl_access_object_attribute_append_delegate efl_access_object_attribute_append_static_delegate;
+
+
+    private delegate  void efl_access_object_attributes_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_access_object_attributes_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attributes_clear_api_delegate> efl_access_object_attributes_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attributes_clear_api_delegate>(_Module, "efl_access_object_attributes_clear");
+    private static  void attributes_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_attributes_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).ClearAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_access_object_attributes_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_attributes_clear_delegate efl_access_object_attributes_clear_static_delegate;
+
+
+    private delegate Efl.Access.Event.Handler efl_access_object_event_handler_add_delegate(  Efl.EventCb cb,    System.IntPtr data);
+
+
+    public delegate Efl.Access.Event.Handler efl_access_object_event_handler_add_api_delegate(  Efl.EventCb cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_handler_add_api_delegate> efl_access_object_event_handler_add_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_handler_add_api_delegate>(_Module, "efl_access_object_event_handler_add");
+    private static Efl.Access.Event.Handler event_handler_add(System.IntPtr obj, System.IntPtr pd,  Efl.EventCb cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_event_handler_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Access.Event.Handler _ret_var = default(Efl.Access.Event.Handler);
+         try {
+            _ret_var = Widget.AddEventHandler( cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_object_event_handler_add_ptr.Value.Delegate( cb,  data);
+      }
+   }
+
+
+    private delegate  void efl_access_object_event_handler_del_delegate(  Efl.Access.Event.Handler handler);
+
+
+    public delegate  void efl_access_object_event_handler_del_api_delegate(  Efl.Access.Event.Handler handler);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_handler_del_api_delegate> efl_access_object_event_handler_del_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_handler_del_api_delegate>(_Module, "efl_access_object_event_handler_del");
+    private static  void event_handler_del(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Event.Handler handler)
+   {
+      Eina.Log.Debug("function efl_access_object_event_handler_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            Widget.DelEventHandler( handler);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_event_handler_del_ptr.Value.Delegate( handler);
+      }
+   }
+
+
+    private delegate  void efl_access_object_event_emit_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object accessible,    System.IntPtr kw_event,    System.IntPtr event_info);
+
+
+    public delegate  void efl_access_object_event_emit_api_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object accessible,    System.IntPtr kw_event,    System.IntPtr event_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_emit_api_delegate> efl_access_object_event_emit_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_emit_api_delegate>(_Module, "efl_access_object_event_emit");
+    private static  void event_emit(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Object accessible,   System.IntPtr kw_event,   System.IntPtr event_info)
+   {
+      Eina.Log.Debug("function efl_access_object_event_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_kw_event = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(kw_event);
+                                                   
+         try {
+            Widget.EmitEvent( accessible,  _in_kw_event,  event_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_access_object_event_emit_ptr.Value.Delegate( accessible,  kw_event,  event_info);
+      }
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_relationship_append_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_relationship_append_api_delegate(System.IntPtr obj,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationship_append_api_delegate> efl_access_object_relationship_append_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationship_append_api_delegate>(_Module, "efl_access_object_relationship_append");
+    private static bool relationship_append(System.IntPtr obj, System.IntPtr pd,  Efl.Access.RelationType type,  Efl.Access.Object relation_object)
+   {
+      Eina.Log.Debug("function efl_access_object_relationship_append was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).AppendRelationship( type,  relation_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_object_relationship_append_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  relation_object);
+      }
+   }
+   private static efl_access_object_relationship_append_delegate efl_access_object_relationship_append_static_delegate;
+
+
+    private delegate  void efl_access_object_relationship_remove_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+
+
+    public delegate  void efl_access_object_relationship_remove_api_delegate(System.IntPtr obj,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationship_remove_api_delegate> efl_access_object_relationship_remove_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationship_remove_api_delegate>(_Module, "efl_access_object_relationship_remove");
+    private static  void relationship_remove(System.IntPtr obj, System.IntPtr pd,  Efl.Access.RelationType type,  Efl.Access.Object relation_object)
+   {
+      Eina.Log.Debug("function efl_access_object_relationship_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).RelationshipRemove( type,  relation_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_relationship_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  relation_object);
+      }
+   }
+   private static efl_access_object_relationship_remove_delegate efl_access_object_relationship_remove_static_delegate;
+
+
+    private delegate  void efl_access_object_relationships_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_access_object_relationships_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationships_clear_api_delegate> efl_access_object_relationships_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationships_clear_api_delegate>(_Module, "efl_access_object_relationships_clear");
+    private static  void relationships_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_relationships_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).ClearRelationships();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_access_object_relationships_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_relationships_clear_delegate efl_access_object_relationships_clear_static_delegate;
+
+
+    private delegate  void efl_access_object_state_notify_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.StateSet state_types_mask,  [MarshalAs(UnmanagedType.U1)]  bool recursive);
+
+
+    public delegate  void efl_access_object_state_notify_api_delegate(System.IntPtr obj,   Efl.Access.StateSet state_types_mask,  [MarshalAs(UnmanagedType.U1)]  bool recursive);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_state_notify_api_delegate> efl_access_object_state_notify_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_state_notify_api_delegate>(_Module, "efl_access_object_state_notify");
+    private static  void state_notify(System.IntPtr obj, System.IntPtr pd,  Efl.Access.StateSet state_types_mask,  bool recursive)
+   {
+      Eina.Log.Debug("function efl_access_object_state_notify was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).StateNotify( state_types_mask,  recursive);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_state_notify_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  state_types_mask,  recursive);
+      }
+   }
+   private static efl_access_object_state_notify_delegate efl_access_object_state_notify_static_delegate;
+
+
+    private delegate Efl.Access.ActionData efl_access_widget_action_elm_actions_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.ActionData efl_access_widget_action_elm_actions_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_widget_action_elm_actions_get_api_delegate> efl_access_widget_action_elm_actions_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_widget_action_elm_actions_get_api_delegate>(_Module, "efl_access_widget_action_elm_actions_get");
+    private static Efl.Access.ActionData elm_actions_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_widget_action_elm_actions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.ActionData _ret_var = default(Efl.Access.ActionData);
+         try {
+            _ret_var = ((Widget)wrapper).GetElmActions();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_widget_action_elm_actions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_widget_action_elm_actions_get_delegate efl_access_widget_action_elm_actions_get_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drag_start_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format,   Eina.Slice data,   Efl.Ui.SelectionAction action,  IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drag_start_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format,   Eina.Slice data,   Efl.Ui.SelectionAction action,  IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_start_api_delegate> efl_ui_dnd_drag_start_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_start_api_delegate>(_Module, "efl_ui_dnd_drag_start");
+    private static  void drag_start(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format,  Eina.Slice data,  Efl.Ui.SelectionAction action, IntPtr icon_func_data, Efl.Dnd.DragIconCreateInternal icon_func, EinaFreeCb icon_func_free_cb,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drag_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                Efl.Dnd.DragIconCreateWrapper icon_func_wrapper = new Efl.Dnd.DragIconCreateWrapper(icon_func, icon_func_data, icon_func_free_cb);
+               
+         try {
+            ((Widget)wrapper).DragStart( format,  data,  action,  icon_func_wrapper.ManagedCb,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_ui_dnd_drag_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format,  data,  action, icon_func_data, icon_func, icon_func_free_cb,  seat);
+      }
+   }
+   private static efl_ui_dnd_drag_start_delegate efl_ui_dnd_drag_start_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drag_action_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionAction action,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drag_action_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionAction action,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_action_set_api_delegate> efl_ui_dnd_drag_action_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_action_set_api_delegate>(_Module, "efl_ui_dnd_drag_action_set");
+    private static  void drag_action_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionAction action,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drag_action_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetDragAction( action,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_dnd_drag_action_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  action,  seat);
+      }
+   }
+   private static efl_ui_dnd_drag_action_set_delegate efl_ui_dnd_drag_action_set_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drag_cancel_delegate(System.IntPtr obj, System.IntPtr pd,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drag_cancel_api_delegate(System.IntPtr obj,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_cancel_api_delegate> efl_ui_dnd_drag_cancel_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drag_cancel_api_delegate>(_Module, "efl_ui_dnd_drag_cancel");
+    private static  void drag_cancel(System.IntPtr obj, System.IntPtr pd,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drag_cancel was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).DragCancel( seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_dnd_drag_cancel_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat);
+      }
+   }
+   private static efl_ui_dnd_drag_cancel_delegate efl_ui_dnd_drag_cancel_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drop_target_add_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drop_target_add_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_add_api_delegate> efl_ui_dnd_drop_target_add_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_add_api_delegate>(_Module, "efl_ui_dnd_drop_target_add");
+    private static  void drop_target_add(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drop_target_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).AddDropTarget( format,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_dnd_drop_target_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format,  seat);
+      }
+   }
+   private static efl_ui_dnd_drop_target_add_delegate efl_ui_dnd_drop_target_add_static_delegate;
+
+
+    private delegate  void efl_ui_dnd_drop_target_del_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionFormat format,    uint seat);
+
+
+    public delegate  void efl_ui_dnd_drop_target_del_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionFormat format,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_del_api_delegate> efl_ui_dnd_drop_target_del_ptr = new Efl.Eo.FunctionWrapper<efl_ui_dnd_drop_target_del_api_delegate>(_Module, "efl_ui_dnd_drop_target_del");
+    private static  void drop_target_del(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionFormat format,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_dnd_drop_target_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).DelDropTarget( format,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_dnd_drop_target_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  format,  seat);
+      }
+   }
+   private static efl_ui_dnd_drop_target_del_delegate efl_ui_dnd_drop_target_del_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_l10n_text_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_l10n_text_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate> efl_ui_l10n_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_get_api_delegate>(_Module, "efl_ui_l10n_text_get");
+    private static  System.String l10n_text_get(System.IntPtr obj, System.IntPtr pd,  out  System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                      System.String _out_domain = default( System.String);
+                System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Widget)wrapper).GetL10nText( out _out_domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      domain = _out_domain;
+            return _ret_var;
+      } else {
+         return efl_ui_l10n_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out domain);
+      }
+   }
+   private static efl_ui_l10n_text_get_delegate efl_ui_l10n_text_get_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+
+
+    public delegate  void efl_ui_l10n_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate> efl_ui_l10n_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_text_set_api_delegate>(_Module, "efl_ui_l10n_text_set");
+    private static  void l10n_text_set(System.IntPtr obj, System.IntPtr pd,   System.String label,   System.String domain)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).SetL10nText( label,  domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_l10n_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  label,  domain);
+      }
+   }
+   private static efl_ui_l10n_text_set_delegate efl_ui_l10n_text_set_static_delegate;
+
+
+    private delegate  void efl_ui_l10n_translation_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_l10n_translation_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate> efl_ui_l10n_translation_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_l10n_translation_update_api_delegate>(_Module, "efl_ui_l10n_translation_update");
+    private static  void translation_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_l10n_translation_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).UpdateTranslation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_l10n_translation_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_l10n_translation_update_delegate efl_ui_l10n_translation_update_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_ui_selection_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,   Eina.Slice data,    uint seat);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_ui_selection_set_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,   Eina.Slice data,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_set_api_delegate> efl_ui_selection_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_set_api_delegate>(_Module, "efl_ui_selection_set");
+    private static  Eina.Future selection_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format,  Eina.Slice data,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                           Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((Widget)wrapper).SetSelection( type,  format,  data,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_ui_selection_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  format,  data,  seat);
+      }
+   }
+   private static efl_ui_selection_set_delegate efl_ui_selection_set_static_delegate;
+
+
+    private delegate  void efl_ui_selection_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,  IntPtr data_func_data, Efl.Ui.SelectionDataReadyInternal data_func, EinaFreeCb data_func_free_cb,    uint seat);
+
+
+    public delegate  void efl_ui_selection_get_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,   Efl.Ui.SelectionFormat format,  IntPtr data_func_data, Efl.Ui.SelectionDataReadyInternal data_func, EinaFreeCb data_func_free_cb,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_get_api_delegate> efl_ui_selection_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_get_api_delegate>(_Module, "efl_ui_selection_get");
+    private static  void selection_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,  Efl.Ui.SelectionFormat format, IntPtr data_func_data, Efl.Ui.SelectionDataReadyInternal data_func, EinaFreeCb data_func_free_cb,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                              Efl.Ui.SelectionDataReadyWrapper data_func_wrapper = new Efl.Ui.SelectionDataReadyWrapper(data_func, data_func_data, data_func_free_cb);
+               
+         try {
+            ((Widget)wrapper).GetSelection( type,  format,  data_func_wrapper.ManagedCb,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_ui_selection_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  format, data_func_data, data_func, data_func_free_cb,  seat);
+      }
+   }
+   private static efl_ui_selection_get_delegate efl_ui_selection_get_static_delegate;
+
+
+    private delegate  void efl_ui_selection_clear_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,    uint seat);
+
+
+    public delegate  void efl_ui_selection_clear_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_clear_api_delegate> efl_ui_selection_clear_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_clear_api_delegate>(_Module, "efl_ui_selection_clear");
+    private static  void selection_clear(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Widget)wrapper).ClearSelection( type,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_selection_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  seat);
+      }
+   }
+   private static efl_ui_selection_clear_delegate efl_ui_selection_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_selection_has_owner_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.SelectionType type,    uint seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_selection_has_owner_api_delegate(System.IntPtr obj,   Efl.Ui.SelectionType type,    uint seat);
+    public static Efl.Eo.FunctionWrapper<efl_ui_selection_has_owner_api_delegate> efl_ui_selection_has_owner_ptr = new Efl.Eo.FunctionWrapper<efl_ui_selection_has_owner_api_delegate>(_Module, "efl_ui_selection_has_owner");
+    private static bool has_owner(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.SelectionType type,   uint seat)
+   {
+      Eina.Log.Debug("function efl_ui_selection_has_owner was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).HasOwner( type,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_selection_has_owner_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  seat);
+      }
+   }
+   private static efl_ui_selection_has_owner_delegate efl_ui_selection_has_owner_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_ui_focus_object_focus_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_ui_focus_object_focus_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_geometry_get_api_delegate> efl_ui_focus_object_focus_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_geometry_get_api_delegate>(_Module, "efl_ui_focus_object_focus_geometry_get");
+    private static Eina.Rect_StructInternal focus_geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_object_focus_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_geometry_get_delegate efl_ui_focus_object_focus_geometry_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_get_api_delegate> efl_ui_focus_object_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_get_api_delegate>(_Module, "efl_ui_focus_object_focus_get");
+    private static bool focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_get_delegate efl_ui_focus_object_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+
+
+    public delegate  void efl_ui_focus_object_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_set_api_delegate> efl_ui_focus_object_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_set_api_delegate>(_Module, "efl_ui_focus_object_focus_set");
+    private static  void focus_set(System.IntPtr obj, System.IntPtr pd,  bool focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_object_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_object_focus_set_delegate efl_ui_focus_object_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_object_focus_manager_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_object_focus_manager_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_manager_get_api_delegate> efl_ui_focus_object_focus_manager_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_manager_get_api_delegate>(_Module, "efl_ui_focus_object_focus_manager_get");
+    private static Efl.Ui.Focus.Manager focus_manager_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_manager_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusManager();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_manager_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_manager_get_delegate efl_ui_focus_object_focus_manager_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_object_focus_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_object_focus_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_parent_get_api_delegate> efl_ui_focus_object_focus_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_focus_parent_get_api_delegate>(_Module, "efl_ui_focus_object_focus_parent_get");
+    private static Efl.Ui.Focus.Object focus_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_focus_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Widget)wrapper).GetFocusParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_focus_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_focus_parent_get_delegate efl_ui_focus_object_focus_parent_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_child_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_child_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_get_api_delegate> efl_ui_focus_object_child_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_get_api_delegate>(_Module, "efl_ui_focus_object_child_focus_get");
+    private static bool child_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_child_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).GetChildFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_child_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_child_focus_get_delegate efl_ui_focus_object_child_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_child_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool child_focus);
+
+
+    public delegate  void efl_ui_focus_object_child_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool child_focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_set_api_delegate> efl_ui_focus_object_child_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_child_focus_set_api_delegate>(_Module, "efl_ui_focus_object_child_focus_set");
+    private static  void child_focus_set(System.IntPtr obj, System.IntPtr pd,  bool child_focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_child_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Widget)wrapper).SetChildFocus( child_focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_object_child_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child_focus);
+      }
+   }
+   private static efl_ui_focus_object_child_focus_set_delegate efl_ui_focus_object_child_focus_set_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_setup_order_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_object_setup_order_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_api_delegate> efl_ui_focus_object_setup_order_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_api_delegate>(_Module, "efl_ui_focus_object_setup_order");
+    private static  void setup_order(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_setup_order was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).SetupOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_object_setup_order_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_setup_order_delegate efl_ui_focus_object_setup_order_static_delegate;
+
+
+    private delegate  void efl_ui_focus_object_setup_order_non_recursive_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_object_setup_order_non_recursive_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_non_recursive_api_delegate> efl_ui_focus_object_setup_order_non_recursive_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_setup_order_non_recursive_api_delegate>(_Module, "efl_ui_focus_object_setup_order_non_recursive");
+    private static  void setup_order_non_recursive(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_setup_order_non_recursive was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Widget)wrapper).SetupOrderNonRecursive();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_object_setup_order_non_recursive_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_setup_order_non_recursive_delegate efl_ui_focus_object_setup_order_non_recursive_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_object_on_focus_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_object_on_focus_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_object_on_focus_update_api_delegate> efl_ui_focus_object_on_focus_update_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_object_on_focus_update_api_delegate>(_Module, "efl_ui_focus_object_on_focus_update");
+    private static bool on_focus_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_object_on_focus_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Widget)wrapper).UpdateOnFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_object_on_focus_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_object_on_focus_update_delegate efl_ui_focus_object_on_focus_update_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>All relevant fields needed for the current state of focus registeration</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct WidgetFocusState
+{
+   /// <summary>The manager where the widget is registered in</summary>
+   public Efl.Ui.Focus.Manager Manager;
+   /// <summary>The parent the widget is using as logical parent</summary>
+   public Efl.Ui.Focus.Object Parent;
+   /// <summary><c>true</c> if this is registered as logical currently</summary>
+   public bool Logical;
+   ///<summary>Constructor for WidgetFocusState.</summary>
+   public WidgetFocusState(
+      Efl.Ui.Focus.Manager Manager=default(Efl.Ui.Focus.Manager),
+      Efl.Ui.Focus.Object Parent=default(Efl.Ui.Focus.Object),
+      bool Logical=default(bool)   )
+   {
+      this.Manager = Manager;
+      this.Parent = Parent;
+      this.Logical = Logical;
+   }
+public static implicit operator WidgetFocusState(IntPtr ptr)
+   {
+      var tmp = (WidgetFocusState_StructInternal)Marshal.PtrToStructure(ptr, typeof(WidgetFocusState_StructInternal));
+      return WidgetFocusState_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct WidgetFocusState.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct WidgetFocusState_StructInternal
+{
+///<summary>Internal wrapper for field Manager</summary>
+public System.IntPtr Manager;
+///<summary>Internal wrapper for field Parent</summary>
+public System.IntPtr Parent;
+///<summary>Internal wrapper for field Logical</summary>
+public System.Byte Logical;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator WidgetFocusState(WidgetFocusState_StructInternal struct_)
+   {
+      return WidgetFocusState_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator WidgetFocusState_StructInternal(WidgetFocusState struct_)
+   {
+      return WidgetFocusState_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct WidgetFocusState</summary>
+public static class WidgetFocusState_StructConversion
+{
+   internal static WidgetFocusState_StructInternal ToInternal(WidgetFocusState _external_struct)
+   {
+      var _internal_struct = new WidgetFocusState_StructInternal();
+
+      _internal_struct.Manager = _external_struct.Manager.NativeHandle;
+      _internal_struct.Parent = _external_struct.Parent.NativeHandle;
+      _internal_struct.Logical = _external_struct.Logical ? (byte)1 : (byte)0;
+
+      return _internal_struct;
+   }
+
+   internal static WidgetFocusState ToManaged(WidgetFocusState_StructInternal _internal_struct)
+   {
+      var _external_struct = new WidgetFocusState();
+
+
+      _external_struct.Manager = (Efl.Ui.Focus.ManagerConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ManagerConcrete), new System.Object[] {_internal_struct.Manager});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Manager);
+
+
+      _external_struct.Parent = (Efl.Ui.Focus.ObjectConcrete) System.Activator.CreateInstance(typeof(Efl.Ui.Focus.ObjectConcrete), new System.Object[] {_internal_struct.Parent});
+      Efl.Eo.Globals.efl_ref(_internal_struct.Parent);
+
+      _external_struct.Logical = _internal_struct.Logical != 0;
+
+      return _external_struct;
+   }
+
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_widget_factory.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_widget_factory.eo.cs
new file mode 100755 (executable)
index 0000000..27b86e2
--- /dev/null
@@ -0,0 +1,362 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl Ui Factory that provides <see cref="Efl.Ui.Widget"/>.
+/// This factory is designed to build <see cref="Efl.Ui.Widget"/> and optionally set their <see cref="Efl.Ui.Widget.Style"/> if it was connected with <see cref="Efl.Ui.PropertyBind.PropertyBind"/> &quot;<c>style</c>&quot;.</summary>
+[WidgetFactoryNativeInherit]
+public class WidgetFactory : Efl.LoopConsumer, Efl.Eo.IWrapper,Efl.Ui.Factory,Efl.Ui.FactoryBind,Efl.Ui.PropertyBind
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WidgetFactoryNativeInherit nativeInherit = new Efl.Ui.WidgetFactoryNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WidgetFactory))
+            return Efl.Ui.WidgetFactoryNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_widget_factory_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="itemClass">Define the class of the item returned by this factory. See <see cref="Efl.Ui.WidgetFactory.SetItemClass"/></param>
+   public WidgetFactory(Efl.Object parent
+         , Type itemClass = null) :
+      base(efl_ui_widget_factory_class_get(), typeof(WidgetFactory), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(itemClass))
+         SetItemClass(Efl.Eo.Globals.GetParamHelper(itemClass));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WidgetFactory(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected WidgetFactory(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static WidgetFactory static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WidgetFactory(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object CreatedEvtKey = new object();
+   /// <summary>Event triggered when an item has been successfully created.</summary>
+   public event EventHandler<Efl.Ui.FactoryCreatedEvt_Args> CreatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FACTORY_EVENT_CREATED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_CreatedEvt_delegate)) {
+               eventHandlers.AddHandler(CreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FACTORY_EVENT_CREATED";
+            if (remove_cpp_event_handler(key, this.evt_CreatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CreatedEvt.</summary>
+   public void On_CreatedEvt(Efl.Ui.FactoryCreatedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.FactoryCreatedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.FactoryCreatedEvt_Args>)eventHandlers[CreatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CreatedEvt_delegate;
+   private void on_CreatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.FactoryCreatedEvt_Args args = new Efl.Ui.FactoryCreatedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_CreatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_CreatedEvt_delegate = new Efl.EventCb(on_CreatedEvt_NativeCallback);
+   }
+   /// <summary>Define the class of the item returned by this factory.</summary>
+   /// <returns>The class identifier to create item from.</returns>
+   virtual public Type GetItemClass() {
+       var _ret_var = Efl.Ui.WidgetFactoryNativeInherit.efl_ui_widget_factory_item_class_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Define the class of the item returned by this factory.</summary>
+   /// <param name="klass">The class identifier to create item from.</param>
+   /// <returns></returns>
+   virtual public  void SetItemClass( Type klass) {
+                         Efl.Ui.WidgetFactoryNativeInherit.efl_ui_widget_factory_item_class_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), klass);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Create a UI object from the necessary properties in the specified model.</summary>
+   /// <param name="model">Efl model</param>
+   /// <param name="parent">Efl canvas</param>
+   /// <returns>Created UI object</returns>
+   virtual public  Eina.Future Create( Efl.Model model,  Efl.Gfx.Entity parent) {
+                                           var _ret_var = Efl.Ui.FactoryNativeInherit.efl_ui_factory_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), model,  parent);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Release a UI object and disconnect from models.</summary>
+   /// <param name="ui_view">Efl canvas</param>
+   /// <returns></returns>
+   virtual public  void Release( Efl.Gfx.Entity ui_view) {
+                         Efl.Ui.FactoryNativeInherit.efl_ui_factory_release_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ui_view);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>bind the factory with the given key string. when the data is ready or changed, factory create the object and bind the data to the key action and process promised work. Note: the input <see cref="Efl.Ui.Factory"/> need to be <see cref="Efl.Ui.PropertyBind.PropertyBind"/> at least once.</summary>
+   /// <param name="key">Key string for bind model property data</param>
+   /// <param name="factory"><see cref="Efl.Ui.Factory"/> for create and bind model property data</param>
+   /// <returns></returns>
+   virtual public  void FactoryBind(  System.String key,  Efl.Ui.Factory factory) {
+                                           Efl.Ui.FactoryBindNativeInherit.efl_ui_factory_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  factory);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>bind property data with the given key string. when the data is ready or changed, bind the data to the key action and process promised work.</summary>
+   /// <param name="key">key string for bind model property data</param>
+   /// <param name="property">Model property name</param>
+   /// <returns></returns>
+   virtual public  void PropertyBind(  System.String key,   System.String property) {
+                                           Efl.Ui.PropertyBindNativeInherit.efl_ui_property_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  property);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   public System.Threading.Tasks.Task<Eina.Value> CreateAsync( Efl.Model model, Efl.Gfx.Entity parent, System.Threading.CancellationToken token=default(System.Threading.CancellationToken))
+   {
+      Eina.Future future = Create(  model,  parent);
+      return Efl.Eo.Globals.WrapAsync(future, token);
+   }
+   /// <summary>Define the class of the item returned by this factory.</summary>
+/// <value>The class identifier to create item from.</value>
+   public Type ItemClass {
+      get { return GetItemClass(); }
+      set { SetItemClass( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetFactory.efl_ui_widget_factory_class_get();
+   }
+}
+public class WidgetFactoryNativeInherit : Efl.LoopConsumerNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_widget_factory_item_class_get_static_delegate == null)
+      efl_ui_widget_factory_item_class_get_static_delegate = new efl_ui_widget_factory_item_class_get_delegate(item_class_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_factory_item_class_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_factory_item_class_get_static_delegate)});
+      if (efl_ui_widget_factory_item_class_set_static_delegate == null)
+      efl_ui_widget_factory_item_class_set_static_delegate = new efl_ui_widget_factory_item_class_set_delegate(item_class_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_factory_item_class_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_factory_item_class_set_static_delegate)});
+      if (efl_ui_factory_create_static_delegate == null)
+      efl_ui_factory_create_static_delegate = new efl_ui_factory_create_delegate(create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_create_static_delegate)});
+      if (efl_ui_factory_release_static_delegate == null)
+      efl_ui_factory_release_static_delegate = new efl_ui_factory_release_delegate(release);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_release"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_release_static_delegate)});
+      if (efl_ui_factory_bind_static_delegate == null)
+      efl_ui_factory_bind_static_delegate = new efl_ui_factory_bind_delegate(factory_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_factory_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_factory_bind_static_delegate)});
+      if (efl_ui_property_bind_static_delegate == null)
+      efl_ui_property_bind_static_delegate = new efl_ui_property_bind_delegate(property_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_property_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_property_bind_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WidgetFactory.efl_ui_widget_factory_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetFactory.efl_ui_widget_factory_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))] private delegate Type efl_ui_widget_factory_item_class_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))] public delegate Type efl_ui_widget_factory_item_class_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_factory_item_class_get_api_delegate> efl_ui_widget_factory_item_class_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_factory_item_class_get_api_delegate>(_Module, "efl_ui_widget_factory_item_class_get");
+    private static Type item_class_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_widget_factory_item_class_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Type _ret_var = default(Type);
+         try {
+            _ret_var = ((WidgetFactory)wrapper).GetItemClass();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_widget_factory_item_class_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_widget_factory_item_class_get_delegate efl_ui_widget_factory_item_class_get_static_delegate;
+
+
+    private delegate  void efl_ui_widget_factory_item_class_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass);
+
+
+    public delegate  void efl_ui_widget_factory_item_class_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalEflClass))]  Type klass);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_factory_item_class_set_api_delegate> efl_ui_widget_factory_item_class_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_factory_item_class_set_api_delegate>(_Module, "efl_ui_widget_factory_item_class_set");
+    private static  void item_class_set(System.IntPtr obj, System.IntPtr pd,  Type klass)
+   {
+      Eina.Log.Debug("function efl_ui_widget_factory_item_class_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetFactory)wrapper).SetItemClass( klass);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_widget_factory_item_class_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  klass);
+      }
+   }
+   private static efl_ui_widget_factory_item_class_set_delegate efl_ui_widget_factory_item_class_set_static_delegate;
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] private delegate  Eina.Future efl_ui_factory_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity parent);
+
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))] public delegate  Eina.Future efl_ui_factory_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ModelConcrete, Efl.Eo.NonOwnTag>))]  Efl.Model model, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity parent);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_create_api_delegate> efl_ui_factory_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_create_api_delegate>(_Module, "efl_ui_factory_create");
+    private static  Eina.Future create(System.IntPtr obj, System.IntPtr pd,  Efl.Model model,  Efl.Gfx.Entity parent)
+   {
+      Eina.Log.Debug("function efl_ui_factory_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                       Eina.Future _ret_var = default( Eina.Future);
+         try {
+            _ret_var = ((WidgetFactory)wrapper).Create( model,  parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_ui_factory_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  model,  parent);
+      }
+   }
+   private static efl_ui_factory_create_delegate efl_ui_factory_create_static_delegate;
+
+
+    private delegate  void efl_ui_factory_release_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity ui_view);
+
+
+    public delegate  void efl_ui_factory_release_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity ui_view);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_release_api_delegate> efl_ui_factory_release_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_release_api_delegate>(_Module, "efl_ui_factory_release");
+    private static  void release(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity ui_view)
+   {
+      Eina.Log.Debug("function efl_ui_factory_release was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetFactory)wrapper).Release( ui_view);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_factory_release_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ui_view);
+      }
+   }
+   private static efl_ui_factory_release_delegate efl_ui_factory_release_static_delegate;
+
+
+    private delegate  void efl_ui_factory_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+
+
+    public delegate  void efl_ui_factory_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.FactoryConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Factory factory);
+    public static Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate> efl_ui_factory_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_factory_bind_api_delegate>(_Module, "efl_ui_factory_bind");
+    private static  void factory_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Ui.Factory factory)
+   {
+      Eina.Log.Debug("function efl_ui_factory_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((WidgetFactory)wrapper).FactoryBind( key,  factory);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_factory_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  factory);
+      }
+   }
+   private static efl_ui_factory_bind_delegate efl_ui_factory_bind_static_delegate;
+
+
+    private delegate  void efl_ui_property_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    public delegate  void efl_ui_property_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate> efl_ui_property_bind_ptr = new Efl.Eo.FunctionWrapper<efl_ui_property_bind_api_delegate>(_Module, "efl_ui_property_bind");
+    private static  void property_bind(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String property)
+   {
+      Eina.Log.Debug("function efl_ui_property_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((WidgetFactory)wrapper).PropertyBind( key,  property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_property_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  property);
+      }
+   }
+   private static efl_ui_property_bind_delegate efl_ui_property_bind_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_widget_focus_manager.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_widget_focus_manager.eo.cs
new file mode 100755 (executable)
index 0000000..1ca3f75
--- /dev/null
@@ -0,0 +1,1153 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+[WidgetFocusManagerNativeInherit]
+public interface WidgetFocusManager : 
+   Efl.Ui.Focus.Manager ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>If the widget needs a focus manager, this function will be called.
+/// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+/// <param name="root">The logical root object for focus.</param>
+/// <returns>The focus manager.</returns>
+Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root);
+   }
+/// <summary></summary>
+sealed public class WidgetFocusManagerConcrete : 
+
+WidgetFocusManager
+   , Efl.Ui.Focus.Manager
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WidgetFocusManagerConcrete))
+            return Efl.Ui.WidgetFocusManagerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_widget_focus_manager_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WidgetFocusManagerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~WidgetFocusManagerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static WidgetFocusManagerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WidgetFocusManagerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate(this.NativeHandle, focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(this.NativeHandle, redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(this.NativeHandle, _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate(this.NativeHandle, direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate(this.NativeHandle, direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate(this.NativeHandle, child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(this.NativeHandle, direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+}
+public class WidgetFocusManagerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WidgetFocusManagerConcrete.efl_ui_widget_focus_manager_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetFocusManagerConcrete.efl_ui_widget_focus_manager_mixin_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetFocusManagerConcrete)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetFocusManagerConcrete)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((WidgetFocusManagerConcrete)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((WidgetFocusManagerConcrete)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((WidgetFocusManagerConcrete)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((WidgetFocusManagerConcrete)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((WidgetFocusManagerConcrete)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((WidgetFocusManagerConcrete)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_widget_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_widget_part.eo.cs
new file mode 100755 (executable)
index 0000000..a5c5ee3
--- /dev/null
@@ -0,0 +1,92 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>This is the base class for all &quot;Part&quot; handles in Efl.Ui widgets.
+/// Since objects of this type are returned by <see cref="Efl.Part.GetPart"/>, their lifetime is limited to exactly one function call only. Each widget class should expose more specific types for their API-defined parts.</summary>
+[WidgetPartNativeInherit]
+public class WidgetPart : Efl.Object, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WidgetPartNativeInherit nativeInherit = new Efl.Ui.WidgetPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WidgetPart))
+            return Efl.Ui.WidgetPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_widget_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public WidgetPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_widget_part_class_get(), typeof(WidgetPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WidgetPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected WidgetPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static WidgetPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WidgetPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetPart.efl_ui_widget_part_class_get();
+   }
+}
+public class WidgetPartNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WidgetPart.efl_ui_widget_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetPart.efl_ui_widget_part_class_get();
+   }
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_widget_part_bg.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_widget_part_bg.eo.cs
new file mode 100755 (executable)
index 0000000..35d3b5c
--- /dev/null
@@ -0,0 +1,1442 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Elementary widget internal part background class</summary>
+[WidgetPartBgNativeInherit]
+public class WidgetPartBg : Efl.Ui.WidgetPart, Efl.Eo.IWrapper,Efl.File,Efl.Gfx.Color,Efl.Gfx.Image
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WidgetPartBgNativeInherit nativeInherit = new Efl.Ui.WidgetPartBgNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WidgetPartBg))
+            return Efl.Ui.WidgetPartBgNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_widget_part_bg_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public WidgetPartBg(Efl.Object parent= null
+         ) :
+      base(efl_ui_widget_part_bg_class_get(), typeof(WidgetPartBg), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WidgetPartBg(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected WidgetPartBg(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static WidgetPartBg static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WidgetPartBg(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PreloadEvtKey = new object();
+   /// <summary>Image data has been preloaded.</summary>
+   public event EventHandler PreloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PreloadEvt_delegate)) {
+               eventHandlers.AddHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_PRELOAD";
+            if (remove_cpp_event_handler(key, this.evt_PreloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PreloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PreloadEvt.</summary>
+   public void On_PreloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PreloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PreloadEvt_delegate;
+   private void on_PreloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PreloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ResizeEvtKey = new object();
+   /// <summary>Image was resized (its pixel data).</summary>
+   public event EventHandler ResizeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ResizeEvt_delegate)) {
+               eventHandlers.AddHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_RESIZE";
+            if (remove_cpp_event_handler(key, this.evt_ResizeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ResizeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ResizeEvt.</summary>
+   public void On_ResizeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ResizeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ResizeEvt_delegate;
+   private void on_ResizeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ResizeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnloadEvtKey = new object();
+   /// <summary>Image data has been unloaded (by some mechanism in EFL that threw out the original image data).</summary>
+   public event EventHandler UnloadEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_UnloadEvt_delegate)) {
+               eventHandlers.AddHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_IMAGE_EVENT_UNLOAD";
+            if (remove_cpp_event_handler(key, this.evt_UnloadEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnloadEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnloadEvt.</summary>
+   public void On_UnloadEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnloadEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnloadEvt_delegate;
+   private void on_UnloadEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnloadEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PreloadEvt_delegate = new Efl.EventCb(on_PreloadEvt_NativeCallback);
+      evt_ResizeEvt_delegate = new Efl.EventCb(on_ResizeEvt_NativeCallback);
+      evt_UnloadEvt_delegate = new Efl.EventCb(on_UnloadEvt_NativeCallback);
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieves the general/main color of the given Evas object.
+   /// Retrieves the main color&apos;s RGB component (and alpha channel) values, which range from 0 to 255. For the alpha channel, which defines the object&apos;s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.
+   /// 
+   /// Usually youll use this attribute for text and rectangle objects, where the main color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.
+   /// 
+   /// All newly created Evas rectangles get the default color values of 255 255 255 255 (opaque white).
+   /// 
+   /// Use null pointers on the components you&apos;re not interested in: they&apos;ll be ignored by the function.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void GetColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets the general/main color of the given Evas object to the given one.
+   /// See also <see cref="Efl.Gfx.Color.GetColor"/> (for an example)
+   /// 
+   /// These color values are expected to be premultiplied by alpha.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void SetColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+   /// <returns>the hex color code.</returns>
+   virtual public  System.String GetColorCode() {
+       var _ret_var = Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the color of given Evas object to the given hex color code(#RRGGBBAA). e.g. efl_gfx_color_code_set(obj, &quot;#FFCCAACC&quot;);</summary>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns></returns>
+   virtual public  void SetColorCode(  System.String colorcode) {
+                         Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <returns>Whether to use smooth scale or not.</returns>
+   virtual public bool GetSmoothScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+   /// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+   /// 
+   /// <c>true</c> by default</summary>
+   /// <param name="smooth_scale">Whether to use smooth scale or not.</param>
+   /// <returns></returns>
+   virtual public  void SetSmoothScale( bool smooth_scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_smooth_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), smooth_scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <returns>Image scale type</returns>
+   virtual public Efl.Gfx.ImageScaleType GetScaleType() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control how the image is scaled.</summary>
+   /// <param name="scale_type">Image scale type</param>
+   /// <returns></returns>
+   virtual public  void SetScaleType( Efl.Gfx.ImageScaleType scale_type) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale_type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Returns 1.0 if not applicable (eg. height = 0).</summary>
+   /// <returns>The image&apos;s ratio.</returns>
+   virtual public double GetRatio() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_ratio_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void GetBorder( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Dimensions of this image&apos;s border, a region that does not scale with the center area.
+   /// When EFL renders an image, its source may be scaled to fit the size of the object. This function sets an area from the borders of the image inwards which is not to be scaled. This function is useful for making frames and for widget theming, where, for example, buttons may be of varying sizes, but their border size must remain constant.
+   /// 
+   /// The units used for <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> are canvas units (pixels).
+   /// 
+   /// Note: The border region itself may be scaled by the <see cref="Efl.Gfx.Image.SetBorderScale"/> function.
+   /// 
+   /// Note: By default, image objects have no borders set, i.e. <c>l</c>, <c>r</c>, <c>t</c> and <c>b</c> start as 0.
+   /// 
+   /// Note: Similar to the concepts of 9-patch images or cap insets.</summary>
+   /// <param name="l">The border&apos;s left width.</param>
+   /// <param name="r">The border&apos;s right width.</param>
+   /// <param name="t">The border&apos;s top height.</param>
+   /// <param name="b">The border&apos;s bottom height.</param>
+   /// <returns></returns>
+   virtual public  void SetBorder(  int l,   int r,   int t,   int b) {
+                                                                               Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l,  r,  t,  b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <returns>The scale factor.</returns>
+   virtual public double GetBorderScale() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Scaling factor applied to the image borders.
+   /// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+   /// 
+   /// Default value is 1.0 (no scaling).</summary>
+   /// <param name="scale">The scale factor.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderScale( double scale) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <returns>Fill mode of the center region.</returns>
+   virtual public Efl.Gfx.BorderFillMode GetBorderCenterFill() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+   /// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+   /// 
+   /// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+   /// <param name="fill">Fill mode of the center region.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderCenterFill( Efl.Gfx.BorderFillMode fill) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_border_center_fill_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fill);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This represents the size of the original image in pixels.
+   /// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+   /// 
+   /// This is a read-only property, and may return 0x0.
+   /// 1.20</summary>
+   /// <returns>The size in pixels.</returns>
+   virtual public Eina.Size2D GetImageSize() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+   /// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+   /// <returns>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></returns>
+   virtual public Efl.Gfx.ImageContentHint GetContentHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the content hint setting of a given image object of the canvas.
+   /// This function sets the content hint value of the given image of the canvas. For example, if you&apos;re on the GL engine and your driver implementation supports it, setting this hint to #EVAS_IMAGE_CONTENT_HINT_DYNAMIC will make it need zero copies at texture upload time, which is an &quot;expensive&quot; operation.</summary>
+   /// <param name="hint">Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetContentHint( Efl.Gfx.ImageContentHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_content_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+   /// This function returns the scale hint value of the given image object of the canvas.</summary>
+   /// <returns>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></returns>
+   virtual public Efl.Gfx.ImageScaleHint GetScaleHint() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the scale hint of a given image of the canvas.
+   /// This function sets the scale hint value of the given image object in the canvas, which will affect how Evas is to cache scaled versions of its original source image.</summary>
+   /// <param name="hint">Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></param>
+   /// <returns></returns>
+   virtual public  void SetScaleHint( Efl.Gfx.ImageScaleHint hint) {
+                         Efl.Gfx.ImageNativeInherit.efl_gfx_image_scale_hint_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hint);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+   /// <returns>The load error code.</returns>
+   virtual public Efl.Gfx.ImageLoadError GetImageLoadError() {
+       var _ret_var = Efl.Gfx.ImageNativeInherit.efl_gfx_image_load_error_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <value>the hex color code.</value>
+   public  System.String ColorCode {
+      get { return GetColorCode(); }
+      set { SetColorCode( value); }
+   }
+   /// <summary>Whether to use high-quality image scaling algorithm for this image.
+/// When enabled, a higher quality image scaling algorithm is used when scaling images to sizes other than the source image&apos;s original one. This gives better results but is more computationally expensive.
+/// 
+/// <c>true</c> by default</summary>
+/// <value>Whether to use smooth scale or not.</value>
+   public bool SmoothScale {
+      get { return GetSmoothScale(); }
+      set { SetSmoothScale( value); }
+   }
+   /// <summary>Control how the image is scaled.</summary>
+/// <value>Image scale type</value>
+   public Efl.Gfx.ImageScaleType ScaleType {
+      get { return GetScaleType(); }
+      set { SetScaleType( value); }
+   }
+   /// <summary>The native width/height ratio of the image.</summary>
+/// <value>The image&apos;s ratio.</value>
+   public double Ratio {
+      get { return GetRatio(); }
+   }
+   /// <summary>Scaling factor applied to the image borders.
+/// This value multiplies the size of the <see cref="Efl.Gfx.Image.GetBorder"/> when scaling an object.
+/// 
+/// Default value is 1.0 (no scaling).</summary>
+/// <value>The scale factor.</value>
+   public double BorderScale {
+      get { return GetBorderScale(); }
+      set { SetBorderScale( value); }
+   }
+   /// <summary>Specifies how the center part of the object (not the borders) should be drawn when EFL is rendering it.
+/// This function sets how the center part of the image object&apos;s source image is to be drawn, which must be one of the values in <see cref="Efl.Gfx.BorderFillMode"/>. By center we mean the complementary part of that defined by <see cref="Efl.Gfx.Image.GetBorder"/>. This is very useful for making frames and decorations. You would most probably also be using a filled image (as in <see cref="Efl.Gfx.Fill.FillAuto"/>) to use as a frame.
+/// 
+/// The default value is <see cref="Efl.Gfx.BorderFillMode.Default"/>, ie. render and scale the center area, respecting its transparency.</summary>
+/// <value>Fill mode of the center region.</value>
+   public Efl.Gfx.BorderFillMode BorderCenterFill {
+      get { return GetBorderCenterFill(); }
+      set { SetBorderCenterFill( value); }
+   }
+   /// <summary>This represents the size of the original image in pixels.
+/// This may be different from the actual geometry on screen or even the size of the loaded pixel buffer. This is the size of the image as stored in the original file.
+/// 
+/// This is a read-only property, and may return 0x0.
+/// 1.20</summary>
+/// <value>The size in pixels.</value>
+   public Eina.Size2D ImageSize {
+      get { return GetImageSize(); }
+   }
+   /// <summary>Get the content hint setting of a given image object of the canvas.
+/// This returns #EVAS_IMAGE_CONTENT_HINT_NONE on error.</summary>
+/// <value>Dynamic or static content hint, see <see cref="Efl.Gfx.ImageContentHint"/></value>
+   public Efl.Gfx.ImageContentHint ContentHint {
+      get { return GetContentHint(); }
+      set { SetContentHint( value); }
+   }
+   /// <summary>Get the scale hint of a given image of the canvas.
+/// This function returns the scale hint value of the given image object of the canvas.</summary>
+/// <value>Scalable or static size hint, see <see cref="Efl.Gfx.ImageScaleHint"/></value>
+   public Efl.Gfx.ImageScaleHint ScaleHint {
+      get { return GetScaleHint(); }
+      set { SetScaleHint( value); }
+   }
+   /// <summary>Gets the (last) file loading error for a given object.</summary>
+/// <value>The load error code.</value>
+   public Efl.Gfx.ImageLoadError ImageLoadError {
+      get { return GetImageLoadError(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetPartBg.efl_ui_widget_part_bg_class_get();
+   }
+}
+public class WidgetPartBgNativeInherit : Efl.Ui.WidgetPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_gfx_color_get_static_delegate == null)
+      efl_gfx_color_get_static_delegate = new efl_gfx_color_get_delegate(color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_get_static_delegate)});
+      if (efl_gfx_color_set_static_delegate == null)
+      efl_gfx_color_set_static_delegate = new efl_gfx_color_set_delegate(color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_set_static_delegate)});
+      if (efl_gfx_color_code_get_static_delegate == null)
+      efl_gfx_color_code_get_static_delegate = new efl_gfx_color_code_get_delegate(color_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_get_static_delegate)});
+      if (efl_gfx_color_code_set_static_delegate == null)
+      efl_gfx_color_code_set_static_delegate = new efl_gfx_color_code_set_delegate(color_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_set_static_delegate)});
+      if (efl_gfx_image_smooth_scale_get_static_delegate == null)
+      efl_gfx_image_smooth_scale_get_static_delegate = new efl_gfx_image_smooth_scale_get_delegate(smooth_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_get_static_delegate)});
+      if (efl_gfx_image_smooth_scale_set_static_delegate == null)
+      efl_gfx_image_smooth_scale_set_static_delegate = new efl_gfx_image_smooth_scale_set_delegate(smooth_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_smooth_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_smooth_scale_set_static_delegate)});
+      if (efl_gfx_image_scale_type_get_static_delegate == null)
+      efl_gfx_image_scale_type_get_static_delegate = new efl_gfx_image_scale_type_get_delegate(scale_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_get_static_delegate)});
+      if (efl_gfx_image_scale_type_set_static_delegate == null)
+      efl_gfx_image_scale_type_set_static_delegate = new efl_gfx_image_scale_type_set_delegate(scale_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_type_set_static_delegate)});
+      if (efl_gfx_image_ratio_get_static_delegate == null)
+      efl_gfx_image_ratio_get_static_delegate = new efl_gfx_image_ratio_get_delegate(ratio_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_ratio_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_ratio_get_static_delegate)});
+      if (efl_gfx_image_border_get_static_delegate == null)
+      efl_gfx_image_border_get_static_delegate = new efl_gfx_image_border_get_delegate(border_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_get_static_delegate)});
+      if (efl_gfx_image_border_set_static_delegate == null)
+      efl_gfx_image_border_set_static_delegate = new efl_gfx_image_border_set_delegate(border_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_set_static_delegate)});
+      if (efl_gfx_image_border_scale_get_static_delegate == null)
+      efl_gfx_image_border_scale_get_static_delegate = new efl_gfx_image_border_scale_get_delegate(border_scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_get_static_delegate)});
+      if (efl_gfx_image_border_scale_set_static_delegate == null)
+      efl_gfx_image_border_scale_set_static_delegate = new efl_gfx_image_border_scale_set_delegate(border_scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_scale_set_static_delegate)});
+      if (efl_gfx_image_border_center_fill_get_static_delegate == null)
+      efl_gfx_image_border_center_fill_get_static_delegate = new efl_gfx_image_border_center_fill_get_delegate(border_center_fill_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_get_static_delegate)});
+      if (efl_gfx_image_border_center_fill_set_static_delegate == null)
+      efl_gfx_image_border_center_fill_set_static_delegate = new efl_gfx_image_border_center_fill_set_delegate(border_center_fill_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_border_center_fill_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_border_center_fill_set_static_delegate)});
+      if (efl_gfx_image_size_get_static_delegate == null)
+      efl_gfx_image_size_get_static_delegate = new efl_gfx_image_size_get_delegate(image_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_size_get_static_delegate)});
+      if (efl_gfx_image_content_hint_get_static_delegate == null)
+      efl_gfx_image_content_hint_get_static_delegate = new efl_gfx_image_content_hint_get_delegate(content_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_get_static_delegate)});
+      if (efl_gfx_image_content_hint_set_static_delegate == null)
+      efl_gfx_image_content_hint_set_static_delegate = new efl_gfx_image_content_hint_set_delegate(content_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_content_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_content_hint_set_static_delegate)});
+      if (efl_gfx_image_scale_hint_get_static_delegate == null)
+      efl_gfx_image_scale_hint_get_static_delegate = new efl_gfx_image_scale_hint_get_delegate(scale_hint_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_get_static_delegate)});
+      if (efl_gfx_image_scale_hint_set_static_delegate == null)
+      efl_gfx_image_scale_hint_set_static_delegate = new efl_gfx_image_scale_hint_set_delegate(scale_hint_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_scale_hint_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_scale_hint_set_static_delegate)});
+      if (efl_gfx_image_load_error_get_static_delegate == null)
+      efl_gfx_image_load_error_get_static_delegate = new efl_gfx_image_load_error_get_delegate(image_load_error_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_image_load_error_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_image_load_error_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WidgetPartBg.efl_ui_widget_part_bg_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetPartBg.efl_ui_widget_part_bg_class_get();
+   }
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((WidgetPartBg)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    private delegate  void efl_gfx_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate> efl_gfx_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate>(_Module, "efl_gfx_color_get");
+    private static  void color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((WidgetPartBg)wrapper).GetColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_get_delegate efl_gfx_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate> efl_gfx_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate>(_Module, "efl_gfx_color_set");
+    private static  void color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((WidgetPartBg)wrapper).SetColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_set_delegate efl_gfx_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate> efl_gfx_color_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate>(_Module, "efl_gfx_color_code_get");
+    private static  System.String color_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetColorCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_color_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_code_get_delegate efl_gfx_color_code_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    public delegate  void efl_gfx_color_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate> efl_gfx_color_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate>(_Module, "efl_gfx_color_code_set");
+    private static  void color_code_set(System.IntPtr obj, System.IntPtr pd,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetColorCode( colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  colorcode);
+      }
+   }
+   private static efl_gfx_color_code_set_delegate efl_gfx_color_code_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_image_smooth_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_image_smooth_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate> efl_gfx_image_smooth_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_get_api_delegate>(_Module, "efl_gfx_image_smooth_scale_get");
+    private static bool smooth_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetSmoothScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_smooth_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_smooth_scale_get_delegate efl_gfx_image_smooth_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_smooth_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+
+
+    public delegate  void efl_gfx_image_smooth_scale_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool smooth_scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate> efl_gfx_image_smooth_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_smooth_scale_set_api_delegate>(_Module, "efl_gfx_image_smooth_scale_set");
+    private static  void smooth_scale_set(System.IntPtr obj, System.IntPtr pd,  bool smooth_scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_smooth_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetSmoothScale( smooth_scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_smooth_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  smooth_scale);
+      }
+   }
+   private static efl_gfx_image_smooth_scale_set_delegate efl_gfx_image_smooth_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleType efl_gfx_image_scale_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate> efl_gfx_image_scale_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_get_api_delegate>(_Module, "efl_gfx_image_scale_type_get");
+    private static Efl.Gfx.ImageScaleType scale_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleType _ret_var = default(Efl.Gfx.ImageScaleType);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetScaleType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_type_get_delegate efl_gfx_image_scale_type_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleType scale_type);
+
+
+    public delegate  void efl_gfx_image_scale_type_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleType scale_type);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate> efl_gfx_image_scale_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_type_set_api_delegate>(_Module, "efl_gfx_image_scale_type_set");
+    private static  void scale_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleType scale_type)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetScaleType( scale_type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale_type);
+      }
+   }
+   private static efl_gfx_image_scale_type_set_delegate efl_gfx_image_scale_type_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_ratio_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_ratio_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate> efl_gfx_image_ratio_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_ratio_get_api_delegate>(_Module, "efl_gfx_image_ratio_get");
+    private static double ratio_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_ratio_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetRatio();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_ratio_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_ratio_get_delegate efl_gfx_image_ratio_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_image_border_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate> efl_gfx_image_border_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_get_api_delegate>(_Module, "efl_gfx_image_border_get");
+    private static  void border_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((WidgetPartBg)wrapper).GetBorder( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_image_border_get_delegate efl_gfx_image_border_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_set_delegate(System.IntPtr obj, System.IntPtr pd,    int l,    int r,    int t,    int b);
+
+
+    public delegate  void efl_gfx_image_border_set_api_delegate(System.IntPtr obj,    int l,    int r,    int t,    int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate> efl_gfx_image_border_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_set_api_delegate>(_Module, "efl_gfx_image_border_set");
+    private static  void border_set(System.IntPtr obj, System.IntPtr pd,   int l,   int r,   int t,   int b)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((WidgetPartBg)wrapper).SetBorder( l,  r,  t,  b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_image_border_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l,  r,  t,  b);
+      }
+   }
+   private static efl_gfx_image_border_set_delegate efl_gfx_image_border_set_static_delegate;
+
+
+    private delegate double efl_gfx_image_border_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_image_border_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate> efl_gfx_image_border_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_get_api_delegate>(_Module, "efl_gfx_image_border_scale_get");
+    private static double border_scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetBorderScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_scale_get_delegate efl_gfx_image_border_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_image_border_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate> efl_gfx_image_border_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_scale_set_api_delegate>(_Module, "efl_gfx_image_border_scale_set");
+    private static  void border_scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetBorderScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_image_border_scale_set_delegate efl_gfx_image_border_scale_set_static_delegate;
+
+
+    private delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.BorderFillMode efl_gfx_image_border_center_fill_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate> efl_gfx_image_border_center_fill_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_get_api_delegate>(_Module, "efl_gfx_image_border_center_fill_get");
+    private static Efl.Gfx.BorderFillMode border_center_fill_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.BorderFillMode _ret_var = default(Efl.Gfx.BorderFillMode);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetBorderCenterFill();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_border_center_fill_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_border_center_fill_get_delegate efl_gfx_image_border_center_fill_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_border_center_fill_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.BorderFillMode fill);
+
+
+    public delegate  void efl_gfx_image_border_center_fill_set_api_delegate(System.IntPtr obj,   Efl.Gfx.BorderFillMode fill);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate> efl_gfx_image_border_center_fill_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_border_center_fill_set_api_delegate>(_Module, "efl_gfx_image_border_center_fill_set");
+    private static  void border_center_fill_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.BorderFillMode fill)
+   {
+      Eina.Log.Debug("function efl_gfx_image_border_center_fill_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetBorderCenterFill( fill);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_border_center_fill_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fill);
+      }
+   }
+   private static efl_gfx_image_border_center_fill_set_delegate efl_gfx_image_border_center_fill_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_image_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate> efl_gfx_image_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_size_get_api_delegate>(_Module, "efl_gfx_image_size_get");
+    private static Eina.Size2D_StructInternal image_size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetImageSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_image_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_size_get_delegate efl_gfx_image_size_get_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageContentHint efl_gfx_image_content_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate> efl_gfx_image_content_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_get_api_delegate>(_Module, "efl_gfx_image_content_hint_get");
+    private static Efl.Gfx.ImageContentHint content_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageContentHint _ret_var = default(Efl.Gfx.ImageContentHint);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetContentHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_content_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_content_hint_get_delegate efl_gfx_image_content_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_content_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageContentHint hint);
+
+
+    public delegate  void efl_gfx_image_content_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageContentHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate> efl_gfx_image_content_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_content_hint_set_api_delegate>(_Module, "efl_gfx_image_content_hint_set");
+    private static  void content_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageContentHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_content_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetContentHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_content_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_content_hint_set_delegate efl_gfx_image_content_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageScaleHint efl_gfx_image_scale_hint_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate> efl_gfx_image_scale_hint_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_get_api_delegate>(_Module, "efl_gfx_image_scale_hint_get");
+    private static Efl.Gfx.ImageScaleHint scale_hint_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageScaleHint _ret_var = default(Efl.Gfx.ImageScaleHint);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetScaleHint();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_scale_hint_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_scale_hint_get_delegate efl_gfx_image_scale_hint_get_static_delegate;
+
+
+    private delegate  void efl_gfx_image_scale_hint_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Gfx.ImageScaleHint hint);
+
+
+    public delegate  void efl_gfx_image_scale_hint_set_api_delegate(System.IntPtr obj,   Efl.Gfx.ImageScaleHint hint);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate> efl_gfx_image_scale_hint_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_scale_hint_set_api_delegate>(_Module, "efl_gfx_image_scale_hint_set");
+    private static  void scale_hint_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.ImageScaleHint hint)
+   {
+      Eina.Log.Debug("function efl_gfx_image_scale_hint_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartBg)wrapper).SetScaleHint( hint);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_image_scale_hint_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hint);
+      }
+   }
+   private static efl_gfx_image_scale_hint_set_delegate efl_gfx_image_scale_hint_set_static_delegate;
+
+
+    private delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Gfx.ImageLoadError efl_gfx_image_load_error_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate> efl_gfx_image_load_error_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_image_load_error_get_api_delegate>(_Module, "efl_gfx_image_load_error_get");
+    private static Efl.Gfx.ImageLoadError image_load_error_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_image_load_error_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.ImageLoadError _ret_var = default(Efl.Gfx.ImageLoadError);
+         try {
+            _ret_var = ((WidgetPartBg)wrapper).GetImageLoadError();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_image_load_error_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_image_load_error_get_delegate efl_gfx_image_load_error_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_widget_part_shadow.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_widget_part_shadow.eo.cs
new file mode 100755 (executable)
index 0000000..64e0cb6
--- /dev/null
@@ -0,0 +1,875 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>A drop-shadow or glow effect around any widget.
+/// A simple drop-shadow effect can be applied to any widget by setting the color and blur radius on this part.
+/// 
+/// For instance, a blue glow can be achieved with: obj.shadow().color_set(0, 128, 255, 255); obj.shadow().grow_set(2); obj.shadow().radius_set(3, 3);
+/// 
+/// As another example, here&apos;s a black drop-shadow: obj.shadow().color_set(0, 0, 0, 255); obj.shadow().grow_set(1); obj.shadow().radius_set(5, 5); obj.shadow().offset_set(5, 5);
+/// 
+/// It is also possible to manually specify which <see cref="Efl.Gfx.Filter"/> program to use.</summary>
+[WidgetPartShadowNativeInherit]
+public class WidgetPartShadow : Efl.Ui.WidgetPart, Efl.Eo.IWrapper,Efl.Gfx.Blur,Efl.Gfx.Color,Efl.Gfx.Filter
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WidgetPartShadowNativeInherit nativeInherit = new Efl.Ui.WidgetPartShadowNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WidgetPartShadow))
+            return Efl.Ui.WidgetPartShadowNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_widget_part_shadow_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public WidgetPartShadow(Efl.Object parent= null
+         ) :
+      base(efl_ui_widget_part_shadow_class_get(), typeof(WidgetPartShadow), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WidgetPartShadow(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected WidgetPartShadow(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static WidgetPartShadow static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WidgetPartShadow(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>The blur radius in pixels.</summary>
+   /// <param name="rx">The horizontal blur radius.</param>
+   /// <param name="ry">The vertical blur radius.</param>
+   /// <returns></returns>
+   virtual public  void GetRadius( out double rx,  out double ry) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_radius_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out rx,  out ry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>The blur radius in pixels.</summary>
+   /// <param name="rx">The horizontal blur radius.</param>
+   /// <param name="ry">The vertical blur radius.</param>
+   /// <returns></returns>
+   virtual public  void SetRadius( double rx,  double ry) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_radius_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), rx,  ry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>An offset relative to the original pixels.
+   /// This property allows for drop shadow effects.</summary>
+   /// <param name="ox">Horizontal offset in pixels.</param>
+   /// <param name="oy">Vertical offset in pixels.</param>
+   /// <returns></returns>
+   virtual public  void GetOffset( out double ox,  out double oy) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_offset_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out ox,  out oy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>An offset relative to the original pixels.
+   /// This property allows for drop shadow effects.</summary>
+   /// <param name="ox">Horizontal offset in pixels.</param>
+   /// <param name="oy">Vertical offset in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetOffset( double ox,  double oy) {
+                                           Efl.Gfx.BlurNativeInherit.efl_gfx_blur_offset_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), ox,  oy);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+   /// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+   /// 
+   /// This is can be used efficiently to create glow effects.</summary>
+   /// <returns>How much to grow the original pixel data.</returns>
+   virtual public double GetGrow() {
+       var _ret_var = Efl.Gfx.BlurNativeInherit.efl_gfx_blur_grow_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+   /// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+   /// 
+   /// This is can be used efficiently to create glow effects.</summary>
+   /// <param name="radius">How much to grow the original pixel data.</param>
+   /// <returns></returns>
+   virtual public  void SetGrow( double radius) {
+                         Efl.Gfx.BlurNativeInherit.efl_gfx_blur_grow_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), radius);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the general/main color of the given Evas object.
+   /// Retrieves the main color&apos;s RGB component (and alpha channel) values, which range from 0 to 255. For the alpha channel, which defines the object&apos;s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.
+   /// 
+   /// Usually youll use this attribute for text and rectangle objects, where the main color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.
+   /// 
+   /// All newly created Evas rectangles get the default color values of 255 255 255 255 (opaque white).
+   /// 
+   /// Use null pointers on the components you&apos;re not interested in: they&apos;ll be ignored by the function.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void GetColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets the general/main color of the given Evas object to the given one.
+   /// See also <see cref="Efl.Gfx.Color.GetColor"/> (for an example)
+   /// 
+   /// These color values are expected to be premultiplied by alpha.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void SetColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+   /// <returns>the hex color code.</returns>
+   virtual public  System.String GetColorCode() {
+       var _ret_var = Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the color of given Evas object to the given hex color code(#RRGGBBAA). e.g. efl_gfx_color_code_set(obj, &quot;#FFCCAACC&quot;);</summary>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns></returns>
+   virtual public  void SetColorCode(  System.String colorcode) {
+                         Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets the code of the filter program set on this object. May be <c>null</c>.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterProgram( out  System.String code,  out  System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out code,  out name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set a graphical filter program on this object.
+   /// Valid for Text and Image objects at the moment.
+   /// 
+   /// The argument passed to this function is a string containing a valid Lua program based on the filters API as described in the &quot;EFL Graphics Filters&quot; reference page.
+   /// 
+   /// Set to <c>null</c> to disable filtering.
+   /// 1.18</summary>
+   /// <param name="code">The Lua program source code.
+   /// 1.18</param>
+   /// <param name="name">An optional name for this filter.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterProgram(  System.String code,   System.String name) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_program_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), code,  name);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterState( out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Set the current state of the filter.
+   /// This should be used by Edje (EFL&apos;s internal layout engine), but could also be used when implementing animations programmatically.
+   /// 
+   /// A full state is defined by two states (name + value): origin state and target state of an ongoing animation, as well as the <c>pos</c> progress (from 0 to 1) of that animation timeline. The second state can be omitted if there is no ongoing animation.
+   /// 1.18</summary>
+   /// <param name="cur_state">Current state of the filter
+   /// 1.18</param>
+   /// <param name="cur_val">Current value
+   /// 1.18</param>
+   /// <param name="next_state">Next filter state, optional
+   /// 1.18</param>
+   /// <param name="next_val">Next value, optional
+   /// 1.18</param>
+   /// <param name="pos">Position, optional
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterState(  System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos) {
+                                                                                                 Efl.Gfx.FilterNativeInherit.efl_gfx_filter_state_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cur_state,  cur_val,  next_state,  next_val,  pos);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                   }
+   /// <summary>Gets the padding required to apply this filter.
+   /// 1.18</summary>
+   /// <param name="l">Padding on the left
+   /// 1.18</param>
+   /// <param name="r">Padding on the right
+   /// 1.18</param>
+   /// <param name="t">Padding on the top
+   /// 1.18</param>
+   /// <param name="b">Padding on the bottom
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterPadding( out  int l,  out  int r,  out  int t,  out  int b) {
+                                                                               Efl.Gfx.FilterNativeInherit.efl_gfx_filter_padding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out l,  out r,  out t,  out b);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <returns>Object to use as a source of pixels.
+   /// 1.18</returns>
+   virtual public Efl.Gfx.Entity GetFilterSource(  System.String name) {
+                         var _ret_var = Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Bind an object to use as a mask or texture in a filter program.
+   /// This will create automatically a new RGBA buffer containing the source object&apos;s pixels (as it is rendered).
+   /// 1.18</summary>
+   /// <param name="name">Buffer name as used in the program.
+   /// 1.18</param>
+   /// <param name="source">Object to use as a source of pixels.
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterSource(  System.String name,  Efl.Gfx.Entity source) {
+                                           Efl.Gfx.FilterNativeInherit.efl_gfx_filter_source_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void GetFilterData(  System.String name,  out  System.String value,  out bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  out value,  out execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Extra data used by the filter program.
+   /// Each data element is a string (<c>value</c>) stored as a global variable <c>name</c>. The program is then responsible for conversion to numbers, tables, etc...
+   /// 
+   /// If the <c>execute</c> flag is set, then the <c>value</c> can be complex and run, as if the original Lua program contained a line &apos;name = value&apos;. This can be used to pass in tables.
+   /// 1.18</summary>
+   /// <param name="name">Name of the global variable
+   /// 1.18</param>
+   /// <param name="value">String value to use as data
+   /// 1.18</param>
+   /// <param name="execute">If <c>true</c>, execute &apos;name = value&apos;
+   /// 1.18</param>
+   /// <returns></returns>
+   virtual public  void SetFilterData(  System.String name,   System.String value,  bool execute) {
+                                                             Efl.Gfx.FilterNativeInherit.efl_gfx_filter_data_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  value,  execute);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>How much the original image should be &quot;grown&quot; before blurring.
+/// Growing is a combination of blur &amp; color levels adjustment. If the value of grow is positive, the pixels will appear more &quot;fat&quot; or &quot;bold&quot; than the original. If the value is negative, a shrink effect happens instead.
+/// 
+/// This is can be used efficiently to create glow effects.</summary>
+/// <value>How much to grow the original pixel data.</value>
+   public double Grow {
+      get { return GetGrow(); }
+      set { SetGrow( value); }
+   }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <value>the hex color code.</value>
+   public  System.String ColorCode {
+      get { return GetColorCode(); }
+      set { SetColorCode( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetPartShadow.efl_ui_widget_part_shadow_class_get();
+   }
+}
+public class WidgetPartShadowNativeInherit : Efl.Ui.WidgetPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_gfx_blur_radius_get_static_delegate == null)
+      efl_gfx_blur_radius_get_static_delegate = new efl_gfx_blur_radius_get_delegate(radius_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_radius_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_radius_get_static_delegate)});
+      if (efl_gfx_blur_radius_set_static_delegate == null)
+      efl_gfx_blur_radius_set_static_delegate = new efl_gfx_blur_radius_set_delegate(radius_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_radius_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_radius_set_static_delegate)});
+      if (efl_gfx_blur_offset_get_static_delegate == null)
+      efl_gfx_blur_offset_get_static_delegate = new efl_gfx_blur_offset_get_delegate(offset_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_offset_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_offset_get_static_delegate)});
+      if (efl_gfx_blur_offset_set_static_delegate == null)
+      efl_gfx_blur_offset_set_static_delegate = new efl_gfx_blur_offset_set_delegate(offset_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_offset_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_offset_set_static_delegate)});
+      if (efl_gfx_blur_grow_get_static_delegate == null)
+      efl_gfx_blur_grow_get_static_delegate = new efl_gfx_blur_grow_get_delegate(grow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_grow_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_grow_get_static_delegate)});
+      if (efl_gfx_blur_grow_set_static_delegate == null)
+      efl_gfx_blur_grow_set_static_delegate = new efl_gfx_blur_grow_set_delegate(grow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_blur_grow_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_blur_grow_set_static_delegate)});
+      if (efl_gfx_color_get_static_delegate == null)
+      efl_gfx_color_get_static_delegate = new efl_gfx_color_get_delegate(color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_get_static_delegate)});
+      if (efl_gfx_color_set_static_delegate == null)
+      efl_gfx_color_set_static_delegate = new efl_gfx_color_set_delegate(color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_set_static_delegate)});
+      if (efl_gfx_color_code_get_static_delegate == null)
+      efl_gfx_color_code_get_static_delegate = new efl_gfx_color_code_get_delegate(color_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_get_static_delegate)});
+      if (efl_gfx_color_code_set_static_delegate == null)
+      efl_gfx_color_code_set_static_delegate = new efl_gfx_color_code_set_delegate(color_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_set_static_delegate)});
+      if (efl_gfx_filter_program_get_static_delegate == null)
+      efl_gfx_filter_program_get_static_delegate = new efl_gfx_filter_program_get_delegate(filter_program_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_get_static_delegate)});
+      if (efl_gfx_filter_program_set_static_delegate == null)
+      efl_gfx_filter_program_set_static_delegate = new efl_gfx_filter_program_set_delegate(filter_program_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_program_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_program_set_static_delegate)});
+      if (efl_gfx_filter_state_get_static_delegate == null)
+      efl_gfx_filter_state_get_static_delegate = new efl_gfx_filter_state_get_delegate(filter_state_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_get_static_delegate)});
+      if (efl_gfx_filter_state_set_static_delegate == null)
+      efl_gfx_filter_state_set_static_delegate = new efl_gfx_filter_state_set_delegate(filter_state_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_state_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_state_set_static_delegate)});
+      if (efl_gfx_filter_padding_get_static_delegate == null)
+      efl_gfx_filter_padding_get_static_delegate = new efl_gfx_filter_padding_get_delegate(filter_padding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_padding_get_static_delegate)});
+      if (efl_gfx_filter_source_get_static_delegate == null)
+      efl_gfx_filter_source_get_static_delegate = new efl_gfx_filter_source_get_delegate(filter_source_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_get_static_delegate)});
+      if (efl_gfx_filter_source_set_static_delegate == null)
+      efl_gfx_filter_source_set_static_delegate = new efl_gfx_filter_source_set_delegate(filter_source_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_source_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_source_set_static_delegate)});
+      if (efl_gfx_filter_data_get_static_delegate == null)
+      efl_gfx_filter_data_get_static_delegate = new efl_gfx_filter_data_get_delegate(filter_data_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_get_static_delegate)});
+      if (efl_gfx_filter_data_set_static_delegate == null)
+      efl_gfx_filter_data_set_static_delegate = new efl_gfx_filter_data_set_delegate(filter_data_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_filter_data_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_filter_data_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WidgetPartShadow.efl_ui_widget_part_shadow_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WidgetPartShadow.efl_ui_widget_part_shadow_class_get();
+   }
+
+
+    private delegate  void efl_gfx_blur_radius_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double rx,   out double ry);
+
+
+    public delegate  void efl_gfx_blur_radius_get_api_delegate(System.IntPtr obj,   out double rx,   out double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_get_api_delegate> efl_gfx_blur_radius_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_get_api_delegate>(_Module, "efl_gfx_blur_radius_get");
+    private static  void radius_get(System.IntPtr obj, System.IntPtr pd,  out double rx,  out double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_radius_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           rx = default(double);      ry = default(double);                     
+         try {
+            ((WidgetPartShadow)wrapper).GetRadius( out rx,  out ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_radius_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out rx,  out ry);
+      }
+   }
+   private static efl_gfx_blur_radius_get_delegate efl_gfx_blur_radius_get_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_radius_set_delegate(System.IntPtr obj, System.IntPtr pd,   double rx,   double ry);
+
+
+    public delegate  void efl_gfx_blur_radius_set_api_delegate(System.IntPtr obj,   double rx,   double ry);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_set_api_delegate> efl_gfx_blur_radius_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_radius_set_api_delegate>(_Module, "efl_gfx_blur_radius_set");
+    private static  void radius_set(System.IntPtr obj, System.IntPtr pd,  double rx,  double ry)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_radius_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((WidgetPartShadow)wrapper).SetRadius( rx,  ry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_radius_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rx,  ry);
+      }
+   }
+   private static efl_gfx_blur_radius_set_delegate efl_gfx_blur_radius_set_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_offset_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double ox,   out double oy);
+
+
+    public delegate  void efl_gfx_blur_offset_get_api_delegate(System.IntPtr obj,   out double ox,   out double oy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_get_api_delegate> efl_gfx_blur_offset_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_get_api_delegate>(_Module, "efl_gfx_blur_offset_get");
+    private static  void offset_get(System.IntPtr obj, System.IntPtr pd,  out double ox,  out double oy)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_offset_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           ox = default(double);      oy = default(double);                     
+         try {
+            ((WidgetPartShadow)wrapper).GetOffset( out ox,  out oy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_offset_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out ox,  out oy);
+      }
+   }
+   private static efl_gfx_blur_offset_get_delegate efl_gfx_blur_offset_get_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_offset_set_delegate(System.IntPtr obj, System.IntPtr pd,   double ox,   double oy);
+
+
+    public delegate  void efl_gfx_blur_offset_set_api_delegate(System.IntPtr obj,   double ox,   double oy);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_set_api_delegate> efl_gfx_blur_offset_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_offset_set_api_delegate>(_Module, "efl_gfx_blur_offset_set");
+    private static  void offset_set(System.IntPtr obj, System.IntPtr pd,  double ox,  double oy)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_offset_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((WidgetPartShadow)wrapper).SetOffset( ox,  oy);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_blur_offset_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  ox,  oy);
+      }
+   }
+   private static efl_gfx_blur_offset_set_delegate efl_gfx_blur_offset_set_static_delegate;
+
+
+    private delegate double efl_gfx_blur_grow_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_blur_grow_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_get_api_delegate> efl_gfx_blur_grow_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_get_api_delegate>(_Module, "efl_gfx_blur_grow_get");
+    private static double grow_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_grow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((WidgetPartShadow)wrapper).GetGrow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_blur_grow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_blur_grow_get_delegate efl_gfx_blur_grow_get_static_delegate;
+
+
+    private delegate  void efl_gfx_blur_grow_set_delegate(System.IntPtr obj, System.IntPtr pd,   double radius);
+
+
+    public delegate  void efl_gfx_blur_grow_set_api_delegate(System.IntPtr obj,   double radius);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_set_api_delegate> efl_gfx_blur_grow_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_blur_grow_set_api_delegate>(_Module, "efl_gfx_blur_grow_set");
+    private static  void grow_set(System.IntPtr obj, System.IntPtr pd,  double radius)
+   {
+      Eina.Log.Debug("function efl_gfx_blur_grow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartShadow)wrapper).SetGrow( radius);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_blur_grow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  radius);
+      }
+   }
+   private static efl_gfx_blur_grow_set_delegate efl_gfx_blur_grow_set_static_delegate;
+
+
+    private delegate  void efl_gfx_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate> efl_gfx_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate>(_Module, "efl_gfx_color_get");
+    private static  void color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((WidgetPartShadow)wrapper).GetColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_get_delegate efl_gfx_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate> efl_gfx_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate>(_Module, "efl_gfx_color_set");
+    private static  void color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((WidgetPartShadow)wrapper).SetColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_set_delegate efl_gfx_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate> efl_gfx_color_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate>(_Module, "efl_gfx_color_code_get");
+    private static  System.String color_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((WidgetPartShadow)wrapper).GetColorCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_color_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_code_get_delegate efl_gfx_color_code_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    public delegate  void efl_gfx_color_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate> efl_gfx_color_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate>(_Module, "efl_gfx_color_code_set");
+    private static  void color_code_set(System.IntPtr obj, System.IntPtr pd,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WidgetPartShadow)wrapper).SetColorCode( colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  colorcode);
+      }
+   }
+   private static efl_gfx_color_code_set_delegate efl_gfx_color_code_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_program_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate> efl_gfx_filter_program_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_get_api_delegate>(_Module, "efl_gfx_filter_program_get");
+    private static  void filter_program_get(System.IntPtr obj, System.IntPtr pd,  out  System.String code,  out  System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                            System.String _out_code = default( System.String);
+       System.String _out_name = default( System.String);
+                     
+         try {
+            ((WidgetPartShadow)wrapper).GetFilterProgram( out _out_code,  out _out_name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      code = _out_code;
+      name = _out_name;
+                        } else {
+         efl_gfx_filter_program_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out code,  out name);
+      }
+   }
+   private static efl_gfx_filter_program_get_delegate efl_gfx_filter_program_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_program_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate  void efl_gfx_filter_program_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String code,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate> efl_gfx_filter_program_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_program_set_api_delegate>(_Module, "efl_gfx_filter_program_set");
+    private static  void filter_program_set(System.IntPtr obj, System.IntPtr pd,   System.String code,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_program_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((WidgetPartShadow)wrapper).SetFilterProgram( code,  name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_program_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  code,  name);
+      }
+   }
+   private static efl_gfx_filter_program_set_delegate efl_gfx_filter_program_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+
+
+    public delegate  void efl_gfx_filter_state_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String cur_state,   out double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String next_state,   out double next_val,   out double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate> efl_gfx_filter_state_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_get_api_delegate>(_Module, "efl_gfx_filter_state_get");
+    private static  void filter_state_get(System.IntPtr obj, System.IntPtr pd,  out  System.String cur_state,  out double cur_val,  out  System.String next_state,  out double next_val,  out double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                              System.String _out_cur_state = default( System.String);
+      cur_val = default(double);       System.String _out_next_state = default( System.String);
+      next_val = default(double);      pos = default(double);                                       
+         try {
+            ((WidgetPartShadow)wrapper).GetFilterState( out _out_cur_state,  out cur_val,  out _out_next_state,  out next_val,  out pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      cur_state = _out_cur_state;
+            next_state = _out_next_state;
+                                                      } else {
+         efl_gfx_filter_state_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out cur_state,  out cur_val,  out next_state,  out next_val,  out pos);
+      }
+   }
+   private static efl_gfx_filter_state_get_delegate efl_gfx_filter_state_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_state_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+
+
+    public delegate  void efl_gfx_filter_state_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cur_state,   double cur_val,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String next_state,   double next_val,   double pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate> efl_gfx_filter_state_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_state_set_api_delegate>(_Module, "efl_gfx_filter_state_set");
+    private static  void filter_state_set(System.IntPtr obj, System.IntPtr pd,   System.String cur_state,  double cur_val,   System.String next_state,  double next_val,  double pos)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_state_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            
+         try {
+            ((WidgetPartShadow)wrapper).SetFilterState( cur_state,  cur_val,  next_state,  next_val,  pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                        } else {
+         efl_gfx_filter_state_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cur_state,  cur_val,  next_state,  next_val,  pos);
+      }
+   }
+   private static efl_gfx_filter_state_set_delegate efl_gfx_filter_state_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_padding_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int l,   out  int r,   out  int t,   out  int b);
+
+
+    public delegate  void efl_gfx_filter_padding_get_api_delegate(System.IntPtr obj,   out  int l,   out  int r,   out  int t,   out  int b);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate> efl_gfx_filter_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_padding_get_api_delegate>(_Module, "efl_gfx_filter_padding_get");
+    private static  void filter_padding_get(System.IntPtr obj, System.IntPtr pd,  out  int l,  out  int r,  out  int t,  out  int b)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_padding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       l = default( int);      r = default( int);      t = default( int);      b = default( int);                                 
+         try {
+            ((WidgetPartShadow)wrapper).GetFilterPadding( out l,  out r,  out t,  out b);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_filter_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out l,  out r,  out t,  out b);
+      }
+   }
+   private static efl_gfx_filter_padding_get_delegate efl_gfx_filter_padding_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_gfx_filter_source_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_gfx_filter_source_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate> efl_gfx_filter_source_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_get_api_delegate>(_Module, "efl_gfx_filter_source_get");
+    private static Efl.Gfx.Entity filter_source_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((WidgetPartShadow)wrapper).GetFilterSource( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_gfx_filter_source_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_gfx_filter_source_get_delegate efl_gfx_filter_source_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_source_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+
+
+    public delegate  void efl_gfx_filter_source_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity source);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate> efl_gfx_filter_source_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_source_set_api_delegate>(_Module, "efl_gfx_filter_source_set");
+    private static  void filter_source_set(System.IntPtr obj, System.IntPtr pd,   System.String name,  Efl.Gfx.Entity source)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_source_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((WidgetPartShadow)wrapper).SetFilterSource( name,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_gfx_filter_source_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  source);
+      }
+   }
+   private static efl_gfx_filter_source_set_delegate efl_gfx_filter_source_set_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]  out  System.String value,  [MarshalAs(UnmanagedType.U1)]  out bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate> efl_gfx_filter_data_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_get_api_delegate>(_Module, "efl_gfx_filter_data_get");
+    private static  void filter_data_get(System.IntPtr obj, System.IntPtr pd,   System.String name,  out  System.String value,  out bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                        System.String _out_value = default( System.String);
+      execute = default(bool);                           
+         try {
+            ((WidgetPartShadow)wrapper).GetFilterData( name,  out _out_value,  out execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            value = _out_value;
+                                    } else {
+         efl_gfx_filter_data_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  out value,  out execute);
+      }
+   }
+   private static efl_gfx_filter_data_get_delegate efl_gfx_filter_data_get_static_delegate;
+
+
+    private delegate  void efl_gfx_filter_data_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+
+
+    public delegate  void efl_gfx_filter_data_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value,  [MarshalAs(UnmanagedType.U1)]  bool execute);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate> efl_gfx_filter_data_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_filter_data_set_api_delegate>(_Module, "efl_gfx_filter_data_set");
+    private static  void filter_data_set(System.IntPtr obj, System.IntPtr pd,   System.String name,   System.String value,  bool execute)
+   {
+      Eina.Log.Debug("function efl_gfx_filter_data_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((WidgetPartShadow)wrapper).SetFilterData( name,  value,  execute);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_gfx_filter_data_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  value,  execute);
+      }
+   }
+   private static efl_gfx_filter_data_set_delegate efl_gfx_filter_data_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_win.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_win.eo.cs
new file mode 100755 (executable)
index 0000000..19cc6e7
--- /dev/null
@@ -0,0 +1,6566 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI window class</summary>
+[WinNativeInherit]
+public class Win : Efl.Ui.Widget, Efl.Eo.IWrapper,Efl.Config,Efl.Content,Efl.Screen,Efl.Text,Efl.Access.Window,Efl.Canvas.Scene,Efl.Input.State,Efl.Ui.WidgetFocusManager,Efl.Ui.Focus.Manager,Efl.Ui.Focus.ManagerWindowRoot
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WinNativeInherit nativeInherit = new Efl.Ui.WinNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Win))
+            return Efl.Ui.WinNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_win_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="winName">The window name. See <see cref="Efl.Ui.Win.SetWinName"/></param>
+   ///<param name="winType">The type of the window. See <see cref="Efl.Ui.Win.SetWinType"/></param>
+   ///<param name="accelPreference">The hardware acceleration preference for this window. See <see cref="Efl.Ui.Win.SetAccelPreference"/></param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   public Win(Efl.Object parent
+         ,  System.String winName = null, Efl.Ui.WinType? winType = null,  System.String accelPreference = null,  System.String style = null) :
+      base(efl_ui_win_class_get(), typeof(Win), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(winName))
+         SetWinName(Efl.Eo.Globals.GetParamHelper(winName));
+      if (Efl.Eo.Globals.ParamHelperCheck(winType))
+         SetWinType(Efl.Eo.Globals.GetParamHelper(winType));
+      if (Efl.Eo.Globals.ParamHelperCheck(accelPreference))
+         SetAccelPreference(Efl.Eo.Globals.GetParamHelper(accelPreference));
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Win(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Win(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Win static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Win(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object DeleteRequestEvtKey = new object();
+   /// <summary>Called when the window receives a delete request</summary>
+   public event EventHandler DeleteRequestEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_DELETE_REQUEST";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_DeleteRequestEvt_delegate)) {
+               eventHandlers.AddHandler(DeleteRequestEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_DELETE_REQUEST";
+            if (remove_cpp_event_handler(key, this.evt_DeleteRequestEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeleteRequestEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeleteRequestEvt.</summary>
+   public void On_DeleteRequestEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[DeleteRequestEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeleteRequestEvt_delegate;
+   private void on_DeleteRequestEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_DeleteRequestEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WithdrawnEvtKey = new object();
+   /// <summary>Called when window is withdrawn</summary>
+   public event EventHandler WithdrawnEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_WITHDRAWN";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WithdrawnEvt_delegate)) {
+               eventHandlers.AddHandler(WithdrawnEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_WITHDRAWN";
+            if (remove_cpp_event_handler(key, this.evt_WithdrawnEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WithdrawnEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WithdrawnEvt.</summary>
+   public void On_WithdrawnEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WithdrawnEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WithdrawnEvt_delegate;
+   private void on_WithdrawnEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WithdrawnEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MinimizedEvtKey = new object();
+   /// <summary>Called when window is minimized</summary>
+   public event EventHandler MinimizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_MINIMIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_MinimizedEvt_delegate)) {
+               eventHandlers.AddHandler(MinimizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_MINIMIZED";
+            if (remove_cpp_event_handler(key, this.evt_MinimizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MinimizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MinimizedEvt.</summary>
+   public void On_MinimizedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[MinimizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MinimizedEvt_delegate;
+   private void on_MinimizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_MinimizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object NormalEvtKey = new object();
+   /// <summary>Called when window is set to normal state</summary>
+   public event EventHandler NormalEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_NORMAL";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_NormalEvt_delegate)) {
+               eventHandlers.AddHandler(NormalEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_NORMAL";
+            if (remove_cpp_event_handler(key, this.evt_NormalEvt_delegate)) { 
+               eventHandlers.RemoveHandler(NormalEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event NormalEvt.</summary>
+   public void On_NormalEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[NormalEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_NormalEvt_delegate;
+   private void on_NormalEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_NormalEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StickEvtKey = new object();
+   /// <summary>Called when window is set as sticky</summary>
+   public event EventHandler StickEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_STICK";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_StickEvt_delegate)) {
+               eventHandlers.AddHandler(StickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_STICK";
+            if (remove_cpp_event_handler(key, this.evt_StickEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StickEvt.</summary>
+   public void On_StickEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StickEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StickEvt_delegate;
+   private void on_StickEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StickEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnstickEvtKey = new object();
+   /// <summary>Called when window is no  longer set as sticky</summary>
+   public event EventHandler UnstickEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_UNSTICK";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_UnstickEvt_delegate)) {
+               eventHandlers.AddHandler(UnstickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_UNSTICK";
+            if (remove_cpp_event_handler(key, this.evt_UnstickEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnstickEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnstickEvt.</summary>
+   public void On_UnstickEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnstickEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnstickEvt_delegate;
+   private void on_UnstickEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnstickEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FullscreenEvtKey = new object();
+   /// <summary>Called when window is set to fullscreen</summary>
+   public event EventHandler FullscreenEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_FULLSCREEN";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FullscreenEvt_delegate)) {
+               eventHandlers.AddHandler(FullscreenEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_FULLSCREEN";
+            if (remove_cpp_event_handler(key, this.evt_FullscreenEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FullscreenEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FullscreenEvt.</summary>
+   public void On_FullscreenEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FullscreenEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FullscreenEvt_delegate;
+   private void on_FullscreenEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FullscreenEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnfullscreenEvtKey = new object();
+   /// <summary>Called when window is no longer set to fullscreen</summary>
+   public event EventHandler UnfullscreenEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_UNFULLSCREEN";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_UnfullscreenEvt_delegate)) {
+               eventHandlers.AddHandler(UnfullscreenEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_UNFULLSCREEN";
+            if (remove_cpp_event_handler(key, this.evt_UnfullscreenEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnfullscreenEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnfullscreenEvt.</summary>
+   public void On_UnfullscreenEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnfullscreenEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnfullscreenEvt_delegate;
+   private void on_UnfullscreenEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnfullscreenEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MaximizedEvtKey = new object();
+   /// <summary>Called when window is set to maximized</summary>
+   public event EventHandler MaximizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_MAXIMIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_MaximizedEvt_delegate)) {
+               eventHandlers.AddHandler(MaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_MAXIMIZED";
+            if (remove_cpp_event_handler(key, this.evt_MaximizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MaximizedEvt.</summary>
+   public void On_MaximizedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[MaximizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MaximizedEvt_delegate;
+   private void on_MaximizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_MaximizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object UnmaximizedEvtKey = new object();
+   /// <summary>Called when window is no longer set to maximized</summary>
+   public event EventHandler UnmaximizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_UNMAXIMIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_UnmaximizedEvt_delegate)) {
+               eventHandlers.AddHandler(UnmaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_UNMAXIMIZED";
+            if (remove_cpp_event_handler(key, this.evt_UnmaximizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(UnmaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event UnmaximizedEvt.</summary>
+   public void On_UnmaximizedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[UnmaximizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_UnmaximizedEvt_delegate;
+   private void on_UnmaximizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_UnmaximizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object IndicatorPropChangedEvtKey = new object();
+   /// <summary>Called when indicator is property changed</summary>
+   public event EventHandler IndicatorPropChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_INDICATOR_PROP_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_IndicatorPropChangedEvt_delegate)) {
+               eventHandlers.AddHandler(IndicatorPropChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_INDICATOR_PROP_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_IndicatorPropChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(IndicatorPropChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event IndicatorPropChangedEvt.</summary>
+   public void On_IndicatorPropChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[IndicatorPropChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_IndicatorPropChangedEvt_delegate;
+   private void on_IndicatorPropChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_IndicatorPropChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RotationChangedEvtKey = new object();
+   /// <summary>Called when window rotation is changed</summary>
+   public event EventHandler RotationChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_ROTATION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RotationChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RotationChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_ROTATION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RotationChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RotationChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RotationChangedEvt.</summary>
+   public void On_RotationChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RotationChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RotationChangedEvt_delegate;
+   private void on_RotationChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RotationChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ProfileChangedEvtKey = new object();
+   /// <summary>Called when profile is changed</summary>
+   public event EventHandler ProfileChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_PROFILE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ProfileChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ProfileChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_PROFILE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ProfileChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ProfileChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ProfileChangedEvt.</summary>
+   public void On_ProfileChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ProfileChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ProfileChangedEvt_delegate;
+   private void on_ProfileChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ProfileChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WmRotationChangedEvtKey = new object();
+   /// <summary>Called when window manager rotation is changed</summary>
+   public event EventHandler WmRotationChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_WM_ROTATION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WmRotationChangedEvt_delegate)) {
+               eventHandlers.AddHandler(WmRotationChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_WM_ROTATION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_WmRotationChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WmRotationChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WmRotationChangedEvt.</summary>
+   public void On_WmRotationChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WmRotationChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WmRotationChangedEvt_delegate;
+   private void on_WmRotationChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WmRotationChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ThemeChangedEvtKey = new object();
+   /// <summary>Called when theme is changed</summary>
+   public event EventHandler ThemeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_THEME_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ThemeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ThemeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_THEME_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ThemeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ThemeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ThemeChangedEvt.</summary>
+   public void On_ThemeChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ThemeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ThemeChangedEvt_delegate;
+   private void on_ThemeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ThemeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ElmActionBlock_menuEvtKey = new object();
+   /// <summary>Called when elementary block menu action occurs</summary>
+   public event EventHandler ElmActionBlock_menuEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_ELM_ACTION_BLOCK_MENU";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ElmActionBlock_menuEvt_delegate)) {
+               eventHandlers.AddHandler(ElmActionBlock_menuEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_ELM_ACTION_BLOCK_MENU";
+            if (remove_cpp_event_handler(key, this.evt_ElmActionBlock_menuEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ElmActionBlock_menuEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ElmActionBlock_menuEvt.</summary>
+   public void On_ElmActionBlock_menuEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ElmActionBlock_menuEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ElmActionBlock_menuEvt_delegate;
+   private void on_ElmActionBlock_menuEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ElmActionBlock_menuEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PauseEvtKey = new object();
+   /// <summary>Called when the window is not going be displayed for some time</summary>
+   public event EventHandler PauseEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_PAUSE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PauseEvt_delegate)) {
+               eventHandlers.AddHandler(PauseEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_PAUSE";
+            if (remove_cpp_event_handler(key, this.evt_PauseEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PauseEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PauseEvt.</summary>
+   public void On_PauseEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[PauseEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PauseEvt_delegate;
+   private void on_PauseEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_PauseEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ResumeEvtKey = new object();
+   /// <summary>Called before a window is rendered after a pause event</summary>
+   public event EventHandler ResumeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_RESUME";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ResumeEvt_delegate)) {
+               eventHandlers.AddHandler(ResumeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_WIN_EVENT_RESUME";
+            if (remove_cpp_event_handler(key, this.evt_ResumeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ResumeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ResumeEvt.</summary>
+   public void On_ResumeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ResumeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ResumeEvt_delegate;
+   private void on_ResumeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ResumeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowCreatedEvtKey = new object();
+   /// <summary>Called when new window has been created.</summary>
+   public event EventHandler WindowCreatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_CREATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowCreatedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowCreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_CREATED";
+            if (remove_cpp_event_handler(key, this.evt_WindowCreatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowCreatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowCreatedEvt.</summary>
+   public void On_WindowCreatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowCreatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowCreatedEvt_delegate;
+   private void on_WindowCreatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowCreatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowDestroyedEvtKey = new object();
+   /// <summary>Called when window has been destroyed.</summary>
+   public event EventHandler WindowDestroyedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DESTROYED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowDestroyedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowDestroyedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DESTROYED";
+            if (remove_cpp_event_handler(key, this.evt_WindowDestroyedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowDestroyedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowDestroyedEvt.</summary>
+   public void On_WindowDestroyedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowDestroyedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowDestroyedEvt_delegate;
+   private void on_WindowDestroyedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowDestroyedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowActivatedEvtKey = new object();
+   /// <summary>Called when window has been activated. (focused)</summary>
+   public event EventHandler WindowActivatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_ACTIVATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowActivatedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowActivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_ACTIVATED";
+            if (remove_cpp_event_handler(key, this.evt_WindowActivatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowActivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowActivatedEvt.</summary>
+   public void On_WindowActivatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowActivatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowActivatedEvt_delegate;
+   private void on_WindowActivatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowActivatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowDeactivatedEvtKey = new object();
+   /// <summary>Called when window has been deactivated (unfocused).</summary>
+   public event EventHandler WindowDeactivatedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DEACTIVATED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowDeactivatedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowDeactivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_DEACTIVATED";
+            if (remove_cpp_event_handler(key, this.evt_WindowDeactivatedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowDeactivatedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowDeactivatedEvt.</summary>
+   public void On_WindowDeactivatedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowDeactivatedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowDeactivatedEvt_delegate;
+   private void on_WindowDeactivatedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowDeactivatedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowMaximizedEvtKey = new object();
+   /// <summary>Called when window has been maximized</summary>
+   public event EventHandler WindowMaximizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MAXIMIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowMaximizedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowMaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MAXIMIZED";
+            if (remove_cpp_event_handler(key, this.evt_WindowMaximizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowMaximizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowMaximizedEvt.</summary>
+   public void On_WindowMaximizedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowMaximizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowMaximizedEvt_delegate;
+   private void on_WindowMaximizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowMaximizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowMinimizedEvtKey = new object();
+   /// <summary>Called when window has been minimized</summary>
+   public event EventHandler WindowMinimizedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MINIMIZED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowMinimizedEvt_delegate)) {
+               eventHandlers.AddHandler(WindowMinimizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_MINIMIZED";
+            if (remove_cpp_event_handler(key, this.evt_WindowMinimizedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowMinimizedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowMinimizedEvt.</summary>
+   public void On_WindowMinimizedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowMinimizedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowMinimizedEvt_delegate;
+   private void on_WindowMinimizedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowMinimizedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object WindowRestoredEvtKey = new object();
+   /// <summary>Called when window has been restored</summary>
+   public event EventHandler WindowRestoredEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_RESTORED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_WindowRestoredEvt_delegate)) {
+               eventHandlers.AddHandler(WindowRestoredEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WINDOW_EVENT_WINDOW_RESTORED";
+            if (remove_cpp_event_handler(key, this.evt_WindowRestoredEvt_delegate)) { 
+               eventHandlers.RemoveHandler(WindowRestoredEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event WindowRestoredEvt.</summary>
+   public void On_WindowRestoredEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[WindowRestoredEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_WindowRestoredEvt_delegate;
+   private void on_WindowRestoredEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_WindowRestoredEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Canvas_Scene_FocusInEvtKey = new object();
+   /// <summary>Called when canvas got focus</summary>
+    event EventHandler<Efl.Canvas.SceneFocusInEvt_Args> Efl.Canvas.Scene.FocusInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_IN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Canvas_Scene_FocusInEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Canvas_Scene_FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_IN";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Canvas_Scene_FocusInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Canvas_Scene_FocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Canvas_Scene_FocusInEvt.</summary>
+   public void On_Efl_Canvas_Scene_FocusInEvt(Efl.Canvas.SceneFocusInEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneFocusInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneFocusInEvt_Args>)eventHandlers[Efl_Canvas_Scene_FocusInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Canvas_Scene_FocusInEvt_delegate;
+   private void on_Efl_Canvas_Scene_FocusInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneFocusInEvt_Args args = new Efl.Canvas.SceneFocusInEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_Efl_Canvas_Scene_FocusInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Efl_Canvas_Scene_FocusOutEvtKey = new object();
+   /// <summary>Called when canvas lost focus</summary>
+    event EventHandler<Efl.Canvas.SceneFocusOutEvt_Args> Efl.Canvas.Scene.FocusOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_OUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_Efl_Canvas_Scene_FocusOutEvt_delegate)) {
+               eventHandlers.AddHandler(Efl_Canvas_Scene_FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_FOCUS_OUT";
+            if (remove_cpp_event_handler(key, this.evt_Efl_Canvas_Scene_FocusOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Efl_Canvas_Scene_FocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Efl_Canvas_Scene_FocusOutEvt.</summary>
+   public void On_Efl_Canvas_Scene_FocusOutEvt(Efl.Canvas.SceneFocusOutEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneFocusOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneFocusOutEvt_Args>)eventHandlers[Efl_Canvas_Scene_FocusOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Efl_Canvas_Scene_FocusOutEvt_delegate;
+   private void on_Efl_Canvas_Scene_FocusOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneFocusOutEvt_Args args = new Efl.Canvas.SceneFocusOutEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_Efl_Canvas_Scene_FocusOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ObjectFocusInEvtKey = new object();
+   /// <summary>Called when object got focus</summary>
+   public event EventHandler<Efl.Canvas.SceneObjectFocusInEvt_Args> ObjectFocusInEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_IN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ObjectFocusInEvt_delegate)) {
+               eventHandlers.AddHandler(ObjectFocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_IN";
+            if (remove_cpp_event_handler(key, this.evt_ObjectFocusInEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ObjectFocusInEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ObjectFocusInEvt.</summary>
+   public void On_ObjectFocusInEvt(Efl.Canvas.SceneObjectFocusInEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneObjectFocusInEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneObjectFocusInEvt_Args>)eventHandlers[ObjectFocusInEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ObjectFocusInEvt_delegate;
+   private void on_ObjectFocusInEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneObjectFocusInEvt_Args args = new Efl.Canvas.SceneObjectFocusInEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_ObjectFocusInEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ObjectFocusOutEvtKey = new object();
+   /// <summary>Called when object lost focus</summary>
+   public event EventHandler<Efl.Canvas.SceneObjectFocusOutEvt_Args> ObjectFocusOutEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_OUT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ObjectFocusOutEvt_delegate)) {
+               eventHandlers.AddHandler(ObjectFocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_OBJECT_FOCUS_OUT";
+            if (remove_cpp_event_handler(key, this.evt_ObjectFocusOutEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ObjectFocusOutEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ObjectFocusOutEvt.</summary>
+   public void On_ObjectFocusOutEvt(Efl.Canvas.SceneObjectFocusOutEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneObjectFocusOutEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneObjectFocusOutEvt_Args>)eventHandlers[ObjectFocusOutEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ObjectFocusOutEvt_delegate;
+   private void on_ObjectFocusOutEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneObjectFocusOutEvt_Args args = new Efl.Canvas.SceneObjectFocusOutEvt_Args();
+      args.arg = new Efl.Input.Focus(evt.Info);
+      try {
+         On_ObjectFocusOutEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RenderPreEvtKey = new object();
+   /// <summary>Called when pre render happens</summary>
+   public event EventHandler RenderPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_PRE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RenderPreEvt_delegate)) {
+               eventHandlers.AddHandler(RenderPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_PRE";
+            if (remove_cpp_event_handler(key, this.evt_RenderPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RenderPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RenderPreEvt.</summary>
+   public void On_RenderPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RenderPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RenderPreEvt_delegate;
+   private void on_RenderPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RenderPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RenderPostEvtKey = new object();
+   /// <summary>Called when post render happens</summary>
+   public event EventHandler<Efl.Canvas.SceneRenderPostEvt_Args> RenderPostEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_POST";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_RenderPostEvt_delegate)) {
+               eventHandlers.AddHandler(RenderPostEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_RENDER_POST";
+            if (remove_cpp_event_handler(key, this.evt_RenderPostEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RenderPostEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RenderPostEvt.</summary>
+   public void On_RenderPostEvt(Efl.Canvas.SceneRenderPostEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneRenderPostEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneRenderPostEvt_Args>)eventHandlers[RenderPostEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RenderPostEvt_delegate;
+   private void on_RenderPostEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneRenderPostEvt_Args args = new Efl.Canvas.SceneRenderPostEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_RenderPostEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DeviceChangedEvtKey = new object();
+   /// <summary>Called when input device changed</summary>
+   public event EventHandler<Efl.Canvas.SceneDeviceChangedEvt_Args> DeviceChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DeviceChangedEvt_delegate)) {
+               eventHandlers.AddHandler(DeviceChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_DeviceChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeviceChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeviceChangedEvt.</summary>
+   public void On_DeviceChangedEvt(Efl.Canvas.SceneDeviceChangedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneDeviceChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneDeviceChangedEvt_Args>)eventHandlers[DeviceChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeviceChangedEvt_delegate;
+   private void on_DeviceChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneDeviceChangedEvt_Args args = new Efl.Canvas.SceneDeviceChangedEvt_Args();
+      args.arg = new Efl.Input.Device(evt.Info);
+      try {
+         On_DeviceChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DeviceAddedEvtKey = new object();
+   /// <summary>Called when input device was added</summary>
+   public event EventHandler<Efl.Canvas.SceneDeviceAddedEvt_Args> DeviceAddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DeviceAddedEvt_delegate)) {
+               eventHandlers.AddHandler(DeviceAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_DeviceAddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeviceAddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeviceAddedEvt.</summary>
+   public void On_DeviceAddedEvt(Efl.Canvas.SceneDeviceAddedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneDeviceAddedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneDeviceAddedEvt_Args>)eventHandlers[DeviceAddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeviceAddedEvt_delegate;
+   private void on_DeviceAddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneDeviceAddedEvt_Args args = new Efl.Canvas.SceneDeviceAddedEvt_Args();
+      args.arg = new Efl.Input.Device(evt.Info);
+      try {
+         On_DeviceAddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object DeviceRemovedEvtKey = new object();
+   /// <summary>Called when input device was removed</summary>
+   public event EventHandler<Efl.Canvas.SceneDeviceRemovedEvt_Args> DeviceRemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_DeviceRemovedEvt_delegate)) {
+               eventHandlers.AddHandler(DeviceRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CANVAS_SCENE_EVENT_DEVICE_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_DeviceRemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(DeviceRemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event DeviceRemovedEvt.</summary>
+   public void On_DeviceRemovedEvt(Efl.Canvas.SceneDeviceRemovedEvt_Args e)
+   {
+      EventHandler<Efl.Canvas.SceneDeviceRemovedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Canvas.SceneDeviceRemovedEvt_Args>)eventHandlers[DeviceRemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_DeviceRemovedEvt_delegate;
+   private void on_DeviceRemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Canvas.SceneDeviceRemovedEvt_Args args = new Efl.Canvas.SceneDeviceRemovedEvt_Args();
+      args.arg = new Efl.Input.Device(evt.Info);
+      try {
+         On_DeviceRemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_DeleteRequestEvt_delegate = new Efl.EventCb(on_DeleteRequestEvt_NativeCallback);
+      evt_WithdrawnEvt_delegate = new Efl.EventCb(on_WithdrawnEvt_NativeCallback);
+      evt_MinimizedEvt_delegate = new Efl.EventCb(on_MinimizedEvt_NativeCallback);
+      evt_NormalEvt_delegate = new Efl.EventCb(on_NormalEvt_NativeCallback);
+      evt_StickEvt_delegate = new Efl.EventCb(on_StickEvt_NativeCallback);
+      evt_UnstickEvt_delegate = new Efl.EventCb(on_UnstickEvt_NativeCallback);
+      evt_FullscreenEvt_delegate = new Efl.EventCb(on_FullscreenEvt_NativeCallback);
+      evt_UnfullscreenEvt_delegate = new Efl.EventCb(on_UnfullscreenEvt_NativeCallback);
+      evt_MaximizedEvt_delegate = new Efl.EventCb(on_MaximizedEvt_NativeCallback);
+      evt_UnmaximizedEvt_delegate = new Efl.EventCb(on_UnmaximizedEvt_NativeCallback);
+      evt_IndicatorPropChangedEvt_delegate = new Efl.EventCb(on_IndicatorPropChangedEvt_NativeCallback);
+      evt_RotationChangedEvt_delegate = new Efl.EventCb(on_RotationChangedEvt_NativeCallback);
+      evt_ProfileChangedEvt_delegate = new Efl.EventCb(on_ProfileChangedEvt_NativeCallback);
+      evt_WmRotationChangedEvt_delegate = new Efl.EventCb(on_WmRotationChangedEvt_NativeCallback);
+      evt_ThemeChangedEvt_delegate = new Efl.EventCb(on_ThemeChangedEvt_NativeCallback);
+      evt_ElmActionBlock_menuEvt_delegate = new Efl.EventCb(on_ElmActionBlock_menuEvt_NativeCallback);
+      evt_PauseEvt_delegate = new Efl.EventCb(on_PauseEvt_NativeCallback);
+      evt_ResumeEvt_delegate = new Efl.EventCb(on_ResumeEvt_NativeCallback);
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+      evt_WindowCreatedEvt_delegate = new Efl.EventCb(on_WindowCreatedEvt_NativeCallback);
+      evt_WindowDestroyedEvt_delegate = new Efl.EventCb(on_WindowDestroyedEvt_NativeCallback);
+      evt_WindowActivatedEvt_delegate = new Efl.EventCb(on_WindowActivatedEvt_NativeCallback);
+      evt_WindowDeactivatedEvt_delegate = new Efl.EventCb(on_WindowDeactivatedEvt_NativeCallback);
+      evt_WindowMaximizedEvt_delegate = new Efl.EventCb(on_WindowMaximizedEvt_NativeCallback);
+      evt_WindowMinimizedEvt_delegate = new Efl.EventCb(on_WindowMinimizedEvt_NativeCallback);
+      evt_WindowRestoredEvt_delegate = new Efl.EventCb(on_WindowRestoredEvt_NativeCallback);
+      evt_Efl_Canvas_Scene_FocusInEvt_delegate = new Efl.EventCb(on_Efl_Canvas_Scene_FocusInEvt_NativeCallback);
+      evt_Efl_Canvas_Scene_FocusOutEvt_delegate = new Efl.EventCb(on_Efl_Canvas_Scene_FocusOutEvt_NativeCallback);
+      evt_ObjectFocusInEvt_delegate = new Efl.EventCb(on_ObjectFocusInEvt_NativeCallback);
+      evt_ObjectFocusOutEvt_delegate = new Efl.EventCb(on_ObjectFocusOutEvt_NativeCallback);
+      evt_RenderPreEvt_delegate = new Efl.EventCb(on_RenderPreEvt_NativeCallback);
+      evt_RenderPostEvt_delegate = new Efl.EventCb(on_RenderPostEvt_NativeCallback);
+      evt_DeviceChangedEvt_delegate = new Efl.EventCb(on_DeviceChangedEvt_NativeCallback);
+      evt_DeviceAddedEvt_delegate = new Efl.EventCb(on_DeviceAddedEvt_NativeCallback);
+      evt_DeviceRemovedEvt_delegate = new Efl.EventCb(on_DeviceRemovedEvt_NativeCallback);
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>In some environments you may have an indicator that shows battery status, reception, time etc. This is the indicator.
+   /// Sometimes you don&apos;t want this because you provide the same functionality inside your app, so this will request that the indicator is disabled in such circumstances. The default settings depends on the environment. For example, on phones, the default is to enable the indicator. The indicator is disabled on devices like televisions however.
+   /// 1.18</summary>
+   /// <returns>The mype, one of <see cref="Efl.Ui.WinIndicatorMode"/>.</returns>
+   virtual public Efl.Ui.WinIndicatorMode GetIndicatorMode() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_indicator_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>In some environments you may have an indicator that shows battery status, reception, time etc. This is the indicator.
+   /// Sometimes you don&apos;t want this because you provide the same functionality inside your app, so this will request that the indicator is disabled in such circumstances. The default settings depends on the environment. For example, on phones, the default is to enable the indicator. The indicator is disabled on devices like televisions however.
+   /// 1.18</summary>
+   /// <param name="type">The mype, one of <see cref="Efl.Ui.WinIndicatorMode"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetIndicatorMode( Efl.Ui.WinIndicatorMode type) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_indicator_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the keyboard mode of the window.</summary>
+   /// <returns>The mode, one of <see cref="Efl.Ui.WinKeyboardMode"/>.</returns>
+   virtual public Efl.Ui.WinKeyboardMode GetKeyboardMode() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_keyboard_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the keyboard mode of the window.</summary>
+   /// <param name="mode">The mode, one of <see cref="Efl.Ui.WinKeyboardMode"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetKeyboardMode( Efl.Ui.WinKeyboardMode mode) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_keyboard_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Defines which rotations this window supports.
+   /// The window manager will refer to these hints and rotate the window accordingly, depending on the device orientation, for instance.</summary>
+   /// <param name="allow_0">Normal orientation.</param>
+   /// <param name="allow_90">Rotated 90 degrees CCW.</param>
+   /// <param name="allow_180">Rotated 180 degrees.</param>
+   /// <param name="allow_270">Rotated 270 degrees CCW (i.e. 90 CW).</param>
+   /// <returns>Returns <c>false</c> if available rotations were not specified.</returns>
+   virtual public bool GetWmAvailableRotations( out bool allow_0,  out bool allow_90,  out bool allow_180,  out bool allow_270) {
+                                                                               var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_wm_available_rotations_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out allow_0,  out allow_90,  out allow_180,  out allow_270);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Defines which rotations this window supports.
+   /// The window manager will refer to these hints and rotate the window accordingly, depending on the device orientation, for instance.</summary>
+   /// <param name="allow_0">Normal orientation.</param>
+   /// <param name="allow_90">Rotated 90 degrees CCW.</param>
+   /// <param name="allow_180">Rotated 180 degrees.</param>
+   /// <param name="allow_270">Rotated 270 degrees CCW (i.e. 90 CW).</param>
+   /// <returns></returns>
+   virtual public  void SetWmAvailableRotations( bool allow_0,  bool allow_90,  bool allow_180,  bool allow_270) {
+                                                                               Efl.Ui.WinNativeInherit.efl_ui_win_wm_available_rotations_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), allow_0,  allow_90,  allow_180,  allow_270);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Available profiles on a window.</summary>
+   /// <returns>A list of profiles.</returns>
+   virtual public Eina.Array< System.String> GetWmAvailableProfiles() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_wm_available_profiles_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Array< System.String>(_ret_var, false, false);
+ }
+   /// <summary>Available profiles on a window.</summary>
+   /// <param name="profiles">A list of profiles.</param>
+   /// <returns></returns>
+   virtual public  void SetWmAvailableProfiles( Eina.Array< System.String> profiles) {
+       var _in_profiles = profiles.Handle;
+                  Efl.Ui.WinNativeInherit.efl_ui_win_wm_available_profiles_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_profiles);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the constraints on the maximum width and height of a window relative to the width and height of the screen.
+   /// When this function returns <c>true</c>, <c>obj</c> will never resize larger than the screen.</summary>
+   /// <returns><c>true</c> to restrict the window&apos;s maximum size.</returns>
+   virtual public bool GetScreenConstrain() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_screen_constrain_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Constrain the maximum width and height of a window to the width and height of the screen.
+   /// When <c>constrain</c> is <c>true</c>, <c>obj</c> will never resize larger than the screen.</summary>
+   /// <param name="constrain"><c>true</c> to restrict the window&apos;s maximum size.</param>
+   /// <returns></returns>
+   virtual public  void SetScreenConstrain( bool constrain) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_screen_constrain_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), constrain);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the window to be skipped by keyboard focus.
+   /// This sets the window to be skipped by normal keyboard input. This means a window manager will be asked not to focus this window as well as omit it from things like the taskbar, pager, &quot;alt-tab&quot; list etc. etc.
+   /// 
+   /// Call this and enable it on a window BEFORE you show it for the first time, otherwise it may have no effect.
+   /// 
+   /// Use this for windows that have only output information or might only be interacted with by the mouse or touchscreen, never for typing. This may have side-effects like making the window non-accessible in some cases unless the window is specially handled. Use this with care.</summary>
+   /// <param name="skip">The skip flag state (<c>true</c> if it is to be skipped).</param>
+   /// <returns></returns>
+   virtual public  void SetPropFocusSkip( bool skip) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_prop_focus_skip_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), skip);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Window&apos;s autohide state.
+   /// When closing the window in any way outside of the program control, like pressing the X button in the titlebar or using a command from the Window Manager, a &quot;delete,request&quot; signal is emitted to indicate that this event occurred and the developer can take any action, which may include, or not, destroying the window object.
+   /// 
+   /// When this property is set to <c>true</c>, the window will be automatically hidden when this event occurs, after the signal is emitted. If this property is <c>false</c> nothing will happen, beyond the event emission.
+   /// 
+   /// C applications can use this option along with the quit policy <c>ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN</c> which allows exiting EFL&apos;s main loop when all the windows are hidden.
+   /// 
+   /// Note: <c>autodel</c> and <c>autohide</c> are not mutually exclusive. The window will be deleted if both are set to <c>true</c>.</summary>
+   /// <returns>If <c>true</c>, the window will automatically hide itself when closed.</returns>
+   virtual public bool GetAutohide() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_autohide_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Window&apos;s autohide state.
+   /// When closing the window in any way outside of the program control, like pressing the X button in the titlebar or using a command from the Window Manager, a &quot;delete,request&quot; signal is emitted to indicate that this event occurred and the developer can take any action, which may include, or not, destroying the window object.
+   /// 
+   /// When this property is set to <c>true</c>, the window will be automatically hidden when this event occurs, after the signal is emitted. If this property is <c>false</c> nothing will happen, beyond the event emission.
+   /// 
+   /// C applications can use this option along with the quit policy <c>ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN</c> which allows exiting EFL&apos;s main loop when all the windows are hidden.
+   /// 
+   /// Note: <c>autodel</c> and <c>autohide</c> are not mutually exclusive. The window will be deleted if both are set to <c>true</c>.</summary>
+   /// <param name="autohide">If <c>true</c>, the window will automatically hide itself when closed.</param>
+   /// <returns></returns>
+   virtual public  void SetAutohide( bool autohide) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_autohide_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), autohide);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Enable quitting the main loop when this window is closed.
+   /// When set, the window&apos;s loop object will exit using the passed exit code if the window is closed.
+   /// 
+   /// The Eina.Value passed should be <c>EMPTY</c> to unset this state or an int value to be used as the exit code.</summary>
+   /// <returns>The exit code to use when exiting</returns>
+   virtual public  Eina.Value GetExitOnClose() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_exit_on_close_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable quitting the main loop when this window is closed.
+   /// When set, the window&apos;s loop object will exit using the passed exit code if the window is closed.
+   /// 
+   /// The Eina.Value passed should be <c>EMPTY</c> to unset this state or an int value to be used as the exit code.</summary>
+   /// <param name="exit_code">The exit code to use when exiting</param>
+   /// <returns></returns>
+   virtual public  void SetExitOnClose(  Eina.Value exit_code) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_exit_on_close_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), exit_code);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the icon object used for the window.
+   /// The object returns is the one marked by <see cref="Efl.Ui.Win.SetIconObject"/> as the object to use for the window icon.</summary>
+   /// <returns>The Evas image object to use for an icon.</returns>
+   virtual public Efl.Canvas.Object GetIconObject() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_icon_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set a window object&apos;s icon.
+   /// This sets an image to be used as the icon for the given window, in the window manager decoration part. The exact pixel dimensions of the object (not object size) will be used and the image pixels will be used as-is when this function is called. If the image object has been updated, then call this function again to source the image pixels and place them in the window&apos;s icon. Note that only objects of type <see cref="Efl.Canvas.Image"/> or <see cref="Efl.Ui.Image"/> are allowed.</summary>
+   /// <param name="icon">The image object to use for an icon.</param>
+   /// <returns></returns>
+   virtual public  void SetIconObject( Efl.Canvas.Object icon) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_icon_object_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), icon);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the minimized state of a window.</summary>
+   /// <returns>If <c>true</c>, the window is minimized.</returns>
+   virtual public bool GetMinimized() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_minimized_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the minimized state of a window.</summary>
+   /// <param name="state">If <c>true</c>, the window is minimized.</param>
+   /// <returns></returns>
+   virtual public  void SetMinimized( bool state) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_minimized_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), state);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the maximized state of a window.</summary>
+   /// <returns>If <c>true</c>, the window is maximized.</returns>
+   virtual public bool GetMaximized() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_maximized_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the maximized state of a window.</summary>
+   /// <param name="maximized">If <c>true</c>, the window is maximized.</param>
+   /// <returns></returns>
+   virtual public  void SetMaximized( bool maximized) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_maximized_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), maximized);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the fullscreen state of a window.</summary>
+   /// <returns>If <c>true</c>, the window is fullscreen.</returns>
+   virtual public bool GetFullscreen() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_fullscreen_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the fullscreen state of a window.</summary>
+   /// <param name="fullscreen">If <c>true</c>, the window is fullscreen.</param>
+   /// <returns></returns>
+   virtual public  void SetFullscreen( bool fullscreen) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_fullscreen_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), fullscreen);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the sticky state of the window.</summary>
+   /// <returns>If <c>true</c>, the window&apos;s sticky state is enabled.</returns>
+   virtual public bool GetSticky() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_sticky_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the sticky state of the window.
+   /// Hints the Window Manager that the window in <c>obj</c> should be left fixed at its position even when the virtual desktop it&apos;s on moves or changes.</summary>
+   /// <param name="sticky">If <c>true</c>, the window&apos;s sticky state is enabled.</param>
+   /// <returns></returns>
+   virtual public  void SetSticky( bool sticky) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_sticky_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), sticky);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the urgent state of a window.</summary>
+   /// <returns>The mode of a urgent window, one of <see cref="Efl.Ui.WinUrgentMode"/>.</returns>
+   virtual public Efl.Ui.WinUrgentMode GetUrgent() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_urgent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the urgent state of a window.</summary>
+   /// <param name="urgent">The mode of a urgent window, one of <see cref="Efl.Ui.WinUrgentMode"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetUrgent( Efl.Ui.WinUrgentMode urgent) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_urgent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), urgent);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the modal state of a window.</summary>
+   /// <returns>The mode of a window, one of <see cref="Efl.Ui.WinModalMode"/>.</returns>
+   virtual public Efl.Ui.WinModalMode GetModal() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_modal_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the modal state of a window.</summary>
+   /// <param name="modal">The mode of a window, one of <see cref="Efl.Ui.WinModalMode"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetModal( Efl.Ui.WinModalMode modal) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_modal_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), modal);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the noblank property of a window.
+   /// 1.11</summary>
+   /// <returns>If <c>true</c>, the window is set to noblank.</returns>
+   virtual public bool GetNoblank() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_noblank_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the noblank property of a window.
+   /// The &quot;noblank&quot; property is a way to request the display on which the window is shown does not blank, go to screensaver or otherwise hide or obscure the window. It is intended for uses such as media playback on a television where a user may not want to be interrupted by an idle screen. The noblank property may have no effect if the window is minimized or hidden.
+   /// 1.11</summary>
+   /// <param name="noblank">If <c>true</c>, the window is set to noblank.</param>
+   /// <returns></returns>
+   virtual public  void SetNoblank( bool noblank) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_noblank_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), noblank);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the borderless state of a window.</summary>
+   /// <returns>If <c>true</c>, the window is borderless.</returns>
+   virtual public bool GetBorderless() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_borderless_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the borderless state of a window.
+   /// This function requests the Window Manager not to draw any decoration around the window.</summary>
+   /// <param name="borderless">If <c>true</c>, the window is borderless.</param>
+   /// <returns></returns>
+   virtual public  void SetBorderless( bool borderless) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_borderless_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), borderless);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the role of the window.
+   /// The returned string is an internal one and should not be freed or modified. It will also be invalid if a new role is set or if the window is destroyed.</summary>
+   /// <returns>The role to set.</returns>
+   virtual public  System.String GetWinRole() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_role_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the role of the window.</summary>
+   /// <param name="role">The role to set.</param>
+   /// <returns></returns>
+   virtual public  void SetWinRole(  System.String role) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_role_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), role);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>No description supplied.
+   /// 1.18</summary>
+   /// <returns>Window name</returns>
+   virtual public  System.String GetWinName() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Name can only be set before finalize.</summary>
+   /// <param name="name">Window name</param>
+   /// <returns></returns>
+   virtual public  void SetWinName(  System.String name) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_name_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>If the object is not window object, returns <c>unknown</c>.</summary>
+   /// <returns>Window type</returns>
+   virtual public Efl.Ui.WinType GetWinType() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Type can on be set before finalize.</summary>
+   /// <param name="type">Window type</param>
+   /// <returns></returns>
+   virtual public  void SetWinType( Efl.Ui.WinType type) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This will return the value of &quot;accel_preference&quot; when the window was created.</summary>
+   /// <returns>Acceleration</returns>
+   virtual public  System.String GetAccelPreference() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_accel_preference_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The hardware acceleration preference for this window.
+   /// This is a constructor function and can only be called before <see cref="Efl.Object.FinalizeAdd"/>.
+   /// 
+   /// This property overrides the global EFL configuration option &quot;accel_preference&quot; for this single window, and accepts the same syntax.
+   /// 
+   /// The <c>accel</c> string is a freeform C string that indicates what kind of acceleration is preferred. Here &quot;acceleration&quot; generally refers to rendering and the hardware with which the unit application renders GUIs. This may or may not be honored but a best attempt will be made. Known strings are as follows:
+   /// 
+   /// &quot;gl&quot;, &quot;opengl&quot; - try use OpenGL. &quot;3d&quot; - try to use a 3d acceleration unit. &quot;hw&quot;, &quot;hardware&quot;, &quot;accel&quot; - try any acceleration unit (best possible) &quot;none&quot; - use no acceleration but software instead (since 1.16)
+   /// 
+   /// Since 1.14, it is also possible to specify some GL properties for the GL window surface. This allows applications to use GLView with depth, stencil and MSAA buffers with direct rendering. The new accel preference string format is thus &quot;{HW Accel}[:depth{value}[:stencil{value}[:msaa{str}$]$]$]&quot;.
+   /// 
+   /// Accepted values for depth are for instance &quot;depth&quot;, &quot;depth16&quot;, &quot;depth24&quot;. Accepted values for stencil are &quot;stencil&quot;, &quot;stencil1&quot;, &quot;stencil8&quot;. For MSAA, only predefined strings are accepted: &quot;msaa&quot;, &quot;msaa_low&quot;, &quot;msaa_mid&quot; and &quot;msaa_high&quot;. The selected configuration is not guaranteed and is only valid in case of GL acceleration. Only the base acceleration string will be saved (e.g. &quot;gl&quot; or &quot;hw&quot;).
+   /// 
+   /// Full examples include:
+   /// 
+   /// &quot;gl&quot;, - try to use OpenGL &quot;hw:depth:stencil&quot;, - use HW acceleration with default depth and stencil buffers &quot;opengl:depth24:stencil8:msaa_mid&quot; - use OpenGL with 24-bit depth, 8-bit stencil and a medium number of MSAA samples in the backbuffer.
+   /// 
+   /// Note that this option may be overriden by environment variables or the configuration option &quot;accel_preference_override&quot;.
+   /// 1.18</summary>
+   /// <param name="accel">Acceleration</param>
+   /// <returns></returns>
+   virtual public  void SetAccelPreference(  System.String accel) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_accel_preference_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), accel);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the alpha channel state of a window.</summary>
+   /// <returns><c>true</c> if the window alpha channel is enabled, <c>false</c> otherwise.</returns>
+   virtual public bool GetAlpha() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_alpha_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the alpha channel state of a window.
+   /// If <c>alpha</c> is true, the alpha channel of the canvas will be enabled possibly making parts of the window completely or partially transparent. This is also subject to the underlying system supporting it, for example a system using a compositing manager.
+   /// 
+   /// Note: Alpha window can be enabled automatically by window theme style&apos;s property. If &quot;alpha&quot; data.item is &quot;1&quot; or &quot;true&quot; in window style(eg. elm/win/base/default), the window is switched to alpha automatically without the explicit api call.</summary>
+   /// <param name="alpha"><c>true</c> if the window alpha channel is enabled, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetAlpha( bool alpha) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_alpha_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), alpha);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the stack ID string of the window as an opaque string.
+   /// This ID is immutable and can never be modified. It will be an opaque string that has no specific defined format or content other than being a string (no character with a value of 0).
+   /// 
+   /// This string is intended for use as a stack master ID to be use by other windows to make this window part of a stack of windows to be placed on top of each other as if they are a series of dialogs or questions one after the other, allowing you to go back through history.</summary>
+   /// <returns>An opaque string that has no specific format but identifies a specific unique window on the display.</returns>
+   virtual public  System.String GetStackId() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_stack_id_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the stack master Id that has been set.</summary>
+   /// <returns>An opaque string that has no specific format, but identifies a specific unique window on the display.</returns>
+   virtual public  System.String GetStackMasterId() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_stack_master_id_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the window stack ID to use as the master top-level.
+   /// This sets the ID string to be used as the master top-level window as the base of a stack of windows. This must be set before the first time the window is shown and should never be changed afterwards.</summary>
+   /// <param name="id">An opaque string that has no specific format, but identifies a specific unique window on the display.</param>
+   /// <returns></returns>
+   virtual public  void SetStackMasterId(  System.String id) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_stack_master_id_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The stack base state of this window
+   /// This is a boolean flag that determines if this window will become the base of a stack at all. You must enable this on a base (the bottom of a window stack) for things to work correctly.
+   /// 
+   /// This state should be set before a window is shown for the first time and never changed afterwards.</summary>
+   /// <returns><c>true</c> if this is a stack base window, <c>false</c> otherwise.</returns>
+   virtual public bool GetStackBase() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_stack_base_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The stack base state of this window
+   /// This is a boolean flag that determines if this window will become the base of a stack at all. You must enable this on a base (the bottom of a window stack) for things to work correctly.
+   /// 
+   /// This state should be set before a window is shown for the first time and never changed afterwards.</summary>
+   /// <param name="kw_base"><c>true</c> if this is a stack base window, <c>false</c> otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetStackBase( bool kw_base) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_stack_base_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_base);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Enable quitting the main loop when all windows are closed.
+   /// When set, the main loop will quit with the passed exit code once all windows have been closed.
+   /// 
+   /// The Eina.Value passed should be <c>EMPTY</c> to unset this state or an int value to be used as the exit code.</summary>
+   /// <returns>The exit code to use when exiting</returns>
+   public static  Eina.Value GetExitOnAllWindowsClosed() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_exit_on_all_windows_closed_get_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Enable quitting the main loop when all windows are closed.
+   /// When set, the main loop will quit with the passed exit code once all windows have been closed.
+   /// 
+   /// The Eina.Value passed should be <c>EMPTY</c> to unset this state or an int value to be used as the exit code.</summary>
+   /// <param name="exit_code">The exit code to use when exiting</param>
+   /// <returns></returns>
+   public static  void SetExitOnAllWindowsClosed(  Eina.Value exit_code) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_exit_on_all_windows_closed_set_ptr.Value.Delegate( exit_code);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Base size for objects with sizing restrictions.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// <see cref="Efl.Ui.Win.HintBase"/> + N x <see cref="Efl.Ui.Win.HintStep"/> is what is calculated for object sizing restrictions.
+   /// 
+   /// See also <see cref="Efl.Ui.Win.HintStep"/>.</summary>
+   /// <returns>Base size (hint) in pixels.</returns>
+   virtual public Eina.Size2D GetHintBase() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_hint_base_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Base size for objects with sizing restrictions.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// <see cref="Efl.Ui.Win.HintBase"/> + N x <see cref="Efl.Ui.Win.HintStep"/> is what is calculated for object sizing restrictions.
+   /// 
+   /// See also <see cref="Efl.Ui.Win.HintStep"/>.</summary>
+   /// <param name="sz">Base size (hint) in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetHintBase( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Ui.WinNativeInherit.efl_ui_win_hint_base_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Step size for objects with sizing restrictions.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Set this to for an object to scale up by steps and not continuously.
+   /// 
+   /// <see cref="Efl.Ui.Win.HintBase"/> + N x <see cref="Efl.Ui.Win.HintStep"/> is what is calculated for object sizing restrictions.</summary>
+   /// <returns>Step size (hint) in pixels.</returns>
+   virtual public Eina.Size2D GetHintStep() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_hint_step_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Step size for objects with sizing restrictions.
+   /// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+   /// 
+   /// Set this to for an object to scale up by steps and not continuously.
+   /// 
+   /// <see cref="Efl.Ui.Win.HintBase"/> + N x <see cref="Efl.Ui.Win.HintStep"/> is what is calculated for object sizing restrictions.</summary>
+   /// <param name="sz">Step size (hint) in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetHintStep( Eina.Size2D sz) {
+       var _in_sz = Eina.Size2D_StructConversion.ToInternal(sz);
+                  Efl.Ui.WinNativeInherit.efl_ui_win_hint_step_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_sz);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the enabled value of the focus highlight for this window.</summary>
+   /// <returns>The enabled value for the highlight.</returns>
+   virtual public bool GetFocusHighlightEnabled() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_focus_highlight_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the enabled status for the focus highlight in a window.
+   /// This function will enable or disable the focus highlight, regardless of the global setting for it.</summary>
+   /// <param name="enabled">The enabled value for the highlight.</param>
+   /// <returns></returns>
+   virtual public  void SetFocusHighlightEnabled( bool enabled) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_focus_highlight_enabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the widget focus highlight style.
+   /// If <c>style</c> is <c>null</c>, the default will be used.
+   /// 
+   /// See also <see cref="Efl.Ui.Win.FocusHighlightEnabled"/>. See also <see cref="Efl.Ui.Win.FocusHighlightAnimate"/>.</summary>
+   /// <returns>The name of the focus highlight style.</returns>
+   virtual public  System.String GetFocusHighlightStyle() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_focus_highlight_style_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the widget focus highlight style.
+   /// If <c>style</c> is <c>null</c>, the default will be used.
+   /// 
+   /// See also <see cref="Efl.Ui.Win.FocusHighlightEnabled"/>. See also <see cref="Efl.Ui.Win.FocusHighlightAnimate"/>.</summary>
+   /// <param name="style">The name of the focus highlight style.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise.</returns>
+   virtual public bool SetFocusHighlightStyle(  System.String style) {
+                         var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_focus_highlight_style_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the animate value of the focus highlight for this window.</summary>
+   /// <returns>The enabled value for the highlight animation.</returns>
+   virtual public bool GetFocusHighlightAnimate() {
+       var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_focus_highlight_animate_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the animate status for the focus highlight for this window.
+   /// This function will enable or disable the animation of focus highlight.</summary>
+   /// <param name="animate">The enabled value for the highlight animation.</param>
+   /// <returns></returns>
+   virtual public  void SetFocusHighlightAnimate( bool animate) {
+                         Efl.Ui.WinNativeInherit.efl_ui_win_focus_highlight_animate_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), animate);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Pop (delete) all windows in the stack above this window.
+   /// This will try and delete all the windows in the stack that are above the window.</summary>
+   /// <returns></returns>
+   virtual public  void StackPopTo() {
+       Efl.Ui.WinNativeInherit.efl_ui_win_stack_pop_to_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Activate a window object.
+   /// This function sends a request to the Window Manager to activate the window pointed by <c>obj</c>. If honored by the WM, the window will receive the keyboard focus.
+   /// 
+   /// Note: This is just a request that a Window Manager may ignore, so calling this function does not ensure in any way that the window will be the active one afterwards.</summary>
+   /// <returns></returns>
+   virtual public  void Activate() {
+       Efl.Ui.WinNativeInherit.efl_ui_win_activate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Center a window on the screen.
+   /// This function centers window <c>obj</c> horizontally and/or vertically based on the values of <c>h</c> and <c>v</c>.
+   /// 
+   /// Note: This is just a request that a Window Manager may ignore, so calling this function does not ensure in any way that the window will be centered afterwards.</summary>
+   /// <param name="h">If <c>true</c>, center horizontally. If <c>false</c>, do not change horizontal location.</param>
+   /// <param name="v">If <c>true</c>, center vertically. If <c>false</c>, do not change vertical location.</param>
+   /// <returns></returns>
+   virtual public  void Center( bool h,  bool v) {
+                                           Efl.Ui.WinNativeInherit.efl_ui_win_center_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), h,  v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set keygrab value of the window
+   /// This function grabs the <c>key</c> of window using <c>grab_mode</c>.</summary>
+   /// <param name="key">This string is the keyname to grab.</param>
+   /// <param name="modifiers">A combination of modifier keys that must be present to trigger the event. Not supported yet.</param>
+   /// <param name="not_modifiers">A combination of modifier keys that must not be present to trigger the event. Not supported yet.</param>
+   /// <param name="priority">Not supported yet.</param>
+   /// <param name="grab_mode">Describes how the key should be grabbed, wrt. focus and stacking.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetKeygrab(  System.String key,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers,   int priority,  Efl.Ui.WinKeygrabMode grab_mode) {
+                                                                                                 var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_keygrab_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  modifiers,  not_modifiers,  priority,  grab_mode);
+      Eina.Error.RaiseIfUnhandledException();
+                                                                  return _ret_var;
+ }
+   /// <summary>Unset keygrab value of the window
+   /// This function unset keygrab value. Ungrab <c>key</c> of window.</summary>
+   /// <param name="key">This string is the keyname to grab.</param>
+   /// <param name="modifiers">A combination of modifier keys that must be present to trigger the event. Not supported yet.</param>
+   /// <param name="not_modifiers">A combination of modifier keys that must not be present to trigger the event. Not supported yet.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool UnsetKeygrab(  System.String key,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers) {
+                                                             var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_keygrab_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  modifiers,  not_modifiers);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Start moving or resizing the window.
+   /// The user can request the display server to start moving or resizing the window by combining modes from <see cref="Efl.Ui.WinMoveResizeMode"/>. This API can only be called if none of the following conditions is true:
+   /// 
+   /// 1. Called in the absence of a pointer down event, 2. Called more than once before a pointer up event, 3. Called when the window is already being resized or moved, 4. Called with an unsupported combination of modes.
+   /// 
+   /// Right usage: 1. Pointer (mouse or touch) down event, 2. <see cref="Efl.Ui.Win.MoveResizeStart"/> called only once with a supported mode, 3. Pointer (mouse or touch) up event.
+   /// 
+   /// If a pointer up event occurs after calling the function, it automatically ends the window move and resize operation.
+   /// 
+   /// Currently, only the following 9 combinations are allowed, and possibly more combinations may be added in the future: 1. <see cref="Efl.Ui.WinMoveResizeMode.Move"/> 2. <see cref="Efl.Ui.WinMoveResizeMode.Top"/> 3. <see cref="Efl.Ui.WinMoveResizeMode.Bottom"/> 4. <see cref="Efl.Ui.WinMoveResizeMode.Left"/> 5. <see cref="Efl.Ui.WinMoveResizeMode.Right"/> 6. <see cref="Efl.Ui.WinMoveResizeMode.Top"/> | <see cref="Efl.Ui.WinMoveResizeMode.Left"/> 7. <see cref="Efl.Ui.WinMoveResizeMode.Top"/> | <see cref="Efl.Ui.WinMoveResizeMode.Right"/> 8. <see cref="Efl.Ui.WinMoveResizeMode.Bottom"/> | <see cref="Efl.Ui.WinMoveResizeMode.Left"/> 9. <see cref="Efl.Ui.WinMoveResizeMode.Bottom"/> | <see cref="Efl.Ui.WinMoveResizeMode.Right"/>
+   /// 
+   /// In particular move and resize cannot happen simultaneously.
+   /// 
+   /// Note: the result of this API can only guarantee that the request has been forwarded to the server, but there is no guarantee that the request can be processed by the display server.
+   /// 1.19</summary>
+   /// <param name="mode">The requested move or resize mode.</param>
+   /// <returns><c>true</c> if the request was successfully sent to the display server, <c>false</c> in case of error.</returns>
+   virtual public bool MoveResizeStart( Efl.Ui.WinMoveResizeMode mode) {
+                         var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_move_resize_start_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mode);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Returns an iterator over the current known pointer positions.
+   /// This is used to iterate over the current known multi-touch positions, including the first finger. Each pointer position is represented by an object of type <see cref="Efl.Input.Pointer"/>.
+   /// 
+   /// Each finger in a multi touch environment can then be identified by the <see cref="Efl.Input.Pointer.Tool"/> property. The order of the pointers in this iterator is not defined.
+   /// 
+   /// Note: If the input surface supports hovering input, some pointers may not be in a &quot;down&quot; state. To retrieve the list of such pointers, set the <c>hover</c> value to <c>true</c>. Remember though that most devices currently don&apos;t support this.</summary>
+   /// <param name="hover"><c>false</c> by default, <c>true</c> means to include fingers that are currently hovering.</param>
+   /// <returns>Iterator to pointer positions</returns>
+   virtual public Eina.Iterator<Efl.Input.Pointer> PointerIterate( bool hover) {
+                         var _ret_var = Efl.Ui.WinNativeInherit.efl_ui_win_pointer_iterate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), hover);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Input.Pointer>(_ret_var, false, false);
+ }
+   /// <summary>A generic configuration value, referred to by name.</summary>
+   /// <param name="name">Configuration option name.</param>
+   /// <returns>The value. It will be empty if it doesn&apos;t exist. The caller must free it after use (using <c>eina_value_free</c>() in C).</returns>
+   virtual public  Eina.Value GetConfig(  System.String name) {
+                         var _ret_var = Efl.ConfigNativeInherit.efl_config_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>A generic configuration value, referred to by name.</summary>
+   /// <param name="name">Configuration option name.</param>
+   /// <param name="value">Configuration option value. May be <c>null</c> if not found.</param>
+   /// <returns><c>false</c> in case of error: value type was invalid, the config can&apos;t be changed, config does not exist...</returns>
+   virtual public bool SetConfig(  System.String name,   Eina.Value value) {
+                                           var _ret_var = Efl.ConfigNativeInherit.efl_config_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get screen size (in pixels) for the screen.
+   /// Note that on some display systems this information is not available and a value of 0x0 will be returned.</summary>
+   /// <returns>The screen size in pixels.</returns>
+   virtual public Eina.Size2D GetScreenSizeInPixels() {
+       var _ret_var = Efl.ScreenNativeInherit.efl_screen_size_in_pixels_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Get screen scaling factor.
+   /// This is the factor by which window contents will be scaled on the screen.
+   /// 
+   /// Note that on some display systems this information is not available and a value of 1.0 will be returned.</summary>
+   /// <returns>The screen scaling factor.</returns>
+   virtual public float GetScreenScaleFactor() {
+       var _ret_var = Efl.ScreenNativeInherit.efl_screen_scale_factor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the rotation of the screen.
+   /// Most engines only return multiples of 90.
+   /// 1.19</summary>
+   /// <returns>Screen rotation in degrees.</returns>
+   virtual public  int GetScreenRotation() {
+       var _ret_var = Efl.ScreenNativeInherit.efl_screen_rotation_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the pixel density in DPI (Dots Per Inch) for the screen that a window is on.
+   /// 1.7</summary>
+   /// <param name="xdpi">Horizontal DPI.</param>
+   /// <param name="ydpi">Vertical DPI.</param>
+   /// <returns></returns>
+   virtual public  void GetScreenDpi( out  int xdpi,  out  int ydpi) {
+                                           Efl.ScreenNativeInherit.efl_screen_dpi_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out xdpi,  out ydpi);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Retrieves the text string currently being displayed by the given text object.
+   /// Do not free() the return value.
+   /// 
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <returns>Text string to display on it.</returns>
+   virtual public  System.String GetText() {
+       var _ret_var = Efl.TextNativeInherit.efl_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the text string to be displayed by the given text object.
+   /// See also <see cref="Efl.Text.GetText"/>.</summary>
+   /// <param name="text">Text string to display on it.</param>
+   /// <returns></returns>
+   virtual public  void SetText(  System.String text) {
+                         Efl.TextNativeInherit.efl_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the maximum image size the canvas can possibly handle.
+   /// This function returns the largest image or surface size that the canvas can handle in pixels, and if there is one, returns <c>true</c>. It returns <c>false</c> if no extra constraint on maximum image size exists.
+   /// 
+   /// The default limit is 65535x65535.</summary>
+   /// <param name="max">The maximum image size (in pixels).</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool GetImageMaxSize( out Eina.Size2D max) {
+             var _out_max = new Eina.Size2D_StructInternal();
+            var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_image_max_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out _out_max);
+      Eina.Error.RaiseIfUnhandledException();
+      max = Eina.Size2D_StructConversion.ToManaged(_out_max);
+            return _ret_var;
+ }
+   /// <summary>Get if the canvas is currently calculating group objects.</summary>
+   /// <returns><c>true</c> if currently calculating group objects.</returns>
+   virtual public bool GetGroupObjectsCalculating() {
+       var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_group_objects_calculating_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get a device by name.</summary>
+   /// <param name="name">The name of the seat to find.</param>
+   /// <returns>The device or seat, <c>null</c> if not found.</returns>
+   virtual public Efl.Input.Device GetDevice(  System.String name) {
+                         var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_device_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get a seat by id.</summary>
+   /// <param name="id">The id of the seat to find.</param>
+   /// <returns>The seat or <c>null</c> if not found.</returns>
+   virtual public Efl.Input.Device GetSeat(  int id) {
+                         var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_seat_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the default seat.</summary>
+   /// <returns>The default seat or <c>null</c> if one does not exist.</returns>
+   virtual public Efl.Input.Device GetSeatDefault() {
+       var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_seat_default_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This function returns the current known pointer coordinates
+   /// This function returns the current position of the main input pointer (mouse, pen, etc...).</summary>
+   /// <param name="seat">The seat, or <c>null</c> to use the default.</param>
+   /// <param name="pos">The pointer position in pixels.</param>
+   /// <returns><c>true</c> if a pointer exists for the given seat, otherwise <c>false</c>.</returns>
+   virtual public bool GetPointerPosition( Efl.Input.Device seat,  out Eina.Position2D pos) {
+                         var _out_pos = new Eina.Position2D_StructInternal();
+                  var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_pointer_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), seat,  out _out_pos);
+      Eina.Error.RaiseIfUnhandledException();
+            pos = Eina.Position2D_StructConversion.ToManaged(_out_pos);
+                  return _ret_var;
+ }
+   /// <summary>Call user-provided <c>calculate</c> group functions and unset the flag signalling that the object needs to get recalculated to all group objects in the canvas.</summary>
+   /// <returns></returns>
+   virtual public  void CalculateGroupObjects() {
+       Efl.Canvas.SceneNativeInherit.efl_canvas_scene_group_objects_calculate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieve a list of objects at a given position in a canvas.
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="pos">The pixel position.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>The list of objects that are over the given position in <c>e</c>.</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> GetObjectsAtXy( Eina.Position2D pos,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_objects_at_xy_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Retrieve the object stacked at the top of a given position in a canvas.
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas covering the given position. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="pos">The pixel position.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>The canvas object that is over all other objects at the given position.</returns>
+   virtual public Efl.Gfx.Entity GetObjectTopAtXy( Eina.Position2D pos,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_object_top_at_xy_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Retrieve a list of objects overlapping a given rectangular region in a canvas.
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas overlapping with the given rectangular region. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="rect">The rectangular region.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>Iterator to objects</returns>
+   virtual public Eina.Iterator<Efl.Gfx.Entity> GetObjectsInRectangle( Eina.Rect rect,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_objects_in_rectangle_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return new Eina.Iterator<Efl.Gfx.Entity>(_ret_var, true, false);
+ }
+   /// <summary>Retrieve the canvas object stacked at the top of a given rectangular region in a canvas
+   /// This function will traverse all the layers of the given canvas, from top to bottom, querying for objects with areas overlapping with the given rectangular region. The user can exclude from the query objects which are hidden and/or which are set to pass events.
+   /// 
+   /// Warning: This function will only evaluate top-level objects; child or &quot;sub&quot; objects will be skipped.</summary>
+   /// <param name="rect">The rectangular region.</param>
+   /// <param name="include_pass_events_objects">Boolean flag to include or not objects which pass events in this calculation.</param>
+   /// <param name="include_hidden_objects">Boolean flag to include or not hidden objects in this calculation.</param>
+   /// <returns>The object that is over all other objects at the given rectangular region.</returns>
+   virtual public Efl.Gfx.Entity GetObjectTopInRectangle( Eina.Rect rect,  bool include_pass_events_objects,  bool include_hidden_objects) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                                                      var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_object_top_in_rectangle_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect,  include_pass_events_objects,  include_hidden_objects);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Iterate over the available input device seats for the canvas.
+   /// A &quot;seat&quot; is the term used for a group of input devices, typically including a pointer and a keyboard. A seat object is the parent of the individual input devices.
+   /// 1.20</summary>
+   /// <returns>An iterator over the attached seats.</returns>
+   virtual public Eina.Iterator<Efl.Input.Device> Seats() {
+       var _ret_var = Efl.Canvas.SceneNativeInherit.efl_canvas_scene_seats_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Input.Device>(_ret_var, true, false);
+ }
+   /// <summary>Indicates whether a key modifier is on, such as Ctrl, Shift, ...</summary>
+   /// <param name="mod">The modifier key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key modifier is pressed.</returns>
+   virtual public bool GetModifierEnabled( Efl.Input.Modifier mod,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_modifier_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), mod,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Indicates whether a key lock is on, such as NumLock, CapsLock, ...</summary>
+   /// <param name="kw_lock">The lock key to test.</param>
+   /// <param name="seat">The seat device, may be <c>null</c></param>
+   /// <returns><c>true</c> if the key lock is on.</returns>
+   virtual public bool GetLockEnabled( Efl.Input.Lock kw_lock,  Efl.Input.Device seat) {
+                                           var _ret_var = Efl.Input.StateNativeInherit.efl_input_lock_enabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), kw_lock,  seat);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   virtual public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   virtual public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   virtual public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   virtual public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   virtual public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   virtual public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>In some environments you may have an indicator that shows battery status, reception, time etc. This is the indicator.
+/// Sometimes you don&apos;t want this because you provide the same functionality inside your app, so this will request that the indicator is disabled in such circumstances. The default settings depends on the environment. For example, on phones, the default is to enable the indicator. The indicator is disabled on devices like televisions however.
+/// 1.18</summary>
+/// <value>The mype, one of <see cref="Efl.Ui.WinIndicatorMode"/>.</value>
+   public Efl.Ui.WinIndicatorMode IndicatorMode {
+      get { return GetIndicatorMode(); }
+      set { SetIndicatorMode( value); }
+   }
+   /// <summary>Get the keyboard mode of the window.</summary>
+/// <value>The mode, one of <see cref="Efl.Ui.WinKeyboardMode"/>.</value>
+   public Efl.Ui.WinKeyboardMode KeyboardMode {
+      get { return GetKeyboardMode(); }
+      set { SetKeyboardMode( value); }
+   }
+   /// <summary>Available profiles on a window.</summary>
+/// <value>A list of profiles.</value>
+   public Eina.Array< System.String> WmAvailableProfiles {
+      get { return GetWmAvailableProfiles(); }
+      set { SetWmAvailableProfiles( value); }
+   }
+   /// <summary>Get the constraints on the maximum width and height of a window relative to the width and height of the screen.
+/// When this function returns <c>true</c>, <c>obj</c> will never resize larger than the screen.</summary>
+/// <value><c>true</c> to restrict the window&apos;s maximum size.</value>
+   public bool ScreenConstrain {
+      get { return GetScreenConstrain(); }
+      set { SetScreenConstrain( value); }
+   }
+   /// <summary>Set the window to be skipped by keyboard focus.
+/// This sets the window to be skipped by normal keyboard input. This means a window manager will be asked not to focus this window as well as omit it from things like the taskbar, pager, &quot;alt-tab&quot; list etc. etc.
+/// 
+/// Call this and enable it on a window BEFORE you show it for the first time, otherwise it may have no effect.
+/// 
+/// Use this for windows that have only output information or might only be interacted with by the mouse or touchscreen, never for typing. This may have side-effects like making the window non-accessible in some cases unless the window is specially handled. Use this with care.</summary>
+/// <value>The skip flag state (<c>true</c> if it is to be skipped).</value>
+   public bool PropFocusSkip {
+      set { SetPropFocusSkip( value); }
+   }
+   /// <summary>Window&apos;s autohide state.
+/// When closing the window in any way outside of the program control, like pressing the X button in the titlebar or using a command from the Window Manager, a &quot;delete,request&quot; signal is emitted to indicate that this event occurred and the developer can take any action, which may include, or not, destroying the window object.
+/// 
+/// When this property is set to <c>true</c>, the window will be automatically hidden when this event occurs, after the signal is emitted. If this property is <c>false</c> nothing will happen, beyond the event emission.
+/// 
+/// C applications can use this option along with the quit policy <c>ELM_POLICY_QUIT_LAST_WINDOW_HIDDEN</c> which allows exiting EFL&apos;s main loop when all the windows are hidden.
+/// 
+/// Note: <c>autodel</c> and <c>autohide</c> are not mutually exclusive. The window will be deleted if both are set to <c>true</c>.</summary>
+/// <value>If <c>true</c>, the window will automatically hide itself when closed.</value>
+   public bool Autohide {
+      get { return GetAutohide(); }
+      set { SetAutohide( value); }
+   }
+   /// <summary>Enable quitting the main loop when this window is closed.
+/// When set, the window&apos;s loop object will exit using the passed exit code if the window is closed.
+/// 
+/// The Eina.Value passed should be <c>EMPTY</c> to unset this state or an int value to be used as the exit code.</summary>
+/// <value>The exit code to use when exiting</value>
+   public  Eina.Value ExitOnClose {
+      get { return GetExitOnClose(); }
+      set { SetExitOnClose( value); }
+   }
+   /// <summary>Get the icon object used for the window.
+/// The object returns is the one marked by <see cref="Efl.Ui.Win.SetIconObject"/> as the object to use for the window icon.</summary>
+/// <value>The image object to use for an icon.</value>
+   public Efl.Canvas.Object IconObject {
+      get { return GetIconObject(); }
+      set { SetIconObject( value); }
+   }
+   /// <summary>Get the minimized state of a window.</summary>
+/// <value>If <c>true</c>, the window is minimized.</value>
+   public bool Minimized {
+      get { return GetMinimized(); }
+      set { SetMinimized( value); }
+   }
+   /// <summary>Get the maximized state of a window.</summary>
+/// <value>If <c>true</c>, the window is maximized.</value>
+   public bool Maximized {
+      get { return GetMaximized(); }
+      set { SetMaximized( value); }
+   }
+   /// <summary>Get the fullscreen state of a window.</summary>
+/// <value>If <c>true</c>, the window is fullscreen.</value>
+   public bool Fullscreen {
+      get { return GetFullscreen(); }
+      set { SetFullscreen( value); }
+   }
+   /// <summary>Get the sticky state of the window.</summary>
+/// <value>If <c>true</c>, the window&apos;s sticky state is enabled.</value>
+   public bool Sticky {
+      get { return GetSticky(); }
+      set { SetSticky( value); }
+   }
+   /// <summary>Get the urgent state of a window.</summary>
+/// <value>The mode of a urgent window, one of <see cref="Efl.Ui.WinUrgentMode"/>.</value>
+   public Efl.Ui.WinUrgentMode Urgent {
+      get { return GetUrgent(); }
+      set { SetUrgent( value); }
+   }
+   /// <summary>Get the modal state of a window.</summary>
+/// <value>The mode of a window, one of <see cref="Efl.Ui.WinModalMode"/>.</value>
+   public Efl.Ui.WinModalMode Modal {
+      get { return GetModal(); }
+      set { SetModal( value); }
+   }
+   /// <summary>Get the noblank property of a window.
+/// 1.11</summary>
+/// <value>If <c>true</c>, the window is set to noblank.</value>
+   public bool Noblank {
+      get { return GetNoblank(); }
+      set { SetNoblank( value); }
+   }
+   /// <summary>Get the borderless state of a window.</summary>
+/// <value>If <c>true</c>, the window is borderless.</value>
+   public bool Borderless {
+      get { return GetBorderless(); }
+      set { SetBorderless( value); }
+   }
+   /// <summary>The role of the window.
+/// It is a hint of how the Window Manager should handle it. Unlike <see cref="Efl.Ui.Win.WinType"/> and <see cref="Efl.Ui.Win.WinName"/> this can be changed at runtime.</summary>
+/// <value>The role to set.</value>
+   public  System.String WinRole {
+      get { return GetWinRole(); }
+      set { SetWinRole( value); }
+   }
+   /// <summary>The window name.
+/// The meaning of name depends on the underlying windowing system.
+/// 
+/// The window name is a construction property that can only be set at creation time, before finalize. In C this means inside <c>efl_add</c>().
+/// 
+/// Note: Once set, it cannot be modified afterwards.</summary>
+/// <value>Window name</value>
+   public  System.String WinName {
+      get { return GetWinName(); }
+      set { SetWinName( value); }
+   }
+   /// <summary>The type of the window.
+/// It is a hint of how the Window Manager should handle it.
+/// 
+/// The window type is a construction property that can only be set at creation time, before finalize. In C this means inside <c>efl_add</c>().
+/// 
+/// Note: Once set, it cannot be modified afterward.</summary>
+/// <value>Window type</value>
+   public Efl.Ui.WinType WinType {
+      get { return GetWinType(); }
+      set { SetWinType( value); }
+   }
+   /// <summary>The hardware acceleration preference for this window.
+/// This is a constructor function and can only be called before <see cref="Efl.Object.FinalizeAdd"/>.
+/// 
+/// This property overrides the global EFL configuration option &quot;accel_preference&quot; for this single window, and accepts the same syntax.
+/// 
+/// The <c>accel</c> string is a freeform C string that indicates what kind of acceleration is preferred. Here &quot;acceleration&quot; generally refers to rendering and the hardware with which the unit application renders GUIs. This may or may not be honored but a best attempt will be made. Known strings are as follows:
+/// 
+/// &quot;gl&quot;, &quot;opengl&quot; - try use OpenGL. &quot;3d&quot; - try to use a 3d acceleration unit. &quot;hw&quot;, &quot;hardware&quot;, &quot;accel&quot; - try any acceleration unit (best possible) &quot;none&quot; - use no acceleration but software instead (since 1.16)
+/// 
+/// Since 1.14, it is also possible to specify some GL properties for the GL window surface. This allows applications to use GLView with depth, stencil and MSAA buffers with direct rendering. The new accel preference string format is thus &quot;{HW Accel}[:depth{value}[:stencil{value}[:msaa{str}$]$]$]&quot;.
+/// 
+/// Accepted values for depth are for instance &quot;depth&quot;, &quot;depth16&quot;, &quot;depth24&quot;. Accepted values for stencil are &quot;stencil&quot;, &quot;stencil1&quot;, &quot;stencil8&quot;. For MSAA, only predefined strings are accepted: &quot;msaa&quot;, &quot;msaa_low&quot;, &quot;msaa_mid&quot; and &quot;msaa_high&quot;. The selected configuration is not guaranteed and is only valid in case of GL acceleration. Only the base acceleration string will be saved (e.g. &quot;gl&quot; or &quot;hw&quot;).
+/// 
+/// Full examples include:
+/// 
+/// &quot;gl&quot;, - try to use OpenGL &quot;hw:depth:stencil&quot;, - use HW acceleration with default depth and stencil buffers &quot;opengl:depth24:stencil8:msaa_mid&quot; - use OpenGL with 24-bit depth, 8-bit stencil and a medium number of MSAA samples in the backbuffer.
+/// 
+/// Note that this option may be overriden by environment variables or the configuration option &quot;accel_preference_override&quot;.
+/// 1.18</summary>
+/// <value>Acceleration</value>
+   public  System.String AccelPreference {
+      get { return GetAccelPreference(); }
+      set { SetAccelPreference( value); }
+   }
+   /// <summary>Get the alpha channel state of a window.</summary>
+/// <value><c>true</c> if the window alpha channel is enabled, <c>false</c> otherwise.</value>
+   public bool Alpha {
+      get { return GetAlpha(); }
+      set { SetAlpha( value); }
+   }
+   /// <summary>Get the stack ID string of the window as an opaque string.
+/// This ID is immutable and can never be modified. It will be an opaque string that has no specific defined format or content other than being a string (no character with a value of 0).
+/// 
+/// This string is intended for use as a stack master ID to be use by other windows to make this window part of a stack of windows to be placed on top of each other as if they are a series of dialogs or questions one after the other, allowing you to go back through history.</summary>
+/// <value>An opaque string that has no specific format but identifies a specific unique window on the display.</value>
+   public  System.String StackId {
+      get { return GetStackId(); }
+   }
+   /// <summary>Get the stack master Id that has been set.</summary>
+/// <value>An opaque string that has no specific format, but identifies a specific unique window on the display.</value>
+   public  System.String StackMasterId {
+      get { return GetStackMasterId(); }
+      set { SetStackMasterId( value); }
+   }
+   /// <summary>The stack base state of this window
+/// This is a boolean flag that determines if this window will become the base of a stack at all. You must enable this on a base (the bottom of a window stack) for things to work correctly.
+/// 
+/// This state should be set before a window is shown for the first time and never changed afterwards.</summary>
+/// <value><c>true</c> if this is a stack base window, <c>false</c> otherwise.</value>
+   public bool StackBase {
+      get { return GetStackBase(); }
+      set { SetStackBase( value); }
+   }
+   /// <summary>Enable quitting the main loop when all windows are closed.
+/// When set, the main loop will quit with the passed exit code once all windows have been closed.
+/// 
+/// The Eina.Value passed should be <c>EMPTY</c> to unset this state or an int value to be used as the exit code.</summary>
+/// <value>The exit code to use when exiting</value>
+   public static  Eina.Value ExitOnAllWindowsClosed {
+      get { return GetExitOnAllWindowsClosed(); }
+      set { SetExitOnAllWindowsClosed( value); }
+   }
+   /// <summary>Base size for objects with sizing restrictions.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// <see cref="Efl.Ui.Win.HintBase"/> + N x <see cref="Efl.Ui.Win.HintStep"/> is what is calculated for object sizing restrictions.
+/// 
+/// See also <see cref="Efl.Ui.Win.HintStep"/>.</summary>
+/// <value>Base size (hint) in pixels.</value>
+   public Eina.Size2D HintBase {
+      get { return GetHintBase(); }
+      set { SetHintBase( value); }
+   }
+   /// <summary>Step size for objects with sizing restrictions.
+/// This is not a size enforcement in any way, it&apos;s just a hint that should be used whenever appropriate.
+/// 
+/// Set this to for an object to scale up by steps and not continuously.
+/// 
+/// <see cref="Efl.Ui.Win.HintBase"/> + N x <see cref="Efl.Ui.Win.HintStep"/> is what is calculated for object sizing restrictions.</summary>
+/// <value>Step size (hint) in pixels.</value>
+   public Eina.Size2D HintStep {
+      get { return GetHintStep(); }
+      set { SetHintStep( value); }
+   }
+   /// <summary>Whether focus highlight is enabled or not.
+/// See also <see cref="Efl.Ui.Win.FocusHighlightStyle"/>. See also <see cref="Efl.Ui.Win.FocusHighlightAnimate"/>.</summary>
+/// <value>The enabled value for the highlight.</value>
+   public bool FocusHighlightEnabled {
+      get { return GetFocusHighlightEnabled(); }
+      set { SetFocusHighlightEnabled( value); }
+   }
+   /// <summary>Control the widget focus highlight style.
+/// If <c>style</c> is <c>null</c>, the default will be used.
+/// 
+/// See also <see cref="Efl.Ui.Win.FocusHighlightEnabled"/>. See also <see cref="Efl.Ui.Win.FocusHighlightAnimate"/>.</summary>
+/// <value>The name of the focus highlight style.</value>
+   public  System.String FocusHighlightStyle {
+      get { return GetFocusHighlightStyle(); }
+      set { SetFocusHighlightStyle( value); }
+   }
+   /// <summary>Whether focus highlight should animate or not.
+/// See also <see cref="Efl.Ui.Win.FocusHighlightStyle"/>. See also <see cref="Efl.Ui.Win.FocusHighlightEnabled"/>.</summary>
+/// <value>The enabled value for the highlight animation.</value>
+   public bool FocusHighlightAnimate {
+      get { return GetFocusHighlightAnimate(); }
+      set { SetFocusHighlightAnimate( value); }
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Get screen size (in pixels) for the screen.
+/// Note that on some display systems this information is not available and a value of 0x0 will be returned.</summary>
+/// <value>The screen size in pixels.</value>
+   public Eina.Size2D ScreenSizeInPixels {
+      get { return GetScreenSizeInPixels(); }
+   }
+   /// <summary>Get screen scaling factor.
+/// This is the factor by which window contents will be scaled on the screen.
+/// 
+/// Note that on some display systems this information is not available and a value of 1.0 will be returned.</summary>
+/// <value>The screen scaling factor.</value>
+   public float ScreenScaleFactor {
+      get { return GetScreenScaleFactor(); }
+   }
+   /// <summary>Get the rotation of the screen.
+/// Most engines only return multiples of 90.
+/// 1.19</summary>
+/// <value>Screen rotation in degrees.</value>
+   public  int ScreenRotation {
+      get { return GetScreenRotation(); }
+   }
+   /// <summary>Get if the canvas is currently calculating group objects.</summary>
+/// <value><c>true</c> if currently calculating group objects.</value>
+   public bool GroupObjectsCalculating {
+      get { return GetGroupObjectsCalculating(); }
+   }
+   /// <summary>Get the default seat attached to this canvas.
+/// A canvas may have exactly one default seat.
+/// 
+/// See also <see cref="Efl.Canvas.Scene.GetDevice"/> to find a seat by name. See also <see cref="Efl.Canvas.Scene.GetSeat"/> to find a seat by id.</summary>
+/// <value>The default seat or <c>null</c> if one does not exist.</value>
+   public Efl.Input.Device SeatDefault {
+      get { return GetSeatDefault(); }
+   }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Win.efl_ui_win_class_get();
+   }
+}
+public class WinNativeInherit : Efl.Ui.WidgetNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_win_indicator_mode_get_static_delegate == null)
+      efl_ui_win_indicator_mode_get_static_delegate = new efl_ui_win_indicator_mode_get_delegate(indicator_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_indicator_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_indicator_mode_get_static_delegate)});
+      if (efl_ui_win_indicator_mode_set_static_delegate == null)
+      efl_ui_win_indicator_mode_set_static_delegate = new efl_ui_win_indicator_mode_set_delegate(indicator_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_indicator_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_indicator_mode_set_static_delegate)});
+      if (efl_ui_win_keyboard_mode_get_static_delegate == null)
+      efl_ui_win_keyboard_mode_get_static_delegate = new efl_ui_win_keyboard_mode_get_delegate(keyboard_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_keyboard_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_keyboard_mode_get_static_delegate)});
+      if (efl_ui_win_keyboard_mode_set_static_delegate == null)
+      efl_ui_win_keyboard_mode_set_static_delegate = new efl_ui_win_keyboard_mode_set_delegate(keyboard_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_keyboard_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_keyboard_mode_set_static_delegate)});
+      if (efl_ui_win_wm_available_rotations_get_static_delegate == null)
+      efl_ui_win_wm_available_rotations_get_static_delegate = new efl_ui_win_wm_available_rotations_get_delegate(wm_available_rotations_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_wm_available_rotations_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_wm_available_rotations_get_static_delegate)});
+      if (efl_ui_win_wm_available_rotations_set_static_delegate == null)
+      efl_ui_win_wm_available_rotations_set_static_delegate = new efl_ui_win_wm_available_rotations_set_delegate(wm_available_rotations_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_wm_available_rotations_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_wm_available_rotations_set_static_delegate)});
+      if (efl_ui_win_wm_available_profiles_get_static_delegate == null)
+      efl_ui_win_wm_available_profiles_get_static_delegate = new efl_ui_win_wm_available_profiles_get_delegate(wm_available_profiles_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_wm_available_profiles_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_wm_available_profiles_get_static_delegate)});
+      if (efl_ui_win_wm_available_profiles_set_static_delegate == null)
+      efl_ui_win_wm_available_profiles_set_static_delegate = new efl_ui_win_wm_available_profiles_set_delegate(wm_available_profiles_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_wm_available_profiles_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_wm_available_profiles_set_static_delegate)});
+      if (efl_ui_win_screen_constrain_get_static_delegate == null)
+      efl_ui_win_screen_constrain_get_static_delegate = new efl_ui_win_screen_constrain_get_delegate(screen_constrain_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_screen_constrain_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_screen_constrain_get_static_delegate)});
+      if (efl_ui_win_screen_constrain_set_static_delegate == null)
+      efl_ui_win_screen_constrain_set_static_delegate = new efl_ui_win_screen_constrain_set_delegate(screen_constrain_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_screen_constrain_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_screen_constrain_set_static_delegate)});
+      if (efl_ui_win_prop_focus_skip_set_static_delegate == null)
+      efl_ui_win_prop_focus_skip_set_static_delegate = new efl_ui_win_prop_focus_skip_set_delegate(prop_focus_skip_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_prop_focus_skip_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_prop_focus_skip_set_static_delegate)});
+      if (efl_ui_win_autohide_get_static_delegate == null)
+      efl_ui_win_autohide_get_static_delegate = new efl_ui_win_autohide_get_delegate(autohide_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_autohide_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_autohide_get_static_delegate)});
+      if (efl_ui_win_autohide_set_static_delegate == null)
+      efl_ui_win_autohide_set_static_delegate = new efl_ui_win_autohide_set_delegate(autohide_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_autohide_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_autohide_set_static_delegate)});
+      if (efl_ui_win_exit_on_close_get_static_delegate == null)
+      efl_ui_win_exit_on_close_get_static_delegate = new efl_ui_win_exit_on_close_get_delegate(exit_on_close_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_exit_on_close_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_exit_on_close_get_static_delegate)});
+      if (efl_ui_win_exit_on_close_set_static_delegate == null)
+      efl_ui_win_exit_on_close_set_static_delegate = new efl_ui_win_exit_on_close_set_delegate(exit_on_close_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_exit_on_close_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_exit_on_close_set_static_delegate)});
+      if (efl_ui_win_icon_object_get_static_delegate == null)
+      efl_ui_win_icon_object_get_static_delegate = new efl_ui_win_icon_object_get_delegate(icon_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_icon_object_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_icon_object_get_static_delegate)});
+      if (efl_ui_win_icon_object_set_static_delegate == null)
+      efl_ui_win_icon_object_set_static_delegate = new efl_ui_win_icon_object_set_delegate(icon_object_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_icon_object_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_icon_object_set_static_delegate)});
+      if (efl_ui_win_minimized_get_static_delegate == null)
+      efl_ui_win_minimized_get_static_delegate = new efl_ui_win_minimized_get_delegate(minimized_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_minimized_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_minimized_get_static_delegate)});
+      if (efl_ui_win_minimized_set_static_delegate == null)
+      efl_ui_win_minimized_set_static_delegate = new efl_ui_win_minimized_set_delegate(minimized_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_minimized_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_minimized_set_static_delegate)});
+      if (efl_ui_win_maximized_get_static_delegate == null)
+      efl_ui_win_maximized_get_static_delegate = new efl_ui_win_maximized_get_delegate(maximized_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_maximized_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_maximized_get_static_delegate)});
+      if (efl_ui_win_maximized_set_static_delegate == null)
+      efl_ui_win_maximized_set_static_delegate = new efl_ui_win_maximized_set_delegate(maximized_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_maximized_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_maximized_set_static_delegate)});
+      if (efl_ui_win_fullscreen_get_static_delegate == null)
+      efl_ui_win_fullscreen_get_static_delegate = new efl_ui_win_fullscreen_get_delegate(fullscreen_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_fullscreen_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_fullscreen_get_static_delegate)});
+      if (efl_ui_win_fullscreen_set_static_delegate == null)
+      efl_ui_win_fullscreen_set_static_delegate = new efl_ui_win_fullscreen_set_delegate(fullscreen_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_fullscreen_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_fullscreen_set_static_delegate)});
+      if (efl_ui_win_sticky_get_static_delegate == null)
+      efl_ui_win_sticky_get_static_delegate = new efl_ui_win_sticky_get_delegate(sticky_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_sticky_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_sticky_get_static_delegate)});
+      if (efl_ui_win_sticky_set_static_delegate == null)
+      efl_ui_win_sticky_set_static_delegate = new efl_ui_win_sticky_set_delegate(sticky_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_sticky_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_sticky_set_static_delegate)});
+      if (efl_ui_win_urgent_get_static_delegate == null)
+      efl_ui_win_urgent_get_static_delegate = new efl_ui_win_urgent_get_delegate(urgent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_urgent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_urgent_get_static_delegate)});
+      if (efl_ui_win_urgent_set_static_delegate == null)
+      efl_ui_win_urgent_set_static_delegate = new efl_ui_win_urgent_set_delegate(urgent_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_urgent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_urgent_set_static_delegate)});
+      if (efl_ui_win_modal_get_static_delegate == null)
+      efl_ui_win_modal_get_static_delegate = new efl_ui_win_modal_get_delegate(modal_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_modal_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_modal_get_static_delegate)});
+      if (efl_ui_win_modal_set_static_delegate == null)
+      efl_ui_win_modal_set_static_delegate = new efl_ui_win_modal_set_delegate(modal_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_modal_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_modal_set_static_delegate)});
+      if (efl_ui_win_noblank_get_static_delegate == null)
+      efl_ui_win_noblank_get_static_delegate = new efl_ui_win_noblank_get_delegate(noblank_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_noblank_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_noblank_get_static_delegate)});
+      if (efl_ui_win_noblank_set_static_delegate == null)
+      efl_ui_win_noblank_set_static_delegate = new efl_ui_win_noblank_set_delegate(noblank_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_noblank_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_noblank_set_static_delegate)});
+      if (efl_ui_win_borderless_get_static_delegate == null)
+      efl_ui_win_borderless_get_static_delegate = new efl_ui_win_borderless_get_delegate(borderless_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_borderless_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_borderless_get_static_delegate)});
+      if (efl_ui_win_borderless_set_static_delegate == null)
+      efl_ui_win_borderless_set_static_delegate = new efl_ui_win_borderless_set_delegate(borderless_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_borderless_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_borderless_set_static_delegate)});
+      if (efl_ui_win_role_get_static_delegate == null)
+      efl_ui_win_role_get_static_delegate = new efl_ui_win_role_get_delegate(win_role_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_role_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_role_get_static_delegate)});
+      if (efl_ui_win_role_set_static_delegate == null)
+      efl_ui_win_role_set_static_delegate = new efl_ui_win_role_set_delegate(win_role_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_role_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_role_set_static_delegate)});
+      if (efl_ui_win_name_get_static_delegate == null)
+      efl_ui_win_name_get_static_delegate = new efl_ui_win_name_get_delegate(win_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_name_get_static_delegate)});
+      if (efl_ui_win_name_set_static_delegate == null)
+      efl_ui_win_name_set_static_delegate = new efl_ui_win_name_set_delegate(win_name_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_name_set_static_delegate)});
+      if (efl_ui_win_type_get_static_delegate == null)
+      efl_ui_win_type_get_static_delegate = new efl_ui_win_type_get_delegate(win_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_type_get_static_delegate)});
+      if (efl_ui_win_type_set_static_delegate == null)
+      efl_ui_win_type_set_static_delegate = new efl_ui_win_type_set_delegate(win_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_type_set_static_delegate)});
+      if (efl_ui_win_accel_preference_get_static_delegate == null)
+      efl_ui_win_accel_preference_get_static_delegate = new efl_ui_win_accel_preference_get_delegate(accel_preference_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_accel_preference_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_accel_preference_get_static_delegate)});
+      if (efl_ui_win_accel_preference_set_static_delegate == null)
+      efl_ui_win_accel_preference_set_static_delegate = new efl_ui_win_accel_preference_set_delegate(accel_preference_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_accel_preference_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_accel_preference_set_static_delegate)});
+      if (efl_ui_win_alpha_get_static_delegate == null)
+      efl_ui_win_alpha_get_static_delegate = new efl_ui_win_alpha_get_delegate(alpha_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_alpha_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_alpha_get_static_delegate)});
+      if (efl_ui_win_alpha_set_static_delegate == null)
+      efl_ui_win_alpha_set_static_delegate = new efl_ui_win_alpha_set_delegate(alpha_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_alpha_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_alpha_set_static_delegate)});
+      if (efl_ui_win_stack_id_get_static_delegate == null)
+      efl_ui_win_stack_id_get_static_delegate = new efl_ui_win_stack_id_get_delegate(stack_id_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_stack_id_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_stack_id_get_static_delegate)});
+      if (efl_ui_win_stack_master_id_get_static_delegate == null)
+      efl_ui_win_stack_master_id_get_static_delegate = new efl_ui_win_stack_master_id_get_delegate(stack_master_id_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_stack_master_id_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_stack_master_id_get_static_delegate)});
+      if (efl_ui_win_stack_master_id_set_static_delegate == null)
+      efl_ui_win_stack_master_id_set_static_delegate = new efl_ui_win_stack_master_id_set_delegate(stack_master_id_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_stack_master_id_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_stack_master_id_set_static_delegate)});
+      if (efl_ui_win_stack_base_get_static_delegate == null)
+      efl_ui_win_stack_base_get_static_delegate = new efl_ui_win_stack_base_get_delegate(stack_base_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_stack_base_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_stack_base_get_static_delegate)});
+      if (efl_ui_win_stack_base_set_static_delegate == null)
+      efl_ui_win_stack_base_set_static_delegate = new efl_ui_win_stack_base_set_delegate(stack_base_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_stack_base_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_stack_base_set_static_delegate)});
+      if (efl_ui_win_hint_base_get_static_delegate == null)
+      efl_ui_win_hint_base_get_static_delegate = new efl_ui_win_hint_base_get_delegate(hint_base_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_hint_base_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_hint_base_get_static_delegate)});
+      if (efl_ui_win_hint_base_set_static_delegate == null)
+      efl_ui_win_hint_base_set_static_delegate = new efl_ui_win_hint_base_set_delegate(hint_base_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_hint_base_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_hint_base_set_static_delegate)});
+      if (efl_ui_win_hint_step_get_static_delegate == null)
+      efl_ui_win_hint_step_get_static_delegate = new efl_ui_win_hint_step_get_delegate(hint_step_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_hint_step_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_hint_step_get_static_delegate)});
+      if (efl_ui_win_hint_step_set_static_delegate == null)
+      efl_ui_win_hint_step_set_static_delegate = new efl_ui_win_hint_step_set_delegate(hint_step_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_hint_step_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_hint_step_set_static_delegate)});
+      if (efl_ui_win_focus_highlight_enabled_get_static_delegate == null)
+      efl_ui_win_focus_highlight_enabled_get_static_delegate = new efl_ui_win_focus_highlight_enabled_get_delegate(focus_highlight_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_focus_highlight_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_focus_highlight_enabled_get_static_delegate)});
+      if (efl_ui_win_focus_highlight_enabled_set_static_delegate == null)
+      efl_ui_win_focus_highlight_enabled_set_static_delegate = new efl_ui_win_focus_highlight_enabled_set_delegate(focus_highlight_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_focus_highlight_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_focus_highlight_enabled_set_static_delegate)});
+      if (efl_ui_win_focus_highlight_style_get_static_delegate == null)
+      efl_ui_win_focus_highlight_style_get_static_delegate = new efl_ui_win_focus_highlight_style_get_delegate(focus_highlight_style_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_focus_highlight_style_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_focus_highlight_style_get_static_delegate)});
+      if (efl_ui_win_focus_highlight_style_set_static_delegate == null)
+      efl_ui_win_focus_highlight_style_set_static_delegate = new efl_ui_win_focus_highlight_style_set_delegate(focus_highlight_style_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_focus_highlight_style_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_focus_highlight_style_set_static_delegate)});
+      if (efl_ui_win_focus_highlight_animate_get_static_delegate == null)
+      efl_ui_win_focus_highlight_animate_get_static_delegate = new efl_ui_win_focus_highlight_animate_get_delegate(focus_highlight_animate_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_focus_highlight_animate_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_focus_highlight_animate_get_static_delegate)});
+      if (efl_ui_win_focus_highlight_animate_set_static_delegate == null)
+      efl_ui_win_focus_highlight_animate_set_static_delegate = new efl_ui_win_focus_highlight_animate_set_delegate(focus_highlight_animate_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_focus_highlight_animate_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_focus_highlight_animate_set_static_delegate)});
+      if (efl_ui_win_stack_pop_to_static_delegate == null)
+      efl_ui_win_stack_pop_to_static_delegate = new efl_ui_win_stack_pop_to_delegate(stack_pop_to);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_stack_pop_to"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_stack_pop_to_static_delegate)});
+      if (efl_ui_win_activate_static_delegate == null)
+      efl_ui_win_activate_static_delegate = new efl_ui_win_activate_delegate(activate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_activate"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_activate_static_delegate)});
+      if (efl_ui_win_center_static_delegate == null)
+      efl_ui_win_center_static_delegate = new efl_ui_win_center_delegate(center);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_center"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_center_static_delegate)});
+      if (efl_ui_win_keygrab_set_static_delegate == null)
+      efl_ui_win_keygrab_set_static_delegate = new efl_ui_win_keygrab_set_delegate(keygrab_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_keygrab_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_keygrab_set_static_delegate)});
+      if (efl_ui_win_keygrab_unset_static_delegate == null)
+      efl_ui_win_keygrab_unset_static_delegate = new efl_ui_win_keygrab_unset_delegate(keygrab_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_keygrab_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_keygrab_unset_static_delegate)});
+      if (efl_ui_win_move_resize_start_static_delegate == null)
+      efl_ui_win_move_resize_start_static_delegate = new efl_ui_win_move_resize_start_delegate(move_resize_start);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_move_resize_start"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_move_resize_start_static_delegate)});
+      if (efl_ui_win_pointer_iterate_static_delegate == null)
+      efl_ui_win_pointer_iterate_static_delegate = new efl_ui_win_pointer_iterate_delegate(pointer_iterate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_pointer_iterate"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_pointer_iterate_static_delegate)});
+      if (efl_config_get_static_delegate == null)
+      efl_config_get_static_delegate = new efl_config_get_delegate(config_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_get"), func = Marshal.GetFunctionPointerForDelegate(efl_config_get_static_delegate)});
+      if (efl_config_set_static_delegate == null)
+      efl_config_set_static_delegate = new efl_config_set_delegate(config_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_config_set"), func = Marshal.GetFunctionPointerForDelegate(efl_config_set_static_delegate)});
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_screen_size_in_pixels_get_static_delegate == null)
+      efl_screen_size_in_pixels_get_static_delegate = new efl_screen_size_in_pixels_get_delegate(screen_size_in_pixels_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_size_in_pixels_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_size_in_pixels_get_static_delegate)});
+      if (efl_screen_scale_factor_get_static_delegate == null)
+      efl_screen_scale_factor_get_static_delegate = new efl_screen_scale_factor_get_delegate(screen_scale_factor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_scale_factor_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_scale_factor_get_static_delegate)});
+      if (efl_screen_rotation_get_static_delegate == null)
+      efl_screen_rotation_get_static_delegate = new efl_screen_rotation_get_delegate(screen_rotation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_rotation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_rotation_get_static_delegate)});
+      if (efl_screen_dpi_get_static_delegate == null)
+      efl_screen_dpi_get_static_delegate = new efl_screen_dpi_get_delegate(screen_dpi_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_screen_dpi_get"), func = Marshal.GetFunctionPointerForDelegate(efl_screen_dpi_get_static_delegate)});
+      if (efl_text_get_static_delegate == null)
+      efl_text_get_static_delegate = new efl_text_get_delegate(text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_get"), func = Marshal.GetFunctionPointerForDelegate(efl_text_get_static_delegate)});
+      if (efl_text_set_static_delegate == null)
+      efl_text_set_static_delegate = new efl_text_set_delegate(text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_text_set"), func = Marshal.GetFunctionPointerForDelegate(efl_text_set_static_delegate)});
+      if (efl_canvas_scene_image_max_size_get_static_delegate == null)
+      efl_canvas_scene_image_max_size_get_static_delegate = new efl_canvas_scene_image_max_size_get_delegate(image_max_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_image_max_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_image_max_size_get_static_delegate)});
+      if (efl_canvas_scene_group_objects_calculating_get_static_delegate == null)
+      efl_canvas_scene_group_objects_calculating_get_static_delegate = new efl_canvas_scene_group_objects_calculating_get_delegate(group_objects_calculating_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_group_objects_calculating_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_group_objects_calculating_get_static_delegate)});
+      if (efl_canvas_scene_device_get_static_delegate == null)
+      efl_canvas_scene_device_get_static_delegate = new efl_canvas_scene_device_get_delegate(device_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_device_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_device_get_static_delegate)});
+      if (efl_canvas_scene_seat_get_static_delegate == null)
+      efl_canvas_scene_seat_get_static_delegate = new efl_canvas_scene_seat_get_delegate(seat_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_seat_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_seat_get_static_delegate)});
+      if (efl_canvas_scene_seat_default_get_static_delegate == null)
+      efl_canvas_scene_seat_default_get_static_delegate = new efl_canvas_scene_seat_default_get_delegate(seat_default_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_seat_default_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_seat_default_get_static_delegate)});
+      if (efl_canvas_scene_pointer_position_get_static_delegate == null)
+      efl_canvas_scene_pointer_position_get_static_delegate = new efl_canvas_scene_pointer_position_get_delegate(pointer_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_pointer_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_pointer_position_get_static_delegate)});
+      if (efl_canvas_scene_group_objects_calculate_static_delegate == null)
+      efl_canvas_scene_group_objects_calculate_static_delegate = new efl_canvas_scene_group_objects_calculate_delegate(group_objects_calculate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_group_objects_calculate"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_group_objects_calculate_static_delegate)});
+      if (efl_canvas_scene_objects_at_xy_get_static_delegate == null)
+      efl_canvas_scene_objects_at_xy_get_static_delegate = new efl_canvas_scene_objects_at_xy_get_delegate(objects_at_xy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_objects_at_xy_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_objects_at_xy_get_static_delegate)});
+      if (efl_canvas_scene_object_top_at_xy_get_static_delegate == null)
+      efl_canvas_scene_object_top_at_xy_get_static_delegate = new efl_canvas_scene_object_top_at_xy_get_delegate(object_top_at_xy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_object_top_at_xy_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_object_top_at_xy_get_static_delegate)});
+      if (efl_canvas_scene_objects_in_rectangle_get_static_delegate == null)
+      efl_canvas_scene_objects_in_rectangle_get_static_delegate = new efl_canvas_scene_objects_in_rectangle_get_delegate(objects_in_rectangle_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_objects_in_rectangle_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_objects_in_rectangle_get_static_delegate)});
+      if (efl_canvas_scene_object_top_in_rectangle_get_static_delegate == null)
+      efl_canvas_scene_object_top_in_rectangle_get_static_delegate = new efl_canvas_scene_object_top_in_rectangle_get_delegate(object_top_in_rectangle_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_object_top_in_rectangle_get"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_object_top_in_rectangle_get_static_delegate)});
+      if (efl_canvas_scene_seats_static_delegate == null)
+      efl_canvas_scene_seats_static_delegate = new efl_canvas_scene_seats_delegate(seats);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_canvas_scene_seats"), func = Marshal.GetFunctionPointerForDelegate(efl_canvas_scene_seats_static_delegate)});
+      if (efl_input_modifier_enabled_get_static_delegate == null)
+      efl_input_modifier_enabled_get_static_delegate = new efl_input_modifier_enabled_get_delegate(modifier_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_modifier_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_modifier_enabled_get_static_delegate)});
+      if (efl_input_lock_enabled_get_static_delegate == null)
+      efl_input_lock_enabled_get_static_delegate = new efl_input_lock_enabled_get_delegate(lock_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_input_lock_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(efl_input_lock_enabled_get_static_delegate)});
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.Win.efl_ui_win_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.Win.efl_ui_win_class_get();
+   }
+
+
+    private delegate Efl.Ui.WinIndicatorMode efl_ui_win_indicator_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.WinIndicatorMode efl_ui_win_indicator_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_indicator_mode_get_api_delegate> efl_ui_win_indicator_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_indicator_mode_get_api_delegate>(_Module, "efl_ui_win_indicator_mode_get");
+    private static Efl.Ui.WinIndicatorMode indicator_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_indicator_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.WinIndicatorMode _ret_var = default(Efl.Ui.WinIndicatorMode);
+         try {
+            _ret_var = ((Win)wrapper).GetIndicatorMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_indicator_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_indicator_mode_get_delegate efl_ui_win_indicator_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_indicator_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WinIndicatorMode type);
+
+
+    public delegate  void efl_ui_win_indicator_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.WinIndicatorMode type);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_indicator_mode_set_api_delegate> efl_ui_win_indicator_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_indicator_mode_set_api_delegate>(_Module, "efl_ui_win_indicator_mode_set");
+    private static  void indicator_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WinIndicatorMode type)
+   {
+      Eina.Log.Debug("function efl_ui_win_indicator_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetIndicatorMode( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_indicator_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_ui_win_indicator_mode_set_delegate efl_ui_win_indicator_mode_set_static_delegate;
+
+
+    private delegate Efl.Ui.WinKeyboardMode efl_ui_win_keyboard_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.WinKeyboardMode efl_ui_win_keyboard_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_keyboard_mode_get_api_delegate> efl_ui_win_keyboard_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_keyboard_mode_get_api_delegate>(_Module, "efl_ui_win_keyboard_mode_get");
+    private static Efl.Ui.WinKeyboardMode keyboard_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_keyboard_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.WinKeyboardMode _ret_var = default(Efl.Ui.WinKeyboardMode);
+         try {
+            _ret_var = ((Win)wrapper).GetKeyboardMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_keyboard_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_keyboard_mode_get_delegate efl_ui_win_keyboard_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_keyboard_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WinKeyboardMode mode);
+
+
+    public delegate  void efl_ui_win_keyboard_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.WinKeyboardMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_keyboard_mode_set_api_delegate> efl_ui_win_keyboard_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_keyboard_mode_set_api_delegate>(_Module, "efl_ui_win_keyboard_mode_set");
+    private static  void keyboard_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WinKeyboardMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_win_keyboard_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetKeyboardMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_keyboard_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_win_keyboard_mode_set_delegate efl_ui_win_keyboard_mode_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_wm_available_rotations_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool allow_0,  [MarshalAs(UnmanagedType.U1)]  out bool allow_90,  [MarshalAs(UnmanagedType.U1)]  out bool allow_180,  [MarshalAs(UnmanagedType.U1)]  out bool allow_270);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_wm_available_rotations_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool allow_0,  [MarshalAs(UnmanagedType.U1)]  out bool allow_90,  [MarshalAs(UnmanagedType.U1)]  out bool allow_180,  [MarshalAs(UnmanagedType.U1)]  out bool allow_270);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_rotations_get_api_delegate> efl_ui_win_wm_available_rotations_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_rotations_get_api_delegate>(_Module, "efl_ui_win_wm_available_rotations_get");
+    private static bool wm_available_rotations_get(System.IntPtr obj, System.IntPtr pd,  out bool allow_0,  out bool allow_90,  out bool allow_180,  out bool allow_270)
+   {
+      Eina.Log.Debug("function efl_ui_win_wm_available_rotations_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       allow_0 = default(bool);      allow_90 = default(bool);      allow_180 = default(bool);      allow_270 = default(bool);                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetWmAvailableRotations( out allow_0,  out allow_90,  out allow_180,  out allow_270);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_ui_win_wm_available_rotations_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out allow_0,  out allow_90,  out allow_180,  out allow_270);
+      }
+   }
+   private static efl_ui_win_wm_available_rotations_get_delegate efl_ui_win_wm_available_rotations_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_wm_available_rotations_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool allow_0,  [MarshalAs(UnmanagedType.U1)]  bool allow_90,  [MarshalAs(UnmanagedType.U1)]  bool allow_180,  [MarshalAs(UnmanagedType.U1)]  bool allow_270);
+
+
+    public delegate  void efl_ui_win_wm_available_rotations_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool allow_0,  [MarshalAs(UnmanagedType.U1)]  bool allow_90,  [MarshalAs(UnmanagedType.U1)]  bool allow_180,  [MarshalAs(UnmanagedType.U1)]  bool allow_270);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_rotations_set_api_delegate> efl_ui_win_wm_available_rotations_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_rotations_set_api_delegate>(_Module, "efl_ui_win_wm_available_rotations_set");
+    private static  void wm_available_rotations_set(System.IntPtr obj, System.IntPtr pd,  bool allow_0,  bool allow_90,  bool allow_180,  bool allow_270)
+   {
+      Eina.Log.Debug("function efl_ui_win_wm_available_rotations_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Win)wrapper).SetWmAvailableRotations( allow_0,  allow_90,  allow_180,  allow_270);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_ui_win_wm_available_rotations_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  allow_0,  allow_90,  allow_180,  allow_270);
+      }
+   }
+   private static efl_ui_win_wm_available_rotations_set_delegate efl_ui_win_wm_available_rotations_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_win_wm_available_profiles_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_win_wm_available_profiles_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_profiles_get_api_delegate> efl_ui_win_wm_available_profiles_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_profiles_get_api_delegate>(_Module, "efl_ui_win_wm_available_profiles_get");
+    private static  System.IntPtr wm_available_profiles_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_wm_available_profiles_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Array< System.String> _ret_var = default(Eina.Array< System.String>);
+         try {
+            _ret_var = ((Win)wrapper).GetWmAvailableProfiles();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_win_wm_available_profiles_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_wm_available_profiles_get_delegate efl_ui_win_wm_available_profiles_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_wm_available_profiles_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr profiles);
+
+
+    public delegate  void efl_ui_win_wm_available_profiles_set_api_delegate(System.IntPtr obj,    System.IntPtr profiles);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_profiles_set_api_delegate> efl_ui_win_wm_available_profiles_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_wm_available_profiles_set_api_delegate>(_Module, "efl_ui_win_wm_available_profiles_set");
+    private static  void wm_available_profiles_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr profiles)
+   {
+      Eina.Log.Debug("function efl_ui_win_wm_available_profiles_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_profiles = new Eina.Array< System.String>(profiles, false, false);
+                     
+         try {
+            ((Win)wrapper).SetWmAvailableProfiles( _in_profiles);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_wm_available_profiles_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  profiles);
+      }
+   }
+   private static efl_ui_win_wm_available_profiles_set_delegate efl_ui_win_wm_available_profiles_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_screen_constrain_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_screen_constrain_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_screen_constrain_get_api_delegate> efl_ui_win_screen_constrain_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_screen_constrain_get_api_delegate>(_Module, "efl_ui_win_screen_constrain_get");
+    private static bool screen_constrain_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_screen_constrain_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetScreenConstrain();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_screen_constrain_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_screen_constrain_get_delegate efl_ui_win_screen_constrain_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_screen_constrain_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool constrain);
+
+
+    public delegate  void efl_ui_win_screen_constrain_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool constrain);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_screen_constrain_set_api_delegate> efl_ui_win_screen_constrain_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_screen_constrain_set_api_delegate>(_Module, "efl_ui_win_screen_constrain_set");
+    private static  void screen_constrain_set(System.IntPtr obj, System.IntPtr pd,  bool constrain)
+   {
+      Eina.Log.Debug("function efl_ui_win_screen_constrain_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetScreenConstrain( constrain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_screen_constrain_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  constrain);
+      }
+   }
+   private static efl_ui_win_screen_constrain_set_delegate efl_ui_win_screen_constrain_set_static_delegate;
+
+
+    private delegate  void efl_ui_win_prop_focus_skip_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+
+
+    public delegate  void efl_ui_win_prop_focus_skip_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool skip);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_prop_focus_skip_set_api_delegate> efl_ui_win_prop_focus_skip_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_prop_focus_skip_set_api_delegate>(_Module, "efl_ui_win_prop_focus_skip_set");
+    private static  void prop_focus_skip_set(System.IntPtr obj, System.IntPtr pd,  bool skip)
+   {
+      Eina.Log.Debug("function efl_ui_win_prop_focus_skip_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetPropFocusSkip( skip);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_prop_focus_skip_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  skip);
+      }
+   }
+   private static efl_ui_win_prop_focus_skip_set_delegate efl_ui_win_prop_focus_skip_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_autohide_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_autohide_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_autohide_get_api_delegate> efl_ui_win_autohide_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_autohide_get_api_delegate>(_Module, "efl_ui_win_autohide_get");
+    private static bool autohide_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_autohide_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetAutohide();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_autohide_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_autohide_get_delegate efl_ui_win_autohide_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_autohide_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool autohide);
+
+
+    public delegate  void efl_ui_win_autohide_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool autohide);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_autohide_set_api_delegate> efl_ui_win_autohide_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_autohide_set_api_delegate>(_Module, "efl_ui_win_autohide_set");
+    private static  void autohide_set(System.IntPtr obj, System.IntPtr pd,  bool autohide)
+   {
+      Eina.Log.Debug("function efl_ui_win_autohide_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetAutohide( autohide);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_autohide_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  autohide);
+      }
+   }
+   private static efl_ui_win_autohide_set_delegate efl_ui_win_autohide_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] private delegate  Eina.Value efl_ui_win_exit_on_close_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] public delegate  Eina.Value efl_ui_win_exit_on_close_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_close_get_api_delegate> efl_ui_win_exit_on_close_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_close_get_api_delegate>(_Module, "efl_ui_win_exit_on_close_get");
+    private static  Eina.Value exit_on_close_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_exit_on_close_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = ((Win)wrapper).GetExitOnClose();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_exit_on_close_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_exit_on_close_get_delegate efl_ui_win_exit_on_close_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_exit_on_close_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value exit_code);
+
+
+    public delegate  void efl_ui_win_exit_on_close_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value exit_code);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_close_set_api_delegate> efl_ui_win_exit_on_close_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_close_set_api_delegate>(_Module, "efl_ui_win_exit_on_close_set");
+    private static  void exit_on_close_set(System.IntPtr obj, System.IntPtr pd,   Eina.Value exit_code)
+   {
+      Eina.Log.Debug("function efl_ui_win_exit_on_close_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetExitOnClose( exit_code);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_exit_on_close_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  exit_code);
+      }
+   }
+   private static efl_ui_win_exit_on_close_set_delegate efl_ui_win_exit_on_close_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_win_icon_object_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_win_icon_object_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_icon_object_get_api_delegate> efl_ui_win_icon_object_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_icon_object_get_api_delegate>(_Module, "efl_ui_win_icon_object_get");
+    private static Efl.Canvas.Object icon_object_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_icon_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Win)wrapper).GetIconObject();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_icon_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_icon_object_get_delegate efl_ui_win_icon_object_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_icon_object_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object icon);
+
+
+    public delegate  void efl_ui_win_icon_object_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object icon);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_icon_object_set_api_delegate> efl_ui_win_icon_object_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_icon_object_set_api_delegate>(_Module, "efl_ui_win_icon_object_set");
+    private static  void icon_object_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object icon)
+   {
+      Eina.Log.Debug("function efl_ui_win_icon_object_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetIconObject( icon);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_icon_object_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  icon);
+      }
+   }
+   private static efl_ui_win_icon_object_set_delegate efl_ui_win_icon_object_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_minimized_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_minimized_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_minimized_get_api_delegate> efl_ui_win_minimized_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_minimized_get_api_delegate>(_Module, "efl_ui_win_minimized_get");
+    private static bool minimized_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_minimized_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetMinimized();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_minimized_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_minimized_get_delegate efl_ui_win_minimized_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_minimized_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool state);
+
+
+    public delegate  void efl_ui_win_minimized_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool state);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_minimized_set_api_delegate> efl_ui_win_minimized_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_minimized_set_api_delegate>(_Module, "efl_ui_win_minimized_set");
+    private static  void minimized_set(System.IntPtr obj, System.IntPtr pd,  bool state)
+   {
+      Eina.Log.Debug("function efl_ui_win_minimized_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetMinimized( state);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_minimized_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  state);
+      }
+   }
+   private static efl_ui_win_minimized_set_delegate efl_ui_win_minimized_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_maximized_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_maximized_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_maximized_get_api_delegate> efl_ui_win_maximized_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_maximized_get_api_delegate>(_Module, "efl_ui_win_maximized_get");
+    private static bool maximized_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_maximized_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetMaximized();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_maximized_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_maximized_get_delegate efl_ui_win_maximized_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_maximized_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool maximized);
+
+
+    public delegate  void efl_ui_win_maximized_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool maximized);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_maximized_set_api_delegate> efl_ui_win_maximized_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_maximized_set_api_delegate>(_Module, "efl_ui_win_maximized_set");
+    private static  void maximized_set(System.IntPtr obj, System.IntPtr pd,  bool maximized)
+   {
+      Eina.Log.Debug("function efl_ui_win_maximized_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetMaximized( maximized);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_maximized_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  maximized);
+      }
+   }
+   private static efl_ui_win_maximized_set_delegate efl_ui_win_maximized_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_fullscreen_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_fullscreen_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_fullscreen_get_api_delegate> efl_ui_win_fullscreen_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_fullscreen_get_api_delegate>(_Module, "efl_ui_win_fullscreen_get");
+    private static bool fullscreen_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_fullscreen_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetFullscreen();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_fullscreen_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_fullscreen_get_delegate efl_ui_win_fullscreen_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_fullscreen_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool fullscreen);
+
+
+    public delegate  void efl_ui_win_fullscreen_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool fullscreen);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_fullscreen_set_api_delegate> efl_ui_win_fullscreen_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_fullscreen_set_api_delegate>(_Module, "efl_ui_win_fullscreen_set");
+    private static  void fullscreen_set(System.IntPtr obj, System.IntPtr pd,  bool fullscreen)
+   {
+      Eina.Log.Debug("function efl_ui_win_fullscreen_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetFullscreen( fullscreen);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_fullscreen_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  fullscreen);
+      }
+   }
+   private static efl_ui_win_fullscreen_set_delegate efl_ui_win_fullscreen_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_sticky_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_sticky_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_sticky_get_api_delegate> efl_ui_win_sticky_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_sticky_get_api_delegate>(_Module, "efl_ui_win_sticky_get");
+    private static bool sticky_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_sticky_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetSticky();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_sticky_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_sticky_get_delegate efl_ui_win_sticky_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_sticky_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool sticky);
+
+
+    public delegate  void efl_ui_win_sticky_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool sticky);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_sticky_set_api_delegate> efl_ui_win_sticky_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_sticky_set_api_delegate>(_Module, "efl_ui_win_sticky_set");
+    private static  void sticky_set(System.IntPtr obj, System.IntPtr pd,  bool sticky)
+   {
+      Eina.Log.Debug("function efl_ui_win_sticky_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetSticky( sticky);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_sticky_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sticky);
+      }
+   }
+   private static efl_ui_win_sticky_set_delegate efl_ui_win_sticky_set_static_delegate;
+
+
+    private delegate Efl.Ui.WinUrgentMode efl_ui_win_urgent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.WinUrgentMode efl_ui_win_urgent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_urgent_get_api_delegate> efl_ui_win_urgent_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_urgent_get_api_delegate>(_Module, "efl_ui_win_urgent_get");
+    private static Efl.Ui.WinUrgentMode urgent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_urgent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.WinUrgentMode _ret_var = default(Efl.Ui.WinUrgentMode);
+         try {
+            _ret_var = ((Win)wrapper).GetUrgent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_urgent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_urgent_get_delegate efl_ui_win_urgent_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_urgent_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WinUrgentMode urgent);
+
+
+    public delegate  void efl_ui_win_urgent_set_api_delegate(System.IntPtr obj,   Efl.Ui.WinUrgentMode urgent);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_urgent_set_api_delegate> efl_ui_win_urgent_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_urgent_set_api_delegate>(_Module, "efl_ui_win_urgent_set");
+    private static  void urgent_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WinUrgentMode urgent)
+   {
+      Eina.Log.Debug("function efl_ui_win_urgent_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetUrgent( urgent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_urgent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  urgent);
+      }
+   }
+   private static efl_ui_win_urgent_set_delegate efl_ui_win_urgent_set_static_delegate;
+
+
+    private delegate Efl.Ui.WinModalMode efl_ui_win_modal_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.WinModalMode efl_ui_win_modal_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_modal_get_api_delegate> efl_ui_win_modal_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_modal_get_api_delegate>(_Module, "efl_ui_win_modal_get");
+    private static Efl.Ui.WinModalMode modal_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_modal_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.WinModalMode _ret_var = default(Efl.Ui.WinModalMode);
+         try {
+            _ret_var = ((Win)wrapper).GetModal();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_modal_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_modal_get_delegate efl_ui_win_modal_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_modal_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WinModalMode modal);
+
+
+    public delegate  void efl_ui_win_modal_set_api_delegate(System.IntPtr obj,   Efl.Ui.WinModalMode modal);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_modal_set_api_delegate> efl_ui_win_modal_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_modal_set_api_delegate>(_Module, "efl_ui_win_modal_set");
+    private static  void modal_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WinModalMode modal)
+   {
+      Eina.Log.Debug("function efl_ui_win_modal_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetModal( modal);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_modal_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  modal);
+      }
+   }
+   private static efl_ui_win_modal_set_delegate efl_ui_win_modal_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_noblank_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_noblank_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_noblank_get_api_delegate> efl_ui_win_noblank_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_noblank_get_api_delegate>(_Module, "efl_ui_win_noblank_get");
+    private static bool noblank_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_noblank_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetNoblank();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_noblank_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_noblank_get_delegate efl_ui_win_noblank_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_noblank_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool noblank);
+
+
+    public delegate  void efl_ui_win_noblank_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool noblank);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_noblank_set_api_delegate> efl_ui_win_noblank_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_noblank_set_api_delegate>(_Module, "efl_ui_win_noblank_set");
+    private static  void noblank_set(System.IntPtr obj, System.IntPtr pd,  bool noblank)
+   {
+      Eina.Log.Debug("function efl_ui_win_noblank_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetNoblank( noblank);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_noblank_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  noblank);
+      }
+   }
+   private static efl_ui_win_noblank_set_delegate efl_ui_win_noblank_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_borderless_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_borderless_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_borderless_get_api_delegate> efl_ui_win_borderless_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_borderless_get_api_delegate>(_Module, "efl_ui_win_borderless_get");
+    private static bool borderless_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_borderless_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetBorderless();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_borderless_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_borderless_get_delegate efl_ui_win_borderless_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_borderless_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool borderless);
+
+
+    public delegate  void efl_ui_win_borderless_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool borderless);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_borderless_set_api_delegate> efl_ui_win_borderless_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_borderless_set_api_delegate>(_Module, "efl_ui_win_borderless_set");
+    private static  void borderless_set(System.IntPtr obj, System.IntPtr pd,  bool borderless)
+   {
+      Eina.Log.Debug("function efl_ui_win_borderless_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetBorderless( borderless);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_borderless_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  borderless);
+      }
+   }
+   private static efl_ui_win_borderless_set_delegate efl_ui_win_borderless_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_win_role_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_win_role_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_role_get_api_delegate> efl_ui_win_role_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_role_get_api_delegate>(_Module, "efl_ui_win_role_get");
+    private static  System.String win_role_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_role_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Win)wrapper).GetWinRole();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_role_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_role_get_delegate efl_ui_win_role_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_role_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String role);
+
+
+    public delegate  void efl_ui_win_role_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String role);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_role_set_api_delegate> efl_ui_win_role_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_role_set_api_delegate>(_Module, "efl_ui_win_role_set");
+    private static  void win_role_set(System.IntPtr obj, System.IntPtr pd,   System.String role)
+   {
+      Eina.Log.Debug("function efl_ui_win_role_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetWinRole( role);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_role_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  role);
+      }
+   }
+   private static efl_ui_win_role_set_delegate efl_ui_win_role_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_win_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_win_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_name_get_api_delegate> efl_ui_win_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_name_get_api_delegate>(_Module, "efl_ui_win_name_get");
+    private static  System.String win_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Win)wrapper).GetWinName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_name_get_delegate efl_ui_win_name_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_name_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    public delegate  void efl_ui_win_name_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_name_set_api_delegate> efl_ui_win_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_name_set_api_delegate>(_Module, "efl_ui_win_name_set");
+    private static  void win_name_set(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_ui_win_name_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetWinName( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_ui_win_name_set_delegate efl_ui_win_name_set_static_delegate;
+
+
+    private delegate Efl.Ui.WinType efl_ui_win_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.WinType efl_ui_win_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_type_get_api_delegate> efl_ui_win_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_type_get_api_delegate>(_Module, "efl_ui_win_type_get");
+    private static Efl.Ui.WinType win_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.WinType _ret_var = default(Efl.Ui.WinType);
+         try {
+            _ret_var = ((Win)wrapper).GetWinType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_type_get_delegate efl_ui_win_type_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WinType type);
+
+
+    public delegate  void efl_ui_win_type_set_api_delegate(System.IntPtr obj,   Efl.Ui.WinType type);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_type_set_api_delegate> efl_ui_win_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_type_set_api_delegate>(_Module, "efl_ui_win_type_set");
+    private static  void win_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WinType type)
+   {
+      Eina.Log.Debug("function efl_ui_win_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetWinType( type);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type);
+      }
+   }
+   private static efl_ui_win_type_set_delegate efl_ui_win_type_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_win_accel_preference_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_win_accel_preference_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_accel_preference_get_api_delegate> efl_ui_win_accel_preference_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_accel_preference_get_api_delegate>(_Module, "efl_ui_win_accel_preference_get");
+    private static  System.String accel_preference_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_accel_preference_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Win)wrapper).GetAccelPreference();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_accel_preference_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_accel_preference_get_delegate efl_ui_win_accel_preference_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_accel_preference_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String accel);
+
+
+    public delegate  void efl_ui_win_accel_preference_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String accel);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_accel_preference_set_api_delegate> efl_ui_win_accel_preference_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_accel_preference_set_api_delegate>(_Module, "efl_ui_win_accel_preference_set");
+    private static  void accel_preference_set(System.IntPtr obj, System.IntPtr pd,   System.String accel)
+   {
+      Eina.Log.Debug("function efl_ui_win_accel_preference_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetAccelPreference( accel);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_accel_preference_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  accel);
+      }
+   }
+   private static efl_ui_win_accel_preference_set_delegate efl_ui_win_accel_preference_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_alpha_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_alpha_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_alpha_get_api_delegate> efl_ui_win_alpha_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_alpha_get_api_delegate>(_Module, "efl_ui_win_alpha_get");
+    private static bool alpha_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_alpha_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetAlpha();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_alpha_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_alpha_get_delegate efl_ui_win_alpha_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_alpha_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+
+
+    public delegate  void efl_ui_win_alpha_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool alpha);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_alpha_set_api_delegate> efl_ui_win_alpha_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_alpha_set_api_delegate>(_Module, "efl_ui_win_alpha_set");
+    private static  void alpha_set(System.IntPtr obj, System.IntPtr pd,  bool alpha)
+   {
+      Eina.Log.Debug("function efl_ui_win_alpha_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetAlpha( alpha);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_alpha_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  alpha);
+      }
+   }
+   private static efl_ui_win_alpha_set_delegate efl_ui_win_alpha_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_win_stack_id_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_win_stack_id_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_stack_id_get_api_delegate> efl_ui_win_stack_id_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_stack_id_get_api_delegate>(_Module, "efl_ui_win_stack_id_get");
+    private static  System.String stack_id_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_stack_id_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Win)wrapper).GetStackId();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_stack_id_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_stack_id_get_delegate efl_ui_win_stack_id_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_win_stack_master_id_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_win_stack_master_id_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_stack_master_id_get_api_delegate> efl_ui_win_stack_master_id_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_stack_master_id_get_api_delegate>(_Module, "efl_ui_win_stack_master_id_get");
+    private static  System.String stack_master_id_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_stack_master_id_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Win)wrapper).GetStackMasterId();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_stack_master_id_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_stack_master_id_get_delegate efl_ui_win_stack_master_id_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_stack_master_id_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String id);
+
+
+    public delegate  void efl_ui_win_stack_master_id_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String id);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_stack_master_id_set_api_delegate> efl_ui_win_stack_master_id_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_stack_master_id_set_api_delegate>(_Module, "efl_ui_win_stack_master_id_set");
+    private static  void stack_master_id_set(System.IntPtr obj, System.IntPtr pd,   System.String id)
+   {
+      Eina.Log.Debug("function efl_ui_win_stack_master_id_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetStackMasterId( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_stack_master_id_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_ui_win_stack_master_id_set_delegate efl_ui_win_stack_master_id_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_stack_base_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_stack_base_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_stack_base_get_api_delegate> efl_ui_win_stack_base_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_stack_base_get_api_delegate>(_Module, "efl_ui_win_stack_base_get");
+    private static bool stack_base_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_stack_base_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetStackBase();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_stack_base_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_stack_base_get_delegate efl_ui_win_stack_base_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_stack_base_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool kw_base);
+
+
+    public delegate  void efl_ui_win_stack_base_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool kw_base);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_stack_base_set_api_delegate> efl_ui_win_stack_base_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_stack_base_set_api_delegate>(_Module, "efl_ui_win_stack_base_set");
+    private static  void stack_base_set(System.IntPtr obj, System.IntPtr pd,  bool kw_base)
+   {
+      Eina.Log.Debug("function efl_ui_win_stack_base_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetStackBase( kw_base);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_stack_base_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_base);
+      }
+   }
+   private static efl_ui_win_stack_base_set_delegate efl_ui_win_stack_base_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] private delegate  Eina.Value efl_ui_win_exit_on_all_windows_closed_get_delegate();
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))] public delegate  Eina.Value efl_ui_win_exit_on_all_windows_closed_get_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_all_windows_closed_get_api_delegate> efl_ui_win_exit_on_all_windows_closed_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_all_windows_closed_get_api_delegate>(_Module, "efl_ui_win_exit_on_all_windows_closed_get");
+    private static  Eina.Value exit_on_all_windows_closed_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_exit_on_all_windows_closed_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = Win.GetExitOnAllWindowsClosed();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_exit_on_all_windows_closed_get_ptr.Value.Delegate();
+      }
+   }
+
+
+    private delegate  void efl_ui_win_exit_on_all_windows_closed_set_delegate( [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value exit_code);
+
+
+    public delegate  void efl_ui_win_exit_on_all_windows_closed_set_api_delegate( [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value exit_code);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_all_windows_closed_set_api_delegate> efl_ui_win_exit_on_all_windows_closed_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_exit_on_all_windows_closed_set_api_delegate>(_Module, "efl_ui_win_exit_on_all_windows_closed_set");
+    private static  void exit_on_all_windows_closed_set(System.IntPtr obj, System.IntPtr pd,   Eina.Value exit_code)
+   {
+      Eina.Log.Debug("function efl_ui_win_exit_on_all_windows_closed_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            Win.SetExitOnAllWindowsClosed( exit_code);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_exit_on_all_windows_closed_set_ptr.Value.Delegate( exit_code);
+      }
+   }
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_win_hint_base_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_win_hint_base_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_hint_base_get_api_delegate> efl_ui_win_hint_base_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_hint_base_get_api_delegate>(_Module, "efl_ui_win_hint_base_get");
+    private static Eina.Size2D_StructInternal hint_base_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_hint_base_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Win)wrapper).GetHintBase();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_win_hint_base_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_hint_base_get_delegate efl_ui_win_hint_base_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_hint_base_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_ui_win_hint_base_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_hint_base_set_api_delegate> efl_ui_win_hint_base_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_hint_base_set_api_delegate>(_Module, "efl_ui_win_hint_base_set");
+    private static  void hint_base_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_ui_win_hint_base_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Win)wrapper).SetHintBase( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_hint_base_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_ui_win_hint_base_set_delegate efl_ui_win_hint_base_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_ui_win_hint_step_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_ui_win_hint_step_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_hint_step_get_api_delegate> efl_ui_win_hint_step_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_hint_step_get_api_delegate>(_Module, "efl_ui_win_hint_step_get");
+    private static Eina.Size2D_StructInternal hint_step_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_hint_step_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Win)wrapper).GetHintStep();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_win_hint_step_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_hint_step_get_delegate efl_ui_win_hint_step_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_hint_step_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal sz);
+
+
+    public delegate  void efl_ui_win_hint_step_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal sz);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_hint_step_set_api_delegate> efl_ui_win_hint_step_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_hint_step_set_api_delegate>(_Module, "efl_ui_win_hint_step_set");
+    private static  void hint_step_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal sz)
+   {
+      Eina.Log.Debug("function efl_ui_win_hint_step_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_sz = Eina.Size2D_StructConversion.ToManaged(sz);
+                     
+         try {
+            ((Win)wrapper).SetHintStep( _in_sz);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_hint_step_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  sz);
+      }
+   }
+   private static efl_ui_win_hint_step_set_delegate efl_ui_win_hint_step_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_focus_highlight_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_focus_highlight_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_enabled_get_api_delegate> efl_ui_win_focus_highlight_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_enabled_get_api_delegate>(_Module, "efl_ui_win_focus_highlight_enabled_get");
+    private static bool focus_highlight_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_focus_highlight_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetFocusHighlightEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_focus_highlight_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_focus_highlight_enabled_get_delegate efl_ui_win_focus_highlight_enabled_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_focus_highlight_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+
+
+    public delegate  void efl_ui_win_focus_highlight_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enabled);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_enabled_set_api_delegate> efl_ui_win_focus_highlight_enabled_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_enabled_set_api_delegate>(_Module, "efl_ui_win_focus_highlight_enabled_set");
+    private static  void focus_highlight_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool enabled)
+   {
+      Eina.Log.Debug("function efl_ui_win_focus_highlight_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetFocusHighlightEnabled( enabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_focus_highlight_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enabled);
+      }
+   }
+   private static efl_ui_win_focus_highlight_enabled_set_delegate efl_ui_win_focus_highlight_enabled_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_ui_win_focus_highlight_style_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_ui_win_focus_highlight_style_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_style_get_api_delegate> efl_ui_win_focus_highlight_style_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_style_get_api_delegate>(_Module, "efl_ui_win_focus_highlight_style_get");
+    private static  System.String focus_highlight_style_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_focus_highlight_style_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Win)wrapper).GetFocusHighlightStyle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_focus_highlight_style_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_focus_highlight_style_get_delegate efl_ui_win_focus_highlight_style_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_focus_highlight_style_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_focus_highlight_style_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_style_set_api_delegate> efl_ui_win_focus_highlight_style_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_style_set_api_delegate>(_Module, "efl_ui_win_focus_highlight_style_set");
+    private static bool focus_highlight_style_set(System.IntPtr obj, System.IntPtr pd,   System.String style)
+   {
+      Eina.Log.Debug("function efl_ui_win_focus_highlight_style_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).SetFocusHighlightStyle( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_win_focus_highlight_style_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static efl_ui_win_focus_highlight_style_set_delegate efl_ui_win_focus_highlight_style_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_focus_highlight_animate_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_focus_highlight_animate_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_animate_get_api_delegate> efl_ui_win_focus_highlight_animate_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_animate_get_api_delegate>(_Module, "efl_ui_win_focus_highlight_animate_get");
+    private static bool focus_highlight_animate_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_focus_highlight_animate_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetFocusHighlightAnimate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_focus_highlight_animate_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_focus_highlight_animate_get_delegate efl_ui_win_focus_highlight_animate_get_static_delegate;
+
+
+    private delegate  void efl_ui_win_focus_highlight_animate_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool animate);
+
+
+    public delegate  void efl_ui_win_focus_highlight_animate_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool animate);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_animate_set_api_delegate> efl_ui_win_focus_highlight_animate_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_focus_highlight_animate_set_api_delegate>(_Module, "efl_ui_win_focus_highlight_animate_set");
+    private static  void focus_highlight_animate_set(System.IntPtr obj, System.IntPtr pd,  bool animate)
+   {
+      Eina.Log.Debug("function efl_ui_win_focus_highlight_animate_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetFocusHighlightAnimate( animate);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_win_focus_highlight_animate_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animate);
+      }
+   }
+   private static efl_ui_win_focus_highlight_animate_set_delegate efl_ui_win_focus_highlight_animate_set_static_delegate;
+
+
+    private delegate  void efl_ui_win_stack_pop_to_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_win_stack_pop_to_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_stack_pop_to_api_delegate> efl_ui_win_stack_pop_to_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_stack_pop_to_api_delegate>(_Module, "efl_ui_win_stack_pop_to");
+    private static  void stack_pop_to(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_stack_pop_to was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Win)wrapper).StackPopTo();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_win_stack_pop_to_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_stack_pop_to_delegate efl_ui_win_stack_pop_to_static_delegate;
+
+
+    private delegate  void efl_ui_win_activate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_win_activate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_activate_api_delegate> efl_ui_win_activate_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_activate_api_delegate>(_Module, "efl_ui_win_activate");
+    private static  void activate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_activate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Win)wrapper).Activate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_win_activate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_activate_delegate efl_ui_win_activate_static_delegate;
+
+
+    private delegate  void efl_ui_win_center_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool h,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_ui_win_center_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool h,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_center_api_delegate> efl_ui_win_center_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_center_api_delegate>(_Module, "efl_ui_win_center");
+    private static  void center(System.IntPtr obj, System.IntPtr pd,  bool h,  bool v)
+   {
+      Eina.Log.Debug("function efl_ui_win_center was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Win)wrapper).Center( h,  v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_win_center_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  h,  v);
+      }
+   }
+   private static efl_ui_win_center_delegate efl_ui_win_center_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_keygrab_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers,    int priority,   Efl.Ui.WinKeygrabMode grab_mode);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_keygrab_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers,    int priority,   Efl.Ui.WinKeygrabMode grab_mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_keygrab_set_api_delegate> efl_ui_win_keygrab_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_keygrab_set_api_delegate>(_Module, "efl_ui_win_keygrab_set");
+    private static bool keygrab_set(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers,   int priority,  Efl.Ui.WinKeygrabMode grab_mode)
+   {
+      Eina.Log.Debug("function efl_ui_win_keygrab_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                                            bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).SetKeygrab( key,  modifiers,  not_modifiers,  priority,  grab_mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                                  return _ret_var;
+      } else {
+         return efl_ui_win_keygrab_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  modifiers,  not_modifiers,  priority,  grab_mode);
+      }
+   }
+   private static efl_ui_win_keygrab_set_delegate efl_ui_win_keygrab_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_keygrab_unset_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_keygrab_unset_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,   Efl.Input.Modifier modifiers,   Efl.Input.Modifier not_modifiers);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_keygrab_unset_api_delegate> efl_ui_win_keygrab_unset_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_keygrab_unset_api_delegate>(_Module, "efl_ui_win_keygrab_unset");
+    private static bool keygrab_unset(System.IntPtr obj, System.IntPtr pd,   System.String key,  Efl.Input.Modifier modifiers,  Efl.Input.Modifier not_modifiers)
+   {
+      Eina.Log.Debug("function efl_ui_win_keygrab_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).UnsetKeygrab( key,  modifiers,  not_modifiers);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_win_keygrab_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  modifiers,  not_modifiers);
+      }
+   }
+   private static efl_ui_win_keygrab_unset_delegate efl_ui_win_keygrab_unset_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_move_resize_start_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.WinMoveResizeMode mode);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_move_resize_start_api_delegate(System.IntPtr obj,   Efl.Ui.WinMoveResizeMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_move_resize_start_api_delegate> efl_ui_win_move_resize_start_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_move_resize_start_api_delegate>(_Module, "efl_ui_win_move_resize_start");
+    private static bool move_resize_start(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.WinMoveResizeMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_win_move_resize_start was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).MoveResizeStart( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_win_move_resize_start_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_win_move_resize_start_delegate efl_ui_win_move_resize_start_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_win_pointer_iterate_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hover);
+
+
+    public delegate  System.IntPtr efl_ui_win_pointer_iterate_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hover);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_pointer_iterate_api_delegate> efl_ui_win_pointer_iterate_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_pointer_iterate_api_delegate>(_Module, "efl_ui_win_pointer_iterate");
+    private static  System.IntPtr pointer_iterate(System.IntPtr obj, System.IntPtr pd,  bool hover)
+   {
+      Eina.Log.Debug("function efl_ui_win_pointer_iterate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Iterator<Efl.Input.Pointer> _ret_var = default(Eina.Iterator<Efl.Input.Pointer>);
+         try {
+            _ret_var = ((Win)wrapper).PointerIterate( hover);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_win_pointer_iterate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hover);
+      }
+   }
+   private static efl_ui_win_pointer_iterate_delegate efl_ui_win_pointer_iterate_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))] private delegate  Eina.Value efl_config_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))] public delegate  Eina.Value efl_config_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_config_get_api_delegate> efl_config_get_ptr = new Efl.Eo.FunctionWrapper<efl_config_get_api_delegate>(_Module, "efl_config_get");
+    private static  Eina.Value config_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_config_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Value _ret_var = default( Eina.Value);
+         try {
+            _ret_var = ((Win)wrapper).GetConfig( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_config_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_config_get_delegate efl_config_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_config_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_config_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   Eina.Value value);
+    public static Efl.Eo.FunctionWrapper<efl_config_set_api_delegate> efl_config_set_ptr = new Efl.Eo.FunctionWrapper<efl_config_set_api_delegate>(_Module, "efl_config_set");
+    private static bool config_set(System.IntPtr obj, System.IntPtr pd,   System.String name,   Eina.Value value)
+   {
+      Eina.Log.Debug("function efl_config_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).SetConfig( name,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_config_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name,  value);
+      }
+   }
+   private static efl_config_set_delegate efl_config_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Win)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Win)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_screen_size_in_pixels_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_screen_size_in_pixels_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_screen_size_in_pixels_get_api_delegate> efl_screen_size_in_pixels_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_size_in_pixels_get_api_delegate>(_Module, "efl_screen_size_in_pixels_get");
+    private static Eina.Size2D_StructInternal screen_size_in_pixels_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_screen_size_in_pixels_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Win)wrapper).GetScreenSizeInPixels();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_screen_size_in_pixels_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_screen_size_in_pixels_get_delegate efl_screen_size_in_pixels_get_static_delegate;
+
+
+    private delegate float efl_screen_scale_factor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate float efl_screen_scale_factor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_screen_scale_factor_get_api_delegate> efl_screen_scale_factor_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_scale_factor_get_api_delegate>(_Module, "efl_screen_scale_factor_get");
+    private static float screen_scale_factor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_screen_scale_factor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  float _ret_var = default(float);
+         try {
+            _ret_var = ((Win)wrapper).GetScreenScaleFactor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_screen_scale_factor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_screen_scale_factor_get_delegate efl_screen_scale_factor_get_static_delegate;
+
+
+    private delegate  int efl_screen_rotation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_screen_rotation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_screen_rotation_get_api_delegate> efl_screen_rotation_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_rotation_get_api_delegate>(_Module, "efl_screen_rotation_get");
+    private static  int screen_rotation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_screen_rotation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Win)wrapper).GetScreenRotation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_screen_rotation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_screen_rotation_get_delegate efl_screen_rotation_get_static_delegate;
+
+
+    private delegate  void efl_screen_dpi_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int xdpi,   out  int ydpi);
+
+
+    public delegate  void efl_screen_dpi_get_api_delegate(System.IntPtr obj,   out  int xdpi,   out  int ydpi);
+    public static Efl.Eo.FunctionWrapper<efl_screen_dpi_get_api_delegate> efl_screen_dpi_get_ptr = new Efl.Eo.FunctionWrapper<efl_screen_dpi_get_api_delegate>(_Module, "efl_screen_dpi_get");
+    private static  void screen_dpi_get(System.IntPtr obj, System.IntPtr pd,  out  int xdpi,  out  int ydpi)
+   {
+      Eina.Log.Debug("function efl_screen_dpi_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           xdpi = default( int);      ydpi = default( int);                     
+         try {
+            ((Win)wrapper).GetScreenDpi( out xdpi,  out ydpi);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_screen_dpi_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out xdpi,  out ydpi);
+      }
+   }
+   private static efl_screen_dpi_get_delegate efl_screen_dpi_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_text_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_text_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_text_get_api_delegate> efl_text_get_ptr = new Efl.Eo.FunctionWrapper<efl_text_get_api_delegate>(_Module, "efl_text_get");
+    private static  System.String text_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Win)wrapper).GetText();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_text_get_delegate efl_text_get_static_delegate;
+
+
+    private delegate  void efl_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void efl_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<efl_text_set_api_delegate> efl_text_set_ptr = new Efl.Eo.FunctionWrapper<efl_text_set_api_delegate>(_Module, "efl_text_set");
+    private static  void text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function efl_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static efl_text_set_delegate efl_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_scene_image_max_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Eina.Size2D_StructInternal max);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_scene_image_max_size_get_api_delegate(System.IntPtr obj,   out Eina.Size2D_StructInternal max);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_image_max_size_get_api_delegate> efl_canvas_scene_image_max_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_image_max_size_get_api_delegate>(_Module, "efl_canvas_scene_image_max_size_get");
+    private static bool image_max_size_get(System.IntPtr obj, System.IntPtr pd,  out Eina.Size2D_StructInternal max)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_image_max_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     Eina.Size2D _out_max = default(Eina.Size2D);
+               bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetImageMaxSize( out _out_max);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      max = Eina.Size2D_StructConversion.ToInternal(_out_max);
+            return _ret_var;
+      } else {
+         return efl_canvas_scene_image_max_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out max);
+      }
+   }
+   private static efl_canvas_scene_image_max_size_get_delegate efl_canvas_scene_image_max_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_scene_group_objects_calculating_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_scene_group_objects_calculating_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculating_get_api_delegate> efl_canvas_scene_group_objects_calculating_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculating_get_api_delegate>(_Module, "efl_canvas_scene_group_objects_calculating_get");
+    private static bool group_objects_calculating_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_group_objects_calculating_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetGroupObjectsCalculating();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_scene_group_objects_calculating_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_group_objects_calculating_get_delegate efl_canvas_scene_group_objects_calculating_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_canvas_scene_device_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_canvas_scene_device_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String name);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_device_get_api_delegate> efl_canvas_scene_device_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_device_get_api_delegate>(_Module, "efl_canvas_scene_device_get");
+    private static Efl.Input.Device device_get(System.IntPtr obj, System.IntPtr pd,   System.String name)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_device_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Win)wrapper).GetDevice( name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_scene_device_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name);
+      }
+   }
+   private static efl_canvas_scene_device_get_delegate efl_canvas_scene_device_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_canvas_scene_seat_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_canvas_scene_seat_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_get_api_delegate> efl_canvas_scene_seat_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_get_api_delegate>(_Module, "efl_canvas_scene_seat_get");
+    private static Efl.Input.Device seat_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_seat_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Win)wrapper).GetSeat( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_canvas_scene_seat_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_canvas_scene_seat_get_delegate efl_canvas_scene_seat_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] private delegate Efl.Input.Device efl_canvas_scene_seat_default_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))] public delegate Efl.Input.Device efl_canvas_scene_seat_default_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_default_get_api_delegate> efl_canvas_scene_seat_default_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_seat_default_get_api_delegate>(_Module, "efl_canvas_scene_seat_default_get");
+    private static Efl.Input.Device seat_default_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_seat_default_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Input.Device _ret_var = default(Efl.Input.Device);
+         try {
+            _ret_var = ((Win)wrapper).GetSeatDefault();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_canvas_scene_seat_default_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_seat_default_get_delegate efl_canvas_scene_seat_default_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_canvas_scene_pointer_position_get_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,   out Eina.Position2D_StructInternal pos);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_canvas_scene_pointer_position_get_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat,   out Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_pointer_position_get_api_delegate> efl_canvas_scene_pointer_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_pointer_position_get_api_delegate>(_Module, "efl_canvas_scene_pointer_position_get");
+    private static bool pointer_position_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Device seat,  out Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_pointer_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 Eina.Position2D _out_pos = default(Eina.Position2D);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetPointerPosition( seat,  out _out_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            pos = Eina.Position2D_StructConversion.ToInternal(_out_pos);
+                  return _ret_var;
+      } else {
+         return efl_canvas_scene_pointer_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  seat,  out pos);
+      }
+   }
+   private static efl_canvas_scene_pointer_position_get_delegate efl_canvas_scene_pointer_position_get_static_delegate;
+
+
+    private delegate  void efl_canvas_scene_group_objects_calculate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_canvas_scene_group_objects_calculate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculate_api_delegate> efl_canvas_scene_group_objects_calculate_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_group_objects_calculate_api_delegate>(_Module, "efl_canvas_scene_group_objects_calculate");
+    private static  void group_objects_calculate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_group_objects_calculate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Win)wrapper).CalculateGroupObjects();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_canvas_scene_group_objects_calculate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_group_objects_calculate_delegate efl_canvas_scene_group_objects_calculate_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_scene_objects_at_xy_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+    public delegate  System.IntPtr efl_canvas_scene_objects_at_xy_get_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_at_xy_get_api_delegate> efl_canvas_scene_objects_at_xy_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_at_xy_get_api_delegate>(_Module, "efl_canvas_scene_objects_at_xy_get");
+    private static  System.IntPtr objects_at_xy_get(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_objects_at_xy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                                                         Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Win)wrapper).GetObjectsAtXy( _in_pos,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_scene_objects_at_xy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_objects_at_xy_get_delegate efl_canvas_scene_objects_at_xy_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_canvas_scene_object_top_at_xy_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_canvas_scene_object_top_at_xy_get_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_at_xy_get_api_delegate> efl_canvas_scene_object_top_at_xy_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_at_xy_get_api_delegate>(_Module, "efl_canvas_scene_object_top_at_xy_get");
+    private static Efl.Gfx.Entity object_top_at_xy_get(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_object_top_at_xy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                                                         Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Win)wrapper).GetObjectTopAtXy( _in_pos,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_canvas_scene_object_top_at_xy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_object_top_at_xy_get_delegate efl_canvas_scene_object_top_at_xy_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_scene_objects_in_rectangle_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+    public delegate  System.IntPtr efl_canvas_scene_objects_in_rectangle_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_in_rectangle_get_api_delegate> efl_canvas_scene_objects_in_rectangle_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_objects_in_rectangle_get_api_delegate>(_Module, "efl_canvas_scene_objects_in_rectangle_get");
+    private static  System.IntPtr objects_in_rectangle_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_objects_in_rectangle_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                                         Eina.Iterator<Efl.Gfx.Entity> _ret_var = default(Eina.Iterator<Efl.Gfx.Entity>);
+         try {
+            _ret_var = ((Win)wrapper).GetObjectsInRectangle( _in_rect,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_scene_objects_in_rectangle_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_objects_in_rectangle_get_delegate efl_canvas_scene_objects_in_rectangle_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_canvas_scene_object_top_in_rectangle_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_canvas_scene_object_top_in_rectangle_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect,  [MarshalAs(UnmanagedType.U1)]  bool include_pass_events_objects,  [MarshalAs(UnmanagedType.U1)]  bool include_hidden_objects);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_in_rectangle_get_api_delegate> efl_canvas_scene_object_top_in_rectangle_get_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_object_top_in_rectangle_get_api_delegate>(_Module, "efl_canvas_scene_object_top_in_rectangle_get");
+    private static Efl.Gfx.Entity object_top_in_rectangle_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect,  bool include_pass_events_objects,  bool include_hidden_objects)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_object_top_in_rectangle_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                                         Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((Win)wrapper).GetObjectTopInRectangle( _in_rect,  include_pass_events_objects,  include_hidden_objects);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_canvas_scene_object_top_in_rectangle_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect,  include_pass_events_objects,  include_hidden_objects);
+      }
+   }
+   private static efl_canvas_scene_object_top_in_rectangle_get_delegate efl_canvas_scene_object_top_in_rectangle_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_canvas_scene_seats_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_canvas_scene_seats_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_canvas_scene_seats_api_delegate> efl_canvas_scene_seats_ptr = new Efl.Eo.FunctionWrapper<efl_canvas_scene_seats_api_delegate>(_Module, "efl_canvas_scene_seats");
+    private static  System.IntPtr seats(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_canvas_scene_seats was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Input.Device> _ret_var = default(Eina.Iterator<Efl.Input.Device>);
+         try {
+            _ret_var = ((Win)wrapper).Seats();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_canvas_scene_seats_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_canvas_scene_seats_delegate efl_canvas_scene_seats_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_modifier_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_modifier_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Modifier mod, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate> efl_input_modifier_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_modifier_enabled_get_api_delegate>(_Module, "efl_input_modifier_enabled_get");
+    private static bool modifier_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Modifier mod,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_modifier_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetModifierEnabled( mod,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_modifier_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mod,  seat);
+      }
+   }
+   private static efl_input_modifier_enabled_get_delegate efl_input_modifier_enabled_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_input_lock_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_input_lock_enabled_get_api_delegate(System.IntPtr obj,   Efl.Input.Lock kw_lock, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Input.Device, Efl.Eo.NonOwnTag>))]  Efl.Input.Device seat);
+    public static Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate> efl_input_lock_enabled_get_ptr = new Efl.Eo.FunctionWrapper<efl_input_lock_enabled_get_api_delegate>(_Module, "efl_input_lock_enabled_get");
+    private static bool lock_enabled_get(System.IntPtr obj, System.IntPtr pd,  Efl.Input.Lock kw_lock,  Efl.Input.Device seat)
+   {
+      Eina.Log.Debug("function efl_input_lock_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).GetLockEnabled( kw_lock,  seat);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_input_lock_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  kw_lock,  seat);
+      }
+   }
+   private static efl_input_lock_enabled_get_delegate efl_input_lock_enabled_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Win)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Win)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((Win)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Win)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Win)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((Win)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Win)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Win)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Win)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Win)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((Win)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((Win)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((Win)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Win)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Win)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Win)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Win)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Win)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Defines the types of window that can be created
+/// These are hints set on a window so that a running Window Manager knows how the window should be handled and/or what kind of decorations it should have.
+/// 
+/// Currently, only the X11 backed engines use them.</summary>
+public enum WinType
+{
+/// <summary>Default, unknown, type</summary>
+Unknown = 0,
+/// <summary>A normal window. Indicates a normal, top-level window. Almost every window will be created with this type.</summary>
+Basic = 1,
+/// <summary>Used for simple dialog windows.</summary>
+DialogBasic = 2,
+/// <summary>For special desktop windows, like a background window holding desktop icons.</summary>
+Desktop = 3,
+/// <summary>The window is used as a dock or panel. Usually would be kept on top of any other window by the Window Manager.</summary>
+Dock = 4,
+/// <summary>The window is used to hold a floating toolbar, or similar.</summary>
+Toolbar = 5,
+/// <summary>Similar to @.toolbar.</summary>
+Menu = 6,
+/// <summary>A persistent utility window, like a toolbox or palette.</summary>
+Utility = 7,
+/// <summary>Splash window for a starting up application.</summary>
+Splash = 8,
+/// <summary>The window is a dropdown menu, as when an  entry in a menubar is clicked. This hint exists for completion only, as the EFL way of implementing a menu would not normally use a separate window for its contents.</summary>
+DropdownMenu = 9,
+/// <summary>Like @.dropdown_menu, but for the menu triggered by right-clicking an object.</summary>
+PopupMenu = 10,
+/// <summary>The window is a tooltip. A short piece of explanatory text that typically appear after the mouse cursor hovers over an object for a while. Typically not very commonly used in the EFL.</summary>
+Tooltip = 11,
+/// <summary>A notification window, like a warning about battery life or a new E-Mail received.</summary>
+Notification = 12,
+/// <summary>A window holding the contents of a combo box. Not usually used in the EFL.</summary>
+Combo = 13,
+/// <summary>Used for naviframe style replacement with a back button instead of a close button.
+/// 1.19</summary>
+NaviframeBasic = 17,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>The different layouts that can be requested for the virtual keyboard.
+/// When the application window is being managed by Illume it may request any of the following layouts for the virtual keyboard.</summary>
+public enum WinKeyboardMode
+{
+/// <summary>Unknown keyboard state</summary>
+Unknown = 0,
+/// <summary>Request to deactivate the keyboard</summary>
+Off = 1,
+/// <summary>Enable keyboard with default layout</summary>
+On = 2,
+/// <summary>Alpha (a-z) keyboard layout</summary>
+Alpha = 3,
+/// <summary>Numeric keyboard layout</summary>
+Numeric = 4,
+/// <summary>PIN keyboard layout</summary>
+Pin = 5,
+/// <summary>Phone keyboard layout</summary>
+PhoneNumber = 6,
+/// <summary>Hexadecimal numeric keyboard layout</summary>
+Hex = 7,
+/// <summary>Full (QWERTY) keyboard layout</summary>
+Terminal = 8,
+/// <summary>Password keyboard layout</summary>
+Password = 9,
+/// <summary>IP keyboard layout</summary>
+Ip = 10,
+/// <summary>Host keyboard layout</summary>
+Host = 11,
+/// <summary>File keyboard layout</summary>
+File = 12,
+/// <summary>URL keyboard layout</summary>
+Url = 13,
+/// <summary>Keypad layout</summary>
+Keypad = 14,
+/// <summary>J2ME keyboard layout</summary>
+J2me = 15,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Defines the type indicator that can be shown</summary>
+public enum WinIndicatorMode
+{
+/// <summary>Request to deactivate the indicator</summary>
+Off = 0,
+/// <summary>The indicator icon is opaque, as is the indicator background. The content of window is located at the end of the indicator. The area of indicator and window content are not overlapped</summary>
+BgOpaque = 1,
+/// <summary>Be translucent the indicator</summary>
+Translucent = 2,
+/// <summary>Transparentizes the indicator</summary>
+Transparent = 3,
+/// <summary>The icon of indicator is opaque, but the background is transparent. The content of window is located under the indicator in Z-order. The area of indicator and window content are overlapped</summary>
+BgTransparent = 4,
+/// <summary>The indicator is hidden so user can see only the content of window such as in video mode. If user flicks the upper side of window, the indicator is shown temporarily.</summary>
+Hidden = 5,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Define the keygrab modes of window. A window may send commands to the Keyrouter according this mode, and perform different actions.</summary>
+public enum WinKeygrabMode
+{
+/// <summary>Unknown keygrab mode</summary>
+Unknown = 0,
+/// <summary>Get the grabbed-key together with the other client windows</summary>
+Shared = 256,
+/// <summary>Get the grabbed-key only when window is top of the stack</summary>
+Topmost = 512,
+/// <summary>Get the grabbed-key exclusively regardless of window&apos;s position</summary>
+Exclusive = 1024,
+/// <summary>Get the grabbed-key exclusively regardless of window&apos;s position. This is overrided by grabs from the other client window</summary>
+OverrideExclusive = 2048,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Defines the mode of a modal window</summary>
+public enum WinModalMode
+{
+/// <summary>The window is not modal window.</summary>
+None = 0,
+/// <summary>The window is modal window.</summary>
+Modal = 1,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Defines the mode of a urgent window.</summary>
+public enum WinUrgentMode
+{
+/// <summary>The window is not a urgent window.</summary>
+None = 0,
+/// <summary>The window is a urgent window.</summary>
+Urgent = 1,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Define the move or resize mode of window.
+/// The user can request the display server to start moving or resizing the window by combining these modes. However only limited combinations are allowed.
+/// 
+/// Currently, only the following 9 combinations are permitted. More combinations may be added in future: 1. move, 2. top, 3. bottom, 4. left, 5. right, 6. top | left, 7. top | right, 8. bottom | left, 9. bottom | right.
+/// 1.19</summary>
+public enum WinMoveResizeMode
+{
+/// <summary>Start moving window</summary>
+Move = 1,
+/// <summary>Start resizing window to the top</summary>
+Top = 2,
+/// <summary>Start resizing window to the bottom</summary>
+Bottom = 4,
+/// <summary>Start resizing window to the left</summary>
+Left = 8,
+/// <summary>Start resizing window to the right</summary>
+Right = 16,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>List of window effect.
+/// These list indicates types of window effect. When the effect started or done, the Elm_Win is notified with type information of window effect.</summary>
+public enum WinEffectType
+{
+/// <summary></summary>
+Unknown = 0,
+/// <summary></summary>
+Show = 1,
+/// <summary></summary>
+Hide = 2,
+/// <summary></summary>
+Restack = 3,
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary></summary>
+public enum WinConformantProperty
+{
+/// <summary></summary>
+Default = 0,
+/// <summary></summary>
+IndicatorState = 1,
+/// <summary></summary>
+IndicatorGeometry = 2,
+/// <summary></summary>
+KeyboardState = 4,
+/// <summary></summary>
+KeyboardGeometry = 8,
+/// <summary></summary>
+ClipboardState = 16,
+/// <summary></summary>
+ClipboardGeometry = 32,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_win_inlined.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_win_inlined.eo.cs
new file mode 100755 (executable)
index 0000000..b8127c4
--- /dev/null
@@ -0,0 +1,144 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>An inlined window.
+/// The window is rendered onto an image buffer. No actual window is created, instead the window and all of its contents will be rendered to an image buffer. This allows child windows inside a parent just like any other object.  You can also do other things like apply map effects. This window must have a valid <see cref="Efl.Canvas.Object"/> parent.</summary>
+[WinInlinedNativeInherit]
+public class WinInlined : Efl.Ui.Win, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WinInlinedNativeInherit nativeInherit = new Efl.Ui.WinInlinedNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WinInlined))
+            return Efl.Ui.WinInlinedNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_win_inlined_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   ///<param name="winName">The window name. See <see cref="Efl.Ui.Win.SetWinName"/></param>
+   ///<param name="winType">The type of the window. See <see cref="Efl.Ui.Win.SetWinType"/></param>
+   ///<param name="accelPreference">The hardware acceleration preference for this window. See <see cref="Efl.Ui.Win.SetAccelPreference"/></param>
+   public WinInlined(Efl.Object parent
+         ,  System.String style = null,  System.String winName = null, Efl.Ui.WinType? winType = null,  System.String accelPreference = null) :
+      base(efl_ui_win_inlined_class_get(), typeof(WinInlined), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      if (Efl.Eo.Globals.ParamHelperCheck(winName))
+         SetWinName(Efl.Eo.Globals.GetParamHelper(winName));
+      if (Efl.Eo.Globals.ParamHelperCheck(winType))
+         SetWinType(Efl.Eo.Globals.GetParamHelper(winType));
+      if (Efl.Eo.Globals.ParamHelperCheck(accelPreference))
+         SetAccelPreference(Efl.Eo.Globals.GetParamHelper(accelPreference));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WinInlined(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected WinInlined(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static WinInlined static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WinInlined(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>This property holds the parent object in the parent canvas.</summary>
+   /// <returns>An object in the parent canvas.</returns>
+   virtual public Efl.Canvas.Object GetInlinedParent() {
+       var _ret_var = Efl.Ui.WinInlinedNativeInherit.efl_ui_win_inlined_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This property holds the parent object in the parent canvas.</summary>
+/// <value>An object in the parent canvas.</value>
+   public Efl.Canvas.Object InlinedParent {
+      get { return GetInlinedParent(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WinInlined.efl_ui_win_inlined_class_get();
+   }
+}
+public class WinInlinedNativeInherit : Efl.Ui.WinNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_win_inlined_parent_get_static_delegate == null)
+      efl_ui_win_inlined_parent_get_static_delegate = new efl_ui_win_inlined_parent_get_delegate(inlined_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_inlined_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_inlined_parent_get_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WinInlined.efl_ui_win_inlined_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WinInlined.efl_ui_win_inlined_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object efl_ui_win_inlined_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object efl_ui_win_inlined_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_inlined_parent_get_api_delegate> efl_ui_win_inlined_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_inlined_parent_get_api_delegate>(_Module, "efl_ui_win_inlined_parent_get");
+    private static Efl.Canvas.Object inlined_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_win_inlined_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((WinInlined)wrapper).GetInlinedParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_win_inlined_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_win_inlined_parent_get_delegate efl_ui_win_inlined_parent_get_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_win_part.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_win_part.eo.cs
new file mode 100755 (executable)
index 0000000..5f5c8cd
--- /dev/null
@@ -0,0 +1,762 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI window interal part class</summary>
+[WinPartNativeInherit]
+public class WinPart : Efl.Ui.WidgetPart, Efl.Eo.IWrapper,Efl.Content,Efl.File,Efl.Gfx.Color
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WinPartNativeInherit nativeInherit = new Efl.Ui.WinPartNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WinPart))
+            return Efl.Ui.WinPartNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_win_part_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public WinPart(Efl.Object parent= null
+         ) :
+      base(efl_ui_win_part_class_get(), typeof(WinPart), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WinPart(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected WinPart(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static WinPart static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WinPart(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object ContentChangedEvtKey = new object();
+   /// <summary>Sent after the content is set or unset using the current content object.</summary>
+   public event EventHandler<Efl.ContentContentChangedEvt_Args> ContentChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ContentChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_CONTENT_EVENT_CONTENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ContentChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ContentChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ContentChangedEvt.</summary>
+   public void On_ContentChangedEvt(Efl.ContentContentChangedEvt_Args e)
+   {
+      EventHandler<Efl.ContentContentChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.ContentContentChangedEvt_Args>)eventHandlers[ContentChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ContentChangedEvt_delegate;
+   private void on_ContentChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.ContentContentChangedEvt_Args args = new Efl.ContentContentChangedEvt_Args();
+      args.arg = new Efl.Gfx.EntityConcrete(evt.Info);
+      try {
+         On_ContentChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_ContentChangedEvt_delegate = new Efl.EventCb(on_ContentChangedEvt_NativeCallback);
+   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <returns>The object to swallow.</returns>
+   virtual public Efl.Gfx.Entity GetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+   /// <param name="content">The object to swallow.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SetContent( Efl.Gfx.Entity content) {
+                         var _ret_var = Efl.ContentNativeInherit.efl_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), content);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Unswallow the object in the current container and return it.</summary>
+   /// <returns>Unswallowed object</returns>
+   virtual public Efl.Gfx.Entity UnsetContent() {
+       var _ret_var = Efl.ContentNativeInherit.efl_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+   /// <returns>The handle to an Eina_File that will be used</returns>
+   virtual public Eina.File GetMmap() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_mmap_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the mmaped file from where an object will fetch the real data (it must be an Eina_File).
+   /// If mmap is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="f">The handle to an Eina_File that will be used</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetMmap( Eina.File f) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_mmap_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), f);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The file path.</returns>
+   virtual public  System.String GetFile() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the file path from where an object will fetch the data.
+   /// If file is set during object construction, the object will automatically call <see cref="Efl.File.Load"/> during the finalize phase of construction.</summary>
+   /// <param name="file">The file path.</param>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error SetFile(  System.String file) {
+                         var _ret_var = Efl.FileNativeInherit.efl_file_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), file);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+   /// 
+   /// You must not modify the strings on the returned pointers.</summary>
+   /// <returns>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</returns>
+   virtual public  System.String GetKey() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_key_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the key which corresponds to the target data within a file.
+   /// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.</summary>
+   /// <param name="key">The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</param>
+   /// <returns></returns>
+   virtual public  void SetKey(  System.String key) {
+                         Efl.FileNativeInherit.efl_file_key_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the load state of the object.</summary>
+   /// <returns>True if the object is loaded, otherwise false.</returns>
+   virtual public bool GetLoaded() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_loaded_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to open and load file data into the object using the <see cref="Efl.File.File"/> (or <see cref="Efl.File.Mmap"/>) and <see cref="Efl.File.Key"/> properties.
+   /// In the case where <see cref="Efl.File.SetFile"/> has been called on an object, this will internally open the file and call <see cref="Efl.File.SetMmap"/> on the object using the opened file handle.
+   /// 
+   /// Calling <see cref="Efl.File.Load"/> on an object which has already performed file operations based on the currently set properties will have no effect.</summary>
+   /// <returns>0 on success, error code otherwise</returns>
+   virtual public  Eina.Error Load() {
+       var _ret_var = Efl.FileNativeInherit.efl_file_load_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Perform all necessary operations to unload file data from the object.
+   /// In the case where <see cref="Efl.File.SetMmap"/> has been externally called on an object, the file handle stored in the object will be preserved.
+   /// 
+   /// Calling <see cref="Efl.File.Unload"/> on an object which is not currently loaded will have no effect.</summary>
+   /// <returns></returns>
+   virtual public  void Unload() {
+       Efl.FileNativeInherit.efl_file_unload_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Retrieves the general/main color of the given Evas object.
+   /// Retrieves the main color&apos;s RGB component (and alpha channel) values, which range from 0 to 255. For the alpha channel, which defines the object&apos;s transparency level, 0 means totally transparent, while 255 means opaque. These color values are premultiplied by the alpha value.
+   /// 
+   /// Usually youll use this attribute for text and rectangle objects, where the main color is their unique one. If set for objects which themselves have colors, like the images one, those colors get modulated by this one.
+   /// 
+   /// All newly created Evas rectangles get the default color values of 255 255 255 255 (opaque white).
+   /// 
+   /// Use null pointers on the components you&apos;re not interested in: they&apos;ll be ignored by the function.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void GetColor( out  int r,  out  int g,  out  int b,  out  int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out r,  out g,  out b,  out a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Sets the general/main color of the given Evas object to the given one.
+   /// See also <see cref="Efl.Gfx.Color.GetColor"/> (for an example)
+   /// 
+   /// These color values are expected to be premultiplied by alpha.</summary>
+   /// <param name="r"></param>
+   /// <param name="g"></param>
+   /// <param name="b"></param>
+   /// <param name="a"></param>
+   /// <returns></returns>
+   virtual public  void SetColor(  int r,   int g,   int b,   int a) {
+                                                                               Efl.Gfx.ColorNativeInherit.efl_gfx_color_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), r,  g,  b,  a);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+   /// <returns>the hex color code.</returns>
+   virtual public  System.String GetColorCode() {
+       var _ret_var = Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the color of given Evas object to the given hex color code(#RRGGBBAA). e.g. efl_gfx_color_code_set(obj, &quot;#FFCCAACC&quot;);</summary>
+   /// <param name="colorcode">the hex color code.</param>
+   /// <returns></returns>
+   virtual public  void SetColorCode(  System.String colorcode) {
+                         Efl.Gfx.ColorNativeInherit.efl_gfx_color_code_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), colorcode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Swallowed sub-object contained in this object.</summary>
+/// <value>The object to swallow.</value>
+   public Efl.Gfx.Entity Content {
+      get { return GetContent(); }
+      set { SetContent( value); }
+   }
+   /// <summary>Get the mmaped file from where an object will fetch the real data (it must be an Eina_File).</summary>
+/// <value>The handle to an Eina_File that will be used</value>
+   public Eina.File Mmap {
+      get { return GetMmap(); }
+      set { SetMmap( value); }
+   }
+   /// <summary>Retrieve the file path from where an object is to fetch the data.
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The file path.</value>
+   public  System.String File {
+      get { return GetFile(); }
+      set { SetFile( value); }
+   }
+   /// <summary>Get the previously-set key which corresponds to the target data within a file.
+/// Some filetypes can contain multiple data streams which are indexed by a key. Use this property for such cases.
+/// 
+/// You must not modify the strings on the returned pointers.</summary>
+/// <value>The group that the image belongs to, in case  it&apos;s an EET(including Edje case) file. This can be used as a key inside evas image cache if this is a normal image file not eet file.</value>
+   public  System.String Key {
+      get { return GetKey(); }
+      set { SetKey( value); }
+   }
+   /// <summary>Get the load state of the object.</summary>
+/// <value>True if the object is loaded, otherwise false.</value>
+   public bool Loaded {
+      get { return GetLoaded(); }
+   }
+   /// <summary>Get hex color code of given Evas object. This returns a short lived hex color code string.</summary>
+/// <value>the hex color code.</value>
+   public  System.String ColorCode {
+      get { return GetColorCode(); }
+      set { SetColorCode( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WinPart.efl_ui_win_part_class_get();
+   }
+}
+public class WinPartNativeInherit : Efl.Ui.WidgetPartNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_content_get_static_delegate == null)
+      efl_content_get_static_delegate = new efl_content_get_delegate(content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_get"), func = Marshal.GetFunctionPointerForDelegate(efl_content_get_static_delegate)});
+      if (efl_content_set_static_delegate == null)
+      efl_content_set_static_delegate = new efl_content_set_delegate(content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_set"), func = Marshal.GetFunctionPointerForDelegate(efl_content_set_static_delegate)});
+      if (efl_content_unset_static_delegate == null)
+      efl_content_unset_static_delegate = new efl_content_unset_delegate(content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_content_unset"), func = Marshal.GetFunctionPointerForDelegate(efl_content_unset_static_delegate)});
+      if (efl_file_mmap_get_static_delegate == null)
+      efl_file_mmap_get_static_delegate = new efl_file_mmap_get_delegate(mmap_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_get_static_delegate)});
+      if (efl_file_mmap_set_static_delegate == null)
+      efl_file_mmap_set_static_delegate = new efl_file_mmap_set_delegate(mmap_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_mmap_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_mmap_set_static_delegate)});
+      if (efl_file_get_static_delegate == null)
+      efl_file_get_static_delegate = new efl_file_get_delegate(file_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_get_static_delegate)});
+      if (efl_file_set_static_delegate == null)
+      efl_file_set_static_delegate = new efl_file_set_delegate(file_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_set_static_delegate)});
+      if (efl_file_key_get_static_delegate == null)
+      efl_file_key_get_static_delegate = new efl_file_key_get_delegate(key_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_get_static_delegate)});
+      if (efl_file_key_set_static_delegate == null)
+      efl_file_key_set_static_delegate = new efl_file_key_set_delegate(key_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_key_set"), func = Marshal.GetFunctionPointerForDelegate(efl_file_key_set_static_delegate)});
+      if (efl_file_loaded_get_static_delegate == null)
+      efl_file_loaded_get_static_delegate = new efl_file_loaded_get_delegate(loaded_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_loaded_get"), func = Marshal.GetFunctionPointerForDelegate(efl_file_loaded_get_static_delegate)});
+      if (efl_file_load_static_delegate == null)
+      efl_file_load_static_delegate = new efl_file_load_delegate(load);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_load"), func = Marshal.GetFunctionPointerForDelegate(efl_file_load_static_delegate)});
+      if (efl_file_unload_static_delegate == null)
+      efl_file_unload_static_delegate = new efl_file_unload_delegate(unload);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_file_unload"), func = Marshal.GetFunctionPointerForDelegate(efl_file_unload_static_delegate)});
+      if (efl_gfx_color_get_static_delegate == null)
+      efl_gfx_color_get_static_delegate = new efl_gfx_color_get_delegate(color_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_get_static_delegate)});
+      if (efl_gfx_color_set_static_delegate == null)
+      efl_gfx_color_set_static_delegate = new efl_gfx_color_set_delegate(color_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_set_static_delegate)});
+      if (efl_gfx_color_code_get_static_delegate == null)
+      efl_gfx_color_code_get_static_delegate = new efl_gfx_color_code_get_delegate(color_code_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_get_static_delegate)});
+      if (efl_gfx_color_code_set_static_delegate == null)
+      efl_gfx_color_code_set_static_delegate = new efl_gfx_color_code_set_delegate(color_code_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_color_code_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_color_code_set_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WinPart.efl_ui_win_part_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WinPart.efl_ui_win_part_class_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_get_api_delegate> efl_content_get_ptr = new Efl.Eo.FunctionWrapper<efl_content_get_api_delegate>(_Module, "efl_content_get");
+    private static Efl.Gfx.Entity content_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((WinPart)wrapper).GetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_get_delegate efl_content_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Entity content);
+    public static Efl.Eo.FunctionWrapper<efl_content_set_api_delegate> efl_content_set_ptr = new Efl.Eo.FunctionWrapper<efl_content_set_api_delegate>(_Module, "efl_content_set");
+    private static bool content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Entity content)
+   {
+      Eina.Log.Debug("function efl_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((WinPart)wrapper).SetContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static efl_content_set_delegate efl_content_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Entity efl_content_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.EntityConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Entity efl_content_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate> efl_content_unset_ptr = new Efl.Eo.FunctionWrapper<efl_content_unset_api_delegate>(_Module, "efl_content_unset");
+    private static Efl.Gfx.Entity content_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Entity _ret_var = default(Efl.Gfx.Entity);
+         try {
+            _ret_var = ((WinPart)wrapper).UnsetContent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_content_unset_delegate efl_content_unset_static_delegate;
+
+
+    private delegate Eina.File efl_file_mmap_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.File efl_file_mmap_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate> efl_file_mmap_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_get_api_delegate>(_Module, "efl_file_mmap_get");
+    private static Eina.File mmap_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_mmap_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.File _ret_var = default(Eina.File);
+         try {
+            _ret_var = ((WinPart)wrapper).GetMmap();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_mmap_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_mmap_get_delegate efl_file_mmap_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_mmap_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.File f);
+
+
+    public delegate  Eina.Error efl_file_mmap_set_api_delegate(System.IntPtr obj,   Eina.File f);
+    public static Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate> efl_file_mmap_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_mmap_set_api_delegate>(_Module, "efl_file_mmap_set");
+    private static  Eina.Error mmap_set(System.IntPtr obj, System.IntPtr pd,  Eina.File f)
+   {
+      Eina.Log.Debug("function efl_file_mmap_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((WinPart)wrapper).SetMmap( f);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_mmap_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  f);
+      }
+   }
+   private static efl_file_mmap_set_delegate efl_file_mmap_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_get_api_delegate> efl_file_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_get_api_delegate>(_Module, "efl_file_get");
+    private static  System.String file_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((WinPart)wrapper).GetFile();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_get_delegate efl_file_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+
+
+    public delegate  Eina.Error efl_file_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String file);
+    public static Efl.Eo.FunctionWrapper<efl_file_set_api_delegate> efl_file_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_set_api_delegate>(_Module, "efl_file_set");
+    private static  Eina.Error file_set(System.IntPtr obj, System.IntPtr pd,   System.String file)
+   {
+      Eina.Log.Debug("function efl_file_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((WinPart)wrapper).SetFile( file);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_file_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  file);
+      }
+   }
+   private static efl_file_set_delegate efl_file_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_file_key_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_file_key_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate> efl_file_key_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_get_api_delegate>(_Module, "efl_file_key_get");
+    private static  System.String key_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_key_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((WinPart)wrapper).GetKey();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_key_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_key_get_delegate efl_file_key_get_static_delegate;
+
+
+    private delegate  void efl_file_key_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+
+
+    public delegate  void efl_file_key_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key);
+    public static Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate> efl_file_key_set_ptr = new Efl.Eo.FunctionWrapper<efl_file_key_set_api_delegate>(_Module, "efl_file_key_set");
+    private static  void key_set(System.IntPtr obj, System.IntPtr pd,   System.String key)
+   {
+      Eina.Log.Debug("function efl_file_key_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WinPart)wrapper).SetKey( key);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_file_key_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key);
+      }
+   }
+   private static efl_file_key_set_delegate efl_file_key_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_file_loaded_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_file_loaded_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate> efl_file_loaded_get_ptr = new Efl.Eo.FunctionWrapper<efl_file_loaded_get_api_delegate>(_Module, "efl_file_loaded_get");
+    private static bool loaded_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_loaded_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((WinPart)wrapper).GetLoaded();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_loaded_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_loaded_get_delegate efl_file_loaded_get_static_delegate;
+
+
+    private delegate  Eina.Error efl_file_load_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  Eina.Error efl_file_load_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_load_api_delegate> efl_file_load_ptr = new Efl.Eo.FunctionWrapper<efl_file_load_api_delegate>(_Module, "efl_file_load");
+    private static  Eina.Error load(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_load was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((WinPart)wrapper).Load();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_file_load_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_load_delegate efl_file_load_static_delegate;
+
+
+    private delegate  void efl_file_unload_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_file_unload_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate> efl_file_unload_ptr = new Efl.Eo.FunctionWrapper<efl_file_unload_api_delegate>(_Module, "efl_file_unload");
+    private static  void unload(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_file_unload was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((WinPart)wrapper).Unload();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_file_unload_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_file_unload_delegate efl_file_unload_static_delegate;
+
+
+    private delegate  void efl_gfx_color_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int r,   out  int g,   out  int b,   out  int a);
+
+
+    public delegate  void efl_gfx_color_get_api_delegate(System.IntPtr obj,   out  int r,   out  int g,   out  int b,   out  int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate> efl_gfx_color_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_get_api_delegate>(_Module, "efl_gfx_color_get");
+    private static  void color_get(System.IntPtr obj, System.IntPtr pd,  out  int r,  out  int g,  out  int b,  out  int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       r = default( int);      g = default( int);      b = default( int);      a = default( int);                                 
+         try {
+            ((WinPart)wrapper).GetColor( out r,  out g,  out b,  out a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out r,  out g,  out b,  out a);
+      }
+   }
+   private static efl_gfx_color_get_delegate efl_gfx_color_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_set_delegate(System.IntPtr obj, System.IntPtr pd,    int r,    int g,    int b,    int a);
+
+
+    public delegate  void efl_gfx_color_set_api_delegate(System.IntPtr obj,    int r,    int g,    int b,    int a);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate> efl_gfx_color_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_set_api_delegate>(_Module, "efl_gfx_color_set");
+    private static  void color_set(System.IntPtr obj, System.IntPtr pd,   int r,   int g,   int b,   int a)
+   {
+      Eina.Log.Debug("function efl_gfx_color_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((WinPart)wrapper).SetColor( r,  g,  b,  a);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         efl_gfx_color_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  r,  g,  b,  a);
+      }
+   }
+   private static efl_gfx_color_set_delegate efl_gfx_color_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_gfx_color_code_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_gfx_color_code_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate> efl_gfx_color_code_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_get_api_delegate>(_Module, "efl_gfx_color_code_get");
+    private static  System.String color_code_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((WinPart)wrapper).GetColorCode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_color_code_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_color_code_get_delegate efl_gfx_color_code_get_static_delegate;
+
+
+    private delegate  void efl_gfx_color_code_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+
+
+    public delegate  void efl_gfx_color_code_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String colorcode);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate> efl_gfx_color_code_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_color_code_set_api_delegate>(_Module, "efl_gfx_color_code_set");
+    private static  void color_code_set(System.IntPtr obj, System.IntPtr pd,   System.String colorcode)
+   {
+      Eina.Log.Debug("function efl_gfx_color_code_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((WinPart)wrapper).SetColorCode( colorcode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_color_code_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  colorcode);
+      }
+   }
+   private static efl_gfx_color_code_set_delegate efl_gfx_color_code_set_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_win_socket.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_win_socket.eo.cs
new file mode 100755 (executable)
index 0000000..8020075
--- /dev/null
@@ -0,0 +1,142 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>An off-screen window to be displayed in a remote process.
+/// The window is rendered onto an image buffer to be displayed in another process&apos; plug image object. No actual window is created for this type. The window contents can then be sent over a socket so that another process displays it inside a plug image.</summary>
+[WinSocketNativeInherit]
+public class WinSocket : Efl.Ui.Win, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.Ui.WinSocketNativeInherit nativeInherit = new Efl.Ui.WinSocketNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WinSocket))
+            return Efl.Ui.WinSocketNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      efl_ui_win_socket_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="style">The widget style to use. See <see cref="Efl.Ui.Widget.SetStyle"/></param>
+   ///<param name="winName">The window name. See <see cref="Efl.Ui.Win.SetWinName"/></param>
+   ///<param name="winType">The type of the window. See <see cref="Efl.Ui.Win.SetWinType"/></param>
+   ///<param name="accelPreference">The hardware acceleration preference for this window. See <see cref="Efl.Ui.Win.SetAccelPreference"/></param>
+   public WinSocket(Efl.Object parent
+         ,  System.String style = null,  System.String winName = null, Efl.Ui.WinType? winType = null,  System.String accelPreference = null) :
+      base(efl_ui_win_socket_class_get(), typeof(WinSocket), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(style))
+         SetStyle(Efl.Eo.Globals.GetParamHelper(style));
+      if (Efl.Eo.Globals.ParamHelperCheck(winName))
+         SetWinName(Efl.Eo.Globals.GetParamHelper(winName));
+      if (Efl.Eo.Globals.ParamHelperCheck(winType))
+         SetWinType(Efl.Eo.Globals.GetParamHelper(winType));
+      if (Efl.Eo.Globals.ParamHelperCheck(accelPreference))
+         SetAccelPreference(Efl.Eo.Globals.GetParamHelper(accelPreference));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WinSocket(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected WinSocket(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static WinSocket static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WinSocket(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Create a socket to provide the service for Plug widget.</summary>
+   /// <param name="svcname">The name of the service to be advertised. Ensure that it is unique (when combined with <c>svcnum</c>) otherwise creation may fail.</param>
+   /// <param name="svcnum">A number (any value, 0 being the common default) to differentiate multiple instances of services with the same name.</param>
+   /// <param name="svcsys">A boolean which when true specifies the creation of a system-wide service to which all users can connect, otherwise the service is private to the user id that created it.</param>
+   /// <returns><c>true</c> on success, <c>false</c> otherwise</returns>
+   virtual public bool SocketListen(  System.String svcname,   int svcnum,  bool svcsys) {
+                                                             var _ret_var = Efl.Ui.WinSocketNativeInherit.efl_ui_win_socket_listen_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), svcname,  svcnum,  svcsys);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WinSocket.efl_ui_win_socket_class_get();
+   }
+}
+public class WinSocketNativeInherit : Efl.Ui.WinNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_win_socket_listen_static_delegate == null)
+      efl_ui_win_socket_listen_static_delegate = new efl_ui_win_socket_listen_delegate(socket_listen);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_win_socket_listen"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_win_socket_listen_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.WinSocket.efl_ui_win_socket_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.WinSocket.efl_ui_win_socket_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_win_socket_listen_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svcname,    int svcnum,  [MarshalAs(UnmanagedType.U1)]  bool svcsys);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_win_socket_listen_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String svcname,    int svcnum,  [MarshalAs(UnmanagedType.U1)]  bool svcsys);
+    public static Efl.Eo.FunctionWrapper<efl_ui_win_socket_listen_api_delegate> efl_ui_win_socket_listen_ptr = new Efl.Eo.FunctionWrapper<efl_ui_win_socket_listen_api_delegate>(_Module, "efl_ui_win_socket_listen");
+    private static bool socket_listen(System.IntPtr obj, System.IntPtr pd,   System.String svcname,   int svcnum,  bool svcsys)
+   {
+      Eina.Log.Debug("function efl_ui_win_socket_listen was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((WinSocket)wrapper).SocketListen( svcname,  svcnum,  svcsys);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_win_socket_listen_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  svcname,  svcnum,  svcsys);
+      }
+   }
+   private static efl_ui_win_socket_listen_delegate efl_ui_win_socket_listen_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_ui_zoom.eo.cs b/internals/src/EflSharp/EflSharp/efl_ui_zoom.eo.cs
new file mode 100755 (executable)
index 0000000..806193f
--- /dev/null
@@ -0,0 +1,589 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Efl { namespace Ui { 
+/// <summary>Efl UI zoom interface</summary>
+[ZoomNativeInherit]
+public interface Zoom : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+/// <returns>The paused state.</returns>
+bool GetZoomAnimation();
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+/// <param name="paused">The paused state.</param>
+/// <returns></returns>
+ void SetZoomAnimation( bool paused);
+   /// <summary>Get the zoom level of the photo
+/// This returns the current zoom level of the zoomable object. Note that if you set the fill mode to other than #EFL_UI_ZOOM_MODE_MANUAL (which is the default), the zoom level may be changed at any time by the  zoomable object itself to account for photo size and zoomable viewport size.</summary>
+/// <returns>The zoom level to set</returns>
+double GetZoomLevel();
+   /// <summary>Set the zoom level of the photo
+/// This sets the zoom level. If <c>zoom</c> is 1, it means no zoom. If it&apos;s smaller than 1, it means zoom in. If it&apos;s bigger than 1, it means zoom out. For  example, <c>zoom</c> 1 will be 1:1 pixel for pixel. <c>zoom</c> 2 will be 2:1 (that is 2x2 photo pixels will display as 1 on-screen pixel) which is a zoom out. 4:1 will be 4x4 photo pixels as 1 screen pixel, and so on. The <c>zoom</c> parameter must be greater than 0. It is suggested to stick to powers of 2. (1, 2, 4, 8, 16, 32, etc.).</summary>
+/// <param name="zoom">The zoom level to set</param>
+/// <returns></returns>
+ void SetZoomLevel( double zoom);
+   /// <summary>Get the zoom mode
+/// This gets the current zoom mode of the zoomable object.</summary>
+/// <returns>The zoom mode.</returns>
+Efl.Ui.ZoomMode GetZoomMode();
+   /// <summary>Set the zoom mode
+/// This sets the zoom mode to manual or one of several automatic levels. Manual (EFL_UI_ZOOM_MODE_MANUAL) means that zoom is set manually by <see cref="Efl.Ui.Zoom.SetZoomLevel"/> and will stay at that level until changed by code or until zoom mode is changed. This is the default mode. The Automatic modes will allow the zoomable object to automatically adjust zoom mode based on properties.
+/// 
+/// #EFL_UI_ZOOM_MODE_AUTO_FIT) will adjust zoom so the photo fits EXACTLY inside the scroll frame with no pixels outside this region. #EFL_UI_ZOOM_MODE_AUTO_FILL will be similar but ensure no pixels within the frame are left unfilled.</summary>
+/// <param name="mode">The zoom mode.</param>
+/// <returns></returns>
+ void SetZoomMode( Efl.Ui.ZoomMode mode);
+                     /// <summary>Called when zooming started</summary>
+   event EventHandler ZoomStartEvt;
+   /// <summary>Called when zooming stopped</summary>
+   event EventHandler ZoomStopEvt;
+   /// <summary>Called when zooming changed</summary>
+   event EventHandler ZoomChangeEvt;
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+/// <value>The paused state.</value>
+   bool ZoomAnimation {
+      get ;
+      set ;
+   }
+   /// <summary>Get the zoom level of the photo
+/// This returns the current zoom level of the zoomable object. Note that if you set the fill mode to other than #EFL_UI_ZOOM_MODE_MANUAL (which is the default), the zoom level may be changed at any time by the  zoomable object itself to account for photo size and zoomable viewport size.</summary>
+/// <value>The zoom level to set</value>
+   double ZoomLevel {
+      get ;
+      set ;
+   }
+   /// <summary>Get the zoom mode
+/// This gets the current zoom mode of the zoomable object.</summary>
+/// <value>The zoom mode.</value>
+   Efl.Ui.ZoomMode ZoomMode {
+      get ;
+      set ;
+   }
+}
+/// <summary>Efl UI zoom interface</summary>
+sealed public class ZoomConcrete : 
+
+Zoom
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ZoomConcrete))
+            return Efl.Ui.ZoomNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Efl)] internal static extern System.IntPtr
+      efl_ui_zoom_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ZoomConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~ZoomConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static ZoomConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ZoomConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Efl, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ZoomStartEvtKey = new object();
+   /// <summary>Called when zooming started</summary>
+   public event EventHandler ZoomStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ZoomStartEvt_delegate)) {
+               eventHandlers.AddHandler(ZoomStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_START";
+            if (remove_cpp_event_handler(key, this.evt_ZoomStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ZoomStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ZoomStartEvt.</summary>
+   public void On_ZoomStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ZoomStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ZoomStartEvt_delegate;
+   private void on_ZoomStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ZoomStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ZoomStopEvtKey = new object();
+   /// <summary>Called when zooming stopped</summary>
+   public event EventHandler ZoomStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ZoomStopEvt_delegate)) {
+               eventHandlers.AddHandler(ZoomStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ZoomStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ZoomStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ZoomStopEvt.</summary>
+   public void On_ZoomStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ZoomStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ZoomStopEvt_delegate;
+   private void on_ZoomStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ZoomStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ZoomChangeEvtKey = new object();
+   /// <summary>Called when zooming changed</summary>
+   public event EventHandler ZoomChangeEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_CHANGE";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ZoomChangeEvt_delegate)) {
+               eventHandlers.AddHandler(ZoomChangeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_ZOOM_CHANGE";
+            if (remove_cpp_event_handler(key, this.evt_ZoomChangeEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ZoomChangeEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ZoomChangeEvt.</summary>
+   public void On_ZoomChangeEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ZoomChangeEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ZoomChangeEvt_delegate;
+   private void on_ZoomChangeEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ZoomChangeEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ZoomStartEvt_delegate = new Efl.EventCb(on_ZoomStartEvt_NativeCallback);
+      evt_ZoomStopEvt_delegate = new Efl.EventCb(on_ZoomStopEvt_NativeCallback);
+      evt_ZoomChangeEvt_delegate = new Efl.EventCb(on_ZoomChangeEvt_NativeCallback);
+   }
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+   /// <returns>The paused state.</returns>
+   public bool GetZoomAnimation() {
+       var _ret_var = Efl.Ui.ZoomNativeInherit.efl_ui_zoom_animation_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+   /// <param name="paused">The paused state.</param>
+   /// <returns></returns>
+   public  void SetZoomAnimation( bool paused) {
+                         Efl.Ui.ZoomNativeInherit.efl_ui_zoom_animation_set_ptr.Value.Delegate(this.NativeHandle, paused);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the zoom level of the photo
+   /// This returns the current zoom level of the zoomable object. Note that if you set the fill mode to other than #EFL_UI_ZOOM_MODE_MANUAL (which is the default), the zoom level may be changed at any time by the  zoomable object itself to account for photo size and zoomable viewport size.</summary>
+   /// <returns>The zoom level to set</returns>
+   public double GetZoomLevel() {
+       var _ret_var = Efl.Ui.ZoomNativeInherit.efl_ui_zoom_level_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the zoom level of the photo
+   /// This sets the zoom level. If <c>zoom</c> is 1, it means no zoom. If it&apos;s smaller than 1, it means zoom in. If it&apos;s bigger than 1, it means zoom out. For  example, <c>zoom</c> 1 will be 1:1 pixel for pixel. <c>zoom</c> 2 will be 2:1 (that is 2x2 photo pixels will display as 1 on-screen pixel) which is a zoom out. 4:1 will be 4x4 photo pixels as 1 screen pixel, and so on. The <c>zoom</c> parameter must be greater than 0. It is suggested to stick to powers of 2. (1, 2, 4, 8, 16, 32, etc.).</summary>
+   /// <param name="zoom">The zoom level to set</param>
+   /// <returns></returns>
+   public  void SetZoomLevel( double zoom) {
+                         Efl.Ui.ZoomNativeInherit.efl_ui_zoom_level_set_ptr.Value.Delegate(this.NativeHandle, zoom);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the zoom mode
+   /// This gets the current zoom mode of the zoomable object.</summary>
+   /// <returns>The zoom mode.</returns>
+   public Efl.Ui.ZoomMode GetZoomMode() {
+       var _ret_var = Efl.Ui.ZoomNativeInherit.efl_ui_zoom_mode_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the zoom mode
+   /// This sets the zoom mode to manual or one of several automatic levels. Manual (EFL_UI_ZOOM_MODE_MANUAL) means that zoom is set manually by <see cref="Efl.Ui.Zoom.SetZoomLevel"/> and will stay at that level until changed by code or until zoom mode is changed. This is the default mode. The Automatic modes will allow the zoomable object to automatically adjust zoom mode based on properties.
+   /// 
+   /// #EFL_UI_ZOOM_MODE_AUTO_FIT) will adjust zoom so the photo fits EXACTLY inside the scroll frame with no pixels outside this region. #EFL_UI_ZOOM_MODE_AUTO_FILL will be similar but ensure no pixels within the frame are left unfilled.</summary>
+   /// <param name="mode">The zoom mode.</param>
+   /// <returns></returns>
+   public  void SetZoomMode( Efl.Ui.ZoomMode mode) {
+                         Efl.Ui.ZoomNativeInherit.efl_ui_zoom_mode_set_ptr.Value.Delegate(this.NativeHandle, mode);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>This sets the zoom animation state to on or off for zoomable. The default is off. When <c>paused</c> is <c>true</c>, it will stop zooming using animation on zoom level changes and change instantly, stopping any existing animations that are running.</summary>
+/// <value>The paused state.</value>
+   public bool ZoomAnimation {
+      get { return GetZoomAnimation(); }
+      set { SetZoomAnimation( value); }
+   }
+   /// <summary>Get the zoom level of the photo
+/// This returns the current zoom level of the zoomable object. Note that if you set the fill mode to other than #EFL_UI_ZOOM_MODE_MANUAL (which is the default), the zoom level may be changed at any time by the  zoomable object itself to account for photo size and zoomable viewport size.</summary>
+/// <value>The zoom level to set</value>
+   public double ZoomLevel {
+      get { return GetZoomLevel(); }
+      set { SetZoomLevel( value); }
+   }
+   /// <summary>Get the zoom mode
+/// This gets the current zoom mode of the zoomable object.</summary>
+/// <value>The zoom mode.</value>
+   public Efl.Ui.ZoomMode ZoomMode {
+      get { return GetZoomMode(); }
+      set { SetZoomMode( value); }
+   }
+}
+public class ZoomNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Efl);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_ui_zoom_animation_get_static_delegate == null)
+      efl_ui_zoom_animation_get_static_delegate = new efl_ui_zoom_animation_get_delegate(zoom_animation_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_animation_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_animation_get_static_delegate)});
+      if (efl_ui_zoom_animation_set_static_delegate == null)
+      efl_ui_zoom_animation_set_static_delegate = new efl_ui_zoom_animation_set_delegate(zoom_animation_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_animation_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_animation_set_static_delegate)});
+      if (efl_ui_zoom_level_get_static_delegate == null)
+      efl_ui_zoom_level_get_static_delegate = new efl_ui_zoom_level_get_delegate(zoom_level_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_level_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_level_get_static_delegate)});
+      if (efl_ui_zoom_level_set_static_delegate == null)
+      efl_ui_zoom_level_set_static_delegate = new efl_ui_zoom_level_set_delegate(zoom_level_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_level_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_level_set_static_delegate)});
+      if (efl_ui_zoom_mode_get_static_delegate == null)
+      efl_ui_zoom_mode_get_static_delegate = new efl_ui_zoom_mode_get_delegate(zoom_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_mode_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_mode_get_static_delegate)});
+      if (efl_ui_zoom_mode_set_static_delegate == null)
+      efl_ui_zoom_mode_set_static_delegate = new efl_ui_zoom_mode_set_delegate(zoom_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_zoom_mode_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_zoom_mode_set_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.Ui.ZoomConcrete.efl_ui_zoom_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Efl.Ui.ZoomConcrete.efl_ui_zoom_interface_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_zoom_animation_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_zoom_animation_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_get_api_delegate> efl_ui_zoom_animation_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_get_api_delegate>(_Module, "efl_ui_zoom_animation_get");
+    private static bool zoom_animation_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_animation_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Zoom)wrapper).GetZoomAnimation();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_zoom_animation_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_zoom_animation_get_delegate efl_ui_zoom_animation_get_static_delegate;
+
+
+    private delegate  void efl_ui_zoom_animation_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool paused);
+
+
+    public delegate  void efl_ui_zoom_animation_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool paused);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_set_api_delegate> efl_ui_zoom_animation_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_animation_set_api_delegate>(_Module, "efl_ui_zoom_animation_set");
+    private static  void zoom_animation_set(System.IntPtr obj, System.IntPtr pd,  bool paused)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_animation_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Zoom)wrapper).SetZoomAnimation( paused);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_zoom_animation_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  paused);
+      }
+   }
+   private static efl_ui_zoom_animation_set_delegate efl_ui_zoom_animation_set_static_delegate;
+
+
+    private delegate double efl_ui_zoom_level_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_ui_zoom_level_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_level_get_api_delegate> efl_ui_zoom_level_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_level_get_api_delegate>(_Module, "efl_ui_zoom_level_get");
+    private static double zoom_level_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_level_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Zoom)wrapper).GetZoomLevel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_zoom_level_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_zoom_level_get_delegate efl_ui_zoom_level_get_static_delegate;
+
+
+    private delegate  void efl_ui_zoom_level_set_delegate(System.IntPtr obj, System.IntPtr pd,   double zoom);
+
+
+    public delegate  void efl_ui_zoom_level_set_api_delegate(System.IntPtr obj,   double zoom);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_level_set_api_delegate> efl_ui_zoom_level_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_level_set_api_delegate>(_Module, "efl_ui_zoom_level_set");
+    private static  void zoom_level_set(System.IntPtr obj, System.IntPtr pd,  double zoom)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_level_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Zoom)wrapper).SetZoomLevel( zoom);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_zoom_level_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  zoom);
+      }
+   }
+   private static efl_ui_zoom_level_set_delegate efl_ui_zoom_level_set_static_delegate;
+
+
+    private delegate Efl.Ui.ZoomMode efl_ui_zoom_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ZoomMode efl_ui_zoom_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_get_api_delegate> efl_ui_zoom_mode_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_get_api_delegate>(_Module, "efl_ui_zoom_mode_get");
+    private static Efl.Ui.ZoomMode zoom_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ZoomMode _ret_var = default(Efl.Ui.ZoomMode);
+         try {
+            _ret_var = ((Zoom)wrapper).GetZoomMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_zoom_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_zoom_mode_get_delegate efl_ui_zoom_mode_get_static_delegate;
+
+
+    private delegate  void efl_ui_zoom_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ZoomMode mode);
+
+
+    public delegate  void efl_ui_zoom_mode_set_api_delegate(System.IntPtr obj,   Efl.Ui.ZoomMode mode);
+    public static Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_set_api_delegate> efl_ui_zoom_mode_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_zoom_mode_set_api_delegate>(_Module, "efl_ui_zoom_mode_set");
+    private static  void zoom_mode_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ZoomMode mode)
+   {
+      Eina.Log.Debug("function efl_ui_zoom_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Zoom)wrapper).SetZoomMode( mode);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_zoom_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  mode);
+      }
+   }
+   private static efl_ui_zoom_mode_set_delegate efl_ui_zoom_mode_set_static_delegate;
+}
+} } 
+namespace Efl { namespace Ui { 
+/// <summary>Types of zoom available.</summary>
+public enum ZoomMode
+{
+/// <summary>Zoom controlled normally by efl_ui_zoom_set</summary>
+Manual = 0,
+/// <summary>Zoom until photo fits in zoomable object</summary>
+AutoFit = 1,
+/// <summary>Zoom until photo fills zoomable object</summary>
+AutoFill = 2,
+/// <summary>Zoom in until photo fits in zoomable object</summary>
+AutoFitIn = 3,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 4,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/efl_view_model.eo.cs b/internals/src/EflSharp/EflSharp/efl_view_model.eo.cs
new file mode 100755 (executable)
index 0000000..f03f282
--- /dev/null
@@ -0,0 +1,434 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+
+/// <summary></summary>
+/// <param name="view_model">The ViewModel object the @.property.get is issued on.</param>
+/// <param name="property">The property name the @.property.get is issued on.</param>
+/// <returns></returns>
+public delegate  Eina.Value EflViewModelPropertyGet( Efl.ViewModel view_model,   System.String property);
+ [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]public delegate  Eina.Value EflViewModelPropertyGetInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ViewModel, Efl.Eo.NonOwnTag>))]  Efl.ViewModel view_model,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String property);
+internal class EflViewModelPropertyGetWrapper
+{
+
+   private EflViewModelPropertyGetInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal EflViewModelPropertyGetWrapper (EflViewModelPropertyGetInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~EflViewModelPropertyGetWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  Eina.Value ManagedCb( Efl.ViewModel view_model,  System.String property)
+   {
+                                          var _ret_var = _cb(_cb_data,  view_model,  property);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+   }
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshaler))]   internal static  Eina.Value Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ViewModel, Efl.Eo.NonOwnTag>))]  Efl.ViewModel view_model,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String property)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      EflViewModelPropertyGet cb = (EflViewModelPropertyGet)handle.Target;
+                                              Eina.Value _ret_var = default( Eina.Value);
+      try {
+         _ret_var = cb( view_model,  property);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                              return _ret_var;
+   }
+}
+
+
+/// <summary></summary>
+/// <param name="view_model">The ViewModel object the @.property.set is issued on.</param>
+/// <param name="property">The property name the @.property.set is issued on.</param>
+/// <param name="value">The new value to set.</param>
+/// <returns></returns>
+public delegate  Eina.Future EflViewModelPropertySet( Efl.ViewModel view_model,   System.String property,   Eina.Value value);
+[return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))]public delegate  Eina.Future EflViewModelPropertySetInternal(IntPtr data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ViewModel, Efl.Eo.NonOwnTag>))]  Efl.ViewModel view_model,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String property,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))]   Eina.Value value);
+internal class EflViewModelPropertySetWrapper
+{
+
+   private EflViewModelPropertySetInternal _cb;
+   private IntPtr _cb_data;
+   private EinaFreeCb _cb_free_cb;
+
+   internal EflViewModelPropertySetWrapper (EflViewModelPropertySetInternal _cb, IntPtr _cb_data, EinaFreeCb _cb_free_cb)
+   {
+      this._cb = _cb;
+      this._cb_data = _cb_data;
+      this._cb_free_cb = _cb_free_cb;
+   }
+
+   ~EflViewModelPropertySetWrapper()
+   {
+      if (this._cb_free_cb != null)
+         this._cb_free_cb(this._cb_data);
+   }
+
+   internal  Eina.Future ManagedCb( Efl.ViewModel view_model,  System.String property,  Eina.Value value)
+   {
+                                                            var _ret_var = _cb(_cb_data,  view_model,  property,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+   }
+
+   [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.FutureMarshaler))]   internal static  Eina.Future Cb(IntPtr cb_data, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.ViewModel, Efl.Eo.NonOwnTag>))]  Efl.ViewModel view_model,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringshareKeepOwnershipMarshaler))]   System.String property,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Eina.ValueMarshalerOwn))]   Eina.Value value)
+   {
+      GCHandle handle = GCHandle.FromIntPtr(cb_data);
+      EflViewModelPropertySet cb = (EflViewModelPropertySet)handle.Target;
+                                                                Eina.Future _ret_var = default( Eina.Future);
+      try {
+         _ret_var = cb( view_model,  property,  value);
+      } catch (Exception e) {
+         Eina.Log.Warning($"Callback error: {e.ToString()}");
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+                                          return _ret_var;
+   }
+}
+
+namespace Efl { 
+/// <summary>Efl model providing helpers for custom properties used when linking a model to a view and you need to generate/adapt values for display.
+/// There is two ways to use this class, you can either inherit from it and have a custom constructor for example. Or you can just instantiate it and manually define your property on it via callbacks.</summary>
+[ViewModelNativeInherit]
+public class ViewModel : Efl.CompositeModel, Efl.Eo.IWrapper
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Efl.ViewModelNativeInherit nativeInherit = new Efl.ViewModelNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (ViewModel))
+            return Efl.ViewModelNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Ecore)] internal static extern System.IntPtr
+      efl_view_model_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   ///<param name="model">Model that is/will be See <see cref="Efl.Ui.View.SetModel"/></param>
+   ///<param name="childrenBind">Define if we will intercept all childrens object reference and bind them through the ViewModel with the same property logic as this one. Be careful of recursivity. See <see cref="Efl.ViewModel.SetChildrenBind"/></param>
+   ///<param name="index">Position of this object in the parent model. See <see cref="Efl.CompositeModel.SetIndex"/></param>
+   public ViewModel(Efl.Object parent
+         , Efl.Model model,  bool? childrenBind = null,  uint? index = null) :
+      base(efl_view_model_class_get(), typeof(ViewModel), parent)
+   {
+      if (Efl.Eo.Globals.ParamHelperCheck(model))
+         SetModel(Efl.Eo.Globals.GetParamHelper(model));
+      if (Efl.Eo.Globals.ParamHelperCheck(childrenBind))
+         SetChildrenBind(Efl.Eo.Globals.GetParamHelper(childrenBind));
+      if (Efl.Eo.Globals.ParamHelperCheck(index))
+         SetIndex(Efl.Eo.Globals.GetParamHelper(index));
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public ViewModel(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected ViewModel(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static ViewModel static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new ViewModel(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+   }
+   /// <summary>Get the state of the automatic binding of children object.</summary>
+   /// <returns>Do you automatically bind children. Default to true.</returns>
+   virtual public bool GetChildrenBind() {
+       var _ret_var = Efl.ViewModelNativeInherit.efl_view_model_children_bind_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the state of the automatic binding of children object.</summary>
+   /// <param name="enable">Do you automatically bind children. Default to true.</param>
+   /// <returns></returns>
+   virtual public  void SetChildrenBind( bool enable) {
+                         Efl.ViewModelNativeInherit.efl_view_model_children_bind_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add callbacks that will be triggered when someone ask for the specified property name when getting or setting a property.
+   /// A get or set should at least be provided for this call to succeed.
+   /// 
+   /// See <see cref="Efl.ViewModel.DelPropertyLogic"/></summary>
+   /// <param name="property">The property to bind on to.</param>
+   /// <param name="get">Define the get callback called when the <see cref="Efl.Model.GetProperty"/> is called with the above property name.</param>
+   /// <param name="set">Define the set callback called when the <see cref="Efl.Model.GetProperty"/> is called with the above property name.</param>
+   /// <param name="binded">Iterator of property name to bind with this defined property see <see cref="Efl.ViewModel.PropertyBind"/>.</param>
+   /// <returns></returns>
+   virtual public  Eina.Error AddPropertyLogic(  System.String property,  EflViewModelPropertyGet get,  EflViewModelPropertySet set,  Eina.Iterator< System.String> binded) {
+                         var _in_binded = binded.Handle;
+                                    GCHandle get_handle = GCHandle.Alloc(get);
+      GCHandle set_handle = GCHandle.Alloc(set);
+            var _ret_var = Efl.ViewModelNativeInherit.efl_view_model_property_logic_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), property, GCHandle.ToIntPtr(get_handle), EflViewModelPropertyGetWrapper.Cb, Efl.Eo.Globals.free_gchandle, GCHandle.ToIntPtr(set_handle), EflViewModelPropertySetWrapper.Cb, Efl.Eo.Globals.free_gchandle,  _in_binded);
+      Eina.Error.RaiseIfUnhandledException();
+                                                      return _ret_var;
+ }
+   /// <summary>Delete previously added callbacks that were triggered when someone asked for the specified property name when getting or setting a property.
+   /// A get or set should at least be provided for this call to succeed.
+   /// 
+   /// See <see cref="Efl.ViewModel.AddPropertyLogic"/></summary>
+   /// <param name="property">The property to bind on to.</param>
+   /// <returns></returns>
+   virtual public  Eina.Error DelPropertyLogic(  System.String property) {
+                         var _ret_var = Efl.ViewModelNativeInherit.efl_view_model_property_logic_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), property);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Automatically update the field for the event <see cref="Efl.Model.PropertiesChangedEvt"/> to include property that are impacted with change in a property from the composited model.
+   /// The source doesn&apos;t have to be provided at this point by the composited model.</summary>
+   /// <param name="source">Property name in the composited model.</param>
+   /// <param name="destination">Property name in the <see cref="Efl.ViewModel"/></param>
+   /// <returns></returns>
+   virtual public  void PropertyBind(  System.String source,   System.String destination) {
+                                           Efl.ViewModelNativeInherit.efl_view_model_property_bind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), source,  destination);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Stop automatically updating the field for the event <see cref="Efl.Model.PropertiesChangedEvt"/> to include property that are impacted with change in a property from the composited model.</summary>
+   /// <param name="source">Property name in the composited model.</param>
+   /// <param name="destination">Property name in the <see cref="Efl.ViewModel"/></param>
+   /// <returns></returns>
+   virtual public  void PropertyUnbind(  System.String source,   System.String destination) {
+                                           Efl.ViewModelNativeInherit.efl_view_model_property_unbind_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), source,  destination);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Define if we will intercept all childrens object reference and bind them through the ViewModel with the same property logic as this one. Be careful of recursivity.
+/// This can only be applied at construction time.</summary>
+/// <value>Do you automatically bind children. Default to true.</value>
+   public bool ChildrenBind {
+      get { return GetChildrenBind(); }
+      set { SetChildrenBind( value); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.ViewModel.efl_view_model_class_get();
+   }
+}
+public class ViewModelNativeInherit : Efl.CompositeModelNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Ecore);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (efl_view_model_children_bind_get_static_delegate == null)
+      efl_view_model_children_bind_get_static_delegate = new efl_view_model_children_bind_get_delegate(children_bind_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_view_model_children_bind_get"), func = Marshal.GetFunctionPointerForDelegate(efl_view_model_children_bind_get_static_delegate)});
+      if (efl_view_model_children_bind_set_static_delegate == null)
+      efl_view_model_children_bind_set_static_delegate = new efl_view_model_children_bind_set_delegate(children_bind_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_view_model_children_bind_set"), func = Marshal.GetFunctionPointerForDelegate(efl_view_model_children_bind_set_static_delegate)});
+      if (efl_view_model_property_logic_add_static_delegate == null)
+      efl_view_model_property_logic_add_static_delegate = new efl_view_model_property_logic_add_delegate(property_logic_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_view_model_property_logic_add"), func = Marshal.GetFunctionPointerForDelegate(efl_view_model_property_logic_add_static_delegate)});
+      if (efl_view_model_property_logic_del_static_delegate == null)
+      efl_view_model_property_logic_del_static_delegate = new efl_view_model_property_logic_del_delegate(property_logic_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_view_model_property_logic_del"), func = Marshal.GetFunctionPointerForDelegate(efl_view_model_property_logic_del_static_delegate)});
+      if (efl_view_model_property_bind_static_delegate == null)
+      efl_view_model_property_bind_static_delegate = new efl_view_model_property_bind_delegate(property_bind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_view_model_property_bind"), func = Marshal.GetFunctionPointerForDelegate(efl_view_model_property_bind_static_delegate)});
+      if (efl_view_model_property_unbind_static_delegate == null)
+      efl_view_model_property_unbind_static_delegate = new efl_view_model_property_unbind_delegate(property_unbind);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_view_model_property_unbind"), func = Marshal.GetFunctionPointerForDelegate(efl_view_model_property_unbind_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Efl.ViewModel.efl_view_model_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Efl.ViewModel.efl_view_model_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_view_model_children_bind_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_view_model_children_bind_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_view_model_children_bind_get_api_delegate> efl_view_model_children_bind_get_ptr = new Efl.Eo.FunctionWrapper<efl_view_model_children_bind_get_api_delegate>(_Module, "efl_view_model_children_bind_get");
+    private static bool children_bind_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_view_model_children_bind_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((ViewModel)wrapper).GetChildrenBind();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_view_model_children_bind_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_view_model_children_bind_get_delegate efl_view_model_children_bind_get_static_delegate;
+
+
+    private delegate  void efl_view_model_children_bind_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void efl_view_model_children_bind_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<efl_view_model_children_bind_set_api_delegate> efl_view_model_children_bind_set_ptr = new Efl.Eo.FunctionWrapper<efl_view_model_children_bind_set_api_delegate>(_Module, "efl_view_model_children_bind_set");
+    private static  void children_bind_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function efl_view_model_children_bind_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((ViewModel)wrapper).SetChildrenBind( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_view_model_children_bind_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static efl_view_model_children_bind_set_delegate efl_view_model_children_bind_set_static_delegate;
+
+
+    private delegate  Eina.Error efl_view_model_property_logic_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property,  IntPtr get_data, EflViewModelPropertyGetInternal get, EinaFreeCb get_free_cb,  IntPtr set_data, EflViewModelPropertySetInternal set, EinaFreeCb set_free_cb,    System.IntPtr binded);
+
+
+    public delegate  Eina.Error efl_view_model_property_logic_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property,  IntPtr get_data, EflViewModelPropertyGetInternal get, EinaFreeCb get_free_cb,  IntPtr set_data, EflViewModelPropertySetInternal set, EinaFreeCb set_free_cb,    System.IntPtr binded);
+    public static Efl.Eo.FunctionWrapper<efl_view_model_property_logic_add_api_delegate> efl_view_model_property_logic_add_ptr = new Efl.Eo.FunctionWrapper<efl_view_model_property_logic_add_api_delegate>(_Module, "efl_view_model_property_logic_add");
+    private static  Eina.Error property_logic_add(System.IntPtr obj, System.IntPtr pd,   System.String property, IntPtr get_data, EflViewModelPropertyGetInternal get, EinaFreeCb get_free_cb, IntPtr set_data, EflViewModelPropertySetInternal set, EinaFreeCb set_free_cb,   System.IntPtr binded)
+   {
+      Eina.Log.Debug("function efl_view_model_property_logic_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                 var _in_binded = new Eina.Iterator< System.String>(binded, false, false);
+                                       EflViewModelPropertyGetWrapper get_wrapper = new EflViewModelPropertyGetWrapper(get, get_data, get_free_cb);
+         EflViewModelPropertySetWrapper set_wrapper = new EflViewModelPropertySetWrapper(set, set_data, set_free_cb);
+                Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((ViewModel)wrapper).AddPropertyLogic( property,  get_wrapper.ManagedCb,  set_wrapper.ManagedCb,  _in_binded);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                      return _ret_var;
+      } else {
+         return efl_view_model_property_logic_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property, get_data, get, get_free_cb, set_data, set, set_free_cb,  binded);
+      }
+   }
+   private static efl_view_model_property_logic_add_delegate efl_view_model_property_logic_add_static_delegate;
+
+
+    private delegate  Eina.Error efl_view_model_property_logic_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+
+
+    public delegate  Eina.Error efl_view_model_property_logic_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String property);
+    public static Efl.Eo.FunctionWrapper<efl_view_model_property_logic_del_api_delegate> efl_view_model_property_logic_del_ptr = new Efl.Eo.FunctionWrapper<efl_view_model_property_logic_del_api_delegate>(_Module, "efl_view_model_property_logic_del");
+    private static  Eina.Error property_logic_del(System.IntPtr obj, System.IntPtr pd,   System.String property)
+   {
+      Eina.Log.Debug("function efl_view_model_property_logic_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     Eina.Error _ret_var = default( Eina.Error);
+         try {
+            _ret_var = ((ViewModel)wrapper).DelPropertyLogic( property);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_view_model_property_logic_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  property);
+      }
+   }
+   private static efl_view_model_property_logic_del_delegate efl_view_model_property_logic_del_static_delegate;
+
+
+    private delegate  void efl_view_model_property_bind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String destination);
+
+
+    public delegate  void efl_view_model_property_bind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String destination);
+    public static Efl.Eo.FunctionWrapper<efl_view_model_property_bind_api_delegate> efl_view_model_property_bind_ptr = new Efl.Eo.FunctionWrapper<efl_view_model_property_bind_api_delegate>(_Module, "efl_view_model_property_bind");
+    private static  void property_bind(System.IntPtr obj, System.IntPtr pd,   System.String source,   System.String destination)
+   {
+      Eina.Log.Debug("function efl_view_model_property_bind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ViewModel)wrapper).PropertyBind( source,  destination);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_view_model_property_bind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  source,  destination);
+      }
+   }
+   private static efl_view_model_property_bind_delegate efl_view_model_property_bind_static_delegate;
+
+
+    private delegate  void efl_view_model_property_unbind_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String destination);
+
+
+    public delegate  void efl_view_model_property_unbind_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String destination);
+    public static Efl.Eo.FunctionWrapper<efl_view_model_property_unbind_api_delegate> efl_view_model_property_unbind_ptr = new Efl.Eo.FunctionWrapper<efl_view_model_property_unbind_api_delegate>(_Module, "efl_view_model_property_unbind");
+    private static  void property_unbind(System.IntPtr obj, System.IntPtr pd,   System.String source,   System.String destination)
+   {
+      Eina.Log.Debug("function efl_view_model_property_unbind was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((ViewModel)wrapper).PropertyUnbind( source,  destination);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_view_model_property_unbind_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  source,  destination);
+      }
+   }
+   private static efl_view_model_property_unbind_delegate efl_view_model_property_unbind_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/eina_accessor.cs b/internals/src/EflSharp/EflSharp/eina_accessor.cs
new file mode 100755 (executable)
index 0000000..c3c09c4
--- /dev/null
@@ -0,0 +1,126 @@
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Runtime.InteropServices;
+
+using static Eina.TraitFunctions;
+
+using static Eina.AccessorNativeFunctions;
+
+namespace Eina {
+
+internal class AccessorNativeFunctions
+{
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_accessor_data_get(IntPtr accessor, uint position, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_accessor_free(IntPtr accessor);
+}
+
+/// <summary>Accessors provide an uniform way of accessing Eina containers, similar to C++ STL's and C# IEnumerable.</summary>
+public class Accessor<T> : IEnumerable<T>, IDisposable
+{
+    /// <summary>Pointer to the native accessor.</summary>
+    public IntPtr Handle { get; private set; } = IntPtr.Zero;
+
+    /// <summary>Who is in charge of releasing the resources wrapped by this instance.</summary>
+    private Ownership Ownership { get; set; }
+
+    // FIXME Part of the implicit EFL Container interface. Need to make it explicit.
+    public bool Own
+    {
+        get
+        {
+            return Ownership == Ownership.Managed;
+        }
+        set
+        {
+            Ownership = value ? Ownership.Managed : Ownership.Unmanaged;
+        }
+    }
+
+    /// <summary>Create a new accessor wrapping the given pointer.</summary>
+    public Accessor(IntPtr handle, Ownership owner=Ownership.Managed)
+    {
+        Handle = handle;
+        Ownership = owner;
+    }
+
+    public Accessor(IntPtr handle, bool own, bool ownContent=false)
+        : this(handle, own ? Ownership.Managed : Ownership.Unmanaged)
+    {
+    }
+
+    /// <summary>Release the native resources held by this instance.</summary>
+    public void Dispose()
+    {
+        Dispose(true);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        if (Ownership == Ownership.Managed && Handle != IntPtr.Zero)
+        {
+            eina_accessor_free(Handle);
+            Handle = IntPtr.Zero;
+        }
+    }
+
+    ~Accessor()
+    {
+        Dispose(false);
+    }
+
+    public virtual T Convert(IntPtr data)
+    {
+        return NativeToManaged<T>(data);
+    }
+
+    /// <summary>Returns an enumerator that iterates throught this accessor.</summary>
+    public IEnumerator<T> GetEnumerator()
+    {
+        if (Handle == IntPtr.Zero)
+            throw new ObjectDisposedException(base.GetType().Name);
+        IntPtr tmp = MemoryNative.Alloc(Marshal.SizeOf(typeof(IntPtr)));
+        uint position = 0;
+
+        try
+        {
+            while(eina_accessor_data_get(Handle, position, tmp))
+            {
+                IntPtr data = (IntPtr)Marshal.PtrToStructure(tmp, typeof(IntPtr));
+                yield return Convert(data);
+                position += 1;
+            }
+        }
+        finally
+        {
+            MemoryNative.Free(tmp);
+        }
+    }
+
+    IEnumerator IEnumerable.GetEnumerator()
+    {
+        return this.GetEnumerator();
+    }
+}
+
+public class AccessorInList<T> : Accessor<T>
+{
+    public AccessorInList(IntPtr handle, Ownership own): base(handle, own) {}
+    public override T Convert(IntPtr data)
+    {
+        return NativeToManagedInlistNode<T>(data);
+    }
+}
+
+public class AccessorInArray<T> : Accessor<T>
+{
+    public AccessorInArray(IntPtr handle, Ownership own): base(handle, own) {}
+    public override T Convert(IntPtr data)
+    {
+        return NativeToManagedInplace<T>(data);
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_array.cs b/internals/src/EflSharp/EflSharp/eina_array.cs
new file mode 100755 (executable)
index 0000000..f4dd49d
--- /dev/null
@@ -0,0 +1,301 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+using static Eina.TraitFunctions;
+using static Eina.ArrayNativeFunctions;
+
+namespace Eina {
+
+public static class ArrayNativeFunctions
+{
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_array_new(uint step);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_array_free(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_array_flush(IntPtr array);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_array_remove(IntPtr array, IntPtr keep, IntPtr gdata);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_array_push(IntPtr array, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_array_iterator_new(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_array_accessor_new(IntPtr array);
+
+    [DllImport(efl.Libs.CustomExports)] public static extern void
+        eina_array_clean_custom_export_mono(IntPtr array);
+    [DllImport(efl.Libs.CustomExports)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_array_push_custom_export_mono(IntPtr array, IntPtr data);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_array_pop_custom_export_mono(IntPtr array);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_array_data_get_custom_export_mono(IntPtr array, uint idx);
+    [DllImport(efl.Libs.CustomExports)] public static extern void
+        eina_array_data_set_custom_export_mono(IntPtr array, uint idx, IntPtr data);
+    [DllImport(efl.Libs.CustomExports)] public static extern uint
+        eina_array_count_custom_export_mono(IntPtr array);
+
+    [DllImport(efl.Libs.CustomExports)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_array_foreach_custom_export_mono(IntPtr array, IntPtr cb, IntPtr fdata);
+}
+
+public class Array<T> : IEnumerable<T>, IDisposable
+{
+    public static uint DefaultStep = 32;
+
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;}
+    public bool OwnContent {get;set;}
+
+    public int Length
+    {
+        get { return Count(); }
+    }
+
+
+    private void InitNew(uint step)
+    {
+        Handle = eina_array_new(step);
+        Own = true;
+        OwnContent = true;
+        if (Handle == IntPtr.Zero)
+            throw new SEHException("Could not alloc array");
+    }
+
+    internal bool InternalPush(IntPtr ele)
+    {
+        return eina_array_push_custom_export_mono(Handle, ele);
+    }
+
+    internal IntPtr InternalPop()
+    {
+        return eina_array_pop_custom_export_mono(Handle);
+    }
+
+    internal IntPtr InternalDataGet(int idx)
+    {
+        return eina_array_data_get_custom_export_mono(Handle, (uint)idx); // TODO: Check bounds ???
+    }
+
+    internal void InternalDataSet(int idx, IntPtr ele)
+    {
+        eina_array_data_set_custom_export_mono(Handle, (uint)idx, ele); // TODO: Check bounds ???
+    }
+
+    public Array()
+    {
+        InitNew(DefaultStep);
+    }
+
+    public Array(uint step)
+    {
+        InitNew(step);
+    }
+
+    public Array(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = own;
+    }
+
+    public Array(IntPtr handle, bool own, bool ownContent)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    ~Array()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (OwnContent)
+        {
+            int len = (int)eina_array_count_custom_export_mono(h);
+            for(int i = 0; i < len; ++i)
+            {
+                NativeFree<T>(eina_array_data_get_custom_export_mono(h, (uint)i));
+            }
+        }
+
+        if (Own)
+            eina_array_free(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    private void FreeElementsIfOwned()
+    {
+        if (OwnContent)
+        {
+            int len = Length;
+            for(int i = 0; i < len; ++i)
+            {
+                NativeFree<T>(InternalDataGet(i));
+            }
+        }
+    }
+
+    public void Clean()
+    {
+        FreeElementsIfOwned();
+        eina_array_clean_custom_export_mono(Handle);
+    }
+
+    public void Flush()
+    {
+        FreeElementsIfOwned();
+        eina_array_flush(Handle);
+    }
+
+    public int Count()
+    {
+        return (int) eina_array_count_custom_export_mono(Handle);
+    }
+
+    public void SetOwnership(bool ownAll)
+    {
+        Own = ownAll;
+        OwnContent = ownAll;
+    }
+
+    public void SetOwnership(bool own, bool ownContent)
+    {
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    public bool Push(T val)
+    {
+        IntPtr ele = ManagedToNativeAlloc(val);
+        var r = InternalPush(ele);
+        if (!r)
+            NativeFree<T>(ele);
+        return r;
+    }
+
+// TODO ???
+//     public void Add(T val)
+//     {
+//         if (!Push(val))
+//           throw;
+//     }
+
+    public T Pop()
+    {
+        IntPtr ele = InternalPop();
+        var r = NativeToManaged<T>(ele);
+        if (OwnContent && ele != IntPtr.Zero)
+            NativeFree<T>(ele);
+        return r;
+    }
+
+    public T DataGet(int idx)
+    {
+        IntPtr ele = InternalDataGet(idx);
+        return NativeToManaged<T>(ele);
+    }
+
+    public T At(int idx)
+    {
+        return DataGet(idx);
+    }
+
+    public void DataSet(int idx, T val)
+    {
+        IntPtr ele = InternalDataGet(idx); // TODO: check bondaries ??
+        if (OwnContent && ele != IntPtr.Zero)
+            NativeFree<T>(ele);
+        ele = ManagedToNativeAlloc(val);
+        InternalDataSet(idx, ele);
+    }
+
+    public T this[int idx]
+    {
+        get
+        {
+            return DataGet(idx);
+        }
+        set
+        {
+            DataSet(idx, value);
+        }
+    }
+
+    public T[] ToArray()
+    {
+        int len = Length;
+        var managed = new T[len];
+        for(int i = 0; i < len; ++i)
+        {
+            managed[i] = DataGet(i);
+        }
+        return managed;
+    }
+
+    public bool Append(T[] values)
+    {
+        foreach(T v in values)
+            if (!Push(v))
+                return false;
+        return true;
+    }
+
+
+    public Eina.Iterator<T> GetIterator()
+    {
+        return new Eina.Iterator<T>(eina_array_iterator_new(Handle), true, false);
+    }
+
+    public IEnumerator<T> GetEnumerator()
+    {
+        int len = Length;
+        for(int i = 0; i < len; ++i)
+        {
+            yield return DataGet(i);
+        }
+    }
+
+    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
+    {
+        return this.GetEnumerator();
+    }
+
+    /// <summary> Gets an Accessor for this Array.</summary>
+    public Eina.Accessor<T> GetAccessor()
+    {
+        return new Eina.Accessor<T>(eina_array_accessor_new(Handle), Ownership.Managed);
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_binbuf.cs b/internals/src/EflSharp/EflSharp/eina_binbuf.cs
new file mode 100755 (executable)
index 0000000..20a4c2d
--- /dev/null
@@ -0,0 +1,212 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Eina {
+
+public class Binbuf : IDisposable
+{
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_binbuf_new();
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_binbuf_free(IntPtr buf);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_binbuf_reset(IntPtr buf);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_append_length(IntPtr buf, byte[] str, UIntPtr length);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_append_slice(IntPtr buf, Eina.Slice slice);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_append_buffer(IntPtr buf, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_append_char(IntPtr buf, byte c);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_insert_length(IntPtr buf, byte[] str, UIntPtr length, UIntPtr pos);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_insert_slice(IntPtr buf, Eina.Slice slice, UIntPtr pos);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_insert_char(IntPtr buf, byte c, UIntPtr pos);
+    [DllImport(efl.Libs.Eina)] public static extern byte
+        eina_binbuf_remove(IntPtr buf, UIntPtr start, UIntPtr end);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_binbuf_string_get(IntPtr buf);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_binbuf_string_free(IntPtr buf);
+    [DllImport(efl.Libs.Eina)] public static extern UIntPtr
+        eina_binbuf_length_get(IntPtr buf);
+    [DllImport(efl.Libs.Eina)] public static extern Eina.Slice
+        eina_binbuf_slice_get(IntPtr buf);
+
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;}
+
+    public int Length
+    {
+        get { return (int) GetLength(); }
+    }
+
+    private void InitNew()
+    {
+        Handle = eina_binbuf_new();
+        Own = true;
+        if (Handle == IntPtr.Zero)
+            throw new SEHException("Could not alloc binbuf");
+    }
+
+    public Binbuf()
+    {
+        InitNew();
+    }
+
+    public Binbuf(byte[] str, uint? length = null)
+    {
+        InitNew();
+
+        if (str != null)
+        {
+            if (!Append(str, (length != null ? length.Value : (uint)(str.Length))))
+            {
+                Dispose();
+                throw new SEHException("Could not append on binbuf");
+            }
+        }
+    }
+
+    public Binbuf(Binbuf bb)
+    {
+        InitNew();
+
+        if (bb != null)
+        {
+            Append(bb);
+        }
+    }
+
+    public Binbuf(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+    }
+
+    ~Binbuf()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (Own && h != IntPtr.Zero) {
+            eina_binbuf_free(Handle);
+        }
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public void Reset()
+    {
+        eina_binbuf_reset(Handle);
+    }
+
+    public bool Append(byte[] str)
+    {
+        return 0 != eina_binbuf_append_length(Handle, str, (UIntPtr)(str.Length));
+    }
+
+    public bool Append(byte[] str, uint length)
+    {
+        return 0 != eina_binbuf_append_length(Handle, str, (UIntPtr)length);
+    }
+
+    public bool Append(Binbuf bb)
+    {
+        return 0 != eina_binbuf_append_buffer(Handle, bb.Handle);
+    }
+
+    public bool Append(byte c)
+    {
+        return 0 != eina_binbuf_append_char(Handle, c);
+    }
+
+    public bool Append(Eina.Slice slice)
+    {
+        return 0 != eina_binbuf_append_slice(Handle, slice);
+    }
+
+    public bool Insert(byte[] str, uint pos)
+    {
+        return 0 != eina_binbuf_insert_length(Handle, str, (UIntPtr)(str.Length), (UIntPtr)pos);
+    }
+
+    public bool Insert(byte[] str, uint length, uint pos)
+    {
+        return 0 != eina_binbuf_insert_length(Handle, str, (UIntPtr)length, (UIntPtr)pos);
+    }
+
+    public bool Insert(byte c, uint pos)
+    {
+        return 0 != eina_binbuf_insert_char(Handle, c, (UIntPtr)pos);
+    }
+
+    public bool Insert(Eina.Slice slice, uint pos)
+    {
+        return 0 != eina_binbuf_insert_slice(Handle, slice, (UIntPtr)pos);
+    }
+
+    public bool Remove(uint start, uint end)
+    {
+        return 0 != eina_binbuf_remove(Handle, (UIntPtr)start, (UIntPtr)end);
+    }
+
+    public byte[] GetBytes()
+    {
+        var ptr = eina_binbuf_string_get(Handle);
+        if (ptr == IntPtr.Zero)
+            return null;
+
+        var size = (int)(this.GetLength());
+        byte[] mArray = new byte[size];
+        Marshal.Copy(ptr, mArray, 0, size);
+        return mArray;
+    }
+
+    public IntPtr GetStringNative()
+    {
+        return eina_binbuf_string_get(Handle);
+    }
+
+    public void FreeString()
+    {
+        eina_binbuf_string_free(Handle);
+    }
+
+    public UIntPtr GetLength()
+    {
+        return eina_binbuf_length_get(Handle);
+    }
+
+    Eina.Slice GetSlice()
+    {
+        return eina_binbuf_slice_get(Handle);
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_common.cs b/internals/src/EflSharp/EflSharp/eina_common.cs
new file mode 100755 (executable)
index 0000000..c9c10de
--- /dev/null
@@ -0,0 +1,157 @@
+#pragma warning disable 1591
+
+using System;
+using System.Text;
+using System.Runtime.InteropServices;
+
+namespace Eina
+{
+namespace Callbacks
+{
+
+public delegate int EinaCompareCb(IntPtr data1, IntPtr data2);
+public delegate void EinaFreeCb(IntPtr data);
+
+}
+
+internal static class NativeCustomExportFunctions
+{
+    [DllImport(efl.Libs.CustomExports)] public static extern void
+        efl_mono_native_free(IntPtr ptr);
+    [DllImport(efl.Libs.CustomExports)] public static extern void
+        efl_mono_native_free_ref(IntPtr ptr);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_alloc(uint count);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_memset(IntPtr ptr, uint fill, uint count);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_alloc_copy(IntPtr val, uint size);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_strdup(string str);
+
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_ptr_compare_addr_get();
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_str_compare_addr_get();
+
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_free_addr_get();
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        efl_mono_native_efl_unref_addr_get();
+}
+
+/// <summary>Wrapper around native memory DllImport'd functions</summary>
+public static class MemoryNative {
+    public static void Free(IntPtr ptr)
+    {
+        NativeCustomExportFunctions.efl_mono_native_free(ptr);
+    }
+
+    public static void FreeRef(IntPtr ptr)
+    {
+        NativeCustomExportFunctions.efl_mono_native_free_ref(ptr);
+    }
+
+    // This public api uses int as Marshal.SizeOf return an int instead of uint.
+    public static IntPtr Alloc(int count)
+    {
+        return NativeCustomExportFunctions.efl_mono_native_alloc(Convert.ToUInt32(count));
+    }
+
+    public static void Memset(IntPtr ptr, int fill, int count)
+    {
+        NativeCustomExportFunctions.efl_mono_native_memset(ptr, Convert.ToUInt32(fill), Convert.ToUInt32(count));
+    }
+
+    public static IntPtr AllocCopy(IntPtr ptr, int count)
+    {
+        return NativeCustomExportFunctions.efl_mono_native_alloc_copy(ptr, Convert.ToUInt32(count));
+    }
+
+    public static IntPtr StrDup(string str)
+    {
+        return NativeCustomExportFunctions.efl_mono_native_strdup(str);
+    }
+
+    // IntPtr's for some native functions
+    public static IntPtr PtrCompareFuncPtrGet()
+    {
+        return NativeCustomExportFunctions.efl_mono_native_ptr_compare_addr_get();
+    }
+
+    public static IntPtr StrCompareFuncPtrGet()
+    {
+        return NativeCustomExportFunctions.efl_mono_native_str_compare_addr_get();
+    }
+
+    public static IntPtr FreeFuncPtrGet()
+    {
+        return NativeCustomExportFunctions.efl_mono_native_free_addr_get();
+    }
+
+    public static IntPtr EflUnrefFuncPtrGet()
+    {
+        return NativeCustomExportFunctions.efl_mono_native_efl_unref_addr_get();
+    }
+}
+
+public static class PrimitiveConversion
+{
+   public static T PointerToManaged<T>(IntPtr nat)
+   {
+       if (nat == IntPtr.Zero)
+       {
+           Eina.Log.Error("Null pointer for primitive type.");
+           return default(T);
+       }
+
+       var w = Marshal.PtrToStructure<T>(nat);
+       return w;
+   }
+
+   public static IntPtr ManagedToPointerAlloc<T>(T man)
+   {
+       IntPtr ptr = Marshal.AllocHGlobal(Marshal.SizeOf<T>());
+       Marshal.StructureToPtr(man, ptr, false);
+       return ptr;
+   }
+}
+
+public static class StringConversion
+{
+    public static IntPtr ManagedStringToNativeUtf8Alloc(string managedString)
+    {
+        if (managedString == null)
+            return IntPtr.Zero;
+
+        byte[] strbuf = Encoding.UTF8.GetBytes(managedString);
+        IntPtr native = MemoryNative.Alloc(strbuf.Length + 1);
+        Marshal.Copy(strbuf, 0, native, strbuf.Length);
+        Marshal.WriteByte(native + strbuf.Length, 0); // write the terminating null
+        return native;
+    }
+
+    public static string NativeUtf8ToManagedString(IntPtr pNativeData)
+    {
+        if (pNativeData == IntPtr.Zero)
+            return null;
+
+        int len = 0;
+        while (Marshal.ReadByte(pNativeData, len) != 0)
+            ++len;
+
+        byte[] strbuf = new byte[len];
+        Marshal.Copy(pNativeData, strbuf, 0, strbuf.Length);
+        return Encoding.UTF8.GetString(strbuf);
+    }
+}
+
+/// <summary>Enum to handle resource ownership between managed and unmanaged code.</summary>
+public enum Ownership {
+    /// <summary> The resource is owned by the managed code. It should free the handle on disposal.</summary>
+    Managed,
+    /// <summary> The resource is owned by the unmanaged code. It won't be freed on disposal.</summary>
+    Unmanaged
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_config.cs b/internals/src/EflSharp/EflSharp/eina_config.cs
new file mode 100755 (executable)
index 0000000..ee0bb5b
--- /dev/null
@@ -0,0 +1,60 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Eina {
+
+public class Config {
+    [DllImport(efl.Libs.Eina)] private static extern int eina_init();
+    [DllImport(efl.Libs.Eina)] private static extern int eina_shutdown();
+
+    public static void Init() {
+        if (eina_init() == 0)
+            throw (new Efl.EflException("Failed to initialize Eina"));
+    }
+
+    public static int Shutdown() {
+        return eina_shutdown();
+    }
+
+}
+
+/// <summary>
+/// Wrapper class for pointers that need some cleanup afterwards
+/// like strings.
+/// </summary>
+public class DisposableIntPtr : IDisposable {
+
+    public IntPtr Handle { get; set; }
+    private bool ShouldFree;
+    private bool Disposed;
+
+    /// <summary>Wraps a new ptr what will be freed based on the
+    /// value of shouldFree</summary>
+    public DisposableIntPtr(IntPtr ptr, bool shouldFree=false)
+    {
+        Handle = ptr;
+        ShouldFree = shouldFree;
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        if (!Disposed && ShouldFree) {
+            MemoryNative.Free(this.Handle);
+        }
+        Disposed = true;
+    }
+
+    ~DisposableIntPtr()
+    {
+        Dispose(false);
+    }
+}
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_container_common.cs b/internals/src/EflSharp/EflSharp/eina_container_common.cs
new file mode 100755 (executable)
index 0000000..3eddb2a
--- /dev/null
@@ -0,0 +1,800 @@
+#pragma warning disable 1591
+
+using System;
+using System.Linq;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+using Eina.Callbacks;
+using static Eina.HashNativeFunctions;
+using static Eina.InarrayNativeFunctions;
+using static Eina.InlistNativeFunctions;
+using static Eina.NativeCustomExportFunctions;
+
+namespace Eina {
+
+public enum ElementType { NumericType, StringType, ObjectType };
+
+[StructLayout(LayoutKind.Sequential)]
+public struct InlistMem
+{
+    public IntPtr next {get;set;}
+    public IntPtr prev {get;set;}
+    public IntPtr last {get;set;}
+}
+
+[StructLayout(LayoutKind.Sequential)]
+public struct InlistNode<T>
+{
+    public InlistMem __in_list {get;set;}
+    public T Val {get;set;}
+}
+
+public interface IBaseElementTraits<T>
+{
+    IntPtr ManagedToNativeAlloc(T man);
+    IntPtr ManagedToNativeAllocInlistNode(T man);
+    void ManagedToNativeCopyTo(T man, IntPtr mem);
+    void NativeFree(IntPtr nat);
+    void NativeFreeInlistNodeElement(IntPtr nat);
+    void NativeFreeInlistNode(IntPtr nat, bool freeElement);
+    void NativeFreeInplace(IntPtr nat);
+    void ResidueFreeInplace(IntPtr nat);
+    T NativeToManaged(IntPtr nat);
+    T NativeToManagedInlistNode(IntPtr nat);
+    T NativeToManagedInplace(IntPtr nat);
+    IntPtr EinaCompareCb();
+    IntPtr EinaFreeCb();
+    IntPtr EinaHashNew();
+    IntPtr EinaInarrayNew(uint step);
+    IntPtr EinaHashIteratorKeyNew(IntPtr hash);
+}
+
+public class StringElementTraits : IBaseElementTraits<string>
+{
+    public StringElementTraits()
+    {
+    }
+
+    public IntPtr ManagedToNativeAlloc(string man)
+    {
+        IntPtr newstring = MemoryNative.StrDup(man);
+        return newstring;
+    }
+
+    public IntPtr ManagedToNativeAllocInlistNode(string man)
+    {
+        var node = new InlistNode<IntPtr>();
+        node.Val = ManagedToNativeAlloc(man);
+        GCHandle pinnedData = GCHandle.Alloc(node, GCHandleType.Pinned);
+        IntPtr ptr = pinnedData.AddrOfPinnedObject();
+        IntPtr nat = MemoryNative.AllocCopy(ptr, Marshal.SizeOf<InlistMem>() + Marshal.SizeOf<IntPtr>());
+        pinnedData.Free();
+        return nat;
+    }
+
+    public void ManagedToNativeCopyTo(string man, IntPtr mem)
+    {
+        IntPtr stringptr = ManagedToNativeAlloc(man);
+        Marshal.WriteIntPtr(mem, stringptr);
+    }
+
+    public void NativeFree(IntPtr nat)
+    {
+        if (nat != IntPtr.Zero)
+            MemoryNative.Free(nat);
+    }
+
+    public void NativeFreeInlistNodeElement(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+            return;
+        var val = Marshal.PtrToStructure<IntPtr>
+            (nat + Marshal.SizeOf<InlistMem>());
+        NativeFree(val);
+    }
+
+    public void NativeFreeInlistNode(IntPtr nat, bool freeElement)
+    {
+        if (nat == IntPtr.Zero)
+            return;
+        if (freeElement)
+            NativeFreeInlistNodeElement(nat);
+        MemoryNative.Free(nat);
+    }
+
+    public void NativeFreeInplace(IntPtr nat)
+    {
+        MemoryNative.FreeRef(nat);
+    }
+
+    public void ResidueFreeInplace(IntPtr nat)
+    {
+    }
+
+    public string NativeToManaged(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+            return default(string);
+        return StringConversion.NativeUtf8ToManagedString(nat);
+    }
+
+    public string NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(string);
+        }
+        IntPtr ptr_location = nat + Marshal.SizeOf<InlistMem>();
+        return NativeToManaged(Marshal.ReadIntPtr(ptr_location));
+    }
+
+    // Strings inplaced are always a pointer, because they are variable-sized
+    public string NativeToManagedInplace(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+            return default(string);
+        nat = Marshal.ReadIntPtr(nat);
+        if (nat == IntPtr.Zero)
+            return default(string);
+        return NativeToManaged(nat);
+    }
+
+    public IntPtr EinaCompareCb()
+    {
+        return MemoryNative.StrCompareFuncPtrGet();
+    }
+
+    public IntPtr EinaFreeCb()
+    {
+        return MemoryNative.FreeFuncPtrGet();
+    }
+
+    public IntPtr EinaHashNew()
+    {
+        return eina_hash_string_superfast_new(IntPtr.Zero);
+    }
+
+    public IntPtr EinaInarrayNew(uint step)
+    {
+        return eina_inarray_new((uint)Marshal.SizeOf<IntPtr>(), step);
+    }
+
+    public IntPtr EinaHashIteratorKeyNew(IntPtr hash)
+    {
+        return eina_hash_iterator_key_new(hash);
+    }
+}
+
+public class EflObjectElementTraits<T> : IBaseElementTraits<T>
+{
+    private System.Type concreteType = null;
+
+    public EflObjectElementTraits(System.Type concrete)
+    {
+        concreteType = concrete;
+    }
+
+    public IntPtr ManagedToNativeAlloc(T man)
+    {
+        IntPtr h = ((Efl.Eo.IWrapper)man).NativeHandle;
+        if (h == IntPtr.Zero)
+            return h;
+        return Efl.Eo.Globals.efl_ref(h);
+    }
+
+    public IntPtr ManagedToNativeAllocInlistNode(T man)
+    {
+        var node = new InlistNode<IntPtr>();
+        node.Val = ManagedToNativeAlloc(man);
+        GCHandle pinnedData = GCHandle.Alloc(node, GCHandleType.Pinned);
+        IntPtr ptr = pinnedData.AddrOfPinnedObject();
+        IntPtr nat = MemoryNative.AllocCopy(ptr, Marshal.SizeOf<InlistMem>() + Marshal.SizeOf<IntPtr>());
+        pinnedData.Free();
+        return nat;
+    }
+
+    public void ManagedToNativeCopyTo(T man, IntPtr mem)
+    {
+        IntPtr v = ManagedToNativeAlloc(man);
+        Marshal.WriteIntPtr(mem, v);
+    }
+
+    public void NativeFree(IntPtr nat)
+    {
+        if (nat != IntPtr.Zero)
+            Efl.Eo.Globals.efl_unref(nat);
+    }
+
+    public void NativeFreeRef(IntPtr nat, bool unrefs)
+    {
+        if (unrefs)
+            NativeFree(nat);
+    }
+
+    public void NativeFreeInlistNodeElement(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+            return;
+        var val = Marshal.PtrToStructure<IntPtr>
+            (nat + Marshal.SizeOf<InlistMem>());
+        NativeFree(val);
+    }
+
+    public void NativeFreeInlistNode(IntPtr nat, bool freeElement)
+    {
+        if (nat == IntPtr.Zero)
+            return;
+        if (freeElement)
+            NativeFreeInlistNodeElement(nat);
+        MemoryNative.Free(nat);
+    }
+
+    public void NativeFreeInplace(IntPtr nat)
+    {
+        NativeFree(nat);
+    }
+
+    public void ResidueFreeInplace(IntPtr nat)
+    {
+    }
+
+    public T NativeToManaged(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+            return default(T);
+        return (T) Activator.CreateInstance(concreteType, Efl.Eo.Globals.efl_ref(nat));
+    }
+
+    public T NativeToManagedRef(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+            return default(T);
+        return NativeToManaged(nat);
+    }
+
+    public T NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(T);
+        }
+        IntPtr ptr_location = nat + Marshal.SizeOf<InlistMem>();
+        return NativeToManaged(Marshal.ReadIntPtr(ptr_location));
+    }
+
+    // EFL objects inplaced are always a pointer, because they are variable-sized
+    public T NativeToManagedInplace(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+            return default(T);
+        nat = Marshal.ReadIntPtr(nat);
+        if (nat == IntPtr.Zero)
+            return default(T);
+        return NativeToManaged(nat);
+    }
+
+    public IntPtr EinaCompareCb()
+    {
+        return MemoryNative.PtrCompareFuncPtrGet();
+    }
+
+    public IntPtr EinaFreeCb()
+    {
+        return MemoryNative.EflUnrefFuncPtrGet();
+    }
+
+    public IntPtr EinaHashNew()
+    {
+        return eina_hash_pointer_new(IntPtr.Zero);
+    }
+
+    public IntPtr EinaInarrayNew(uint step)
+    {
+        return eina_inarray_new((uint)Marshal.SizeOf<IntPtr>(), step);
+    }
+
+    public IntPtr EinaHashIteratorKeyNew(IntPtr hash)
+    {
+        return eina_hash_iterator_ptr_key_wrapper_new_custom_export_mono(hash);
+    }
+}
+
+public abstract class PrimitiveElementTraits<T>
+{
+    private Eina_Compare_Cb dlgt = null;
+
+    public IntPtr ManagedToNativeAlloc(T man)
+    {
+        return PrimitiveConversion.ManagedToPointerAlloc(man);
+    }
+
+    public IntPtr ManagedToNativeAllocInlistNode(T man)
+    {
+        var node = new InlistNode<T>();
+        node.Val = man;
+        GCHandle pinnedData = GCHandle.Alloc(node, GCHandleType.Pinned);
+        IntPtr ptr = pinnedData.AddrOfPinnedObject();
+        int Tsize = Marshal.SizeOf<T>() < Marshal.SizeOf<IntPtr>() ? Marshal.SizeOf<IntPtr>() : Marshal.SizeOf<T>();
+        IntPtr nat = MemoryNative.AllocCopy(ptr, Marshal.SizeOf<InlistMem>() + Tsize);
+        pinnedData.Free();
+        return nat;
+    }
+
+    public void NativeFree(IntPtr nat)
+    {
+        MemoryNative.Free(nat);
+    }
+
+    public void NativeFreeInlistNodeElement(IntPtr nat)
+    {
+        // Do nothing
+    }
+
+    public void NativeFreeInlistNode(IntPtr nat, bool freeElement)
+    {
+        MemoryNative.Free(nat);
+    }
+
+    public void NativeFreeInplace(IntPtr nat)
+    {
+        // Do nothing
+    }
+
+    public void ResidueFreeInplace(IntPtr nat)
+    {
+        NativeFree(nat);
+    }
+
+    public T NativeToManaged(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer on primitive/struct container.");
+            return default(T);
+        }
+        return PrimitiveConversion.PointerToManaged<T>(nat);
+    }
+
+    public T NativeToManagedRef(IntPtr nat)
+    {
+        return NativeToManaged(nat);
+    }
+
+
+    public T NativeToManagedInplace(IntPtr nat)
+    {
+        return NativeToManaged(nat);
+    }
+
+    private int PrimitiveCompareCb(IntPtr ptr1, IntPtr ptr2)
+    {
+        var m1 = (IComparable) NativeToManaged(ptr1);
+        var m2 = NativeToManaged(ptr2);
+        return m1.CompareTo(m2);
+    }
+
+    public IntPtr EinaCompareCb()
+    {
+        if (dlgt == null)
+            dlgt = new Eina_Compare_Cb(PrimitiveCompareCb);
+        return Marshal.GetFunctionPointerForDelegate(dlgt);
+    }
+
+    public IntPtr EinaFreeCb()
+    {
+        return MemoryNative.FreeFuncPtrGet();
+    }
+
+    public IntPtr EinaInarrayNew(uint step)
+    {
+        return eina_inarray_new((uint)Marshal.SizeOf<T>(), step);
+    }
+
+    public IntPtr EinaHashIteratorKeyNew(IntPtr hash)
+    {
+        return eina_hash_iterator_key_new(hash);
+    }
+}
+
+abstract public class Primitive32ElementTraits<T> : PrimitiveElementTraits<T>, IBaseElementTraits<T>
+{
+    private static IBaseElementTraits<Int32> int32Traits = null;
+
+    public Primitive32ElementTraits()
+    {
+        if (int32Traits == null)
+            if (typeof(T) == typeof(Int32)) // avoid infinite recursion
+                int32Traits = (IBaseElementTraits<Int32>)this;
+            else
+                int32Traits = TraitFunctions.GetTypeTraits<Int32>();
+    }
+
+    public abstract void ManagedToNativeCopyTo(T man, IntPtr mem);
+    public abstract T NativeToManagedInlistNode(IntPtr nat);
+
+    public IntPtr ManagedToNativeAllocRef(T man, bool refs)
+    {
+        return int32Traits.ManagedToNativeAlloc(Convert.ToInt32((object)man));
+    }
+
+    public void NativeFreeRef(IntPtr nat, bool unrefs)
+    {
+        int32Traits.NativeFree(nat);
+    }
+
+    public IntPtr EinaHashNew()
+    {
+        return eina_hash_int32_new(IntPtr.Zero);
+    }
+}
+
+abstract public class Primitive64ElementTraits<T> : PrimitiveElementTraits<T>, IBaseElementTraits<T>
+{
+    private static IBaseElementTraits<Int64> int64Traits = null;
+
+    public Primitive64ElementTraits()
+    {
+        if (int64Traits == null)
+            if (typeof(T) == typeof(Int64)) // avoid infinite recursion
+                int64Traits = (IBaseElementTraits<Int64>)this;
+            else
+                int64Traits = TraitFunctions.GetTypeTraits<Int64>();
+    }
+
+    public abstract void ManagedToNativeCopyTo(T man, IntPtr mem);
+    public abstract T NativeToManagedInlistNode(IntPtr nat);
+
+    public IntPtr ManagedToNativeAllocRef(T man, bool refs)
+    {
+        return int64Traits.ManagedToNativeAlloc(Convert.ToInt64((object)man));
+    }
+
+    public void NativeFreeRef(IntPtr nat, bool unrefs)
+    {
+        int64Traits.NativeFree(nat);
+    }
+
+    public IntPtr EinaHashNew()
+    {
+        return eina_hash_int64_new(IntPtr.Zero);
+    }
+}
+
+public class IntElementTraits : Primitive32ElementTraits<int>, IBaseElementTraits<int>
+{
+    override public void ManagedToNativeCopyTo(int man, IntPtr mem)
+    {
+        var arr = new int[1];
+        arr[0] = man;
+        Marshal.Copy(arr, 0, mem, 1);
+    }
+    override public int NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(int);
+        }
+        IntPtr loc = nat + Marshal.SizeOf<InlistMem>();
+        var v = new int[1];
+        Marshal.Copy(loc, v, 0, 1);
+        return v[0];
+    }
+}
+
+public class CharElementTraits : Primitive32ElementTraits<char>, IBaseElementTraits<char>
+{
+    override public void ManagedToNativeCopyTo(char man, IntPtr mem)
+    {
+        var arr = new char[1];
+        arr[0] = man;
+        Marshal.Copy(arr, 0, mem, 1);
+    }
+    override public char NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(char);
+        }
+        IntPtr loc = nat + Marshal.SizeOf<InlistMem>();
+        var v = new char[1];
+        Marshal.Copy(loc, v, 0, 1);
+        return v[0];
+    }
+}
+public class LongElementTraits : Primitive64ElementTraits<long>, IBaseElementTraits<long>
+{
+    override public void ManagedToNativeCopyTo(long man, IntPtr mem)
+    {
+        var arr = new long[1];
+        arr[0] = man;
+        Marshal.Copy(arr, 0, mem, 1);
+    }
+    override public long NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(long);
+        }
+        IntPtr loc = nat + Marshal.SizeOf<InlistMem>();
+        var v = new long[1];
+        Marshal.Copy(loc, v, 0, 1);
+        return v[0];
+    }
+}
+
+public class ShortElementTraits : Primitive32ElementTraits<short>, IBaseElementTraits<short>
+{
+    override public void ManagedToNativeCopyTo(short man, IntPtr mem)
+    {
+        var arr = new short[1];
+        arr[0] = man;
+        Marshal.Copy(arr, 0, mem, 1);
+    }
+    override public short NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(short);
+        }
+        IntPtr loc = nat + Marshal.SizeOf<InlistMem>();
+        var v = new short[1];
+        Marshal.Copy(loc, v, 0, 1);
+        return v[0];
+    }
+}
+
+public class FloatElementTraits : Primitive32ElementTraits<float>, IBaseElementTraits<float>
+{
+    override public void ManagedToNativeCopyTo(float man, IntPtr mem)
+    {
+        var arr = new float[1];
+        arr[0] = man;
+        Marshal.Copy(arr, 0, mem, 1);
+    }
+    override public float NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(float);
+        }
+        IntPtr loc = nat + Marshal.SizeOf<InlistMem>();
+        var v = new float[1];
+        Marshal.Copy(loc, v, 0, 1);
+        return v[0];
+    }
+}
+
+public class DoubleElementTraits : Primitive64ElementTraits<double>, IBaseElementTraits<double>
+{
+    override public void ManagedToNativeCopyTo(double man, IntPtr mem)
+    {
+        var arr = new double[1];
+        arr[0] = man;
+        Marshal.Copy(arr, 0, mem, 1);
+    }
+    override public double NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(double);
+        }
+        IntPtr loc = nat + Marshal.SizeOf<InlistMem>();
+        var v = new double[1];
+        Marshal.Copy(loc, v, 0, 1);
+        return v[0];
+    }
+}
+
+public class ByteElementTraits : Primitive32ElementTraits<byte>, IBaseElementTraits<byte>
+{
+    override public void ManagedToNativeCopyTo(byte man, IntPtr mem)
+    {
+        var arr = new byte[1];
+        arr[0] = man;
+        Marshal.Copy(arr, 0, mem, 1);
+    }
+    override public byte NativeToManagedInlistNode(IntPtr nat)
+    {
+        if (nat == IntPtr.Zero)
+        {
+            Eina.Log.Error("Null pointer for Inlist node.");
+            return default(byte);
+        }
+        IntPtr loc = nat + Marshal.SizeOf<InlistMem>();
+        var v = new byte[1];
+        Marshal.Copy(loc, v, 0, 1);
+        return v[0];
+    }
+}
+
+public static class TraitFunctions
+{
+    public static bool IsEflObject(System.Type type)
+    {
+        return typeof(Efl.Eo.IWrapper).IsAssignableFrom(type);
+    }
+
+    public static bool IsString(System.Type type)
+    {
+        return type == typeof(string);
+    }
+
+    public static Eina.ElementType GetElementTypeCode(System.Type type)
+    {
+        if (IsEflObject(type))
+            return ElementType.ObjectType;
+        else if (IsString(type))
+            return ElementType.StringType;
+        else
+            return ElementType.NumericType;
+    }
+
+    private static IDictionary<System.Type, object> register = new Dictionary<System.Type, object>();
+
+    private static System.Type AsEflInstantiableType(System.Type type)
+    {
+        if (!IsEflObject(type))
+            return null;
+
+        if (type.IsInterface)
+        {
+            string fullName = type.FullName + "Concrete";
+            return type.Assembly.GetType(fullName); // That was our best guess...
+        }
+
+        return type; // Not interface, so it should be a concrete.
+    }
+
+    public static object RegisterTypeTraits<T>()
+    {
+        Eina.Log.Debug($"Finding TypeTraits for {typeof(T).Name}");
+        object traits;
+        var type = typeof(T);
+        if (IsEflObject(type))
+        {
+            System.Type concrete = AsEflInstantiableType(type);
+            if (concrete == null || !type.IsAssignableFrom(concrete))
+                throw new Exception("Failed to get a suitable concrete class for this type.");
+            traits = new EflObjectElementTraits<T>(concrete);
+        }
+        else if (IsString(type))
+            traits = new StringElementTraits();
+        else if (type.IsValueType)
+        {
+            if (type == typeof(int))
+                traits = new IntElementTraits();
+            else if (type == typeof(char))
+                traits = new CharElementTraits();
+            else if (type == typeof(long))
+                traits = new LongElementTraits();
+            else if (type == typeof(short))
+                traits = new ShortElementTraits();
+            else if (type == typeof(float))
+                traits = new FloatElementTraits();
+            else if (type == typeof(double))
+                traits = new DoubleElementTraits();
+            else if (type == typeof(byte))
+                traits = new ByteElementTraits();
+            else
+                throw new Exception("No traits registered for this type");
+        }
+        else
+            throw new Exception("No traits registered for this type");
+
+        register[type] = traits;
+        return traits;
+    }
+
+    public static object RegisterTypeTraits<T>(IBaseElementTraits<T> traits)
+    {
+        register[typeof(T)] = traits;
+        return traits;
+    }
+
+    public static IBaseElementTraits<T> GetTypeTraits<T>()
+    {
+        object traits;
+        if (!register.TryGetValue(typeof(T), out traits))
+            traits = RegisterTypeTraits<T>();
+        return (IBaseElementTraits<T>) traits;
+    }
+
+    //                  //
+    // Traits functions //
+    //                  //
+
+    // Convertion functions //
+
+    public static IntPtr ManagedToNativeAlloc<T>(T man)
+    {
+        return GetTypeTraits<T>().ManagedToNativeAlloc(man);
+    }
+
+    public static void ManagedToNativeCopyTo<T>(T man, IntPtr mem)
+    {
+        GetTypeTraits<T>().ManagedToNativeCopyTo(man, mem);
+    }
+
+    public static IntPtr ManagedToNativeAllocInlistNode<T>(T man)
+    {
+        return GetTypeTraits<T>().ManagedToNativeAllocInlistNode(man);
+    }
+
+    public static void NativeFree<T>(IntPtr nat)
+    {
+        GetTypeTraits<T>().NativeFree(nat);
+    }
+
+    public static void NativeFreeInlistNodeElement<T>(IntPtr nat)
+    {
+        GetTypeTraits<T>().NativeFreeInlistNodeElement(nat);
+    }
+
+    public static void NativeFreeInlistNode<T>(IntPtr nat, bool freeElement = true)
+    {
+        GetTypeTraits<T>().NativeFreeInlistNode(nat, freeElement);
+    }
+
+    public static void NativeFreeInplace<T>(IntPtr nat)
+    {
+        GetTypeTraits<T>().NativeFreeInplace(nat);
+    }
+
+    public static void ResidueFreeInplace<T>(IntPtr nat)
+    {
+        GetTypeTraits<T>().ResidueFreeInplace(nat);
+    }
+
+    public static T NativeToManaged<T>(IntPtr nat)
+    {
+        return GetTypeTraits<T>().NativeToManaged(nat);
+    }
+
+    public static T NativeToManagedInlistNode<T>(IntPtr nat)
+    {
+        return GetTypeTraits<T>().NativeToManagedInlistNode(nat);
+    }
+
+    public static T NativeToManagedInplace<T>(IntPtr nat)
+    {
+        return GetTypeTraits<T>().NativeToManagedInplace(nat);
+    }
+
+    // Misc //
+
+    public static IntPtr EinaCompareCb<T>()
+    {
+        return GetTypeTraits<T>().EinaCompareCb();
+    }
+
+    public static IntPtr EinaFreeCb<T>()
+    {
+        return GetTypeTraits<T>().EinaFreeCb();
+    }
+
+    public static IntPtr EinaHashNew<TKey>()
+    {
+        return GetTypeTraits<TKey>().EinaHashNew();
+    }
+
+    public static IntPtr EinaInarrayNew<T>(uint step)
+    {
+        return GetTypeTraits<T>().EinaInarrayNew(step);
+    }
+
+    public static IntPtr EinaHashIteratorKeyNew<T>(IntPtr hash)
+    {
+        return GetTypeTraits<T>().EinaHashIteratorKeyNew(hash);
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_error.cs b/internals/src/EflSharp/EflSharp/eina_error.cs
new file mode 100755 (executable)
index 0000000..07760fd
--- /dev/null
@@ -0,0 +1,96 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Eina {
+
+public struct Error : IComparable<Error>
+{
+    int code;
+
+    public string Message
+    {
+        get { return MsgGet(this); }
+    }
+
+    public static Error UNHANDLED_EXCEPTION;
+
+    public static Error NO_ERROR = new Error(0);
+    public static Error EPERM = new Error(1);
+    public static Error ENOENT = new Error(2);
+    public static Error ECANCELED = new Error(125);
+
+    public Error(int value) { code = value; }
+    static public implicit operator Error(int val)
+    {
+        return new Error(val);
+    }
+    static public implicit operator int(Error error)
+    {
+        return error.code;
+    }
+    public int CompareTo(Error err)
+    {
+        return code.CompareTo(err.code);
+    }
+    public override string ToString()
+    {
+        return "Eina.Error(" + code + ")";
+    }
+
+    static Error()
+    {
+        UNHANDLED_EXCEPTION = eina_error_msg_register("Unhandled C# exception occurred.");
+    }
+
+    [DllImport(efl.Libs.Eina)] static extern Error eina_error_msg_register(string msg);
+    [DllImport(efl.Libs.Eina)] static extern Error eina_error_get();
+    [DllImport(efl.Libs.Eina)] static extern void eina_error_set(Error error);
+    [DllImport(efl.Libs.Eina)] static extern IntPtr eina_error_msg_get(Error error);
+
+    public static void Set(Error error)
+    {
+        eina_error_set(error);
+    }
+
+    public static Error Get()
+    {
+        return eina_error_get();
+    }
+
+    public static String MsgGet(Error error)
+    {
+        IntPtr cstr = eina_error_msg_get(error);
+        return Eina.StringConversion.NativeUtf8ToManagedString(cstr);
+    }
+
+    /// <summary>Raises an exception if an unhandled exception occurred before switching
+    /// back to the native code. For example, in an event handler.</summary>
+    public static void RaiseIfUnhandledException()
+    {
+        Error e = Get();
+        if (e == UNHANDLED_EXCEPTION)
+        {
+            Clear();
+            Raise(e);
+        }
+    }
+
+    public static void Raise(Error e)
+    {
+        if (e != 0)
+            throw (new Efl.EflException(MsgGet(e)));
+    }
+
+    public static void Clear()
+    {
+        Set(0);
+    }
+
+    public static Error Register(string msg)
+    {
+        return eina_error_msg_register(msg);
+    }
+}
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_hash.cs b/internals/src/EflSharp/EflSharp/eina_hash.cs
new file mode 100755 (executable)
index 0000000..4770870
--- /dev/null
@@ -0,0 +1,495 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+using static Eina.TraitFunctions;
+using static Eina.IteratorNativeFunctions;
+using static Eina.HashNativeFunctions;
+using Eina.Callbacks;
+
+namespace Eina
+{
+
+[StructLayout(LayoutKind.Sequential)]
+public struct HashTupleNative
+{
+    public IntPtr key;
+    public IntPtr data;
+    public uint   key_length;
+}
+
+public static class HashNativeFunctions
+{
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_new(IntPtr key_length_cb, IntPtr key_cmp_cb, IntPtr key_hash_cb, IntPtr data_free_cb, int buckets_power_size);
+
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_hash_free_cb_set(IntPtr hash, IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_string_djb2_new(IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_string_superfast_new(IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_string_small_new(IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_int32_new(IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_int64_new(IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_pointer_new(IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_stringshared_new(IntPtr data_free_cb);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_add(IntPtr hash, IntPtr key, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_direct_add(IntPtr hash, IntPtr key, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_del(IntPtr hash, IntPtr key, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_find(IntPtr hash, IntPtr key);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_modify(IntPtr hash, IntPtr key, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_set(IntPtr hash, IntPtr key, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_move(IntPtr hash, IntPtr old_key, IntPtr new_key);
+
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_hash_free(IntPtr hash);
+
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_hash_free_buckets(IntPtr hash);
+
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_hash_population(IntPtr hash);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_add_by_hash(IntPtr hash, IntPtr key, int key_length, int key_hash, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_direct_add_by_hash(IntPtr hash, IntPtr key, int key_length, int key_hash, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_del_by_key_hash(IntPtr hash, IntPtr key, int key_length, int key_hash);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_del_by_key(IntPtr hash, IntPtr key);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_del_by_data(IntPtr hash, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_hash_del_by_hash(IntPtr hash, IntPtr key, int key_length, int key_hash, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_find_by_hash(IntPtr hash, IntPtr key, int key_length, int key_hash);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_modify_by_hash(IntPtr hash, IntPtr key, int key_length, int key_hash, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_iterator_key_new(IntPtr hash);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_iterator_data_new(IntPtr hash);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_hash_iterator_tuple_new(IntPtr hash);
+
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_hash_foreach(IntPtr hash, IntPtr func, IntPtr fdata);
+
+
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_hash_list_append(IntPtr hash, IntPtr key, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_hash_list_prepend(IntPtr hash, IntPtr key, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_hash_list_remove(IntPtr hash, IntPtr key, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_hash_superfast(string key, int len);
+
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_hash_iterator_ptr_key_wrapper_new_custom_export_mono(IntPtr hash);
+}
+
+public class Hash<TKey, TValue> : IEnumerable<KeyValuePair<TKey, TValue>>, IDisposable
+{
+    public IntPtr Handle {get; set;} = IntPtr.Zero;
+    public bool Own {get; set;}
+    public bool OwnKey {get; set;}
+    public bool OwnValue {get; set;}
+
+    public int Count {
+        get {
+            return Population();
+        }
+    }
+
+
+    private void InitNew()
+    {
+        Handle = EinaHashNew<TKey>();
+        SetOwn(true);
+        SetOwnKey(true);
+        SetOwnValue(true);
+    }
+
+    public Hash()
+    {
+        InitNew();
+    }
+
+    public Hash(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        SetOwnership(own);
+    }
+
+    public Hash(IntPtr handle, bool own, bool ownKey, bool ownValue)
+    {
+        Handle = handle;
+        SetOwnership(own, ownKey, ownValue);
+    }
+
+    ~Hash()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (Own)
+            eina_hash_free(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public void SetOwn(bool own)
+    {
+        Own = own;
+    }
+
+    public void SetOwnKey(bool ownKey)
+    {
+        OwnKey = ownKey;
+    }
+
+    public void SetOwnValue(bool ownValue)
+    {
+        OwnValue = ownValue;
+
+        if (ownValue)
+            eina_hash_free_cb_set(Handle, EinaFreeCb<TValue>());
+    }
+
+    public void SetOwnership(bool ownAll)
+    {
+        SetOwn(ownAll);
+        SetOwnKey(ownAll);
+        SetOwnValue(ownAll);
+    }
+
+    public void SetOwnership(bool own, bool ownKey, bool ownValue)
+    {
+        SetOwn(own);
+        SetOwnKey(ownKey);
+        SetOwnValue(ownValue);
+    }
+
+    public void UnSetFreeCb()
+    {
+        eina_hash_free_cb_set(Handle, IntPtr.Zero);
+    }
+
+    public bool AddNew(TKey key, TValue val)
+    {
+        IntPtr gchnk = CopyNativeObject(key, ForceRefKey<TKey>());
+        IntPtr nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+        IntPtr gchnv = CopyNativeObject(val, false);
+        IntPtr nv = GetNativePtr<TValue>(gchnv, false);
+        var r = eina_hash_add(Handle, nk, nv);
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        FreeNativeIndirection<TValue>(gchnv, false);
+        return r;
+    }
+
+    public void Add(TKey key, TValue val)
+    {
+        Set(key, val);
+    }
+
+    public bool DelByKey(TKey key)
+    {
+        IntPtr gchnk = CopyNativeObject(key, ForceRefKey<TKey>());
+        IntPtr nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+        var r = eina_hash_del_by_key(Handle, nk);
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        // NativeFreeRef<TKey>(nk, OwnKey && r);
+        return r;
+    }
+
+    public bool DelByValue(TValue val)
+    {
+        IntPtr gchnv = CopyNativeObject(val, false);
+        IntPtr nv = GetNativePtr<TValue>(gchnv, false);
+        var r = eina_hash_del_by_data(Handle, nv);
+        FreeNativeIndirection<TValue>(gchnv, false);
+        return r;
+    }
+
+    public void Remove(TKey key)
+    {
+        DelByKey(key);
+    }
+
+    public TValue Find(TKey key)
+    {
+        var gchnk = CopyNativeObject<TKey>(key, ForceRefKey<TKey>());
+        var nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+        var found = eina_hash_find(Handle, nk);
+        //NativeFreeRef<TKey>(nk);
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        if (found == IntPtr.Zero)
+            throw new KeyNotFoundException();
+
+        return NativeToManaged<TValue>(IndirectNative<TValue>(found, false));
+    }
+
+    public bool TryGetValue(TKey key, out TValue val)
+    {
+        var gchnk = CopyNativeObject<TKey>(key, ForceRefKey<TKey>());
+        var nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+        var found = eina_hash_find(Handle, nk);
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        if (found == IntPtr.Zero)
+        {
+            val = default(TValue);
+            return false;
+        }
+        val = NativeToManaged<TValue>(IndirectNative<TValue>(found, false));
+        return true;
+    }
+
+    public bool ContainsKey(TKey key)
+    {
+        var gchnk = CopyNativeObject<TKey>(key, ForceRefKey<TKey>());
+        var nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+        // var nk = ManagedToNativeAllocRef(key);
+        var found = eina_hash_find(Handle, nk);
+        // NativeFreeRef<TKey>(nk);
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        return found != IntPtr.Zero;
+    }
+
+    public bool Modify(TKey key, TValue val)
+    {
+        var gchnk = CopyNativeObject<TKey>(key, ForceRefKey<TKey>());
+        var nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+        var gchnv = CopyNativeObject<TValue>(val, false);
+        var nv = GetNativePtr<TValue>(gchnv, false);
+        var old = eina_hash_modify(Handle, nk, nv);
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        // NativeFreeRef<TKey>(nk);
+        if (old == IntPtr.Zero)
+        {
+            NativeFree<TValue>(nv);
+            return false;
+        }
+        if (OwnValue)
+            NativeFree<TValue>(old);
+        return true;
+    }
+
+    private static bool ForceRefKey<T>()
+    {
+        return (!typeof(T).IsValueType) && (typeof(T) != typeof(string));
+    }
+
+    private static IntPtr CopyNativeObject<T>(T value, bool forceRef)
+    {
+        if (!IsEflObject(typeof(T)) && forceRef)
+        {
+            GCHandle gch = GCHandle.Alloc(new byte[Marshal.SizeOf<T>()], GCHandleType.Pinned);
+            IntPtr pin = gch.AddrOfPinnedObject();
+
+            ManagedToNativeCopyTo(value, pin);
+
+            return GCHandle.ToIntPtr(gch);
+        }
+        else if(IsEflObject(typeof(T)) && forceRef)
+        {
+            GCHandle gch = GCHandle.Alloc(new byte[Marshal.SizeOf<IntPtr>()], GCHandleType.Pinned);
+            IntPtr pin = gch.AddrOfPinnedObject();
+
+            ManagedToNativeCopyTo(value, pin);
+
+            return GCHandle.ToIntPtr(gch);
+        }
+        else
+        {
+            return ManagedToNativeAlloc(value);
+        }
+    }
+    private static IntPtr GetNativePtr<T>(IntPtr gchptr, bool forceRef)
+    {
+        if (forceRef)
+        {
+            GCHandle gch = GCHandle.FromIntPtr(gchptr);
+            IntPtr pin = gch.AddrOfPinnedObject();
+
+            return pin;
+        }
+        else
+        {
+            return gchptr;
+        }
+    }
+    private static void FreeNativeIndirection<T>(IntPtr gchptr, bool forceRef)
+    {
+        if (forceRef)
+        {
+            GCHandle gch = GCHandle.FromIntPtr(gchptr);
+            gch.Free();
+        }
+    }
+
+    private static IntPtr IndirectNative<T>(IntPtr ptr, bool forceRef)
+    {
+        if (forceRef)
+        {
+            IntPtr val = Marshal.ReadIntPtr(ptr);
+            return val;
+        }
+        else
+        {
+            return ptr;
+        }
+    }
+
+    public void Set(TKey key, TValue val)
+    {
+        IntPtr gchnk = CopyNativeObject(key, ForceRefKey<TKey>());
+        IntPtr nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+
+        IntPtr gchnv = CopyNativeObject(val, false);
+        IntPtr nv = GetNativePtr<TValue>(gchnv, false);
+        IntPtr old = eina_hash_set(Handle, nk, nv);
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        FreeNativeIndirection<TValue>(gchnv, false);
+    }
+
+    public TValue this[TKey key]
+    {
+        get
+        {
+            return Find(key);
+        }
+        set
+        {
+            Set(key, value);
+        }
+    }
+
+    public bool Move(TKey key_old, TKey key_new)
+    {
+        IntPtr gchnko = CopyNativeObject(key_old, ForceRefKey<TKey>());
+        IntPtr nko = GetNativePtr<TKey>(gchnko, ForceRefKey<TKey>());
+        IntPtr gchnk = CopyNativeObject(key_new, ForceRefKey<TKey>());
+        IntPtr nk = GetNativePtr<TKey>(gchnk, ForceRefKey<TKey>());
+        // var nk_old = ManagedToNativeAllocRef(key_old);
+        // var nk_new = ManagedToNativeAllocRef(key_new, true);
+        var r = eina_hash_move(Handle, nko, nk);
+        FreeNativeIndirection<TKey>(gchnko, ForceRefKey<TKey>());
+        FreeNativeIndirection<TKey>(gchnk, ForceRefKey<TKey>());
+        // NativeFreeRef<TKey>(nk_old, OwnKey && r);
+        // NativeFreeRef<TKey>(nk_new, !r);
+        return r;
+    }
+
+    public void FreeBuckets()
+    {
+        eina_hash_free_buckets(Handle);
+    }
+
+    public int Population()
+    {
+        return eina_hash_population(Handle);
+    }
+
+    public Eina.Iterator<TKey> Keys()
+    {
+        return new Eina.Iterator<TKey>(EinaHashIteratorKeyNew<TKey>(Handle), true, false);
+    }
+
+    public Eina.Iterator<TValue> Values()
+    {
+        return new Eina.Iterator<TValue>(eina_hash_iterator_data_new(Handle), true, false);
+    }
+
+    public IEnumerator<KeyValuePair<TKey, TValue>> GetEnumerator()
+    {
+        IntPtr itr = eina_hash_iterator_tuple_new(Handle);
+        try
+        {
+            for (IntPtr tuplePtr; eina_iterator_next(itr, out tuplePtr);)
+            {
+                var tuple = Marshal.PtrToStructure<Eina.HashTupleNative>(tuplePtr);
+                IntPtr ikey = IndirectNative<TKey>(tuple.key, ForceRefKey<TKey>());
+                var key = NativeToManaged<TKey>(ikey);
+                var val = NativeToManaged<TValue>(tuple.data);
+                yield return new KeyValuePair<TKey, TValue>(key, val);
+            }
+        }
+        finally
+        {
+            eina_iterator_free(itr);
+        }
+    }
+
+    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
+    {
+        return this.GetEnumerator();
+    }
+}
+
+}
+
diff --git a/internals/src/EflSharp/EflSharp/eina_inarray.cs b/internals/src/EflSharp/EflSharp/eina_inarray.cs
new file mode 100755 (executable)
index 0000000..47a1336
--- /dev/null
@@ -0,0 +1,349 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+using static Eina.TraitFunctions;
+using static Eina.InarrayNativeFunctions;
+
+namespace Eina {
+
+public static class InarrayNativeFunctions
+{
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_new(uint member_size, uint step);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_inarray_free(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_inarray_step_set(IntPtr array, uint sizeof_eina_inarray, uint member_size, uint step);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_inarray_flush(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inarray_push(IntPtr array, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_grow(IntPtr array, uint size);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inarray_insert(IntPtr array, IntPtr data, IntPtr compare);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inarray_insert_sorted(IntPtr array, IntPtr data, IntPtr compare);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inarray_remove(IntPtr array, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_pop(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_nth(IntPtr array, uint position);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_inarray_insert_at(IntPtr array, uint position, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_alloc_at(IntPtr array, uint position, uint member_count);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_inarray_replace_at(IntPtr array, uint position, IntPtr data);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_inarray_remove_at(IntPtr array, uint position);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_inarray_reverse(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_inarray_sort(IntPtr array, IntPtr compare);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inarray_search(IntPtr array, IntPtr data, IntPtr compare);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inarray_search_sorted(IntPtr array, IntPtr data, IntPtr compare);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_inarray_foreach(IntPtr array, IntPtr function, IntPtr user_data);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inarray_foreach_remove(IntPtr array, IntPtr match, IntPtr user_data);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_inarray_resize(IntPtr array, uint new_size);
+    [DllImport(efl.Libs.Eina)] public static extern uint
+        eina_inarray_count(IntPtr array);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_iterator_new(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_iterator_reversed_new(IntPtr array);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inarray_accessor_new(IntPtr array);
+}
+
+public class Inarray<T> : IEnumerable<T>, IDisposable
+{
+    public static uint DefaultStep = 0;
+
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;}
+    public bool OwnContent {get;set;}
+
+    public int Length
+    {
+        get { return Count(); }
+    }
+
+
+    private void InitNew(uint step)
+    {
+        Handle = EinaInarrayNew<T>(step);
+        Own = true;
+        OwnContent = true;
+        if (Handle == IntPtr.Zero)
+            throw new SEHException("Could not alloc inarray");
+    }
+
+    public Inarray()
+    {
+        InitNew(DefaultStep);
+    }
+
+    public Inarray(uint step)
+    {
+        InitNew(step);
+    }
+
+    public Inarray(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = own;
+    }
+
+    public Inarray(IntPtr handle, bool own, bool ownContent)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    ~Inarray()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (OwnContent)
+        {
+            uint len = eina_inarray_count(h);
+            for(uint i = 0; i < len; ++i)
+            {
+                NativeFreeInplace<T>(eina_inarray_nth(h, i));
+            }
+        }
+
+        if (Own)
+            eina_inarray_free(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    private void FreeElementsIfOwned()
+    {
+        if (OwnContent)
+        {
+            int len = Length;
+            for (int i = 0; i < len; ++i)
+            {
+                NativeFreeInplace<T>(eina_inarray_nth(Handle, (uint)i));
+            }
+        }
+    }
+
+    public void Flush()
+    {
+        FreeElementsIfOwned();
+        eina_inarray_flush(Handle);
+    }
+
+    public int Count()
+    {
+        return (int) eina_inarray_count(Handle);
+    }
+
+    public void SetOwnership(bool ownAll)
+    {
+        Own = ownAll;
+        OwnContent = ownAll;
+    }
+
+    public void SetOwnership(bool own, bool ownContent)
+    {
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    public int Push(T val)
+    {
+        IntPtr ele = IntPtr.Zero;
+        GCHandle gch = GCHandle.Alloc(ele, GCHandleType.Pinned);
+        IntPtr ind = gch.AddrOfPinnedObject();
+
+        ManagedToNativeCopyTo(val, ind);
+
+        var r = eina_inarray_push(Handle, ind);
+        if (r == -1)
+            NativeFreeInplace<T>(ele);
+        ResidueFreeInplace<T>(ele);
+        gch.Free();
+        return r;
+    }
+
+// TODO ???
+//     public void Add(T val)
+//     {
+//         if (!Push(val))
+//           throw;
+//     }
+
+    public T Pop()
+    {
+        IntPtr ele = eina_inarray_pop(Handle);
+        var r = NativeToManagedInplace<T>(ele);
+        if (OwnContent && ele != IntPtr.Zero)
+            NativeFreeInplace<T>(ele);
+        return r;
+    }
+
+    public T Nth(uint idx)
+    {
+        IntPtr ele = eina_inarray_nth(Handle, idx);
+        IntPtr v = Marshal.ReadIntPtr(ele);
+        return NativeToManagedInplace<T>(ele);
+    }
+
+    public T At(int idx)
+    {
+        return Nth((uint)idx);
+    }
+
+    public bool InsertAt(uint idx, T val)
+    {
+        IntPtr ele = IntPtr.Zero;
+        GCHandle gch = GCHandle.Alloc(ele, GCHandleType.Pinned);
+        IntPtr ind = gch.AddrOfPinnedObject();
+
+        ManagedToNativeCopyTo(val, ind);
+
+        var r = eina_inarray_insert_at(Handle, idx, ind);
+        if (!r)
+            NativeFreeInplace<T>(ele);
+        ResidueFreeInplace<T>(ele);
+        return r;
+    }
+
+    public bool ReplaceAt(uint idx, T val)
+    {
+        var old = eina_inarray_nth(Handle, idx);
+        if (old == IntPtr.Zero)
+            return false;
+        if (OwnContent)
+            NativeFreeInplace<T>(old);
+        var ele = IntPtr.Zero;
+        GCHandle gch = GCHandle.Alloc(ele, GCHandleType.Pinned);
+        IntPtr ind = gch.AddrOfPinnedObject();
+
+        ManagedToNativeCopyTo(val, ind);
+
+        var r = eina_inarray_replace_at(Handle, idx, ind);
+        ResidueFreeInplace<T>(ele);
+        return r;
+    }
+
+    public T this[int idx]
+    {
+        get
+        {
+            return At(idx);
+        }
+        set
+        {
+            ReplaceAt((uint)idx, value);
+        }
+    }
+
+    public bool RemoveAt(uint idx)
+    {
+        IntPtr ele = eina_inarray_nth(Handle, idx);
+        if (ele == IntPtr.Zero)
+            return false;
+        if (OwnContent)
+            NativeFreeInplace<T>(ele);
+
+        return eina_inarray_remove_at(Handle, idx);
+    }
+
+    public void Reverse()
+    {
+        eina_inarray_reverse(Handle);
+    }
+
+    public T[] ToArray()
+    {
+        int len = Length;
+        var managed = new T[len];
+        for(int i = 0; i < len; ++i)
+        {
+            managed[i] = At(i);
+        }
+        return managed;
+    }
+
+    public bool Append(T[] values)
+    {
+        foreach(T v in values)
+            if (Push(v) == -1)
+                return false;
+        return true;
+    }
+
+    public Eina.Iterator<T> GetIterator()
+    {
+        return new Eina.Iterator<T>(eina_inarray_iterator_new(Handle), true, false);
+    }
+
+    public Eina.Iterator<T> GetReversedIterator()
+    {
+        return new Eina.Iterator<T>(eina_inarray_iterator_reversed_new(Handle), true, false);
+    }
+
+    public IEnumerator<T> GetEnumerator()
+    {
+        int len = Length;
+        for(int i = 0; i < len; ++i)
+        {
+            yield return At(i);
+        }
+    }
+
+    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
+    {
+        return this.GetEnumerator();
+    }
+
+    /// <summary> Gets an Accessor for this Array.</summary>
+    public Eina.Accessor<T> GetAccessor()
+    {
+        return new Eina.AccessorInArray<T>(eina_inarray_accessor_new(Handle), Ownership.Managed);
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_inlist.cs b/internals/src/EflSharp/EflSharp/eina_inlist.cs
new file mode 100755 (executable)
index 0000000..0bf09d0
--- /dev/null
@@ -0,0 +1,324 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+using static Eina.TraitFunctions;
+using static Eina.InlistNativeFunctions;
+using Eina.Callbacks;
+
+namespace Eina {
+
+public static class InlistNativeFunctions
+{
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_append(IntPtr in_list, IntPtr in_item);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_prepend(IntPtr in_list, IntPtr in_item);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_append_relative(IntPtr in_list, IntPtr in_item, IntPtr in_relative);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_prepend_relative(IntPtr in_list, IntPtr in_item, IntPtr in_relative);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_remove(IntPtr in_list, IntPtr in_item);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_find(IntPtr in_list, IntPtr in_item);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_promote(IntPtr list, IntPtr item);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_demote(IntPtr list, IntPtr item);
+
+    [DllImport(efl.Libs.Eina)] public static extern uint
+        eina_inlist_count(IntPtr list);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_iterator_new(IntPtr in_list);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_accessor_new(IntPtr in_list);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_sorted_insert(IntPtr list, IntPtr item, IntPtr func);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_sorted_state_new();
+
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_inlist_sorted_state_init(IntPtr state, IntPtr list);
+
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_inlist_sorted_state_free(IntPtr state);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_sorted_state_insert(IntPtr list, IntPtr item, IntPtr func, IntPtr state);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_inlist_sort(IntPtr head, IntPtr func);
+
+
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_inlist_first_custom_export_mono(IntPtr list);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_inlist_last_custom_export_mono(IntPtr list);
+
+
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_inlist_next_custom_export_mono(IntPtr list);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_inlist_prev_custom_export_mono(IntPtr list);
+
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_inlist_iterator_wrapper_new_custom_export_mono(IntPtr in_list);
+}
+
+public class Inlist<T> : IEnumerable<T>, IDisposable
+{
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;}
+    public bool OwnContent {get;set;}
+
+    public int Length
+    {
+        get { return Count(); }
+    }
+
+
+    private void InitNew()
+    {
+        Handle = IntPtr.Zero;
+        Own = true;
+        OwnContent = true;
+    }
+
+    private IntPtr InternalFirst()
+    {
+        return eina_inlist_first_custom_export_mono(Handle);
+    }
+
+    private IntPtr InternalLast()
+    {
+        return eina_inlist_last_custom_export_mono(Handle);
+    }
+
+    private IntPtr InternalAt(int idx)
+    {
+        if (idx < 0)
+            return IntPtr.Zero;
+
+        IntPtr curr = Handle;
+        for (int n = 0; n != idx && curr != IntPtr.Zero; ++n)
+            curr = InternalNext(curr);
+        return curr;
+    }
+
+    private static IntPtr InternalNext(IntPtr inlist)
+    {
+        return eina_inlist_next_custom_export_mono(inlist);
+    }
+
+    private static IntPtr InternalPrev(IntPtr inlist)
+    {
+        return eina_inlist_prev_custom_export_mono(inlist);
+    }
+
+
+    public Inlist()
+    {
+        InitNew();
+    }
+
+    public Inlist(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = own;
+    }
+
+    public Inlist(IntPtr handle, bool own, bool ownContent)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    ~Inlist()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (OwnContent)
+        {
+            for(IntPtr curr = h; curr != IntPtr.Zero; curr = InternalNext(curr))
+            {
+                NativeFreeInlistNodeElement<T>(curr);
+            }
+        }
+
+        if (Own)
+        {
+            while (h != IntPtr.Zero)
+            {
+                var aux = h;
+                h = eina_inlist_remove(h, h);
+                NativeFreeInlistNode<T>(aux, false);
+            }
+        }
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public void SetOwnership(bool ownAll)
+    {
+        Own = ownAll;
+        OwnContent = ownAll;
+    }
+
+    public void SetOwnership(bool own, bool ownContent)
+    {
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    public int Count()
+    {
+        return (int) eina_inlist_count(Handle);
+    }
+
+    public void Clean()
+    {
+        while (Handle != IntPtr.Zero)
+        {
+            var aux = Handle;
+            Handle = eina_inlist_remove(Handle, Handle);
+            NativeFreeInlistNode<T>(aux, OwnContent);
+        }
+    }
+
+    public void Append(T val)
+    {
+        IntPtr node = ManagedToNativeAllocInlistNode(val);
+        Handle = eina_inlist_append(Handle, node);
+    }
+
+    public void Prepend(T val)
+    {
+        IntPtr node = ManagedToNativeAllocInlistNode(val);
+        Handle = eina_inlist_prepend(Handle, node);
+    }
+
+    public void Remove(int idx)
+    {
+        IntPtr node = InternalAt(idx);
+        Handle = eina_inlist_remove(Handle, node);
+        NativeFreeInlistNode<T>(node, OwnContent);
+    }
+
+    public T At(int idx)
+    {
+        IntPtr node = InternalAt(idx);
+        if (node == IntPtr.Zero)
+            throw new IndexOutOfRangeException();
+        return NativeToManagedInlistNode<T>(node);
+    }
+
+    public void DataSet(int idx, T val)
+    {
+        IntPtr old = InternalAt(idx);
+        if (old == IntPtr.Zero)
+            throw new IndexOutOfRangeException();
+
+        IntPtr new_node = ManagedToNativeAllocInlistNode(val);
+
+        Handle = eina_inlist_append_relative(Handle, new_node, old);
+        Handle = eina_inlist_remove(Handle, old);
+
+        NativeFreeInlistNode<T>(old, OwnContent);
+    }
+
+    public T this[int idx]
+    {
+        get
+        {
+            return At(idx);
+        }
+        set
+        {
+            DataSet(idx, value);
+        }
+    }
+
+    public T[] ToArray()
+    {
+        var managed = new T[Count()];
+        int i = 0;
+        for(IntPtr curr = Handle; curr != IntPtr.Zero; ++i, curr = InternalNext(curr))
+        {
+            managed[i] = NativeToManagedInlistNode<T>(curr);
+        }
+        return managed;
+    }
+
+    public void AppendArray(T[] values)
+    {
+        foreach (T v in values)
+            Append(v);
+    }
+
+
+    public Eina.Iterator<T> GetIterator()
+    {
+        return new Eina.Iterator<T>(eina_inlist_iterator_wrapper_new_custom_export_mono(Handle), true, false);
+    }
+
+    public IEnumerator<T> GetEnumerator()
+    {
+        for(IntPtr curr = Handle; curr != IntPtr.Zero; curr = InternalNext(curr))
+        {
+            yield return NativeToManagedInlistNode<T>(curr);
+        }
+    }
+
+    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
+    {
+        return this.GetEnumerator();
+    }
+
+    /// <summary> Gets an Accessor for this List.</summary>
+    public Eina.Accessor<T> GetAccessor()
+    {
+        return new Eina.AccessorInList<T>(eina_inlist_accessor_new(Handle), Ownership.Managed);
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_iterator.cs b/internals/src/EflSharp/EflSharp/eina_iterator.cs
new file mode 100755 (executable)
index 0000000..56ebab3
--- /dev/null
@@ -0,0 +1,146 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+using static Eina.TraitFunctions;
+using static Eina.IteratorNativeFunctions;
+
+namespace Eina {
+
+public static class IteratorNativeFunctions
+{
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_iterator_free(IntPtr iterator);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_iterator_container_get(IntPtr iterator);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_iterator_next(IntPtr iterator, out IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_iterator_foreach(IntPtr iterator, IntPtr callback, IntPtr fdata);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_iterator_lock(IntPtr iterator);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_iterator_unlock(IntPtr iterator);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_carray_iterator_new(IntPtr array);
+}
+
+public class Iterator<T> : IEnumerable<T>, IDisposable
+{
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;} = true;
+    public bool OwnContent {get;set;} = false;
+
+    public Iterator(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = own;
+    }
+
+    public Iterator(IntPtr handle, bool own, bool ownContent)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    ~Iterator()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        var h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (OwnContent)
+        {
+            for(IntPtr data; eina_iterator_next(h, out data);)
+            {
+                NativeFree<T>(data);
+            }
+        }
+
+        if (Own)
+            eina_iterator_free(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public void SetOwnership(bool ownAll)
+    {
+        Own = ownAll;
+        OwnContent = ownAll;
+    }
+
+    public void SetOwnership(bool own, bool ownContent)
+    {
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    public bool Next(out T res)
+    {
+        IntPtr data;
+        if (!eina_iterator_next(Handle, out data))
+        {
+            res = default(T);
+            return false;
+        }
+
+        res = NativeToManaged<T>(data);
+
+        if (OwnContent)
+            NativeFree<T>(data);
+
+        return true;
+    }
+
+    public bool Lock()
+    {
+        return eina_iterator_lock(Handle);
+    }
+
+    public bool Unlock()
+    {
+        return eina_iterator_unlock(Handle);
+    }
+
+    public IEnumerator<T> GetEnumerator()
+    {
+        for(T curr; Next(out curr);)
+        {
+            yield return curr;
+        }
+    }
+
+    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
+    {
+        return this.GetEnumerator();
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_list.cs b/internals/src/EflSharp/EflSharp/eina_list.cs
new file mode 100755 (executable)
index 0000000..8ad4a2f
--- /dev/null
@@ -0,0 +1,361 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+using static Eina.TraitFunctions;
+using static Eina.ListNativeFunctions;
+using Eina.Callbacks;
+
+namespace Eina {
+
+public static class ListNativeFunctions
+{
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_append(IntPtr list, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_prepend(IntPtr list, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_append_relative(IntPtr list, IntPtr data, IntPtr relative);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_append_relative_list(IntPtr list, IntPtr data, IntPtr relative);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_prepend_relative(IntPtr list, IntPtr data, IntPtr relative);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_prepend_relative_list(IntPtr list, IntPtr data, IntPtr relative);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_sorted_insert(IntPtr list, IntPtr func, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_remove(IntPtr list, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_remove_list(IntPtr list, IntPtr remove_list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_promote_list(IntPtr list, IntPtr move_list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_demote_list(IntPtr list, IntPtr move_list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_data_find(IntPtr list, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_data_find_list(IntPtr list, IntPtr data);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_list_move(ref IntPtr to, ref IntPtr from, IntPtr data);
+    [DllImport(efl.Libs.Eina)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eina_list_move_list(ref IntPtr to, ref IntPtr from, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_free(IntPtr list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_nth(IntPtr list, uint n);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_nth_list(IntPtr list, uint n);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_reverse(IntPtr list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_reverse_clone(IntPtr list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_clone(IntPtr list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_sort(IntPtr list, uint limit, IntPtr func);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_shuffle(IntPtr list, IntPtr func);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_merge(IntPtr left, IntPtr right);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_sorted_merge(IntPtr left, IntPtr right, IntPtr func);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_split_list(IntPtr list, IntPtr relative, ref IntPtr right);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_search_sorted_near_list(IntPtr list, IntPtr func, IntPtr data, IntPtr result_cmp);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_search_sorted_list(IntPtr list, IntPtr func, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_search_sorted(IntPtr list, IntPtr func, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_search_unsorted_list(IntPtr list, IntPtr func, IntPtr data);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_search_unsorted(IntPtr list, IntPtr func, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_iterator_new(IntPtr list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_iterator_reversed_new(IntPtr list);
+    [DllImport(efl.Libs.Eina)] public static extern IntPtr
+        eina_list_accessor_new(IntPtr list);
+    [DllImport(efl.Libs.Eina)] public static extern int
+        eina_list_data_idx(IntPtr list, IntPtr data);
+
+
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_list_last_custom_export_mono(IntPtr list);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_list_next_custom_export_mono(IntPtr list);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_list_prev_custom_export_mono(IntPtr list);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_list_data_get_custom_export_mono(IntPtr list);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_list_data_set_custom_export_mono(IntPtr list, IntPtr data);
+    [DllImport(efl.Libs.CustomExports)] public static extern uint
+        eina_list_count_custom_export_mono(IntPtr list);
+    [DllImport(efl.Libs.CustomExports)] public static extern IntPtr
+        eina_list_last_data_get_custom_export_mono(IntPtr list);
+}
+
+public class List<T> : IEnumerable<T>, IDisposable
+{
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;}
+    public bool OwnContent {get;set;}
+
+    public int Length
+    {
+        get { return Count(); }
+    }
+
+
+    private void InitNew()
+    {
+        Handle = IntPtr.Zero;
+        Own = true;
+        OwnContent = true;
+    }
+
+    private IntPtr InternalLast()
+    {
+        return eina_list_last_custom_export_mono(Handle);
+    }
+
+    private static IntPtr InternalNext(IntPtr list)
+    {
+        return eina_list_next_custom_export_mono(list);
+    }
+
+    private static IntPtr InternalPrev(IntPtr list)
+    {
+        return eina_list_prev_custom_export_mono(list);
+    }
+
+    private static IntPtr InternalDataGet(IntPtr list)
+    {
+        return eina_list_data_get_custom_export_mono(list);
+    }
+
+    private static IntPtr InternalDataSet(IntPtr list, IntPtr data)
+    {
+        return eina_list_data_set_custom_export_mono(list, data);
+    }
+
+
+    public List()
+    {
+        InitNew();
+    }
+
+    public List(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = own;
+    }
+
+    public List(IntPtr handle, bool own, bool ownContent)
+    {
+        Handle = handle;
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    ~List()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (OwnContent)
+        {
+            for(IntPtr curr = h; curr != IntPtr.Zero; curr = InternalNext(curr))
+            {
+                NativeFree<T>(InternalDataGet(curr));
+            }
+        }
+
+        if (Own)
+            eina_list_free(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public void SetOwnership(bool ownAll)
+    {
+        Own = ownAll;
+        OwnContent = ownAll;
+    }
+
+    public void SetOwnership(bool own, bool ownContent)
+    {
+        Own = own;
+        OwnContent = ownContent;
+    }
+
+    public int Count()
+    {
+        return (int) eina_list_count_custom_export_mono(Handle);
+    }
+
+    public void Append(T val)
+    {
+        IntPtr ele = ManagedToNativeAlloc(val);
+        Handle = eina_list_append(Handle, ele);
+    }
+
+    public void Prepend(T val)
+    {
+        IntPtr ele = ManagedToNativeAlloc(val);
+        Handle = eina_list_prepend(Handle, ele);
+    }
+
+    public void SortedInsert(T val)
+    {
+        IntPtr ele = ManagedToNativeAlloc(val);
+        Handle = eina_list_sorted_insert(Handle, EinaCompareCb<T>(), ele);
+    }
+
+    public void SortedInsert(Eina_Compare_Cb compareCb, T val)
+    {
+        IntPtr ele = ManagedToNativeAlloc(val);
+        Handle = eina_list_sorted_insert(Handle, Marshal.GetFunctionPointerForDelegate(compareCb), ele);
+    }
+
+    public void Sort(int limit = 0)
+    {
+        Handle = eina_list_sort(Handle, (uint)limit, EinaCompareCb<T>());
+    }
+
+    public void Sort(Eina_Compare_Cb compareCb)
+    {
+        Handle = eina_list_sort(Handle, 0, Marshal.GetFunctionPointerForDelegate(compareCb));
+    }
+
+    public void Sort(int limit, Eina_Compare_Cb compareCb)
+    {
+        Handle = eina_list_sort(Handle, (uint)limit, Marshal.GetFunctionPointerForDelegate(compareCb));
+    }
+
+    public T Nth(int n)
+    {
+        // TODO: check bounds ???
+        IntPtr ele = eina_list_nth(Handle, (uint)n);
+        return NativeToManaged<T>(ele);
+    }
+
+    public void DataSet(int idx, T val)
+    {
+        IntPtr pos = eina_list_nth_list(Handle, (uint)idx);
+        if (pos == IntPtr.Zero)
+            throw new IndexOutOfRangeException();
+        if (OwnContent)
+            NativeFree<T>(InternalDataGet(pos));
+        IntPtr ele = ManagedToNativeAlloc(val);
+        InternalDataSet(pos, ele);
+    }
+
+    public T this[int idx]
+    {
+        get
+        {
+            return Nth(idx);
+        }
+        set
+        {
+            DataSet(idx, value);
+        }
+    }
+
+    public T LastDataGet()
+    {
+        IntPtr ele = eina_list_last_data_get_custom_export_mono(Handle);
+        return NativeToManaged<T>(ele);
+    }
+
+    public List<T> Reverse()
+    {
+        Handle = eina_list_reverse(Handle);
+        return this;
+    }
+
+    public void Shuffle()
+    {
+        Handle = eina_list_shuffle(Handle, IntPtr.Zero);
+    }
+
+    public T[] ToArray()
+    {
+        var managed = new T[Count()];
+        int i = 0;
+        for(IntPtr curr = Handle; curr != IntPtr.Zero; curr = InternalNext(curr), ++i)
+        {
+            managed[i] = NativeToManaged<T>(InternalDataGet(curr));
+        }
+        return managed;
+    }
+
+    public void AppendArray(T[] values)
+    {
+        foreach (T v in values)
+            Append(v);
+    }
+
+
+    public Eina.Iterator<T> GetIterator()
+    {
+        return new Eina.Iterator<T>(eina_list_iterator_new(Handle), true, false);
+    }
+
+    public Eina.Iterator<T> GetReversedIterator()
+    {
+        return new Eina.Iterator<T>(eina_list_iterator_reversed_new(Handle), true, false);
+    }
+
+    public IEnumerator<T> GetEnumerator()
+    {
+        for(IntPtr curr = Handle; curr != IntPtr.Zero; curr = InternalNext(curr))
+        {
+            yield return NativeToManaged<T>(InternalDataGet(curr));
+        }
+    }
+
+    System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
+    {
+        return this.GetEnumerator();
+    }
+
+    /// <summary> Gets an Accessor for this List.</summary>
+    public Eina.Accessor<T> GetAccessor()
+    {
+        return new Eina.Accessor<T>(eina_list_accessor_new(Handle), Ownership.Managed);
+    }
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_log.cs b/internals/src/EflSharp/EflSharp/eina_log.cs
new file mode 100755 (executable)
index 0000000..c17f02b
--- /dev/null
@@ -0,0 +1,111 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Runtime.CompilerServices;
+using System.Diagnostics.Contracts;
+
+namespace Eina { // Manual wrappers around eina functions
+
+public class Log
+{
+    [DllImport(efl.Libs.Eina)] private static extern void eina_log_print(
+            int domain,
+            Level level,
+            [MarshalAs(UnmanagedType.LPStr)] String file,
+            [MarshalAs(UnmanagedType.LPStr)] String function,
+            int line,
+            [MarshalAs(UnmanagedType.LPStr)] String message);
+
+    [DllImport(efl.Libs.Eina)] private static extern int eina_log_domain_register(
+            [MarshalAs(UnmanagedType.LPStr)] String name,
+            [MarshalAs(UnmanagedType.LPStr)] String color);
+
+    [DllImport(efl.Libs.Eina)] private static extern void eina_log_level_set(Level level);
+
+    [DllImport(efl.Libs.Eina)] private static extern Level eina_log_level_get();
+
+    public enum Level
+    {
+        Critical,
+        Error,
+        Warning,
+        Info,
+        Debug,
+        Unkown = (-2147483647 - 1)
+    }
+
+    public class Color
+    {
+        public static string LIGHTRED  = "\033[31;1m";
+        public static string RED       = "\033[31m";
+        public static string LIGHTBLUE = "\033[34;1m";
+        public static string BLUE      = "\033[34m";
+        public static string GREEN     = "\033[32;1m";
+        public static string YELLOW    = "\033[33;1m";
+        public static string ORANGE    = "\033[0;33m";
+        public static string WHITE     = "\033[37;1m";
+        public static string LIGHTCYAN = "\033[36;1m";
+        public static string CYAN      = "\033[36m";
+        public static string RESET     = "\033[0m";
+        public static string HIGH      = "\033[1m";
+    }
+
+    private static int domain = -1;
+
+    static Log()
+    {
+        const String name="mono";
+        const String color="\033[32;1m";
+
+        // Maybe move this check outside when other eina stuff get support?
+        domain = eina_log_domain_register(name, color);
+        if (domain < 0)
+          Console.WriteLine("Error: Couldn't register Eina log domain for name {0}.", name);
+        else
+          Info($"Registered mono domain with number {domain}");
+    }
+
+    private static void EnsureDomainRegistered()
+    {
+        if (domain < 0)
+          throw new InvalidOperationException("Log domain is not registered.");
+    }
+
+    public static void Critical(String message, [CallerLineNumber] int line=0, [CallerFilePath] string file=null, [CallerMemberName] string member = null)
+    {
+        EnsureDomainRegistered();
+        eina_log_print(domain, Level.Critical, file, member, line, message);
+    }
+    public static void Error(String message, [CallerLineNumber] int line=0, [CallerFilePath] string file=null, [CallerMemberName] string member = null)
+    {
+        EnsureDomainRegistered();
+        eina_log_print(domain, Level.Error, file, member, line, message);
+    }
+    public static void Warning(String message, [CallerLineNumber] int line=0, [CallerFilePath] string file=null, [CallerMemberName] string member = null)
+    {
+        EnsureDomainRegistered();
+        eina_log_print(domain, Level.Warning, file, member, line, message);
+    }
+    public static void Info(String message, [CallerLineNumber] int line=0, [CallerFilePath] string file=null, [CallerMemberName] string member = null)
+    {
+        EnsureDomainRegistered();
+        eina_log_print(domain, Level.Info, file, member, line, message);
+    }
+    public static void Debug(String message, [CallerLineNumber] int line=0, [CallerFilePath] string file=null, [CallerMemberName] string member = null)
+    {
+        EnsureDomainRegistered();
+        eina_log_print(domain, Level.Debug, file, member, line, message);
+    }
+
+    public static void GlobalLevelSet(Level level)
+    {
+        eina_log_level_set(level);
+    }
+
+    public static Level GlobalLevelGet()
+    {
+        return eina_log_level_get();
+    }
+}
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_promises.cs b/internals/src/EflSharp/EflSharp/eina_promises.cs
new file mode 100755 (executable)
index 0000000..8be5f9d
--- /dev/null
@@ -0,0 +1,356 @@
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+
+
+using static Eina.EinaNative.PromiseNativeMethods;
+
+namespace Eina {
+
+namespace EinaNative {
+
+static internal class PromiseNativeMethods
+{
+    internal delegate void Promise_Cancel_Cb(IntPtr data, IntPtr dead);
+
+    [DllImport(efl.Libs.Ecore)]
+    internal static extern IntPtr efl_loop_promise_new(IntPtr obj, Promise_Cancel_Cb cancel_cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern IntPtr eina_promise_new(IntPtr scheduler, Promise_Cancel_Cb cancel_cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern void eina_promise_resolve(IntPtr scheduler, Eina.ValueNative value);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern void eina_promise_reject(IntPtr scheduler, Eina.Error reason);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern IntPtr eina_future_new(IntPtr promise);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern void eina_future_cancel(IntPtr future);
+
+    [DllImport(efl.Libs.Ecore)]
+    internal static extern IntPtr efl_loop_future_scheduler_get(IntPtr obj);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern IntPtr eina_future_then_from_desc(IntPtr prev, FutureDesc desc);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern IntPtr eina_future_chain_array(IntPtr prev, FutureDesc[] desc);
+
+    internal delegate Eina.ValueNative FutureCb(IntPtr data, Eina.ValueNative value, IntPtr dead_future);
+
+    [StructLayout(LayoutKind.Sequential)]
+    internal struct FutureDesc
+    {
+        internal FutureCb cb;
+        internal IntPtr data;
+        internal IntPtr storage; // Internal use by eina
+
+        public FutureDesc(FutureCb cb, IntPtr data, IntPtr storage)
+        {
+            this.cb = cb;
+            this.data = data;
+            this.storage = storage;
+        }
+    }
+}
+
+} // namespace EinaNative
+
+/// <summary>
+/// Promises act as placeholders for a value that may be available in the future.
+///
+/// With a Promise you can attach futures to it, which will be used to notify of the value being available.
+/// </summary>
+public class Promise : IDisposable
+{
+    internal IntPtr Handle;
+    private GCHandle CleanupHandle;
+
+    /// <summary>Delegate for functions that will be called upon a promise cancellation.</summary>
+    public delegate void CancelCb();
+
+    /// <summary>
+    /// Creates a new Promise with the given callback.
+    ///
+    /// Currently, creating a promise directly uses the Main Loop scheduler the source of notifications (i.e. the
+    /// future callbacks will be called mainly from a loop iteration).
+    /// </summary>
+    public Promise(CancelCb cancelCb=null)
+    {
+        Efl.Loop loop = Efl.App.AppMain;
+
+        // Should we be able to pass different schedulers?
+        IntPtr scheduler = efl_loop_future_scheduler_get(loop.NativeHandle);
+
+        IntPtr cb_data = IntPtr.Zero;
+
+        // A safety clean callback to mark this wrapper as invalid
+        CancelCb safetyCb = () => {
+            Handle = IntPtr.Zero;
+            if (cancelCb != null)
+                cancelCb();
+        };
+
+        CleanupHandle = GCHandle.Alloc(safetyCb);
+        cb_data = GCHandle.ToIntPtr(CleanupHandle);
+
+        this.Handle = eina_promise_new(scheduler, NativeCancelCb, cb_data);
+    }
+
+    private static void NativeCancelCb(IntPtr data, IntPtr dead)
+    {
+        if (data == IntPtr.Zero)
+            return;
+
+        GCHandle handle = GCHandle.FromIntPtr(data);
+        CancelCb cb = handle.Target as CancelCb;
+        if (cb != null)
+            cb();
+        else
+            Eina.Log.Info("Null promise CancelCb found");
+        handle.Free();
+    }
+
+    /// <summary>Dispose this promise, causing its cancellation if it isn't already fulfilled.</summary>
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    /// <summary>Finalizer to be called from the Garbage Collector.</summary>
+    ~Promise()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        if (Handle != IntPtr.Zero)
+        {
+            eina_promise_reject(Handle, Eina.Error.ECANCELED);
+            Handle = IntPtr.Zero;
+        }
+    }
+
+    private void SanityChecks()
+    {
+        if (this.Handle == IntPtr.Zero)
+            throw new ObjectDisposedException(GetType().Name);
+    }
+
+    /// <summary>
+    /// Fulfills a promise with the given value.
+    ///
+    /// This will make all futures attached to it to be called with the given value as payload.
+    /// </summary>
+    public void Resolve(Eina.Value value)
+    {
+        SanityChecks();
+        eina_promise_resolve(this.Handle, value);
+        this.Handle = IntPtr.Zero;
+        // Resolving a cb does *not* call its cancellation callback, so we have to release the
+        // lambda created in the constructor for cleanup.
+        CleanupHandle.Free();
+    }
+
+    /// <summary>
+    /// Rejects a promise.
+    ///
+    /// The future chain attached to this promise will be called with an Eina.Value of type
+    /// Eina.ValueType.Error and payload Eina.Error.ECANCELED.
+    /// </summary>
+    public void Reject(Eina.Error reason)
+    {
+        SanityChecks();
+        eina_promise_reject(this.Handle, reason);
+        this.Handle = IntPtr.Zero;
+    }
+}
+
+/// <summary>
+/// Futures are the structures holding the callbacks to be notified of a promise fullfillment
+/// or cancellation.
+/// </summary>
+public class Future
+{
+    /// <summary>
+    /// Callback attached to a future and to be called when resolving/rejecting a promise.
+    ///
+    /// The Eina.Value as argument can come with an Eina.Error.ECANCELED as payload if the
+    /// promise/future was rejected/cancelled.
+    ///
+    /// The return value usually is same as the argument, forwarded, but can be changed in
+    /// case were the chain act as a transforming pipeline.
+    /// </summary>
+    public delegate Eina.Value ResolvedCb(Eina.Value value);
+
+    public IntPtr Handle { get; internal set; }
+
+    /// <summary>
+    /// Creates a Future from a native pointer.
+    /// </summary>
+    public Future(IntPtr handle)
+    {
+        Handle = ThenRaw(handle, (Eina.Value value) => {
+            Handle = IntPtr.Zero;
+            return value;
+        });
+    }
+
+    /// <summary>
+    /// Creates a Future attached to the given Promise.
+    ///
+    /// Optionally a resolved callback may be provided. If so, it will be chained
+    /// before the returned future.
+    /// </summary>
+    public Future(Promise promise, ResolvedCb cb=null)
+    {
+        IntPtr intermediate = eina_future_new(promise.Handle);
+        Handle = ThenRaw(intermediate, (Eina.Value value) => {
+            if (cb != null)
+                value = cb(value);
+            Handle = IntPtr.Zero;
+            return value;
+        });
+    }
+
+    private void SanityChecks()
+    {
+        if (this.Handle == IntPtr.Zero)
+            throw new ObjectDisposedException(GetType().Name);
+    }
+
+    /// <summary>
+    /// Cancels this future and the chain it belongs to, along with the promise linked against it.
+    ///
+    /// The callbacks will still be called with Eina.Error.ECANCELED as payload. The promise cancellation
+    /// callback will also be called if present.
+    /// </summary>
+    public void Cancel()
+    {
+        SanityChecks();
+        eina_future_cancel(this.Handle);
+    }
+
+    /// <summary>
+    /// Creates a new future to be called after this one.
+    ///
+    /// Once the promise this future is attached to resolves, the callbacks on the chain
+    /// are called in the order they were chained.
+    ///
+    /// CAUTION: Calling Then() on a future that had it called before will replace the previous chain
+    /// from this point on.
+    /// </summary>
+    public Future Then(ResolvedCb cb)
+    {
+        SanityChecks();
+        return new Future(ThenRaw(Handle, cb));
+    }
+
+    // Helper function to attach a cb to a future without creating a new wrapper directly.
+    // It'll be used in the construtor, to attach the cleaning cb to an intermediate future.
+    private static IntPtr ThenRaw(IntPtr previous, ResolvedCb cb)
+    {
+        FutureDesc desc = new FutureDesc();
+        desc.cb = NativeResolvedCb;
+        GCHandle handle = GCHandle.Alloc(cb);
+        desc.data = GCHandle.ToIntPtr(handle);
+        return eina_future_then_from_desc(previous, desc);
+    }
+    private static Eina.ValueNative NativeResolvedCb(IntPtr data, Eina.ValueNative value, IntPtr dead_future)
+    {
+        GCHandle handle = GCHandle.FromIntPtr(data);
+        ResolvedCb cb = handle.Target as ResolvedCb;
+        if (cb != null)
+            value = cb(value);
+        else
+            Eina.Log.Warning("Failed to get future callback.");
+        handle.Free();
+        return value;
+    }
+
+    /// <summary>
+    /// Helper method for chaining a group of callbacks in a single go.
+    ///
+    /// It is just syntatic sugar for sequential Then() calls, without creating intermediate
+    /// futures explicitly.
+    /// </summary>
+    public Future Chain(IEnumerable<ResolvedCb> cbs)
+    {
+        SanityChecks();
+        System.Collections.Generic.IList<ResolvedCb> cbsList = cbs.ToList();
+        FutureDesc[] descs = new FutureDesc[cbsList.Count() + 1]; // +1 due to the null-cb terminating descriptor.
+        int i = 0;
+        try
+        {
+            for (; i < cbsList.Count(); i++)
+            {
+                ResolvedCb cb = cbsList[i];
+                descs[i].cb = NativeResolvedCb;
+                GCHandle handle = GCHandle.Alloc(cb);
+                descs[i].data = GCHandle.ToIntPtr(handle);
+            }
+
+            descs[i].cb = null;
+            descs[i].data = IntPtr.Zero;
+        }
+        catch (Exception e)
+        {
+            for (int j = 0; j <= i; j++)
+            {
+                if (descs[i].data == IntPtr.Zero)
+                    continue;
+
+                GCHandle handle = GCHandle.FromIntPtr(descs[i].data);
+                handle.Free();
+            }
+            Eina.Log.Error($"Failed to create native future description for callbacks. Error: {e.ToString()}");
+            return null;
+        }
+        return new Future(eina_future_chain_array(Handle, descs));
+    }
+}
+
+public class FutureMarshaler : ICustomMarshaler
+{
+
+    public object MarshalNativeToManaged(IntPtr pNativeData)
+    {
+        return new Future(pNativeData);
+    }
+
+    public IntPtr MarshalManagedToNative(object managedObj)
+    {
+        Future f = managedObj as Future;
+        if (f == null)
+            return IntPtr.Zero;
+        return f.Handle;
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) { }
+
+    public void CleanUpManagedData(object managedObj) { }
+
+    public int GetNativeDataSize()
+    {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null)
+        {
+            marshaler = new FutureMarshaler();
+        }
+        return marshaler;
+    }
+
+    private static FutureMarshaler marshaler;
+}
+
+} // namespace eina
diff --git a/internals/src/EflSharp/EflSharp/eina_slice.cs b/internals/src/EflSharp/EflSharp/eina_slice.cs
new file mode 100755 (executable)
index 0000000..649ffc5
--- /dev/null
@@ -0,0 +1,87 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace Eina {
+
+public interface ISliceBase
+{
+    UIntPtr Len {get;set;}
+    IntPtr Mem {get;set;}
+
+    int Length {get;set;}
+};
+
+[StructLayout(LayoutKind.Sequential)]
+public struct Slice : ISliceBase
+{
+    public UIntPtr Len {get;set;}
+    public IntPtr Mem {get;set;}
+
+    public int Length
+    {
+        get { return (int) Len; }
+        set { Len = (UIntPtr) value; }
+    }
+
+    public Slice(IntPtr mem, UIntPtr len)
+    {
+        Mem = mem;
+        Len = len;
+    }
+
+    public Slice PinnedDataSet(IntPtr mem, UIntPtr len)
+    {
+        Mem = mem;
+        Len = len;
+        return this;
+    }
+}
+
+[StructLayout(LayoutKind.Sequential)]
+public struct RwSlice : ISliceBase
+{
+    public UIntPtr Len {get;set;}
+    public IntPtr Mem {get;set;}
+
+    public int Length
+    {
+        get { return (int) Len; }
+        set { Len = (UIntPtr) value; }
+    }
+
+    public RwSlice(IntPtr mem, UIntPtr len)
+    {
+        Mem = mem;
+        Len = len;
+    }
+
+    public RwSlice PinnedDataSet(IntPtr mem, UIntPtr len)
+    {
+        Mem = mem;
+        Len = len;
+        return this;
+    }
+
+    Slice ToSlice()
+    {
+        var r = new Slice();
+        r.Mem = Mem;
+        r.Len = Len;
+        return r;
+    }
+}
+
+}
+
+public static class Eina_SliceUtils
+{
+    public static byte[] GetBytes(this Eina.ISliceBase slc)
+    {
+        var size = (int)(slc.Len);
+        byte[] mArray = new byte[size];
+        Marshal.Copy(slc.Mem, mArray, 0, size);
+        return mArray;
+    }
+}
diff --git a/internals/src/EflSharp/EflSharp/eina_strbuf.cs b/internals/src/EflSharp/EflSharp/eina_strbuf.cs
new file mode 100755 (executable)
index 0000000..9d7a982
--- /dev/null
@@ -0,0 +1,156 @@
+using System;
+using System.Runtime.InteropServices;
+
+using static Eina.EinaNative.StrbufNativeMethods;
+
+namespace Eina
+{
+namespace EinaNative
+{
+static internal class StrbufNativeMethods
+{
+    [DllImport(efl.Libs.Eina)]
+    internal static extern IntPtr eina_strbuf_new();
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern void eina_strbuf_free(IntPtr buf);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern void eina_strbuf_reset(IntPtr buf);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_strbuf_append(IntPtr buf, string str);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_strbuf_append_escaped(IntPtr buf, string str);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_strbuf_append_char(IntPtr buf, char c);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern string eina_strbuf_string_steal(IntPtr buf);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern IntPtr eina_strbuf_length_get(IntPtr buf); // Uses IntPtr as wrapper for size_t
+}
+
+} // namespace EinaNative
+
+///<summary>Native string buffer, similar to the C# StringBuilder class.</summary>
+public class Strbuf : IDisposable
+{
+    ///<summary>Pointer to the underlying native handle.</summary>
+    public IntPtr Handle { get; protected set; }
+    private Ownership Ownership;
+    private bool Disposed;
+
+    ///<summary>Creates a new Strbuf. By default its lifetime is managed.</summary>
+    public Strbuf(Ownership ownership=Ownership.Managed)
+    {
+        this.Handle = eina_strbuf_new();
+        this.Ownership = ownership;
+    }
+
+    ///<summary>Creates a new Strbuf from an existing IntPtr.</summary>
+    public Strbuf(IntPtr ptr, Ownership ownership)
+    {
+        this.Handle = ptr;
+        this.Ownership = ownership;
+    }
+
+    /// <summary>Releases the ownership of the underlying value to C.</summary>
+    public void ReleaseOwnership()
+    {
+        this.Ownership = Ownership.Unmanaged;
+    }
+
+    /// <summary>Takes the ownership of the underlying value to the Managed runtime.</summary>
+    public void TakeOwnership()
+    {
+        this.Ownership = Ownership.Managed;
+    }
+
+    ///<summary>Public method to explicitly free the wrapped buffer.</summary>
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    ///<summary>Actually free the wrapped buffer. Can be called from Dispose() or through the GC.</summary>
+    protected virtual void Dispose(bool disposing)
+    {
+        if (this.Ownership == Ownership.Unmanaged)
+        {
+            Disposed = true;
+            return;
+        }
+
+        if (!Disposed && (Handle != IntPtr.Zero)) {
+            eina_strbuf_free(Handle);
+        }
+        Disposed = true;
+    }
+
+    ///<summary>Finalizer to be called from the GC.</summary>
+    ~Strbuf()
+    {
+        Dispose(false);
+    }
+
+    ///<summary>Retrieves the length of the buffer contents.</summary>
+    public int Length
+    {
+        get
+        {
+            IntPtr size = eina_strbuf_length_get(Handle);
+            return size.ToInt32();
+        }
+    }
+
+    ///<summary>Resets a string buffer. Its len is set to 0 and the content to '\\0'</summary>
+    public void Reset()
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(base.GetType().Name);
+        eina_strbuf_reset(Handle);
+    }
+
+    ///<summary>Appends a string to a buffer, reallocating as necessary.</summary>
+    public bool Append(string text)
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(base.GetType().Name);
+        return eina_strbuf_append(Handle, text);
+    }
+
+    ///<summary>Appens an escaped string to a buffer, reallocating as necessary.</summary>
+    public bool AppendEscaped(string text)
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(base.GetType().Name);
+        return eina_strbuf_append_escaped(Handle, text);
+    }
+
+    ///<summary>Appends a char to a buffer, reallocating as necessary.</summary>
+    public bool Append(char c)
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(base.GetType().Name);
+        return eina_strbuf_append_char(Handle, c);
+    }
+
+    ///<summary>Steals the content of a buffer.</summary>
+    public string Steal()
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(base.GetType().Name);
+        return eina_strbuf_string_steal(Handle);
+    }
+}
+
+} // namespace eina
+
diff --git a/internals/src/EflSharp/EflSharp/eina_stringshare.cs b/internals/src/EflSharp/EflSharp/eina_stringshare.cs
new file mode 100755 (executable)
index 0000000..83ea31e
--- /dev/null
@@ -0,0 +1,19 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+
+namespace Eina {
+
+public class Stringshare {
+    [DllImport(efl.Libs.Eina)] public static extern System.IntPtr
+        eina_stringshare_add_length(string str, System.UInt32 slen);
+    [DllImport(efl.Libs.Eina)] public static extern System.IntPtr
+        eina_stringshare_add(string str);
+    [DllImport(efl.Libs.Eina)] public static extern void
+        eina_stringshare_del(System.IntPtr str);
+}
+
+}
+
diff --git a/internals/src/EflSharp/EflSharp/eina_types.eot.cs b/internals/src/EflSharp/EflSharp/eina_types.eot.cs
new file mode 100755 (executable)
index 0000000..6c627ce
--- /dev/null
@@ -0,0 +1,717 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Eina { 
+public struct Unicode {
+   private  uint payload;
+   public static implicit operator Unicode( uint x)
+   {
+      return new Unicode{payload=x};
+   }
+   public static implicit operator  uint(Unicode x)
+   {
+      return x.payload;
+   }
+}
+} 
+namespace Eina { namespace Xattr { 
+/// <summary>Eina file extended attributes flags</summary>
+public enum Flags
+{
+/// <summary>This is the default behaviour, it will either create or replace the extended attribute</summary>
+Insert = 0,
+/// <summary>This will only succeed if the extended attribute previously existed</summary>
+Replace = 1,
+/// <summary>This will only succeed if the extended attribute wasn&apos;t previously set</summary>
+Created = 2,
+}
+} } 
+namespace Eina { 
+/// <summary>A rectangle in pixel dimensions.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Rect
+{
+   /// <summary>X coordinate of the rectangle, from the top-left corner.</summary>
+   public  int X;
+   /// <summary>Y coordinate of the rectangle, from the top-left corner.</summary>
+   public  int Y;
+   /// <summary>Width of the rectangle in pixels.</summary>
+   public  int W;
+   /// <summary>Height of the rectangle in pixels.</summary>
+   public  int H;
+   ///<summary>Constructor for Rect.</summary>
+   public Rect(
+       int X=default( int),
+       int Y=default( int),
+       int W=default( int),
+       int H=default( int)   )
+   {
+      this.X = X;
+      this.Y = Y;
+      this.W = W;
+      this.H = H;
+   }
+public static implicit operator Rect(IntPtr ptr)
+   {
+      var tmp = (Rect_StructInternal)Marshal.PtrToStructure(ptr, typeof(Rect_StructInternal));
+      return Rect_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Rect.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Rect_StructInternal
+{
+   
+   public  int X;
+   
+   public  int Y;
+   
+   public  int W;
+   
+   public  int H;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Rect(Rect_StructInternal struct_)
+   {
+      return Rect_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Rect_StructInternal(Rect struct_)
+   {
+      return Rect_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Rect</summary>
+public static class Rect_StructConversion
+{
+   internal static Rect_StructInternal ToInternal(Rect _external_struct)
+   {
+      var _internal_struct = new Rect_StructInternal();
+
+      _internal_struct.X = _external_struct.X;
+      _internal_struct.Y = _external_struct.Y;
+      _internal_struct.W = _external_struct.W;
+      _internal_struct.H = _external_struct.H;
+
+      return _internal_struct;
+   }
+
+   internal static Rect ToManaged(Rect_StructInternal _internal_struct)
+   {
+      var _external_struct = new Rect();
+
+      _external_struct.X = _internal_struct.X;
+      _external_struct.Y = _internal_struct.Y;
+      _external_struct.W = _internal_struct.W;
+      _external_struct.H = _internal_struct.H;
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Eina { 
+/// <summary>A 2D location in pixels.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Position2D
+{
+   /// <summary>X position in pixels, from the top-left corner.</summary>
+   public  int X;
+   /// <summary>Y position in pixels, from the top-left corner.</summary>
+   public  int Y;
+   ///<summary>Constructor for Position2D.</summary>
+   public Position2D(
+       int X=default( int),
+       int Y=default( int)   )
+   {
+      this.X = X;
+      this.Y = Y;
+   }
+public static implicit operator Position2D(IntPtr ptr)
+   {
+      var tmp = (Position2D_StructInternal)Marshal.PtrToStructure(ptr, typeof(Position2D_StructInternal));
+      return Position2D_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Position2D.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Position2D_StructInternal
+{
+   
+   public  int X;
+   
+   public  int Y;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Position2D(Position2D_StructInternal struct_)
+   {
+      return Position2D_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Position2D_StructInternal(Position2D struct_)
+   {
+      return Position2D_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Position2D</summary>
+public static class Position2D_StructConversion
+{
+   internal static Position2D_StructInternal ToInternal(Position2D _external_struct)
+   {
+      var _internal_struct = new Position2D_StructInternal();
+
+      _internal_struct.X = _external_struct.X;
+      _internal_struct.Y = _external_struct.Y;
+
+      return _internal_struct;
+   }
+
+   internal static Position2D ToManaged(Position2D_StructInternal _internal_struct)
+   {
+      var _external_struct = new Position2D();
+
+      _external_struct.X = _internal_struct.X;
+      _external_struct.Y = _internal_struct.Y;
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Eina { 
+/// <summary>A 2D size in pixels.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Size2D
+{
+   /// <summary>X position in pixels, from the top-left corner.</summary>
+   public  int W;
+   /// <summary>Y position in pixels, from the top-left corner.</summary>
+   public  int H;
+   ///<summary>Constructor for Size2D.</summary>
+   public Size2D(
+       int W=default( int),
+       int H=default( int)   )
+   {
+      this.W = W;
+      this.H = H;
+   }
+public static implicit operator Size2D(IntPtr ptr)
+   {
+      var tmp = (Size2D_StructInternal)Marshal.PtrToStructure(ptr, typeof(Size2D_StructInternal));
+      return Size2D_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Size2D.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Size2D_StructInternal
+{
+   
+   public  int W;
+   
+   public  int H;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Size2D(Size2D_StructInternal struct_)
+   {
+      return Size2D_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Size2D_StructInternal(Size2D struct_)
+   {
+      return Size2D_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Size2D</summary>
+public static class Size2D_StructConversion
+{
+   internal static Size2D_StructInternal ToInternal(Size2D _external_struct)
+   {
+      var _internal_struct = new Size2D_StructInternal();
+
+      _internal_struct.W = _external_struct.W;
+      _internal_struct.H = _external_struct.H;
+
+      return _internal_struct;
+   }
+
+   internal static Size2D ToManaged(Size2D_StructInternal _internal_struct)
+   {
+      var _external_struct = new Size2D();
+
+      _external_struct.W = _internal_struct.W;
+      _external_struct.H = _internal_struct.H;
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Eina { 
+/// <summary>Eina file data structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct File
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator File(IntPtr ptr)
+   {
+      var tmp = (File_StructInternal)Marshal.PtrToStructure(ptr, typeof(File_StructInternal));
+      return File_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct File.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct File_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator File(File_StructInternal struct_)
+   {
+      return File_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator File_StructInternal(File struct_)
+   {
+      return File_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct File</summary>
+public static class File_StructConversion
+{
+   internal static File_StructInternal ToInternal(File _external_struct)
+   {
+      var _internal_struct = new File_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static File ToManaged(File_StructInternal _internal_struct)
+   {
+      var _external_struct = new File();
+
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Eina { 
+/// <summary>A simple 2D vector type using floating point values.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Vector2
+{
+   /// <summary>X coordinate.</summary>
+   public double X;
+   /// <summary>Y coordinate.</summary>
+   public double Y;
+   ///<summary>Constructor for Vector2.</summary>
+   public Vector2(
+      double X=default(double),
+      double Y=default(double)   )
+   {
+      this.X = X;
+      this.Y = Y;
+   }
+public static implicit operator Vector2(IntPtr ptr)
+   {
+      var tmp = (Vector2_StructInternal)Marshal.PtrToStructure(ptr, typeof(Vector2_StructInternal));
+      return Vector2_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Vector2.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Vector2_StructInternal
+{
+   
+   public double X;
+   
+   public double Y;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Vector2(Vector2_StructInternal struct_)
+   {
+      return Vector2_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Vector2_StructInternal(Vector2 struct_)
+   {
+      return Vector2_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Vector2</summary>
+public static class Vector2_StructConversion
+{
+   internal static Vector2_StructInternal ToInternal(Vector2 _external_struct)
+   {
+      var _internal_struct = new Vector2_StructInternal();
+
+      _internal_struct.X = _external_struct.X;
+      _internal_struct.Y = _external_struct.Y;
+
+      return _internal_struct;
+   }
+
+   internal static Vector2 ToManaged(Vector2_StructInternal _internal_struct)
+   {
+      var _external_struct = new Vector2();
+
+      _external_struct.X = _internal_struct.X;
+      _external_struct.Y = _internal_struct.Y;
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Eina { 
+/// <summary>Eina 3x3 Matrix</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Matrix3
+{
+   /// <summary>XX matrix value</summary>
+   public double Xx;
+   /// <summary>XY matrix value</summary>
+   public double Xy;
+   /// <summary>XZ matrix value</summary>
+   public double Xz;
+   /// <summary>YX matrix value</summary>
+   public double Yx;
+   /// <summary>YY matrix value</summary>
+   public double Yy;
+   /// <summary>YZ matrix value</summary>
+   public double Yz;
+   /// <summary>ZX matrix value</summary>
+   public double Zx;
+   /// <summary>ZY matrix value</summary>
+   public double Zy;
+   /// <summary>ZZ matrix value</summary>
+   public double Zz;
+   ///<summary>Constructor for Matrix3.</summary>
+   public Matrix3(
+      double Xx=default(double),
+      double Xy=default(double),
+      double Xz=default(double),
+      double Yx=default(double),
+      double Yy=default(double),
+      double Yz=default(double),
+      double Zx=default(double),
+      double Zy=default(double),
+      double Zz=default(double)   )
+   {
+      this.Xx = Xx;
+      this.Xy = Xy;
+      this.Xz = Xz;
+      this.Yx = Yx;
+      this.Yy = Yy;
+      this.Yz = Yz;
+      this.Zx = Zx;
+      this.Zy = Zy;
+      this.Zz = Zz;
+   }
+public static implicit operator Matrix3(IntPtr ptr)
+   {
+      var tmp = (Matrix3_StructInternal)Marshal.PtrToStructure(ptr, typeof(Matrix3_StructInternal));
+      return Matrix3_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Matrix3.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Matrix3_StructInternal
+{
+   
+   public double Xx;
+   
+   public double Xy;
+   
+   public double Xz;
+   
+   public double Yx;
+   
+   public double Yy;
+   
+   public double Yz;
+   
+   public double Zx;
+   
+   public double Zy;
+   
+   public double Zz;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Matrix3(Matrix3_StructInternal struct_)
+   {
+      return Matrix3_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Matrix3_StructInternal(Matrix3 struct_)
+   {
+      return Matrix3_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Matrix3</summary>
+public static class Matrix3_StructConversion
+{
+   internal static Matrix3_StructInternal ToInternal(Matrix3 _external_struct)
+   {
+      var _internal_struct = new Matrix3_StructInternal();
+
+      _internal_struct.Xx = _external_struct.Xx;
+      _internal_struct.Xy = _external_struct.Xy;
+      _internal_struct.Xz = _external_struct.Xz;
+      _internal_struct.Yx = _external_struct.Yx;
+      _internal_struct.Yy = _external_struct.Yy;
+      _internal_struct.Yz = _external_struct.Yz;
+      _internal_struct.Zx = _external_struct.Zx;
+      _internal_struct.Zy = _external_struct.Zy;
+      _internal_struct.Zz = _external_struct.Zz;
+
+      return _internal_struct;
+   }
+
+   internal static Matrix3 ToManaged(Matrix3_StructInternal _internal_struct)
+   {
+      var _external_struct = new Matrix3();
+
+      _external_struct.Xx = _internal_struct.Xx;
+      _external_struct.Xy = _internal_struct.Xy;
+      _external_struct.Xz = _internal_struct.Xz;
+      _external_struct.Yx = _internal_struct.Yx;
+      _external_struct.Yy = _internal_struct.Yy;
+      _external_struct.Yz = _internal_struct.Yz;
+      _external_struct.Zx = _internal_struct.Zx;
+      _external_struct.Zy = _internal_struct.Zy;
+      _external_struct.Zz = _internal_struct.Zz;
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Eina { 
+/// <summary>Eina file direct information data structure</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct FileDirectInfo
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator FileDirectInfo(IntPtr ptr)
+   {
+      var tmp = (FileDirectInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(FileDirectInfo_StructInternal));
+      return FileDirectInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct FileDirectInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct FileDirectInfo_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator FileDirectInfo(FileDirectInfo_StructInternal struct_)
+   {
+      return FileDirectInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator FileDirectInfo_StructInternal(FileDirectInfo struct_)
+   {
+      return FileDirectInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct FileDirectInfo</summary>
+public static class FileDirectInfo_StructConversion
+{
+   internal static FileDirectInfo_StructInternal ToInternal(FileDirectInfo _external_struct)
+   {
+      var _internal_struct = new FileDirectInfo_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static FileDirectInfo ToManaged(FileDirectInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new FileDirectInfo();
+
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Eina { 
+/// <summary>The structure to store some file statistics.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Stat
+{
+   /// <summary>The device where this file is located</summary>
+   public  uint Dev;
+   /// <summary>The inode</summary>
+   public  uint Ino;
+   /// <summary>The mode</summary>
+   public  uint Mode;
+   /// <summary>The link number</summary>
+   public  uint Nlink;
+   /// <summary>The owner user id</summary>
+   public  uint Uid;
+   /// <summary>The owner group id</summary>
+   public  uint Gid;
+   /// <summary>The remote device</summary>
+   public  uint Rdev;
+   /// <summary>The file size in bytes</summary>
+   public  uint Size;
+   /// <summary>The block size in bytes</summary>
+   public  uint Blksize;
+   /// <summary>The number of blocks allocated</summary>
+   public  uint Blocks;
+   /// <summary>The tilestamp when the file was last accessed</summary>
+   public  uint Atime;
+   /// <summary>The nano version of the timestmap when the file was last accessed</summary>
+   public  uint Atimensec;
+   /// <summary>The tilestamp when the file was modified</summary>
+   public  uint Mtime;
+   /// <summary>The nano version of the timestmap when the file was modified</summary>
+   public  uint Mtimensec;
+   /// <summary>The tilestamp when the file was created</summary>
+   public  uint Ctime;
+   /// <summary>The nano version of the timestmap when the file was created</summary>
+   public  uint Ctimensec;
+   ///<summary>Constructor for Stat.</summary>
+   public Stat(
+       uint Dev=default( uint),
+       uint Ino=default( uint),
+       uint Mode=default( uint),
+       uint Nlink=default( uint),
+       uint Uid=default( uint),
+       uint Gid=default( uint),
+       uint Rdev=default( uint),
+       uint Size=default( uint),
+       uint Blksize=default( uint),
+       uint Blocks=default( uint),
+       uint Atime=default( uint),
+       uint Atimensec=default( uint),
+       uint Mtime=default( uint),
+       uint Mtimensec=default( uint),
+       uint Ctime=default( uint),
+       uint Ctimensec=default( uint)   )
+   {
+      this.Dev = Dev;
+      this.Ino = Ino;
+      this.Mode = Mode;
+      this.Nlink = Nlink;
+      this.Uid = Uid;
+      this.Gid = Gid;
+      this.Rdev = Rdev;
+      this.Size = Size;
+      this.Blksize = Blksize;
+      this.Blocks = Blocks;
+      this.Atime = Atime;
+      this.Atimensec = Atimensec;
+      this.Mtime = Mtime;
+      this.Mtimensec = Mtimensec;
+      this.Ctime = Ctime;
+      this.Ctimensec = Ctimensec;
+   }
+public static implicit operator Stat(IntPtr ptr)
+   {
+      var tmp = (Stat_StructInternal)Marshal.PtrToStructure(ptr, typeof(Stat_StructInternal));
+      return Stat_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct Stat.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct Stat_StructInternal
+{
+   
+   public  uint Dev;
+   
+   public  uint Ino;
+   
+   public  uint Mode;
+   
+   public  uint Nlink;
+   
+   public  uint Uid;
+   
+   public  uint Gid;
+   
+   public  uint Rdev;
+   
+   public  uint Size;
+   
+   public  uint Blksize;
+   
+   public  uint Blocks;
+   
+   public  uint Atime;
+   
+   public  uint Atimensec;
+   
+   public  uint Mtime;
+   
+   public  uint Mtimensec;
+   
+   public  uint Ctime;
+   
+   public  uint Ctimensec;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator Stat(Stat_StructInternal struct_)
+   {
+      return Stat_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator Stat_StructInternal(Stat struct_)
+   {
+      return Stat_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct Stat</summary>
+public static class Stat_StructConversion
+{
+   internal static Stat_StructInternal ToInternal(Stat _external_struct)
+   {
+      var _internal_struct = new Stat_StructInternal();
+
+      _internal_struct.Dev = _external_struct.Dev;
+      _internal_struct.Ino = _external_struct.Ino;
+      _internal_struct.Mode = _external_struct.Mode;
+      _internal_struct.Nlink = _external_struct.Nlink;
+      _internal_struct.Uid = _external_struct.Uid;
+      _internal_struct.Gid = _external_struct.Gid;
+      _internal_struct.Rdev = _external_struct.Rdev;
+      _internal_struct.Size = _external_struct.Size;
+      _internal_struct.Blksize = _external_struct.Blksize;
+      _internal_struct.Blocks = _external_struct.Blocks;
+      _internal_struct.Atime = _external_struct.Atime;
+      _internal_struct.Atimensec = _external_struct.Atimensec;
+      _internal_struct.Mtime = _external_struct.Mtime;
+      _internal_struct.Mtimensec = _external_struct.Mtimensec;
+      _internal_struct.Ctime = _external_struct.Ctime;
+      _internal_struct.Ctimensec = _external_struct.Ctimensec;
+
+      return _internal_struct;
+   }
+
+   internal static Stat ToManaged(Stat_StructInternal _internal_struct)
+   {
+      var _external_struct = new Stat();
+
+      _external_struct.Dev = _internal_struct.Dev;
+      _external_struct.Ino = _internal_struct.Ino;
+      _external_struct.Mode = _internal_struct.Mode;
+      _external_struct.Nlink = _internal_struct.Nlink;
+      _external_struct.Uid = _internal_struct.Uid;
+      _external_struct.Gid = _internal_struct.Gid;
+      _external_struct.Rdev = _internal_struct.Rdev;
+      _external_struct.Size = _internal_struct.Size;
+      _external_struct.Blksize = _internal_struct.Blksize;
+      _external_struct.Blocks = _internal_struct.Blocks;
+      _external_struct.Atime = _internal_struct.Atime;
+      _external_struct.Atimensec = _internal_struct.Atimensec;
+      _external_struct.Mtime = _internal_struct.Mtime;
+      _external_struct.Mtimensec = _internal_struct.Mtimensec;
+      _external_struct.Ctime = _internal_struct.Ctime;
+      _external_struct.Ctimensec = _internal_struct.Ctimensec;
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/eina_value.cs b/internals/src/EflSharp/EflSharp/eina_value.cs
new file mode 100755 (executable)
index 0000000..edb1ab7
--- /dev/null
@@ -0,0 +1,2196 @@
+#pragma warning disable 1591
+
+#define CODE_ANALYSIS
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Security.Permissions;
+using System.Security;
+using System.Diagnostics.CodeAnalysis;
+using System.Runtime.Serialization;
+
+using static Eina.EinaNative.UnsafeNativeMethods;
+using static Eina.TraitFunctions;
+
+
+namespace Eina {
+
+namespace EinaNative {
+
+// Structs to be passed from/to C when dealing with containers and
+// optional values.
+[StructLayout(LayoutKind.Sequential)]
+struct Value_Array
+{
+    public IntPtr subtype;
+    public uint step;
+    public IntPtr subarray;
+}
+
+[StructLayout(LayoutKind.Sequential)]
+struct Value_List
+{
+    public IntPtr subtype;
+    public IntPtr sublist;
+}
+
+[SuppressUnmanagedCodeSecurityAttribute]
+static internal class UnsafeNativeMethods {
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern IntPtr eina_value_new(IntPtr type);
+
+    [DllImport(efl.Libs.Eina)]
+    internal static extern void eina_value_free(IntPtr type);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_convert(IntPtr handle, IntPtr convert);
+
+    // Wrapped and helper methods
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern int eina_value_sizeof();
+
+    [DllImport(efl.Libs.CustomExports, CharSet=CharSet.Ansi)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_string(IntPtr handle, string value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_uchar(IntPtr handle, byte value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_char(IntPtr handle, sbyte value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_short(IntPtr handle, short value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_ushort(IntPtr handle, ushort value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_int(IntPtr handle, int value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_uint(IntPtr handle, uint value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_long(IntPtr handle, long value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_ulong(IntPtr handle, ulong value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_float(IntPtr handle, float value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_double(IntPtr handle, double value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_set_wrapper_ptr(IntPtr handle, IntPtr value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_setup_wrapper(IntPtr handle, IntPtr type);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern void eina_value_flush_wrapper(IntPtr handle);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr eina_value_type_get_wrapper(IntPtr handle);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out IntPtr output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out Value_List output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out Value_Array output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out byte output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out sbyte output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out short output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out ushort output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out int output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out uint output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out long output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out ulong output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out float output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_get_wrapper(IntPtr handle, out double output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern int eina_value_compare_wrapper(IntPtr handle, IntPtr other);
+
+    [DllImport(efl.Libs.Eina, CharSet=CharSet.Ansi)]
+    internal static extern IntPtr eina_value_to_string(IntPtr handle); // We take ownership of the returned string.
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_array_setup_wrapper(IntPtr handle, IntPtr subtype, uint step);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_list_setup_wrapper(IntPtr handle, IntPtr subtype);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_string(IntPtr handle, string data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_char(IntPtr handle, sbyte data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_uchar(IntPtr handle, byte data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_short(IntPtr handle, short data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_ushort(IntPtr handle, ushort data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_int(IntPtr handle, int data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_uint(IntPtr handle, uint data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_long(IntPtr handle, long data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_ulong(IntPtr handle, ulong data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_float(IntPtr handle, float data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_append_wrapper_double(IntPtr handle, double data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_list_append_wrapper(IntPtr handle, IntPtr data);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out IntPtr output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out sbyte output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out byte output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out short output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out ushort output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out int output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out uint output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out long output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out ulong output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out float output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_get_wrapper(IntPtr handle, int index, out double output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_list_get_wrapper(IntPtr handle, int index, out IntPtr output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_string(IntPtr handle, int index, string value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_uchar(IntPtr handle, int index, byte value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_char(IntPtr handle, int index, sbyte value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_short(IntPtr handle, int index, short value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_ushort(IntPtr handle, int index, ushort value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_int(IntPtr handle, int index, int value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_uint(IntPtr handle, int index, uint value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_long(IntPtr handle, int index, long value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_ulong(IntPtr handle, int index, ulong value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_float(IntPtr handle, int index, float value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_container_set_wrapper_double(IntPtr handle, int index, double value);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr eina_value_array_subtype_get_wrapper(IntPtr handle);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr eina_value_list_subtype_get_wrapper(IntPtr handle);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern uint eina_value_array_count_wrapper(IntPtr handle);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern uint eina_value_list_count_wrapper(IntPtr handle);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_empty_is_wrapper(IntPtr handle, [MarshalAsAttribute(UnmanagedType.U1)] out bool empty);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref byte value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref sbyte value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref short value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref ushort value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref int value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref uint value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref long value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref ulong value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref float value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref double value);
+
+    [DllImport(efl.Libs.Eina, CharSet=CharSet.Ansi)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, ref string value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pset(IntPtr handle, IntPtr subtype, IntPtr value);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_reset(IntPtr handle);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out Eina.EinaNative.Value_Array output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out Eina.EinaNative.Value_List output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out IntPtr output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out byte output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out sbyte output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out short output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out ushort output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out int output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out uint output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out long output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out ulong output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out float output);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_optional_pget(IntPtr handle, out double output);
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr eina_value_optional_type_get_wrapper(IntPtr handle);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_pset_wrapper(IntPtr handle, ref Eina.EinaNative.Value_Array ptr);
+
+    [DllImport(efl.Libs.CustomExports)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_pset_wrapper(IntPtr handle, ref Eina.EinaNative.Value_List ptr);
+
+    [DllImport(efl.Libs.Eina)]
+    [return: MarshalAsAttribute(UnmanagedType.U1)]
+    internal static extern bool eina_value_copy(IntPtr src, IntPtr dest);
+
+    // Supported types
+
+    // 8 bits byte
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_byte();
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_sbyte();
+
+    // 16 bits short
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_short();
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_ushort();
+
+    // 32 bits ints
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_int32();
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_uint32();
+
+    // 64 bit longs
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_long();
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_ulong();
+
+    // In C# long and int 64 are synonyms, but in Eina Value they are separate types.
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_int64();
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_uint64();
+
+    // Floating point
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_float();
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_double();
+
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_string();
+
+    // Collections
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_array();
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_list();
+
+    // Optional
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_optional();
+
+    // Error
+    [DllImport(efl.Libs.CustomExports)]
+    internal static extern IntPtr type_error();
+}
+}
+
+/// <summary>Struct for passing Values by value to Unmanaged functions.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ValueNative
+{
+    public IntPtr Type;
+    public IntPtr Value; // Atually an Eina_Value_Union, but it is padded to 8 bytes.
+
+    public override string ToString()
+    {
+        return $"ValueNative<Type:0x{Type.ToInt64():x}, Value:0x{Value.ToInt64():x}>";
+    }
+}
+
+/// <summary>Exception for failures when setting an container item.</summary>
+[Serializable]
+public class SetItemFailedException : Exception
+{
+    /// <summary> Default constructor.</summary>
+    public SetItemFailedException() : base () { }
+    /// <summary> Most commonly used contructor.</summary>
+    public SetItemFailedException(string msg) : base(msg) { }
+    /// <summary> Wraps an inner exception.</summary>
+    public SetItemFailedException(string msg, Exception inner) : base(msg, inner) { }
+    /// <summary> Serializable constructor.</summary>
+    protected SetItemFailedException(SerializationInfo info, StreamingContext context) : base(info, context) { }
+}
+
+/// <summary>Exception for methods that must have been called on a container.</summary>
+[Serializable]
+public class InvalidValueTypeException: Exception
+{
+    /// <summary> Default constructor.</summary>
+    public InvalidValueTypeException() : base () { }
+    /// <summary> Most commonly used contructor.</summary>
+    public InvalidValueTypeException(string msg) : base(msg) { }
+    /// <summary> Wraps an inner exception.</summary>
+    public InvalidValueTypeException(string msg, Exception inner) : base(msg, inner) { }
+    /// <summary> Serializable constructor.</summary>
+    protected InvalidValueTypeException(SerializationInfo info, StreamingContext context) : base(info, context) { }
+}
+
+
+/// <summary>Managed-side Enum to represent Eina_Value_Type constants</summary>
+public enum ValueType {
+    /// <summary>Signed 8 bit integer. Same as 'sbyte'</summary>
+    SByte,
+    /// <summary>Unsigned 8 bit integer. Same as 'byte'</summary>
+    Byte,
+    /// <summary>Signed 16 bit integer. Same as 'short'</summary>
+    Short,
+    /// <summary>Unsigned 16 bit integer. Same as 'ushort'</summary>
+    UShort,
+    /// <summary>Signed 32 bit integer. Same as 'int'</summary>
+    Int32,
+    /// <summary>Unsigned 32 bit integer. Same as 'uint'</summary>
+    UInt32,
+    /// <summary>Signed long integer. Same as 'long'</summary>
+    Long,
+    /// <summary>Unsigned long integer. Same as 'ulong'</summary>
+    ULong,
+    /// <summary>Signed 64 bit integer. Same as 'long'</summary>
+    Int64,
+    /// <summary>Unsigned 64 bit integer. Same as 'ulong'</summary>
+    UInt64,
+    /// <summary>4-byte float. Same as 'float'</summary>
+    Float,
+    /// <summary>8-byte double. Same as 'double'</summary>
+    Double,
+    /// <summary>Strings</summary>
+    String,
+    /// <summary>Array of Value items.</summary>
+    Array,
+    /// <summary>Linked list of Value items.</summary>
+    List,
+    /// <summary>Map of string keys to Value items.</summary>
+    Hash,
+    /// <summary>Optional (aka empty) values.</summary>
+    Optional,
+    /// <summary>Error values.</summary>
+    Error,
+    /// <summary>Empty values.</summary>
+    Empty,
+}
+
+static class ValueTypeMethods {
+    public static bool IsNumeric(this ValueType val)
+    {
+        switch (val) {
+            case ValueType.SByte:
+            case ValueType.Byte:
+            case ValueType.Short:
+            case ValueType.UShort:
+            case ValueType.Int32:
+            case ValueType.UInt32:
+            case ValueType.Long:
+            case ValueType.ULong:
+            case ValueType.Int64:
+            case ValueType.UInt64:
+            case ValueType.Float:
+            case ValueType.Double:
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    public static bool IsString(this ValueType val)
+    {
+        switch(val) {
+            case ValueType.String:
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    public static bool IsContainer(this ValueType val)
+    {
+        switch(val) {
+            case ValueType.Array:
+            case ValueType.List:
+            case ValueType.Hash:
+                return true;
+            default:
+                return false;
+        }
+    }
+
+    public static bool IsOptional(this ValueType val)
+    {
+        return val == ValueType.Optional;
+    }
+
+    public static bool IsError(this ValueType val)
+    {
+        return val == ValueType.Error;
+    }
+
+    /// <summary>Returns the Marshal.SizeOf for the given ValueType native structure.</summary>
+    public static int MarshalSizeOf(this ValueType val)
+    {
+        switch (val) {
+            case ValueType.Array:
+                return Marshal.SizeOf(typeof(EinaNative.Value_Array));
+            case ValueType.List:
+                return Marshal.SizeOf(typeof(EinaNative.Value_List));
+            default:
+                return 0;
+        }
+    }
+}
+static class ValueTypeBridge
+{
+    private static Dictionary<ValueType, IntPtr> ManagedToNative = new Dictionary<ValueType, IntPtr>();
+    private static Dictionary<IntPtr, ValueType> NativeToManaged = new Dictionary<IntPtr, ValueType>();
+    private static bool TypesLoaded; // CLR defaults to false;
+
+    public static ValueType GetManaged(IntPtr native)
+    {
+        if (!TypesLoaded)
+            LoadTypes();
+
+        return NativeToManaged[native];
+    }
+
+    public static IntPtr GetNative(ValueType valueType)
+    {
+        if (!TypesLoaded)
+            LoadTypes();
+
+        return ManagedToNative[valueType];
+    }
+
+    private static void LoadTypes()
+    {
+        Eina.Config.Init(); // Make sure eina is initialized.
+
+        ManagedToNative.Add(ValueType.SByte, type_sbyte());
+        NativeToManaged.Add(type_sbyte(), ValueType.SByte);
+
+        ManagedToNative.Add(ValueType.Byte, type_byte());
+        NativeToManaged.Add(type_byte(), ValueType.Byte);
+
+        ManagedToNative.Add(ValueType.Short, type_short());
+        NativeToManaged.Add(type_short(), ValueType.Short);
+
+        ManagedToNative.Add(ValueType.UShort, type_ushort());
+        NativeToManaged.Add(type_ushort(), ValueType.UShort);
+
+        ManagedToNative.Add(ValueType.Int32, type_int32());
+        NativeToManaged.Add(type_int32(), ValueType.Int32);
+
+        ManagedToNative.Add(ValueType.UInt32, type_uint32());
+        NativeToManaged.Add(type_uint32(), ValueType.UInt32);
+
+        ManagedToNative.Add(ValueType.Long, type_long());
+        NativeToManaged.Add(type_long(), ValueType.Long);
+
+        ManagedToNative.Add(ValueType.ULong, type_ulong());
+        NativeToManaged.Add(type_ulong(), ValueType.ULong);
+
+        ManagedToNative.Add(ValueType.Int64, type_int64());
+        NativeToManaged.Add(type_int64(), ValueType.Int64);
+
+        ManagedToNative.Add(ValueType.UInt64, type_uint64());
+        NativeToManaged.Add(type_uint64(), ValueType.UInt64);
+
+        ManagedToNative.Add(ValueType.Float, type_float());
+        NativeToManaged.Add(type_float(), ValueType.Float);
+
+        ManagedToNative.Add(ValueType.Double, type_double());
+        NativeToManaged.Add(type_double(), ValueType.Double);
+
+        ManagedToNative.Add(ValueType.String, type_string());
+        NativeToManaged.Add(type_string(), ValueType.String);
+
+        ManagedToNative.Add(ValueType.Array, type_array());
+        NativeToManaged.Add(type_array(), ValueType.Array);
+
+        ManagedToNative.Add(ValueType.List, type_list());
+        NativeToManaged.Add(type_list(), ValueType.List);
+
+        ManagedToNative.Add(ValueType.Optional, type_optional());
+        NativeToManaged.Add(type_optional(), ValueType.Optional);
+
+        ManagedToNative.Add(ValueType.Error, type_error());
+        NativeToManaged.Add(type_error(), ValueType.Error);
+
+        ManagedToNative.Add(ValueType.Empty, IntPtr.Zero);
+        NativeToManaged.Add(IntPtr.Zero, ValueType.Empty);
+
+        TypesLoaded = true;
+    }
+}
+
+/// <summary>Wrapper around Eina_Value generic storage.
+///
+/// <para>Eina_Value is EFL's main workhorse to deal with storing generic data in
+/// an uniform way.</para>
+///
+/// <para>It comes with predefined types for numbers, strings, array, list, hash,
+/// blob and structs. It is able to convert between data types, including
+/// to string.</para>
+/// </summary>
+public class Value : IDisposable, IComparable<Value>, IEquatable<Value>
+{
+
+    // Unmanaged type - Managed type mapping
+    // Ok EINA_VALUE_TYPE_UCHAR: unsigned char -- byte
+    // Ok EINA_VALUE_TYPE_USHORT: unsigned short -- ushort
+    // Ok EINA_VALUE_TYPE_UINT: unsigned int -- uint
+    // Ok EINA_VALUE_TYPE_ULONG: unsigned long -- ulong
+    // Ok EINA_VALUE_TYPE_UINT64: uint64_t -- ulong
+    // Ok EINA_VALUE_TYPE_CHAR: char -- sbyte
+    // Ok EINA_VALUE_TYPE_SHORT: short -- short
+    // Ok EINA_VALUE_TYPE_INT: int -- int
+    // Ok EINA_VALUE_TYPE_LONG: long -- long
+    // OK EINA_VALUE_TYPE_INT64: int64_t -- long
+    // Ok EINA_VALUE_TYPE_FLOAT: float -- float
+    // Ok EINA_VALUE_TYPE_DOUBLE: double -- double
+    // EINA_VALUE_TYPE_STRINGSHARE: const char * -- string
+    // Ok EINA_VALUE_TYPE_STRING: const char * -- string
+    // Ok EINA_VALUE_TYPE_ARRAY: Eina_Value_Array -- Eina.Array?
+    // Ok EINA_VALUE_TYPE_LIST: Eina_Value_List -- Eina.List?
+    // EINA_VALUE_TYPE_HASH: Eina_Value_Hash -- Eina.Hash?
+    // EINA_VALUE_TYPE_TIMEVAL: struct timeval -- FIXME
+    // EINA_VALUE_TYPE_BLOB: Eina_Value_Blob -- FIXME
+    // EINA_VALUE_TYPE_STRUCT: Eina_Value_Struct -- FIXME
+
+
+    internal IntPtr Handle { get; set;}
+    /// <summary> Whether this wrapper owns (can free) the native value. </summary>
+    public Ownership Ownership { get; protected set;}
+    private bool Disposed;
+    /// <summary> Whether this is an Optional value (meaning it can have a value or not). </summary>
+    public bool Optional {
+        get {
+            return GetValueType() == Eina.ValueType.Optional;
+        }
+        /* protected set {
+            // Should we expose this?
+            // Something like {
+            //    flush(handle)/free(handle)
+            //    handle = eina_value_optional_empty_new()
+            // }
+         } */
+    }
+    /// <summary> Whether this wrapper is actually empty/uninitialized (zeroed). This is different from an empty optional value. </summary>
+    public bool Empty {
+        get {
+            SanityChecks();
+            return GetValueType() == Eina.ValueType.Empty;
+        }
+    }
+
+    /// <summary> Whether this optional value is empty. </summary>
+    public bool OptionalEmpty {
+        get {
+            OptionalSanityChecks();
+            bool empty;
+            if (!eina_value_optional_empty_is_wrapper(this.Handle, out empty))
+                throw new System.InvalidOperationException("Couldn't get the empty information");
+            else
+                return empty;
+        }
+    }
+
+    private static IntPtr Alloc()
+    {
+        return eina_value_new(type_int32());
+    }
+
+    private static void Free(IntPtr ptr)
+    {
+        eina_value_free(ptr);
+    }
+
+    // Constructor to be used by the "FromContainerDesc" methods.
+    private Value() {
+        this.Handle = Alloc();
+        this.Ownership = Ownership.Managed;
+    }
+
+    public Value(IntPtr handle, Ownership ownership=Ownership.Managed) {
+        this.Handle = handle;
+        this.Ownership = ownership;
+    }
+
+    /// <summary>Creates a new value storage for values of type 'type'.</summary>
+    public Value(ValueType type)
+    {
+        if (type.IsContainer())
+            throw new ArgumentException("To use container types you must provide a subtype");
+
+        this.Handle = Alloc();
+        if (this.Handle == IntPtr.Zero)
+            throw new OutOfMemoryException("Failed to allocate memory for Eina.Value");
+
+        // Initialize to EINA_VALUE_EMPTY before performing any other operation on this value.
+        MemoryNative.Memset(this.Handle, 0, eina_value_sizeof());
+
+        this.Ownership = Ownership.Managed;
+        Setup(type);
+    }
+
+    /// <summary>Constructor for container values, like Array, Hash.</summary>
+    public Value(ValueType containerType, ValueType subtype, uint step=0)
+    {
+        if (!containerType.IsContainer())
+            throw new ArgumentException("First type must be a container type.");
+
+        this.Handle = Alloc();
+        this.Ownership = Ownership.Managed;
+
+        Setup(containerType, subtype, step);
+    }
+
+    /// <summary>Deep copies the given eina Value</summary>
+    public Value(Value v)
+    {
+        Handle = Alloc();
+        if (!eina_value_copy(v.Handle, this.Handle))
+            throw new System.InvalidOperationException("Failed to copy value to managed memory.");
+
+        Disposed = false;
+        Ownership = Ownership.Managed;
+    }
+
+    /// <summary>Constructor to build value from Values_Natives passed by value from C.</summary>
+    public Value(ValueNative value)
+    {
+        IntPtr tmp = IntPtr.Zero;
+        try {
+            this.Handle = Alloc();
+            if (value.Type == IntPtr.Zero) // Got an EINA_VALUE_EMPTY by value.
+                MemoryNative.Memset(this.Handle, 0, Marshal.SizeOf(typeof(ValueNative)));
+            else
+            {
+                // We allocate this intermediate ValueNative using malloc to allow freeing with
+                // free(), avoiding a call to eina_value_flush that would wipe the underlying value contents
+                // for pointer types like string.
+                tmp = MemoryNative.Alloc(Marshal.SizeOf(typeof(ValueNative)));
+                Marshal.StructureToPtr(value, tmp, false); // Can't get the address of a struct directly.
+                this.Handle = Alloc();
+
+                // Copy is used to deep copy the pointed payload (e.g. strings) inside this struct, so we can own this value.
+                if (!eina_value_copy(tmp, this.Handle))
+                    throw new System.InvalidOperationException("Failed to copy value to managed memory.");
+            }
+        } catch {
+            Free(this.Handle);
+            throw;
+        } finally {
+            if (tmp != IntPtr.Zero)
+                MemoryNative.Free(tmp);
+        }
+
+        this.Ownership = Ownership.Managed;
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(byte x) : this(ValueType.Byte)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(sbyte x) : this(ValueType.SByte)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(short x) : this(ValueType.Short)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(ushort x) : this(ValueType.UShort)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(int x) : this(ValueType.Int32)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(uint x) : this(ValueType.UInt32)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(long x) : this(ValueType.Long)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(ulong x) : this(ValueType.ULong)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(float x) : this(ValueType.Float)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(double x) : this(ValueType.Double)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Type-specific constructor, for convenience.</summary>
+    public Value(string x) : this(ValueType.String)
+    {
+        if (!Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+    }
+
+    /// <summary>Implicit conversion from managed value to native struct representation.</summary>
+    public static implicit operator ValueNative(Value v)
+    {
+        return v.GetNative();
+    }
+
+    /// <summary>Implicit conversion from native struct representation to managed wrapper.</summary>
+    public static implicit operator Value(ValueNative v)
+    {
+        return new Value(v);
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(byte x)
+    {
+        var v = new Eina.Value(ValueType.Byte);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator byte(Value v)
+    {
+        byte b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(sbyte x)
+    {
+        var v = new Eina.Value(ValueType.SByte);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator sbyte(Value v)
+    {
+        sbyte b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(short x)
+    {
+        var v = new Eina.Value(ValueType.Short);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator short(Value v)
+    {
+        short b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(ushort x)
+    {
+        var v = new Eina.Value(ValueType.UShort);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator ushort(Value v)
+    {
+        ushort b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(int x)
+    {
+        var v = new Eina.Value(ValueType.Int32);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator int(Value v)
+    {
+        int b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(uint x)
+    {
+        var v = new Eina.Value(ValueType.UInt32);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator uint(Value v)
+    {
+        uint b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(long x)
+    {
+        var v = new Eina.Value(ValueType.Long);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator long(Value v)
+    {
+        long b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(ulong x)
+    {
+        var v = new Eina.Value(ValueType.ULong);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator ulong(Value v)
+    {
+        ulong b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(float x)
+    {
+        var v = new Eina.Value(ValueType.Float);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator float(Value v)
+    {
+        float b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(double x)
+    {
+        var v = new Eina.Value(ValueType.Double);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator double(Value v)
+    {
+        double b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator Value(string x)
+    {
+        var v = new Eina.Value(ValueType.String);
+        if (!v.Set(x))
+            throw new InvalidOperationException("Couldn't set value.");
+        return v;
+    }
+
+    /// <summary>Implicit conversion.</summary>
+    public static implicit operator string(Value v)
+    {
+        string b;
+        if (!v.Get(out b))
+            throw new InvalidOperationException("Couldn't get value.");
+        return b;
+    }
+
+    /// <summary>Creates an Value instance from a given array description.</summary>
+    private static Value FromArrayDesc(Eina.EinaNative.Value_Array arrayDesc)
+    {
+        Value value = new Value();
+        value.Setup(ValueType.Array, ValueType.String); // Placeholder values to be overwritten by the following pset call.
+
+        eina_value_pset_wrapper(value.Handle, ref arrayDesc);
+        return value;
+    }
+
+    /// <summary>Creates an Value instance from a given array description.</summary>
+    private static Value FromListDesc(Eina.EinaNative.Value_List listDesc)
+    {
+        Value value = new Value();
+        value.Setup(ValueType.List, ValueType.String); // Placeholder values to be overwritten by the following pset call.
+
+        eina_value_pset_wrapper(value.Handle, ref listDesc);
+        return value;
+    }
+
+    /// <summary>Releases the ownership of the underlying value to C.</summary>
+    public void ReleaseOwnership()
+    {
+        this.Ownership = Ownership.Unmanaged;
+    }
+
+    /// <summary>Takes the ownership of the underlying value to the Managed runtime.</summary>
+    public void TakeOwnership()
+    {
+        this.Ownership = Ownership.Managed;
+    }
+
+    /// <summary>Public method to explicitly free the wrapped eina value.</summary>
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    /// <summary>Actually free the wrapped eina value. Can be called from Dispose() or through the GC.</summary>
+    protected virtual void Dispose(bool disposing)
+    {
+        if (this.Ownership == Ownership.Unmanaged) {
+            Disposed = true;
+            return;
+        }
+
+        if (!Disposed && (Handle != IntPtr.Zero)) {
+            // No need to call flush as eina_value_free already calls it for us.
+            Free(this.Handle);
+        }
+        Disposed = true;
+    }
+
+    /// <summary>Finalizer to be called from the Garbage Collector.</summary>
+    ~Value()
+    {
+        Dispose(false);
+    }
+
+    /// <summary>Returns the native handle wrapped by this object.</summary>
+    public IntPtr NativeHandle {
+        get {
+            if (Disposed)
+                throw new ObjectDisposedException(base.GetType().Name);
+            return this.Handle;
+        }
+    }
+
+    /// <summary>Converts this storage to type 'type'</summary>
+    public bool Setup(ValueType type)
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(base.GetType().Name);
+
+        // Can't call setup with Empty value type (would give an eina error)
+        if (type == Eina.ValueType.Empty)
+        {
+            // Need to cleanup as it may point to payload outside the underlying Eina_Value (like arrays and strings).
+            if (!Empty)
+                eina_value_flush_wrapper(this.Handle);
+
+            MemoryNative.Memset(this.Handle, 0, eina_value_sizeof());
+
+            return true;
+        }
+
+        if (type.IsContainer())
+            throw new ArgumentException("To setup a container you must provide a subtype.");
+
+        return eina_value_setup_wrapper(this.Handle, ValueTypeBridge.GetNative(type));
+    }
+
+    public bool Setup(ValueType containerType, ValueType subtype, uint step=0) {
+        IntPtr native_subtype = ValueTypeBridge.GetNative(subtype);
+        bool ret = false;
+        switch (containerType) {
+            case ValueType.Array:
+                ret = eina_value_array_setup_wrapper(this.Handle, native_subtype, step);
+                break;
+            case ValueType.List:
+                ret = eina_value_list_setup_wrapper(this.Handle, native_subtype);
+                break;
+        }
+
+        return ret;
+    }
+
+    private void SanityChecks()
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(GetType().Name);
+    }
+
+    private void ContainerSanityChecks(int targetIndex=-1)
+    {
+        SanityChecks();
+        uint size = 0;
+        ValueType type = GetValueType();
+
+        if (!type.IsContainer())
+                throw new InvalidValueTypeException("Value type must be a container");
+
+        if (targetIndex == -1)  // Some methods (e.g. append) don't care about size
+            return;
+
+        switch (type) {
+            case ValueType.Array:
+                size = eina_value_array_count_wrapper(this.Handle);
+                break;
+            case ValueType.List:
+                size = eina_value_list_count_wrapper(this.Handle);
+                break;
+        }
+
+        if (targetIndex >= size)
+                throw new System.ArgumentOutOfRangeException(
+                        $"Index {targetIndex} is larger than max array index {size-1}");
+    }
+
+    private void OptionalSanityChecks()
+    {
+        SanityChecks();
+        ValueType type = GetValueType();
+
+        if (!type.IsOptional())
+            throw new InvalidValueTypeException("Value is not an Optional one");
+    }
+
+    /// <summary>Get a ValueNative struct with the *value* pointed by this Eina.Value.</summary>
+    public ValueNative GetNative()
+    {
+        ValueNative value = (ValueNative)Marshal.PtrToStructure(this.Handle, typeof(ValueNative));
+        return value;
+    }
+
+    public bool Set(byte value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.Byte),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_uchar(this.Handle, value);
+    }
+
+    public bool Set(sbyte value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.SByte),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_char(this.Handle, value);
+    }
+
+    public bool Set(short value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.Short),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_short(this.Handle, value);
+    }
+
+    public bool Set(ushort value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.UShort),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_ushort(this.Handle, value);
+    }
+
+    /// <summary>Stores the given uint value.</summary>
+    public bool Set(uint value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.UInt32),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_uint(this.Handle, value);
+    }
+
+    /// <summary>Stores the given int value.</summary>
+    public bool Set(int value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.Int32),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_int(this.Handle, value);
+    }
+
+    /// <summary>Stores the given ulong value.</summary>
+    public bool Set(ulong value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.ULong),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_ulong(this.Handle, value);
+    }
+
+    /// <summary>Stores the given int value.</summary>
+    public bool Set(long value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.Long),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_long(this.Handle, value);
+    }
+
+    /// <summary>Stores the given int value.</summary>
+    public bool Set(float value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.Float),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+
+        return eina_value_set_wrapper_float(this.Handle, value);
+    }
+
+    /// <summary>Stores the given int value.</summary>
+    public bool Set(double value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.Double),
+                                            ref value);
+
+        if (!GetValueType().IsNumeric())
+            throw (new ArgumentException(
+                        "Trying to set numeric value on a non-numeric Eina.Value"));
+        return eina_value_set_wrapper_double(this.Handle, value);
+    }
+
+    /// <summary>Stores the given string value.</summary>
+    public bool Set(string value)
+    {
+        SanityChecks();
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.String),
+                                            ref value);
+
+        if (!GetValueType().IsString())
+            throw (new ArgumentException(
+                        "Trying to set non-string value on a string Eina.Value"));
+        // No need to worry about ownership as eina_value_set will copy the passed string.
+        return eina_value_set_wrapper_string(this.Handle, value);
+    }
+
+    /// <summary>Stores the given error value.</summary>
+    public bool Set(Eina.Error value)
+    {
+        SanityChecks();
+
+        int error_code = value;
+
+        if (this.Optional)
+            return eina_value_optional_pset(this.Handle,
+                                            ValueTypeBridge.GetNative(ValueType.Error),
+                                            ref error_code);
+
+        return eina_value_set_wrapper_int(this.Handle, error_code);
+    }
+
+    /// <summary>Stores the given value into this value. The target value must be an optional.</summary>
+    public bool Set(Value value)
+    {
+        OptionalSanityChecks();
+        ValueType subtype = value.GetValueType();
+
+        IntPtr ptr_val = MemoryNative.Alloc(subtype.MarshalSizeOf());
+        IntPtr native_type = ValueTypeBridge.GetNative(subtype);
+
+        try {
+            switch (subtype) {
+                // PSet on Container types require an Eina_Value_<Container>, which is the structure
+                // that contains subtype, etc.
+                case ValueType.Array:
+                    EinaNative.Value_Array value_array;
+                    if (!eina_value_get_wrapper(value.Handle, out value_array))
+                        return false;
+                    Marshal.StructureToPtr(value_array, ptr_val, false);
+                    break;
+                case ValueType.List:
+                    EinaNative.Value_List value_list;
+                    if (!eina_value_get_wrapper(value.Handle, out value_list))
+                        return false;
+                    Marshal.StructureToPtr(value_list, ptr_val, false);
+                    break;
+                default:
+                    throw new InvalidValueTypeException("Only containers can be passed as raw Eina.Values");
+            }
+
+            return eina_value_optional_pset(this.Handle, native_type, ptr_val);
+        } finally {
+            MemoryNative.Free(ptr_val);
+        }
+    }
+
+    /// <summary>Gets the currently stored value as a byte.</summary>
+    public bool Get(out byte value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as a sbyte.</summary>
+    public bool Get(out sbyte value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as a short.</summary>
+    public bool Get(out short value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as an ushort.</summary>
+    public bool Get(out ushort value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as an int.</summary>
+    public bool Get(out int value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as an uint.</summary>
+    public bool Get(out uint value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as a long.</summary>
+    public bool Get(out long value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as an ulong.</summary>
+    public bool Get(out ulong value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as a float.</summary>
+    public bool Get(out float value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as a double.</summary>
+    public bool Get(out double value)
+    {
+        SanityChecks();
+        if (this.Optional)
+            return eina_value_optional_pget(this.Handle, out value);
+        else
+            return eina_value_get_wrapper(this.Handle, out value);
+    }
+
+    /// <summary>Gets the currently stored value as a string.</summary>
+    public bool Get(out string value)
+    {
+        SanityChecks();
+        IntPtr output = IntPtr.Zero;
+        if (this.Optional) {
+            if (!eina_value_optional_pget(this.Handle, out output)) {
+                value = String.Empty;
+                return false;
+            }
+        } else if (!eina_value_get_wrapper(this.Handle, out output)) {
+            value = String.Empty;
+            return false;
+        }
+        value = StringConversion.NativeUtf8ToManagedString(output);
+        return true;
+    }
+
+    /// <summary>Gets the currently stored value as an Eina.Error.</summary>
+    public bool Get(out Eina.Error value)
+    {
+        SanityChecks();
+        bool ret;
+        int intermediate; // It seems out doesn't play well with implicit operators...
+        if (this.Optional)
+            ret = eina_value_optional_pget(this.Handle, out intermediate);
+        else
+            ret = eina_value_get_wrapper(this.Handle, out intermediate);
+
+        value = intermediate;
+
+        return ret;
+    }
+
+    /// <summary>Gets the currently stored value as an complex (e.g. container) Eina.Value.</summary>
+    public bool Get(out Value value)
+    {
+        SanityChecks();
+        value = null;
+
+        if (!this.Optional)
+            throw new InvalidValueTypeException("Values can only be retreived");
+
+        IntPtr nativeType = eina_value_optional_type_get_wrapper(this.Handle);
+        ValueType managedType = ValueTypeBridge.GetManaged(nativeType);
+
+        switch (managedType) {
+            case ValueType.Array:
+                Eina.EinaNative.Value_Array array_desc;
+
+                if (!eina_value_optional_pget(this.Handle, out array_desc))
+                    return false;
+                value = Value.FromArrayDesc(array_desc);
+                break;
+            case ValueType.List:
+                Eina.EinaNative.Value_List list_desc;
+
+                if (!eina_value_optional_pget(this.Handle, out list_desc))
+                    return false;
+                value = Value.FromListDesc(list_desc);
+                break;
+        }
+
+        return true;
+    }
+
+    /// <summary>Gets the 'Type' this value is currently configured to store.</summary>
+    public ValueType GetValueType()
+    {
+        if (Disposed)
+            throw new ObjectDisposedException(base.GetType().Name);
+        IntPtr native_type = eina_value_type_get_wrapper(this.Handle);
+        return ValueTypeBridge.GetManaged(native_type);
+    }
+
+    /// <summary>Converts the value on this storage to the type of 'target' and stores
+    /// the result in 'target'.</summary>
+    public bool ConvertTo(Value target)
+    {
+        if (target == null)
+            return false;
+
+        SanityChecks();
+
+        return eina_value_convert(this.Handle, target.Handle);
+    }
+
+    /// <summary>Compare two eina values.</summary>
+    public int CompareTo(Value other)
+    {
+        if (other == null)
+            return 1;
+        SanityChecks();
+        other.SanityChecks();
+        return eina_value_compare_wrapper(this.Handle, other.Handle);
+    }
+
+    public int Compare(Value other)
+    {
+        return this.CompareTo(other);
+    }
+
+    public override bool Equals(object obj)
+    {
+        if (obj == null)
+            return false;
+
+        Value v = obj as Value;
+        if (v == null)
+            return false;
+
+        return this.Equals(v);
+    }
+
+    public bool Equals(Value other)
+    {
+        try {
+            return this.CompareTo(other) == 0;
+        } catch (ObjectDisposedException) {
+            return false;
+        }
+    }
+
+    public override int GetHashCode()
+    {
+        return this.Handle.ToInt32();
+    }
+
+    public static bool operator==(Value x, Value y)
+    {
+        if (object.ReferenceEquals(x, null))
+            return object.ReferenceEquals(y, null);
+
+        return x.Equals(y);
+    }
+
+    public static bool operator!=(Value x, Value y)
+    {
+        if (object.ReferenceEquals(x, null))
+            return !object.ReferenceEquals(y, null);
+        return !x.Equals(y);
+    }
+
+    public static bool operator>(Value x, Value y)
+    {
+        if (object.ReferenceEquals(x, null) || object.ReferenceEquals(y, null))
+            return false;
+        return x.CompareTo(y) > 0;
+    }
+
+    public static bool operator<(Value x, Value y)
+    {
+        if (object.ReferenceEquals(x, null) || object.ReferenceEquals(y, null))
+            return false;
+        return x.CompareTo(y) < 0;
+    }
+
+
+    /// <summary>Converts value to string.</summary>
+    public override String ToString()
+    {
+        SanityChecks();
+        IntPtr ptr = eina_value_to_string(this.Handle);
+        String str = Marshal.PtrToStringAnsi(ptr);
+        MemoryNative.Free(ptr);
+        return str;
+    }
+
+    /// <summary>Empties an optional Eina.Value, freeing what was previously contained.</summary>
+    public bool Reset()
+    {
+        OptionalSanityChecks();
+        return eina_value_optional_reset(this.Handle);
+    }
+
+    // Container methods methods
+    public int Count() {
+        ContainerSanityChecks();
+        switch(GetValueType()) {
+            case ValueType.Array:
+                return (int)eina_value_array_count_wrapper(this.Handle);
+            case ValueType.List:
+                return (int)eina_value_list_count_wrapper(this.Handle);
+        }
+        return -1;
+    }
+    public bool Append(object o) {
+        ContainerSanityChecks();
+
+        switch (GetValueSubType()) {
+            case ValueType.SByte:
+                {
+                    sbyte b = Convert.ToSByte(o);
+                    return eina_value_container_append_wrapper_char(this.Handle, b);
+                }
+            case ValueType.Byte:
+                {
+                    byte b = Convert.ToByte(o);
+                    return eina_value_container_append_wrapper_uchar(this.Handle, b);
+                }
+
+            case ValueType.Short:
+                {
+                    short b = Convert.ToInt16(o);
+                    return eina_value_container_append_wrapper_short(this.Handle, b);
+                }
+            case ValueType.UShort:
+                {
+                    ushort b = Convert.ToUInt16(o);
+                    return eina_value_container_append_wrapper_ushort(this.Handle, b);
+                }
+
+            case ValueType.Int32:
+                {
+                    int x = Convert.ToInt32(o);
+                    return eina_value_container_append_wrapper_int(this.Handle, x);
+                }
+            case ValueType.UInt32:
+                {
+                    uint x = Convert.ToUInt32(o);
+                    return eina_value_container_append_wrapper_uint(this.Handle, x);
+                }
+
+            case ValueType.Long:
+            case ValueType.Int64:
+                {
+                    long x = Convert.ToInt64(o);
+                    return eina_value_container_append_wrapper_long(this.Handle, x);
+                }
+            case ValueType.ULong:
+            case ValueType.UInt64:
+                {
+                    ulong x = Convert.ToUInt64(o);
+                    return eina_value_container_append_wrapper_ulong(this.Handle, x);
+                }
+
+            case ValueType.Float:
+                {
+                    float x = Convert.ToSingle(o);
+                    return eina_value_container_append_wrapper_float(this.Handle, x);
+                }
+            case ValueType.Double:
+                {
+                    double x = Convert.ToDouble(o);
+                    return eina_value_container_append_wrapper_double(this.Handle, x);
+                }
+
+            case ValueType.String:
+                {
+                    string x = Convert.ToString(o);
+                    return eina_value_container_append_wrapper_string(this.Handle, x);
+                }
+        }
+        return false;
+    }
+
+    public object this[int i]
+    {
+        get {
+            ContainerSanityChecks(i);
+
+            switch (GetValueSubType()) {
+                case ValueType.SByte:
+                    {
+                        sbyte ret = default(sbyte);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+                case ValueType.Byte:
+                    {
+                        byte ret = default(byte);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+
+                case ValueType.Short:
+                    {
+                        short ret = default(short);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+                case ValueType.UShort:
+                    {
+                        ushort ret = default(ushort);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+
+                case ValueType.Int32:
+                    {
+                        int ret = default(int);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+                case ValueType.UInt32:
+                    {
+                        uint ret = default(uint);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+
+                case ValueType.Long:
+                case ValueType.Int64:
+                    {
+                        long ret = default(long);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+                case ValueType.ULong:
+                case ValueType.UInt64:
+                    {
+                        ulong ret = default(ulong);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+
+                case ValueType.Float:
+                    {
+                        float ret = default(float);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+                case ValueType.Double:
+                    {
+                        double ret = default(double);
+                        eina_value_container_get_wrapper(this.Handle, i, out ret);
+                        return ret;
+                    }
+
+                case ValueType.String:
+                    {
+                        // Using intptr as using string as the arg type in the DllImport'd function would
+                        // make mono take ownership of the string.
+                        IntPtr ptr = IntPtr.Zero;
+                        eina_value_container_get_wrapper(this.Handle, i, out ptr);
+                        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+                    }
+                default:
+                    throw new InvalidOperationException("Subtype not supported.");
+            }
+        }
+        set {
+            ContainerSanityChecks(i);
+
+            switch (GetValueSubType()) {
+                case ValueType.SByte:
+                    {
+                        sbyte v = Convert.ToSByte(value);
+                        eina_value_container_set_wrapper_char(this.Handle, i, v);
+                    }
+                    break;
+                case ValueType.Byte:
+                    {
+                        byte v = Convert.ToByte(value);
+                        eina_value_container_set_wrapper_uchar(this.Handle, i, v);
+                    }
+                    break;
+
+                case ValueType.Short:
+                    {
+                        short x = Convert.ToInt16(value);
+                        eina_value_container_set_wrapper_short(this.Handle, i, x);
+                    }
+                    break;
+                case ValueType.UShort:
+                    {
+                        ushort x = Convert.ToUInt16(value);
+                        eina_value_container_set_wrapper_ushort(this.Handle, i, x);
+                    }
+                    break;
+
+                case ValueType.Int32:
+                    {
+                        int x = Convert.ToInt32(value);
+                        eina_value_container_set_wrapper_int(this.Handle, i, x);
+                    }
+                    break;
+                case ValueType.UInt32:
+                    {
+                        uint x = Convert.ToUInt32(value);
+                        eina_value_container_set_wrapper_uint(this.Handle, i, x);
+                    }
+                    break;
+
+                case ValueType.Long:
+                case ValueType.Int64:
+                    {
+                        long x = Convert.ToInt64(value);
+                        eina_value_container_set_wrapper_long(this.Handle, i, x);
+                    }
+                    break;
+                case ValueType.ULong:
+                case ValueType.UInt64:
+                    {
+                        ulong x = Convert.ToUInt64(value);
+                        eina_value_container_set_wrapper_ulong(this.Handle, i, x);
+                    }
+                    break;
+
+                case ValueType.Float:
+                    {
+                        float x = Convert.ToSingle(value);
+                        eina_value_container_set_wrapper_float(this.Handle, i, x);
+                    }
+                    break;
+                case ValueType.Double:
+                    {
+                        double x = Convert.ToDouble(value);
+                        eina_value_container_set_wrapper_double(this.Handle, i, x);
+                    }
+                    break;
+
+                case ValueType.String:
+                    {
+                        string x = Convert.ToString(value);
+                        eina_value_container_set_wrapper_string(this.Handle, i, x);
+                    }
+                    break;
+            }
+        }
+    }
+
+    public ValueType GetValueSubType()
+    {
+        ContainerSanityChecks();
+
+        IntPtr native_subtype = IntPtr.Zero;
+
+        switch (GetValueType()) {
+            case ValueType.Array:
+                native_subtype = eina_value_array_subtype_get_wrapper(this.Handle);
+                break;
+            case ValueType.List:
+                native_subtype = eina_value_list_subtype_get_wrapper(this.Handle);
+                break;
+        }
+        return ValueTypeBridge.GetManaged(native_subtype);
+    }
+}
+
+/// <summary> Custom marshaler to convert value pointers to managed values and back,
+/// without changing ownership.</summary>
+public class ValueMarshaler : ICustomMarshaler {
+
+    /// <summary>Creates a managed value from a C pointer, whitout taking ownership of it.</summary>
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        return new Value(pNativeData, Ownership.Unmanaged);
+    }
+
+    /// <summary>Retrieves the C pointer from a given managed value,
+    /// keeping the managed ownership.</summary>
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        try {
+            Value v = (Value)managedObj;
+            return v.Handle;
+        } catch (InvalidCastException) {
+            return IntPtr.Zero;
+        }
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new ValueMarshaler();
+        }
+        return marshaler;
+    }
+    static private ValueMarshaler marshaler;
+}
+
+/// <summary> Custom marshaler to convert value pointers to managed values and back,
+/// also transferring the ownership to the other side.</summary>
+public class ValueMarshalerOwn : ICustomMarshaler {
+    /// <summary>Creates a managed value from a C pointer, taking the ownership.</summary>
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        return new Value(pNativeData, Ownership.Managed);
+    }
+
+    /// <summary>Retrieves the C pointer from a given managed value,
+    /// transferring the ownership to the unmanaged side, which should release it
+    /// when not needed. </summary>
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        try {
+            Value v = (Value)managedObj;
+            v.ReleaseOwnership();
+            return v.Handle;
+        } catch (InvalidCastException) {
+            return IntPtr.Zero;
+        }
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new ValueMarshalerOwn();
+        }
+        return marshaler;
+    }
+    static private ValueMarshalerOwn marshaler;
+}
+}
diff --git a/internals/src/EflSharp/EflSharp/eldbus_common.cs b/internals/src/EflSharp/EflSharp/eldbus_common.cs
new file mode 100755 (executable)
index 0000000..30e3b0b
--- /dev/null
@@ -0,0 +1,557 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+using static eldbus.EldbusMessageNativeFunctions;
+
+namespace eldbus {
+
+public static class Timeout
+{
+    public static int Infinite = 0x7fffffff;
+}
+
+[StructLayout(LayoutKind.Sequential)]
+public struct ObjectPath
+{
+    public string value;
+
+    public ObjectPath(string str)
+    {
+        value = str;
+    }
+
+    public static implicit operator ObjectPath(string str)
+    {
+        return new ObjectPath(str);
+    }
+    public static implicit operator string(ObjectPath path)
+    {
+        return path.value;
+    }
+}
+
+[StructLayout(LayoutKind.Sequential)]
+public struct SignatureString
+{
+    public string value;
+
+    public SignatureString(string str)
+    {
+        value = str;
+    }
+
+    public static implicit operator SignatureString(string str)
+    {
+        return new SignatureString(str);
+    }
+    public static implicit operator string(SignatureString sig)
+    {
+        return sig.value;
+    }
+}
+
+[StructLayout(LayoutKind.Sequential)]
+public struct UnixFd
+{
+    public Int32 value;
+
+    public UnixFd(Int32 fd)
+    {
+        value = fd;
+    }
+
+    public static implicit operator UnixFd(Int32 fd)
+    {
+        return new UnixFd(fd);
+    }
+    public static implicit operator Int32(UnixFd unix_fd)
+    {
+        return unix_fd.value;
+    }
+}
+
+
+public static class Argument
+{
+    public class ByteType       { public const char Code = 'y'; public const string Signature = "y"; }
+    public class BooleanType    { public const char Code = 'b'; public const string Signature = "b"; }
+    public class Int16Type      { public const char Code = 'n'; public const string Signature = "n"; }
+    public class UInt16Type     { public const char Code = 'q'; public const string Signature = "q"; }
+    public class Int32Type      { public const char Code = 'i'; public const string Signature = "i"; }
+    public class UInt32Type     { public const char Code = 'u'; public const string Signature = "u"; }
+    public class Int64Type      { public const char Code = 'x'; public const string Signature = "x"; }
+    public class UInt64Type     { public const char Code = 't'; public const string Signature = "t"; }
+    public class DoubleType     { public const char Code = 'd'; public const string Signature = "d"; }
+    public class StringType     { public const char Code = 's'; public const string Signature = "s"; }
+    public class ObjectPathType { public const char Code = 'o'; public const string Signature = "o"; }
+    public class SignatureType  { public const char Code = 'g'; public const string Signature = "g"; }
+    public class ArrayType      { public const char Code = 'a'; public const string Signature = "a"; }
+    public class StructType     { public const char Code = 'r'; public const string Signature = "r"; }
+    public class VariantType    { public const char Code = 'v'; public const string Signature = "v"; }
+    public class DictEntryType  { public const char Code = 'e'; public const string Signature = "e"; }
+    public class UnixFdType     { public const char Code = 'h'; public const string Signature = "h"; }
+
+//     public static readonly ByteType       ByteT       = new ByteType();
+//     public static readonly BooleanType    BooleanT    = new BooleanType();
+//     public static readonly Int16Type      Int16T      = new Int16Type();
+//     public static readonly UInt16Type     UInt16T     = new UInt16Type();
+//     public static readonly Int32Type      Int32T      = new Int32Type();
+//     public static readonly UInt32Type     UInt32T     = new UInt32Type();
+//     public static readonly Int64Type      Int64T      = new Int64Type();
+//     public static readonly UInt64Type     UInt64T     = new UInt64Type();
+//     public static readonly DoubleType     DoubleT     = new DoubleType();
+//     public static readonly StringType     StringT     = new StringType();
+//     public static readonly ObjectPathType ObjectPathT = new ObjectPathType();
+//     public static readonly SignatureType  SignatureT  = new SignatureType();
+//     public static readonly ArrayType      ArrayT      = new ArrayType();
+//     public static readonly StructType     StructT     = new StructType();
+//     public static readonly VariantType    VariantT    = new VariantType();
+//     public static readonly DictEntryType  DictEntryT  = new DictEntryType();
+//     public static readonly UnixFdType     UnixFdT     = new UnixFdType();
+//
+//     public static readonly ByteType       y = ByteT;
+//     public static readonly BooleanType    b = BooleanT;
+//     public static readonly Int16Type      n = Int16T;
+//     public static readonly UInt16Type     q = UInt16T;
+//     public static readonly Int32Type      i = Int32T;
+//     public static readonly UInt32Type     u = UInt32T;
+//     public static readonly Int64Type      x = Int64T;
+//     public static readonly UInt64Type     t = UInt64T;
+//     public static readonly DoubleType     d = DoubleT;
+//     public static readonly StringType     s = StringT;
+//     public static readonly ObjectPathType o = ObjectPathT;
+//     public static readonly SignatureType  g = SignatureT;
+//     public static readonly ArrayType      a = ArrayT;
+//     public static readonly StructType     r = StructT;
+//     public static readonly VariantType    v = VariantT;
+//     public static readonly DictEntryType  e = DictEntryT;
+//     public static readonly UnixFdType     h = UnixFdT;
+}
+
+public abstract class BasicMessageArgument
+{
+    public void AppendTo(eldbus.Message msg)
+    {
+        if (!InternalAppendTo(msg))
+            throw new SEHException("Eldbus: could not append basic type to eldbus.Message");
+    }
+
+    public void AppendTo(eldbus.MessageIterator iter)
+    {
+        if (!InternalAppendTo(iter))
+            throw new SEHException("Eldbus: could not append basic type to eldbus.MessageIterator");
+    }
+
+    public abstract char TypeCode {get;}
+    public abstract string Signature {get;}
+    protected abstract bool InternalAppendTo(eldbus.Message msg);
+    protected abstract bool InternalAppendTo(eldbus.MessageIterator iter);
+
+    public static implicit operator BasicMessageArgument(byte arg)
+    {
+        return new ByteMessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(bool arg)
+    {
+        return new BoolMessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(Int16 arg)
+    {
+        return new Int16MessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(UInt16 arg)
+    {
+        return new UInt16MessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(Int32 arg)
+    {
+        return new Int32MessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(UInt32 arg)
+    {
+        return new UInt32MessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(Int64 arg)
+    {
+        return new Int64MessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(UInt64 arg)
+    {
+        return new UInt64MessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(string arg)
+    {
+        return new StringMessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(SignatureString arg)
+    {
+        return new SignatureMessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(ObjectPath arg)
+    {
+        return new ObjectPathMessageArgument(arg);
+    }
+
+    public static implicit operator BasicMessageArgument(UnixFd arg)
+    {
+        return new UnixFdMessageArgument(arg);
+    }
+}
+
+public class ByteMessageArgument : BasicMessageArgument
+{
+    private byte value;
+
+    public ByteMessageArgument(byte arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.ByteType.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class BoolMessageArgument : BasicMessageArgument
+{
+    private Int32 value;
+
+    public BoolMessageArgument(bool arg)
+    {
+        value = Convert.ToInt32(arg);
+    }
+
+    public override char TypeCode { get { return Argument.BooleanType.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class Int16MessageArgument : BasicMessageArgument
+{
+    private Int16 value;
+
+    public Int16MessageArgument(Int16 arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.Int16Type.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class UInt16MessageArgument : BasicMessageArgument
+{
+    private UInt16 value;
+
+    public UInt16MessageArgument(UInt16 arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.UInt16Type.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class Int32MessageArgument : BasicMessageArgument
+{
+    private Int32 value;
+
+    public Int32MessageArgument(Int32 arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.Int32Type.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class UInt32MessageArgument : BasicMessageArgument
+{
+    private UInt32 value;
+
+    public UInt32MessageArgument(UInt32 arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.UInt32Type.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class Int64MessageArgument : BasicMessageArgument
+{
+    private Int64 value;
+
+    public Int64MessageArgument(Int64 arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.Int64Type.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class UInt64MessageArgument : BasicMessageArgument
+{
+    private UInt64 value;
+
+    public UInt64MessageArgument(UInt64 arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.UInt64Type.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class DoubleMessageArgument : BasicMessageArgument
+{
+    private double value;
+
+    public DoubleMessageArgument(double arg)
+    {
+        value = arg;
+    }
+
+    public override char TypeCode { get { return Argument.DoubleType.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public abstract class StringLikeMessageArgument : BasicMessageArgument
+{
+    private string value;
+
+    public StringLikeMessageArgument(string arg)
+    {
+        value = arg;
+    }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public class StringMessageArgument : StringLikeMessageArgument
+{
+    public StringMessageArgument(string arg)
+        : base(arg)
+    {}
+
+    public override char TypeCode { get { return Argument.StringType.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+}
+
+public class ObjectPathMessageArgument : StringLikeMessageArgument
+{
+    public ObjectPathMessageArgument(ObjectPath arg)
+        : base(arg.value)
+    {}
+
+    public override char TypeCode { get { return Argument.ObjectPathType.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+}
+
+public class SignatureMessageArgument : StringLikeMessageArgument
+{
+    public SignatureMessageArgument(SignatureString arg)
+        : base(arg.value)
+    {}
+
+    public override char TypeCode { get { return Argument.SignatureType.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+}
+
+public class UnixFdMessageArgument : BasicMessageArgument
+{
+    private Int32 value;
+
+    public UnixFdMessageArgument(UnixFd arg)
+    {
+        value = arg.value;
+    }
+
+    public override char TypeCode { get { return Argument.UnixFdType.Code; } }
+    public override string Signature { get { return Argument.ByteType.Signature; } }
+
+    protected override bool InternalAppendTo(eldbus.Message msg)
+    {
+        return eldbus_message_arguments_append(msg.Handle, Signature, value);
+    }
+
+    protected override bool InternalAppendTo(eldbus.MessageIterator iter)
+    {
+        return eldbus_message_iter_basic_append(iter.Handle, TypeCode, value);
+    }
+}
+
+public delegate void MessageDelegate(eldbus.Message msg, eldbus.Pending pending);
+
+public static class Common
+{
+    public static void RaiseNullHandle()
+    {
+        if (NullHandleError == 0)
+            NullHandleError = Eina.Error.Register("Eldbus: null handle");
+        Eina.Error.Raise(NullHandleError);
+    }
+
+    public delegate void Eldbus_Message_Cb(IntPtr data, IntPtr msg, IntPtr pending);
+
+    public static IntPtr GetMessageCbWrapperPtr()
+    {
+        return Marshal.GetFunctionPointerForDelegate(GetMessageCbWrapper());
+    }
+
+    public static Eldbus_Message_Cb GetMessageCbWrapper()
+    {
+        if (message_cb_wrapper == null)
+            message_cb_wrapper = new Eldbus_Message_Cb(MessageCbWrapper);
+        return message_cb_wrapper;
+    }
+
+    public static void MessageCbWrapper(IntPtr data, IntPtr msg_hdl, IntPtr pending_hdl)
+    {
+        MessageDelegate dlgt = Marshal.GetDelegateForFunctionPointer(data, typeof(MessageDelegate)) as MessageDelegate;
+        if (dlgt == null)
+        {
+            Eina.Log.Error("Eldbus: invalid delegate pointer from Eldbus_Message_Cb");
+            return;
+        }
+
+        eldbus.Message msg;
+        eldbus.Pending pending;
+
+        try
+        {
+            msg = new eldbus.Message(msg_hdl, false);
+            pending = new eldbus.Pending(pending_hdl, false);
+        }
+        catch(Exception e)
+        {
+            Eina.Log.Error("Eldbus: could not convert Eldbus_Message_Cb parameters. Exception: " + e.ToString());
+            return;
+        }
+
+        try
+        {
+            dlgt(msg, pending);
+        }
+        catch(Exception e)
+        {
+            Eina.Log.Error("Eldbus: Eldbus_Message_Cb delegate error. Exception: " + e.ToString());
+        }
+    }
+
+    private static Eldbus_Message_Cb message_cb_wrapper = null;
+    private static Eina.Error NullHandleError = 0;
+}
+
+}
+
+
diff --git a/internals/src/EflSharp/EflSharp/eldbus_config.cs b/internals/src/EflSharp/EflSharp/eldbus_config.cs
new file mode 100755 (executable)
index 0000000..c5bae07
--- /dev/null
@@ -0,0 +1,26 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+namespace eldbus {
+
+public static class Config
+{
+    [DllImport(efl.Libs.Eldbus)] private static extern int eldbus_init();
+    [DllImport(efl.Libs.Eldbus)] private static extern int eldbus_shutdown();
+
+    public static void Init()
+    {
+        if (eldbus_init() == 0)
+            throw new Efl.EflException("Failed to initialize Eldbus");
+    }
+
+    public static void Shutdown()
+    {
+        eldbus_shutdown();
+    }
+
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eldbus_connection.cs b/internals/src/EflSharp/EflSharp/eldbus_connection.cs
new file mode 100755 (executable)
index 0000000..bef7f29
--- /dev/null
@@ -0,0 +1,348 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+using static eldbus.EldbusConnectionNativeFunctions;
+
+namespace eldbus {
+
+
+public static class EldbusConnectionNativeFunctions
+{
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_connection_get(eldbus.Connection.Type type);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_private_connection_get(eldbus.Connection.Type type);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_address_connection_get(string address);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_private_address_connection_get(string address);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_connection_ref(IntPtr conn);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_connection_unref(IntPtr conn);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_connection_free_cb_add(IntPtr conn, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_connection_free_cb_del(IntPtr conn, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_connection_data_set(IntPtr conn, IntPtr key, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_connection_data_get(IntPtr conn, IntPtr key);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_connection_data_del(IntPtr conn, IntPtr key);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_connection_event_callback_add(IntPtr conn, int type, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_connection_event_callback_del(IntPtr conn, int type, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_connection_send(IntPtr conn, IntPtr msg, IntPtr cb, IntPtr cb_data, double timeout);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_connection_unique_name_get(IntPtr conn);
+
+    // FreeDesktop.Org Methods
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_name_request(IntPtr conn, string bus, uint flags, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_name_release(IntPtr conn, string bus, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_name_owner_get(IntPtr conn, string bus, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_name_owner_has(IntPtr conn, string bus, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_names_list(IntPtr conn, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_names_activatable_list(IntPtr conn, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_hello(IntPtr conn, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_name_start(IntPtr conn, string bus, uint flags, IntPtr cb, IntPtr cb_data);
+
+//     typedef void (*Eldbus_Name_Owner_Changed_Cb)(void *data, const char *bus, const char *old_id, const char *new_id);
+//     [DllImport(efl.Libs.Eldbus)] public static extern void
+//         eldbus_name_owner_changed_callback_add(IntPtr conn, string bus, Eldbus_Name_Owner_Changed_Cb cb, IntPtr cb_data, [MarshalAs(UnmanagedType.U1)] bool allow_initial_call);
+//     [DllImport(efl.Libs.Eldbus)] public static extern void
+//         eldbus_name_owner_changed_callback_del(IntPtr conn, string bus, Eldbus_Name_Owner_Changed_Cb cb, IntPtr cb_data);
+}
+
+public class Connection : IDisposable
+{
+    public enum Type
+    {
+        Unknown = 0, // sentinel, not a real type
+        Session,
+        System,
+        Starter,
+        Address,
+        Last         // sentinel, not a real type
+    };
+
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;} = true;
+
+    private void InitNew(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        CheckHandle();
+    }
+
+    private void CheckHandle()
+    {
+        if (Handle == IntPtr.Zero)
+        {
+            eldbus.Common.RaiseNullHandle();
+        }
+    }
+
+    public Connection(IntPtr handle, bool own)
+    {
+        InitNew(handle, own);
+    }
+
+
+    public Connection(eldbus.Connection.Type type)
+    {
+        InitNew(eldbus_connection_get(type), true);
+    }
+
+    public Connection(string address)
+    {
+        InitNew(eldbus_address_connection_get(address), true);
+    }
+
+    public static eldbus.Connection GetPrivate(eldbus.Connection.Type type)
+    {
+        return new eldbus.Connection(eldbus_private_connection_get(type), true);
+    }
+
+    public static eldbus.Connection GetPrivate(string address)
+    {
+        return new eldbus.Connection(eldbus_private_address_connection_get(address), true);
+    }
+
+
+    ~Connection()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (Own)
+            eldbus_connection_unref(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public eldbus.Pending Send(eldbus.Message msg, eldbus.MessageDelegate dlgt = null, double timeout = -1)
+    {
+        CheckHandle();
+
+        if (msg == null)
+            throw new ArgumentNullException("msg");
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_connection_send(Handle, msg.Handle, cb_wrapper, cb_data, timeout);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_connection_send");
+
+        msg.Ref();
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public string GetUniqueName()
+    {
+        CheckHandle();
+        var ptr = eldbus_connection_unique_name_get(Handle);
+        if (ptr == IntPtr.Zero)
+            return null;
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public eldbus.Pending NameRequest(string bus, uint flags, eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        if (bus == null)
+            throw new ArgumentNullException("bus");
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_name_request(Handle, bus, flags, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_name_request");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending NameRelease(string bus, eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        if (bus == null)
+            throw new ArgumentNullException("bus");
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_name_release(Handle, bus, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_name_release");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending GetNameOwner(string bus, eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        if (bus == null)
+            throw new ArgumentNullException("bus");
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_name_owner_get(Handle, bus, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_name_owner_get");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending HasNameOwner(string bus, eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        if (bus == null)
+            throw new ArgumentNullException("bus");
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_name_owner_has(Handle, bus, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_name_owner_has");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending NameList(eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_names_list(Handle, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_names_list");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending ActivatableList(eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_names_activatable_list(Handle, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_names_activatable_list");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending Hello(eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_hello(Handle, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_hello");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending NameStart(string bus, uint flags, eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        if (bus == null)
+            throw new ArgumentNullException("bus");
+
+        IntPtr cb_wrapper = (dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr());
+        IntPtr cb_data = (dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt));
+
+        var pending_hdl = eldbus_name_start(Handle, bus, flags, cb_wrapper, cb_data);
+
+        if(pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_name_start");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+}
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eldbus_message.cs b/internals/src/EflSharp/EflSharp/eldbus_message.cs
new file mode 100755 (executable)
index 0000000..a8c96ff
--- /dev/null
@@ -0,0 +1,883 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+using static eldbus.EldbusMessageNativeFunctions;
+
+namespace eldbus {
+
+public static class EldbusMessageNativeFunctions
+{
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_ref(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_unref(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_path_get(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_interface_get(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_member_get(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_destination_get(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_sender_get(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_signature_get(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_method_call_new(string dest, string path, string iface, string method);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_signal_new(string path, string _interface, string name);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_error_new(IntPtr msg, string error_name, string error_msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_method_return_new(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_error_get(IntPtr msg, out IntPtr name, out IntPtr text);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out byte value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out Int16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out UInt16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out Int32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out UInt32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out Int64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out UInt64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out double value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_get(IntPtr msg, string signature, out IntPtr value);
+
+//     [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+//         eldbus_message_arguments_vget(IntPtr msg, string signature, va_list ap);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, byte value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, Int16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, UInt16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, Int32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, UInt32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, Int64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, UInt64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, double value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_arguments_append(IntPtr msg, string signature, string value);
+
+//     [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+//         eldbus_message_arguments_vappend(IntPtr msg, string signature, va_list ap);
+
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_iter_container_new(IntPtr iter, int type, string contained_signature);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, byte value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, Int16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, UInt16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, Int32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, UInt32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, Int64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, UInt64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, double value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_basic_append(IntPtr iter, int type, string value);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_arguments_append(IntPtr iter, string signature, out IntPtr value);
+
+//     [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+//         eldbus_message_iter_arguments_vappend(IntPtr iter, string signature, va_list ap);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_fixed_array_append(IntPtr iter, int type, IntPtr array, uint size);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_container_close(IntPtr iter, IntPtr sub);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_message_iter_get(IntPtr msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out byte value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out Int16 value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out UInt16 value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out Int32 value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out UInt32 value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out Int64 value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out UInt64 value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out double value);
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_basic_get(IntPtr iter, out IntPtr value);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern string
+        eldbus_message_iter_signature_get(IntPtr iter);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_next(IntPtr iter);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out byte value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out Int16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out UInt16 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out Int32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out UInt32 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out Int64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out UInt64 value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out double value);
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_get_and_next(IntPtr iter, char signature, out IntPtr value);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_fixed_array_get(IntPtr iter, int signature, out IntPtr value, out int n_elements);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_message_iter_arguments_get(IntPtr iter, string signature, out IntPtr value);
+
+//     [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+//         eldbus_message_iter_arguments_vget(IntPtr iter, string signature, va_list ap);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_message_iter_del(IntPtr iter);
+}
+
+
+public class Message : IDisposable
+{
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;} = true;
+
+    private void InitNew(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        CheckHandle();
+    }
+
+    private void CheckHandle()
+    {
+        if (Handle == IntPtr.Zero)
+        {
+            eldbus.Common.RaiseNullHandle();
+        }
+    }
+
+    public Message(IntPtr handle, bool own)
+    {
+        InitNew(handle, own);
+    }
+
+    ~Message()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (Own)
+            eldbus_message_unref(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public static eldbus.Message NewMethodCall(string dest, string path, string iface, string method)
+    {
+        var ptr = eldbus_message_method_call_new(dest, path, iface, method);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Message' object from eldbus_message_method_call_new");
+        return new eldbus.Message(ptr, true);
+    }
+
+    public static eldbus.Message NewSignal(string path, string _interface, string name)
+    {
+        var ptr = eldbus_message_signal_new(path, _interface, name);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Message' object from eldbus_message_signal_new");
+        return new eldbus.Message(ptr, true);
+    }
+
+    public void Ref()
+    {
+        CheckHandle();
+        eldbus_message_ref(Handle);
+    }
+
+    public void Unref()
+    {
+        CheckHandle();
+        eldbus_message_unref(Handle);
+    }
+
+    public string GetPath()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_path_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetInterface()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_interface_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetMember()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_member_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetDestination()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_destination_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetSender()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_sender_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetSignature()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_signature_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public eldbus.Message NewError(string error_name, string error_msg)
+    {
+        CheckHandle();
+        var ptr = eldbus_message_error_new(Handle, error_name, error_msg);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Message' object from eldbus_message_error_new");
+        return new eldbus.Message(ptr, false);
+    }
+
+    public eldbus.Message NewMethodReturn()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_method_return_new(Handle);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Message' object from eldbus_message_method_return_new");
+        return new eldbus.Message(ptr, false);
+    }
+
+    public bool GetError(out string name, out string text)
+    {
+        CheckHandle();
+        IntPtr name_ptr;
+        IntPtr text_ptr;
+        bool r = eldbus_message_error_get(Handle, out name_ptr, out text_ptr);
+        name = Eina.StringConversion.NativeUtf8ToManagedString(name_ptr);
+        text = Eina.StringConversion.NativeUtf8ToManagedString(text_ptr);
+        return r;
+    }
+
+    public bool Get(out byte val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.ByteType.Signature, out val);
+    }
+
+    public bool Get(out bool val)
+    {
+        CheckHandle();
+        Int32 aux;
+        var r = eldbus_message_arguments_get(Handle, Argument.BooleanType.Signature, out aux);
+        val = (aux != 0);
+        return r;
+    }
+
+    public bool Get(out Int16 val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.Int16Type.Signature, out val);
+    }
+
+    public bool Get(out UInt16 val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.UInt16Type.Signature, out val);
+    }
+
+    public bool Get(out Int32 val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.Int32Type.Signature, out val);
+    }
+
+    public bool Get(out UInt32 val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.UInt32Type.Signature, out val);
+    }
+
+    public bool Get(out Int64 val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.Int64Type.Signature, out val);
+    }
+
+    public bool Get(out UInt64 val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.UInt64Type.Signature, out val);
+    }
+
+    public bool Get(out double val)
+    {
+        CheckHandle();
+        return eldbus_message_arguments_get(Handle, Argument.DoubleType.Signature, out val);
+    }
+
+    public bool Get(out string val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        var r = eldbus_message_arguments_get(Handle, Argument.StringType.Signature, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+        return r;
+    }
+
+    public bool Get(out eldbus.ObjectPath val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        var r = eldbus_message_arguments_get(Handle, Argument.ObjectPathType.Signature, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+        return r;
+    }
+
+    public bool Get(out eldbus.SignatureString val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        var r = eldbus_message_arguments_get(Handle, Argument.SignatureType.Signature, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+        return r;
+    }
+
+    public bool Get(out eldbus.UnixFd val)
+    {
+        CheckHandle();
+        Int32 aux;
+        var r = eldbus_message_arguments_get(Handle, Argument.UnixFdType.Signature, out aux);
+        val = aux;
+        return r;
+    }
+
+    public void Append(params BasicMessageArgument[] args)
+    {
+        CheckHandle();
+        foreach (BasicMessageArgument arg in args)
+        {
+            arg.AppendTo(this);
+        }
+    }
+
+    public eldbus.MessageIterator AppendOpenContainer(string signature)
+    {
+        var iter = GetMessageIterator();
+        return iter.AppendOpenContainer(signature);
+    }
+
+    public eldbus.MessageIterator GetMessageIterator()
+    {
+        CheckHandle();
+        var ptr = eldbus_message_iter_get(Handle);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `MessageIterator' object from eldbus_message_iter_get");
+        return new eldbus.MessageIterator(ptr, IntPtr.Zero);
+    }
+}
+
+public class MessageIterator
+{
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public IntPtr Parent {get;set;} = IntPtr.Zero;
+
+    private void InitNew(IntPtr handle, IntPtr parent)
+    {
+        Handle = handle;
+        Parent = parent;
+        CheckHandle();
+    }
+
+    private void CheckHandle()
+    {
+        if (Handle == IntPtr.Zero)
+        {
+            eldbus.Common.RaiseNullHandle();
+        }
+    }
+
+    public MessageIterator(IntPtr handle, IntPtr parent)
+    {
+        InitNew(handle, parent);
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        Parent = IntPtr.Zero;
+        return h;
+    }
+
+    public void Append(params BasicMessageArgument[] args)
+    {
+        CheckHandle();
+
+        foreach (BasicMessageArgument arg in args)
+        {
+            arg.AppendTo(this);
+        }
+    }
+
+    public eldbus.MessageIterator AppendOpenContainer(string signature)
+    {
+        CheckHandle();
+
+        IntPtr new_iter = IntPtr.Zero;
+
+        if (signature[0] == 'v')
+            new_iter = eldbus_message_iter_container_new(Handle, 'v', signature.Substring(1));
+        else if (!eldbus_message_iter_arguments_append(Handle, signature, out new_iter))
+            throw new SEHException("Eldbus: could not append container type");
+
+        if (new_iter == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `MessageIterator' object from eldbus_message_iter_arguments_append");
+
+        return new eldbus.MessageIterator(new_iter, Handle);
+    }
+
+    public eldbus.MessageIterator AppendOpenContainer(char type, string contained_signature)
+    {
+        CheckHandle();
+
+        IntPtr new_iter = eldbus_message_iter_container_new(Handle, type, contained_signature);
+
+        if (new_iter == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `MessageIterator' object from eldbus_message_iter_container_new");
+
+        return new eldbus.MessageIterator(new_iter, Handle);
+    }
+
+    public void CloseContainer()
+    {
+        CheckHandle();
+
+        if (Parent == IntPtr.Zero)
+            throw new SEHException("Eldbus: can not close MessageIterator open container without a parent");
+
+        if (!eldbus_message_iter_container_close(Parent, Handle))
+            throw new SEHException("Eldbus: could not close MessageIterator");
+
+        Handle = IntPtr.Zero;
+        Parent = IntPtr.Zero;
+    }
+
+    public string GetSignature()
+    {
+        return eldbus_message_iter_signature_get(Handle);
+    }
+
+    public bool GetAndNext(out byte val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.ByteType.Code, out val);
+    }
+
+    public bool GetAndNext(out bool val)
+    {
+        CheckHandle();
+        Int32 aux;
+        bool r = eldbus_message_iter_get_and_next(Handle, Argument.BooleanType.Code, out aux);
+        val = (aux != 0);
+        return r;
+    }
+
+    public bool GetAndNext(out Int16 val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.Int16Type.Code, out val);
+    }
+
+    public bool GetAndNext(out UInt16 val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.UInt16Type.Code, out val);
+    }
+
+    public bool GetAndNext(out Int32 val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.Int32Type.Code, out val);
+    }
+
+    public bool GetAndNext(out UInt32 val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.UInt32Type.Code, out val);
+    }
+
+    public bool GetAndNext(out Int64 val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.Int64Type.Code, out val);
+    }
+
+    public bool GetAndNext(out UInt64 val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.UInt64Type.Code, out val);
+    }
+
+    public bool GetAndNext(out double val)
+    {
+        CheckHandle();
+        return eldbus_message_iter_get_and_next(Handle, Argument.DoubleType.Code, out val);
+    }
+
+    public bool GetAndNext(out string val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        bool r = eldbus_message_iter_get_and_next(Handle, Argument.StringType.Code, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+        return r;
+    }
+
+    public bool GetAndNext(out eldbus.ObjectPath val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        bool r = eldbus_message_iter_get_and_next(Handle, Argument.ObjectPathType.Code, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+        return r;
+    }
+
+    public bool GetAndNext(out eldbus.SignatureString val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        bool r = eldbus_message_iter_get_and_next(Handle, Argument.SignatureType.Code, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+        return r;
+    }
+
+    public bool GetAndNext(out eldbus.UnixFd val)
+    {
+        CheckHandle();
+        Int32 aux;
+        bool r = eldbus_message_iter_get_and_next(Handle, Argument.UnixFdType.Code, out aux);
+        val = aux;
+        return r;
+    }
+
+    public bool GetAndNext(out eldbus.MessageIterator iter, char typecode)
+    {
+        CheckHandle();
+        IntPtr hdl = IntPtr.Zero;
+        bool r = eldbus_message_iter_get_and_next(Handle, typecode, out hdl);
+        if (hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get argument");
+        iter = new eldbus.MessageIterator(hdl, Handle);
+
+        return r;
+    }
+
+    public bool GetAndNext(out eldbus.MessageIterator iter, string signatue)
+    {
+        CheckHandle();
+        IntPtr hdl = IntPtr.Zero;
+        if (!eldbus_message_iter_arguments_get(Handle, signatue, out hdl) || hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get argument");
+        iter = new eldbus.MessageIterator(hdl, Handle);
+
+        return Next();
+    }
+
+    public void Get(out byte val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out bool val)
+    {
+        CheckHandle();
+        Int32 aux;
+        eldbus_message_iter_basic_get(Handle, out aux);
+        val = (aux != 0);
+    }
+
+    public void Get(out Int16 val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out UInt16 val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out Int32 val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out UInt32 val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out Int64 val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out UInt64 val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out double val)
+    {
+        CheckHandle();
+        eldbus_message_iter_basic_get(Handle, out val);
+    }
+
+    public void Get(out string val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        eldbus_message_iter_basic_get(Handle, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+    }
+
+    public void Get(out eldbus.ObjectPath val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        eldbus_message_iter_basic_get(Handle, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+    }
+
+    public void Get(out eldbus.SignatureString val)
+    {
+        CheckHandle();
+        IntPtr aux;
+        eldbus_message_iter_basic_get(Handle, out aux);
+        val = Eina.StringConversion.NativeUtf8ToManagedString(aux);
+    }
+
+    public void Get(out eldbus.UnixFd val)
+    {
+        CheckHandle();
+        Int32 aux;
+        eldbus_message_iter_basic_get(Handle, out aux);
+        val = aux;
+    }
+
+    public void Get(out eldbus.MessageIterator iter, string signatue)
+    {
+        CheckHandle();
+        IntPtr hdl = IntPtr.Zero;
+        if (!eldbus_message_iter_arguments_get(Handle, signatue, out hdl) || hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get argument");
+        iter = new eldbus.MessageIterator(hdl, Handle);
+    }
+
+    public bool Next()
+    {
+        CheckHandle();
+        return eldbus_message_iter_next(Handle);
+    }
+
+    public void Del()
+    {
+        CheckHandle();
+
+        eldbus_message_iter_del(Handle);
+
+        Handle = IntPtr.Zero;
+        Parent = IntPtr.Zero;
+    }
+
+    private void GetFixedArrayInternal(int type_code, out IntPtr value, out int n_elements)
+    {
+        CheckHandle();
+
+        if (!eldbus_message_iter_fixed_array_get(Handle, type_code, out value, out n_elements))
+            throw new SEHException("Eldbus: could not get fixed array");
+    }
+
+    public void GetFixedArray(out byte[] array)
+    {
+        IntPtr value;
+        int n_elements;
+        GetFixedArrayInternal(Argument.ByteType.Code, out value, out n_elements);
+        array = new byte[n_elements];
+        Marshal.Copy(value, array, 0, n_elements);
+    }
+
+    public void GetFixedArray(out bool[] array)
+    {
+        IntPtr value;
+        int n_elements;
+        GetFixedArrayInternal(Argument.BooleanType.Code, out value, out n_elements);
+        var aux = new Int32[n_elements];
+        Marshal.Copy(value, aux, 0, n_elements);
+
+        // array = aux.Select(Convert.ToBoolean).ToArray();
+        array = Array.ConvertAll(aux, Convert.ToBoolean);
+    }
+
+    public void GetFixedArray(out Int16[] array)
+    {
+        IntPtr value;
+        int n_elements;
+        GetFixedArrayInternal(Argument.Int16Type.Code, out value, out n_elements);
+        array = new Int16[n_elements];
+        Marshal.Copy(value, array, 0, n_elements);
+    }
+
+//     public void GetFixedArray(out UInt16[] array)
+//     {
+//         IntPtr value;
+//         int n_elements;
+//         GetFixedArrayInternal(Argument.UInt16Type.Code, out value, out n_elements);
+//         array = new UInt16[n_elements];
+//         Marshal.Copy(value, array, 0, n_elements);
+//     }
+
+    public void GetFixedArray(out Int32[] array)
+    {
+        IntPtr value;
+        int n_elements;
+        GetFixedArrayInternal(Argument.Int32Type.Code, out value, out n_elements);
+        array = new Int32[n_elements];
+        Marshal.Copy(value, array, 0, n_elements);
+    }
+
+//     public void GetFixedArray(out UInt32[] array)
+//     {
+//         IntPtr value;
+//         int n_elements;
+//         GetFixedArrayInternal(Argument.UInt32Type.Code, out value, out n_elements);
+//         array = new UInt32[n_elements];
+//         Marshal.Copy(value, array, 0, n_elements);
+//     }
+
+    public void GetFixedArray(out Int64[] array)
+    {
+        IntPtr value;
+        int n_elements;
+        GetFixedArrayInternal(Argument.Int64Type.Code, out value, out n_elements);
+        array = new Int64[n_elements];
+        Marshal.Copy(value, array, 0, n_elements);
+    }
+
+//     public void GetFixedArray(out UInt64[] array)
+//     {
+//         IntPtr value;
+//         int n_elements;
+//         GetFixedArrayInternal(Argument.UInt64Type.Code, out value, out n_elements);
+//         array = new UInt64[n_elements];
+//         Marshal.Copy(value, array, 0, n_elements);
+//     }
+
+    public void GetFixedArray(out eldbus.UnixFd[] array)
+    {
+        IntPtr value;
+        int n_elements;
+        GetFixedArrayInternal(Argument.DoubleType.Code, out value, out n_elements);
+        var aux = new Int32[n_elements];
+        Marshal.Copy(value, aux, 0, n_elements);
+
+        array = Array.ConvertAll(aux, e => new UnixFd(e));
+    }
+}
+
+}
+
diff --git a/internals/src/EflSharp/EflSharp/eldbus_object.cs b/internals/src/EflSharp/EflSharp/eldbus_object.cs
new file mode 100755 (executable)
index 0000000..7b48743
--- /dev/null
@@ -0,0 +1,293 @@
+
+#pragma warning disable 1591
+
+using System.Runtime.InteropServices;
+
+using static eldbus.EldbusObjectNativeFunctions;
+
+using IntPtr = System.IntPtr;
+
+namespace eldbus {
+
+
+public static class EldbusObjectNativeFunctions
+{
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_get(IntPtr conn, string bus, string path);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_ref(IntPtr obj);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_object_unref(IntPtr obj);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_object_free_cb_add(IntPtr obj, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_object_free_cb_del(IntPtr obj, IntPtr cb, IntPtr data);
+
+// typedef enum
+// {
+//    ELDBUS_OBJECT_EVENT_IFACE_ADDED = 0, /**< a parent path must have a ObjectManager interface */
+//    ELDBUS_OBJECT_EVENT_IFACE_REMOVED, /**< a parent path must have a ObjectManager interface */
+//    ELDBUS_OBJECT_EVENT_PROPERTY_CHANGED, /**< a property has changes */
+//    ELDBUS_OBJECT_EVENT_PROPERTY_REMOVED, /**< a property was removed */
+//    ELDBUS_OBJECT_EVENT_DEL,
+//    ELDBUS_OBJECT_EVENT_LAST    /**< sentinel, not a real event type */
+// } Eldbus_Object_Event_Type;
+//
+//     [DllImport(efl.Libs.Eldbus)] public static extern void
+//         eldbus_object_event_callback_add(IntPtr obj, Eldbus_Object_Event_Type type, IntPtr cb, IntPtr cb_data);
+//
+//     [DllImport(efl.Libs.Eldbus)] public static extern void
+//         eldbus_object_event_callback_del(IntPtr obj, Eldbus_Object_Event_Type type, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_connection_get(IntPtr obj);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_bus_name_get(IntPtr obj);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_path_get(IntPtr obj);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_send(IntPtr obj, IntPtr msg, IntPtr cb, IntPtr cb_data, double timeout);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_signal_handler_add(IntPtr obj, string _interface, string member, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_method_call_new(IntPtr obj, string _interface, string member);
+
+    // FreeDesktop.Org Methods
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_peer_ping(IntPtr obj, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_peer_machine_id_get(IntPtr obj, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_introspect(IntPtr obj, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_object_managed_objects_get(IntPtr obj, IntPtr cb, IntPtr data);
+
+//     [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+//         eldbus_object_manager_interfaces_added(IntPtr obj, Eldbus_Signal_Cb cb, IntPtr cb_data);
+//
+//     [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+//         eldbus_object_manager_interfaces_removed(IntPtr obj, Eldbus_Signal_Cb cb, IntPtr cb_data);
+}
+
+
+public class Object : System.IDisposable
+{
+
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;} = true;
+
+    private void InitNew(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        CheckHandle();
+    }
+
+    private void CheckHandle()
+    {
+        if (Handle == IntPtr.Zero)
+        {
+            eldbus.Common.RaiseNullHandle();
+        }
+    }
+
+    public Object(IntPtr handle, bool own)
+    {
+        InitNew(handle, own);
+    }
+
+    public Object(eldbus.Connection conn, string bus, string path)
+    {
+        if (conn == null)
+            throw new System.ArgumentNullException("conn");
+        if (bus == null)
+            throw new System.ArgumentNullException("bus");
+        if (path == null)
+            throw new System.ArgumentNullException("path");
+
+        var handle = eldbus_object_get(conn.Handle, bus, path);
+
+        if (handle == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Object' object from eldbus_object_get");
+
+        InitNew(handle, true);
+    }
+
+    ~Object()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (Own)
+            eldbus_object_unref(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        System.GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public eldbus.Connection GetConnection()
+    {
+        CheckHandle();
+        var conn = eldbus_object_connection_get(Handle);
+
+        if (conn == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Connection' object from eldbus_object_connection_get");
+
+        return new eldbus.Connection(conn, false);
+    }
+
+    public string GetBusName()
+    {
+        CheckHandle();
+        var ptr = eldbus_object_bus_name_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetPath()
+    {
+        CheckHandle();
+        var ptr = eldbus_object_path_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public void Ref()
+    {
+        CheckHandle();
+        eldbus_object_ref(Handle);
+    }
+
+    public void Unref()
+    {
+        CheckHandle();
+        eldbus_object_unref(Handle);
+    }
+
+    public eldbus.Pending Send(eldbus.Message msg, eldbus.MessageDelegate dlgt = null, double timeout = -1)
+    {
+        CheckHandle();
+
+        if (msg == null)
+            throw new System.ArgumentNullException("msg");
+
+        IntPtr cb_wrapper = dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr();
+        IntPtr cb_data = dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt);
+
+        var pending_hdl = eldbus_object_send(Handle, msg.Handle, cb_wrapper, cb_data, timeout);
+
+        if (pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_object_send");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Message NewMethodCall(string _interface, string member)
+    {
+        CheckHandle();
+
+        var hdl = eldbus_object_method_call_new(Handle, _interface, member);
+
+        if (hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Message' object from eldbus_object_method_call_new");
+
+        return new eldbus.Message(hdl, false);
+    }
+
+    public eldbus.Pending PeerPing(eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        IntPtr cb_wrapper = dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr();
+        IntPtr cb_data = dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt);
+
+        var pending_hdl = eldbus_object_peer_ping(Handle, cb_wrapper, cb_data);
+
+        if (pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_object_peer_ping");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending GetPeerMachineId(eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        IntPtr cb_wrapper = dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr();
+        IntPtr cb_data = dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt);
+
+        var pending_hdl = eldbus_object_peer_machine_id_get(Handle, cb_wrapper, cb_data);
+
+        if (pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_object_peer_machine_id_get");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending Introspect(eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        IntPtr cb_wrapper = dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr();
+        IntPtr cb_data = dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt);
+
+        var pending_hdl = eldbus_object_introspect(Handle, cb_wrapper, cb_data);
+
+        if (pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_object_introspect");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    public eldbus.Pending GetManagedObjects(eldbus.MessageDelegate dlgt = null)
+    {
+        CheckHandle();
+
+        IntPtr cb_wrapper = dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr();
+        IntPtr cb_data = dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt);
+
+        var pending_hdl = eldbus_object_managed_objects_get(Handle, cb_wrapper, cb_data);
+
+        if (pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_object_managed_objects_get");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+}
+
+
+}
diff --git a/internals/src/EflSharp/EflSharp/eldbus_pending.cs b/internals/src/EflSharp/EflSharp/eldbus_pending.cs
new file mode 100755 (executable)
index 0000000..906630e
--- /dev/null
@@ -0,0 +1,111 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+using static eldbus.EldbusPendingNativeFunctions;
+
+namespace eldbus {
+
+public static class EldbusPendingNativeFunctions
+{
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_pending_data_set(IntPtr pending, string key, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_pending_data_get(IntPtr pending, string key);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_pending_data_del(IntPtr pending, string key);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_pending_cancel(IntPtr pending);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_pending_destination_get(IntPtr pending);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_pending_path_get(IntPtr pending);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_pending_interface_get(IntPtr pending);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_pending_method_get(IntPtr pending);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_pending_free_cb_add(IntPtr pending, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_pending_free_cb_del(IntPtr pending, IntPtr cb, IntPtr data);
+}
+
+public class Pending
+{
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;} = true;
+
+    private void InitNew(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        CheckHandle();
+    }
+
+    private void CheckHandle()
+    {
+        if (Handle == IntPtr.Zero)
+        {
+            eldbus.Common.RaiseNullHandle();
+        }
+    }
+
+    public Pending(IntPtr handle, bool own)
+    {
+        InitNew(handle, own);
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    public void Cancel()
+    {
+        CheckHandle();
+        eldbus_pending_cancel(Handle);
+    }
+
+    public string GetDestination()
+    {
+        CheckHandle();
+        var ptr = eldbus_pending_destination_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetPath()
+    {
+        CheckHandle();
+        var ptr = eldbus_pending_path_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetInterface()
+    {
+        CheckHandle();
+        var ptr = eldbus_pending_interface_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    public string GetMethod()
+    {
+        CheckHandle();
+        var ptr = eldbus_pending_method_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+}
+
+}
+
diff --git a/internals/src/EflSharp/EflSharp/eldbus_proxy.cs b/internals/src/EflSharp/EflSharp/eldbus_proxy.cs
new file mode 100755 (executable)
index 0000000..ea44ca5
--- /dev/null
@@ -0,0 +1,208 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+using static eldbus.EldbusProxyNativeFunctions;
+
+namespace eldbus {
+
+public static class EldbusProxyNativeFunctions
+{
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_get(IntPtr obj, string _interface);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_ref(IntPtr proxy);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_proxy_unref(IntPtr proxy);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_object_get(IntPtr proxy);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_interface_get(IntPtr proxy);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_proxy_data_set(IntPtr proxy, string key, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_data_get(IntPtr proxy, string key);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_data_del(IntPtr proxy, string key);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_proxy_free_cb_add(IntPtr proxy, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_proxy_free_cb_del(IntPtr proxy, IntPtr cb, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_method_call_new(IntPtr proxy, string member);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_send(IntPtr proxy, IntPtr msg, IntPtr cb, IntPtr cb_data, double timeout);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_send_and_block(IntPtr proxy, IntPtr msg, double timeout);
+
+//     [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+//         eldbus_proxy_call(IntPtr proxy, string member, IntPtr cb, IntPtr cb_data, double timeout, string signature, ...);
+//
+//     [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+//         eldbus_proxy_vcall(IntPtr proxy, string member, IntPtr cb, IntPtr cb_data, double timeout, string signature, va_list ap);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_proxy_signal_handler_add(IntPtr proxy, string member, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_proxy_event_callback_add(IntPtr proxy, int type, IntPtr cb, IntPtr cb_data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_proxy_event_callback_del(IntPtr proxy, int type, IntPtr cb, IntPtr cb_data);
+}
+
+public class Proxy : IDisposable
+{
+    public IntPtr Handle {get;set;} = IntPtr.Zero;
+    public bool Own {get;set;} = true;
+
+    private void InitNew(IntPtr handle, bool own)
+    {
+        Handle = handle;
+        Own = own;
+        CheckHandle();
+    }
+
+    private void CheckHandle()
+    {
+        if (Handle == IntPtr.Zero)
+        {
+            eldbus.Common.RaiseNullHandle();
+        }
+    }
+
+    public Proxy(IntPtr handle, bool own)
+    {
+        InitNew(handle, own);
+    }
+
+    public Proxy(eldbus.Object obj, string _interface)
+    {
+        InitNew(eldbus_proxy_get(obj.Handle, _interface), true);
+    }
+
+    ~Proxy()
+    {
+        Dispose(false);
+    }
+
+    protected virtual void Dispose(bool disposing)
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        if (h == IntPtr.Zero)
+            return;
+
+        if (Own)
+            eldbus_proxy_unref(h);
+    }
+
+    public void Dispose()
+    {
+        Dispose(true);
+        GC.SuppressFinalize(this);
+    }
+
+    public void Free()
+    {
+        Dispose();
+    }
+
+    public IntPtr Release()
+    {
+        IntPtr h = Handle;
+        Handle = IntPtr.Zero;
+        return h;
+    }
+
+    eldbus.Object GetObject()
+    {
+        CheckHandle();
+        var ptr = eldbus_proxy_object_get(Handle);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Object' object from eldbus_proxy_object_get");
+        return new eldbus.Object(ptr, false);
+    }
+
+    string GetInterface()
+    {
+        CheckHandle();
+        var ptr = eldbus_proxy_interface_get(Handle);
+        return Eina.StringConversion.NativeUtf8ToManagedString(ptr);
+    }
+
+    eldbus.Message NewMethodCall(string member)
+    {
+        CheckHandle();
+
+        if (member == null)
+            throw new ArgumentNullException("member");
+
+        var ptr = eldbus_proxy_method_call_new(Handle, member);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Message' object from eldbus_proxy_method_call_new");
+        return new eldbus.Message(ptr, false);
+    }
+
+    eldbus.Pending Send(eldbus.Message msg, eldbus.MessageDelegate dlgt = null, double timeout = -1)
+    {
+        CheckHandle();
+
+        if (msg == null)
+            throw new ArgumentNullException("msg");
+
+        IntPtr cb_wrapper = dlgt == null ? IntPtr.Zero : eldbus.Common.GetMessageCbWrapperPtr();
+        IntPtr cb_data = dlgt == null ? IntPtr.Zero : Marshal.GetFunctionPointerForDelegate(dlgt);
+
+        var pending_hdl = eldbus_proxy_send(Handle, msg.Handle, cb_wrapper, cb_data, timeout);
+
+        if (pending_hdl == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Pending' object from eldbus_proxy_send");
+
+        return new eldbus.Pending(pending_hdl, false);
+    }
+
+    eldbus.Message SendAndBlock(eldbus.Message msg, double timeout = -1)
+    {
+        CheckHandle();
+        var ptr = eldbus_proxy_send_and_block(Handle, msg.Handle, timeout);
+        if (ptr == IntPtr.Zero)
+            throw new SEHException("Eldbus: could not get `Message' object from eldbus_proxy_send_and_block");
+        return new eldbus.Message(ptr, true);
+    }
+
+    eldbus.Pending Call(string member, eldbus.MessageDelegate dlgt, double timeout, params BasicMessageArgument[] args)
+    {
+        CheckHandle();
+
+        var msg = NewMethodCall(member);
+
+        foreach (BasicMessageArgument arg in args)
+        {
+            arg.AppendTo(msg);
+        }
+
+        return Send(msg, dlgt, timeout);
+    }
+
+    eldbus.Pending Call(string member, params BasicMessageArgument[] args)
+    {
+        return Call(member, null, -1.0, args);
+    }
+}
+
+}
+
diff --git a/internals/src/EflSharp/EflSharp/eldbus_service.cs b/internals/src/EflSharp/EflSharp/eldbus_service.cs
new file mode 100755 (executable)
index 0000000..33c3acb
--- /dev/null
@@ -0,0 +1,68 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+
+using static eldbus.EldbusServiceNativeFunctions;
+
+namespace eldbus {
+
+public static class EldbusServiceNativeFunctions
+{
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_interface_register(IntPtr conn, string path, IntPtr desc);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_interface_fallback_register(IntPtr conn, string path, IntPtr desc);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_interface_register2(IntPtr conn, string path, IntPtr desc);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_interface_fallback_register2(IntPtr conn, string path, IntPtr desc);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_service_interface_unregister(IntPtr iface);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_service_object_unregister(IntPtr iface);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_connection_get(IntPtr iface);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_object_path_get(IntPtr iface);
+
+//     [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+//         eldbus_service_signal_emit(IntPtr iface, uint signal_id, ...);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_signal_new(IntPtr iface, uint signal_id);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_service_signal_send(IntPtr iface, IntPtr signal_msg);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern void
+        eldbus_service_object_data_set(IntPtr iface, string key, IntPtr data);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_object_data_get(IntPtr iface, string key);
+
+    [DllImport(efl.Libs.Eldbus)] public static extern IntPtr
+        eldbus_service_object_data_del(IntPtr iface, string key);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_service_property_changed(IntPtr iface, string name);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_service_property_invalidate_set(IntPtr iface, string name, [MarshalAs(UnmanagedType.U1)] bool is_invalidate);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_service_object_manager_attach(IntPtr iface);
+
+    [DllImport(efl.Libs.Eldbus)] [return: MarshalAs(UnmanagedType.U1)] public static extern bool
+        eldbus_service_object_manager_detach(IntPtr iface);
+}
+
+}
+
diff --git a/internals/src/EflSharp/EflSharp/elm_general.eot.cs b/internals/src/EflSharp/EflSharp/elm_general.eot.cs
new file mode 100755 (executable)
index 0000000..15190f6
--- /dev/null
@@ -0,0 +1,745 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Elm { 
+/// <summary>Policy identifiers.</summary>
+public enum Policy
+{
+/// <summary>under which circumstances the application should quit automatically. See also <see cref="Elm.Policy.Quit"/>.</summary>
+Quit = 0,
+/// <summary>defines elm_exit() behaviour. See also <see cref="Elm.Policy.Exit"/>.
+/// 1.8</summary>
+Exit = 1,
+/// <summary>defines how throttling should work. See also <see cref="Elm.Policy.Throttle"/>
+/// 1.8</summary>
+Throttle = 2,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 3,
+}
+} 
+namespace Elm { 
+/// <summary>Possible values for the <see cref="Elm.Policy.Quit"/> policy</summary>
+public enum PolicyQuit
+{
+/// <summary>never quit the application automatically</summary>
+None = 0,
+/// <summary>quit when the application&apos;s last window is closed</summary>
+LastWindowClosed = 1,
+/// <summary>quit when the application&apos;s last window is hidden
+/// 1.14</summary>
+LastWindowHidden = 2,
+}
+} 
+namespace Elm { 
+/// <summary>Possible values for the <see cref="Elm.Policy.Exit"/> policy.
+/// 1.8</summary>
+public enum PolicyExit
+{
+/// <summary>just quit the main loop on elm_exit()</summary>
+None = 0,
+/// <summary>delete all the windows after quitting the main loop</summary>
+WindowsDel = 1,
+}
+} 
+namespace Elm { 
+/// <summary>Possible values for the <see cref="Elm.Policy.Throttle"/> policy.
+/// 1.8</summary>
+public enum PolicyThrottle
+{
+/// <summary>do whatever elementary config is configured to do</summary>
+Config = 0,
+/// <summary>always throttle when all windows are no longer visible</summary>
+HiddenAlways = 1,
+/// <summary>never throttle when windows are all hidden, regardless of config settings</summary>
+Never = 2,
+}
+} 
+namespace Elm { namespace Object { 
+/// <summary>Possible values for the #ELM_OBJECT_SELECT_MODE policy.
+/// 1.7</summary>
+public enum SelectMode
+{
+/// <summary>default select mode. Once an item is selected, it would stay highlighted and not going to call selected callback again even it was clicked. Items can get focus.</summary>
+Default = 0,
+/// <summary>always select mode. Item selected callbacks will be called every time for click events, even after the item was already selected. Items can get focus.</summary>
+Always = 1,
+/// <summary>no select mode. Items will never be highlighted and selected but the size will be adjusted by the finger size configuration. Items can&apos;t get focus.</summary>
+None = 2,
+/// <summary>no select mode with no finger size rule. Items will never be highlighted and selected and ignore the finger size. So the item size can be reduced below than the finger size configuration. Items can&apos;t get focus.</summary>
+DisplayOnly = 3,
+/// <summary>canary value: any value greater or equal to ELM_OBJECT_SELECT_MODE_MAX is forbidden.</summary>
+Max = 4,
+}
+} } 
+namespace Elm { namespace Object { 
+/// <summary>Possible values for the #ELM_OBJECT_MULTI_SELECT_MODE policy.
+/// 1.8</summary>
+public enum MultiSelectMode
+{
+/// <summary>default multiple select mode</summary>
+Default = 0,
+/// <summary>disallow mutiple selection when clicked without control key pressed</summary>
+WithControl = 1,
+/// <summary>canary value: any value greater or equal to ELM_OBJECT_MULTI_SELECT_MODE_MAX is forbidden.</summary>
+Max = 2,
+}
+} } 
+namespace Elm { namespace Wrap { 
+/// <summary>Line wrapping types. Type of word or character wrapping to use.
+/// See also @ref elm_entry_line_wrap_set, @ref elm_popup_content_text_wrap_type_set, @ref elm_label_line_wrap_set.</summary>
+public enum Type
+{
+/// <summary>No wrap - value is zero.</summary>
+None = 0,
+/// <summary>Char wrap - wrap between characters.</summary>
+Char = 1,
+/// <summary>Word wrap - wrap in allowed wrapping points (as defined in the unicode standard).</summary>
+Word = 2,
+/// <summary>Mixed wrap - Word wrap, and if that fails, char wrap.</summary>
+Mixed = 3,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 4,
+}
+} } 
+namespace Elm { namespace Icon { 
+/// <summary>Elementary icon types</summary>
+public enum Type
+{
+/// <summary>Icon has no type set</summary>
+None = 0,
+/// <summary>Icon is of type file</summary>
+File = 1,
+/// <summary>Icon is of type standard</summary>
+Standard = 2,
+}
+} } 
+namespace Elm { 
+/// <summary>Text Format types.</summary>
+public enum TextFormat
+{
+/// <summary>Plain UTF8 type</summary>
+PlainUtf8 = 0,
+/// <summary>Markup UTF8 type</summary>
+MarkupUtf8 = 1,
+}
+} 
+namespace Elm { namespace Input { namespace Panel { 
+/// <summary>Input panel (virtual keyboard) layout types. Type of input panel (virtual keyboard) to use - this is a hint and may not provide exactly what is desired.</summary>
+public enum Layout
+{
+/// <summary>Default layout.</summary>
+Normal = 0,
+/// <summary>Number layout.</summary>
+Number = 1,
+/// <summary>Email layout.</summary>
+Email = 2,
+/// <summary>URL layout.</summary>
+Url = 3,
+/// <summary>Phone Number layout.</summary>
+Phonenumber = 4,
+/// <summary>IP layout.</summary>
+Ip = 5,
+/// <summary>Month layout.</summary>
+Month = 6,
+/// <summary>Number Only layout.</summary>
+Numberonly = 7,
+/// <summary>Never use this.</summary>
+Invalid = 8,
+/// <summary>Hexadecimal layout.</summary>
+Hex = 9,
+/// <summary>Command-line terminal layout including esc, alt, ctrl key, so on (no auto-correct, no auto-capitalization).</summary>
+Terminal = 10,
+/// <summary>Like normal, but no auto-correct, no auto-capitalization etc.</summary>
+Password = 11,
+/// <summary>Date and time layout
+/// 1.8</summary>
+Datetime = 12,
+/// <summary>Emoticon layout
+/// 1.10</summary>
+Emoticon = 13,
+/// <summary>Voice layout, but if the IME does not support voice layout, then normal layout will be shown.
+/// 1.19</summary>
+Voice = 14,
+}
+} } } 
+namespace Elm { namespace Input { namespace Panel { 
+/// <summary>Input panel (virtual keyboard) language modes.</summary>
+public enum Lang
+{
+/// <summary>Automatic</summary>
+Automatic = 0,
+/// <summary>Alphabet</summary>
+Alphabet = 1,
+}
+} } } 
+namespace Elm { namespace Autocapital { 
+/// <summary>Autocapitalization Types. Choose method of auto-capitalization.</summary>
+public enum Type
+{
+/// <summary>No auto-capitalization when typing.</summary>
+None = 0,
+/// <summary>Autocapitalize each word typed.</summary>
+Word = 1,
+/// <summary>Autocapitalize the start of each sentence.</summary>
+Sentence = 2,
+/// <summary>Autocapitalize all letters.</summary>
+Allcharacter = 3,
+}
+} } 
+namespace Elm { namespace Input { namespace Panel { namespace ReturnKey { 
+/// <summary>&quot;Return&quot; Key types on the input panel (virtual keyboard).</summary>
+public enum Type
+{
+/// <summary>Default.</summary>
+Default = 0,
+/// <summary>Done.</summary>
+Done = 1,
+/// <summary>Go.</summary>
+Go = 2,
+/// <summary>Join.</summary>
+Join = 3,
+/// <summary>Login.</summary>
+Login = 4,
+/// <summary>Next.</summary>
+Next = 5,
+/// <summary>Search string or magnifier icon.</summary>
+Search = 6,
+/// <summary>Send.</summary>
+Send = 7,
+/// <summary>Sign-in
+/// 1.8</summary>
+Signin = 8,
+}
+} } } } 
+namespace Elm { namespace Input { 
+/// <summary>Enumeration that defines the types of Input Hints.
+/// 1.12</summary>
+public enum Hints
+{
+/// <summary>No active hints
+/// 1.12</summary>
+None = 0,
+/// <summary>Suggest word auto completion
+/// 1.12</summary>
+AutoComplete = 1,
+/// <summary>Typed text should not be stored.
+/// 1.12</summary>
+SensitiveData = 2,
+/// <summary>Autofill hint for a credit card expiration date
+/// 1.21</summary>
+AutofillCreditCardExpirationDate = 256,
+/// <summary>Autofill hint for a credit card expiration day
+/// 1.21</summary>
+AutofillCreditCardExpirationDay = 512,
+/// <summary>Autofill hint for a credit card expiration month
+/// 1.21</summary>
+AutofillCreditCardExpirationMonth = 768,
+/// <summary>Autofill hint for a credit card expiration year
+/// 1.21</summary>
+AutofillCreditCardExpirationYear = 1024,
+/// <summary>Autofill hint for a credit card number
+/// 1.21</summary>
+AutofillCreditCardNumber = 1280,
+/// <summary>Autofill hint for an email address
+/// 1.21</summary>
+AutofillEmailAddress = 1536,
+/// <summary>Autofill hint for a user&apos;s real name
+/// 1.21</summary>
+AutofillName = 1792,
+/// <summary>Autofill hint for a phone number
+/// 1.21</summary>
+AutofillPhone = 2048,
+/// <summary>Autofill hint for a postal address
+/// 1.21</summary>
+AutofillPostalAddress = 2304,
+/// <summary>Autofill hint for a postal code
+/// 1.21</summary>
+AutofillPostalCode = 2560,
+/// <summary>Autofill hint for a user&apos;s ID
+/// 1.21</summary>
+AutofillId = 2816,
+}
+} } 
+namespace Elm { 
+/// <summary>Enum of entry&apos;s copy &amp; paste policy.</summary>
+public enum CnpMode
+{
+/// <summary>copy &amp; paste text with markup tag</summary>
+Markup = 0,
+/// <summary>copy &amp; paste text without item(image) tag</summary>
+NoImage = 1,
+/// <summary>copy &amp; paste text without markup tag</summary>
+Plaintext = 2,
+}
+} 
+namespace Elm { namespace Genlist { namespace Item { 
+/// <summary>Defines if the item is of any special type (has subitems or it&apos;s the index of a group), or is just a simple item.</summary>
+public enum Type
+{
+/// <summary>Simple item.</summary>
+None = 0,
+/// <summary>This may be expanded and have child items.</summary>
+Tree = 1,
+/// <summary>An index item of a group of items. this item can have child items.</summary>
+Group = 2,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Max = 4,
+}
+} } } 
+namespace Elm { namespace Genlist { namespace Item { 
+/// <summary>Defines the type of the item part Used while updating item&apos;s parts It can be used at updating multi fields.</summary>
+public enum FieldType
+{
+/// <summary>Type all</summary>
+All = 0,
+/// <summary>Type text</summary>
+Text = 1,
+/// <summary>Type content</summary>
+Content = 2,
+/// <summary>Type state</summary>
+State = 4,
+}
+} } } 
+namespace Elm { namespace Genlist { namespace Item { 
+/// <summary>Defines where to position the item in the genlist.</summary>
+public enum ScrolltoType
+{
+/// <summary>Nothing will happen, Don&apos;t use this value.</summary>
+None = 0,
+/// <summary>To the nearest viewport.</summary>
+In = 1,
+/// <summary>To the top of viewport.</summary>
+Top = 2,
+/// <summary>To the middle of viewport.</summary>
+Middle = 4,
+/// <summary>To the bottom of viewport.</summary>
+Bottom = 8,
+}
+} } } 
+namespace Elm { namespace Gengrid { namespace Item { 
+/// <summary>Defines where to position the item in the genlist.</summary>
+public enum ScrolltoType
+{
+/// <summary>No scrollto.</summary>
+None = 0,
+/// <summary>To the nearest viewport.</summary>
+In = 1,
+/// <summary>To the top of viewport.</summary>
+Top = 2,
+/// <summary>To the middle of viewport.</summary>
+Middle = 4,
+/// <summary>To the bottom of viewport.</summary>
+Bottom = 8,
+}
+} } } 
+namespace Elm { namespace Gengrid { namespace Item { 
+/// <summary>Defines the type of the item part Used while updating item&apos;s parts. It can be used at updating multi fields.</summary>
+public enum FieldType
+{
+/// <summary>Type all</summary>
+All = 0,
+/// <summary>Type text</summary>
+Text = 1,
+/// <summary>Type content</summary>
+Content = 2,
+/// <summary>Type state</summary>
+State = 4,
+}
+} } } 
+namespace Elm { namespace List { 
+/// <summary>Set list&apos;s resizing behavior, transverse axis scrolling and items cropping. See each mode&apos;s description for more details.
+/// Note: Default value is <see cref="Elm.List.Mode.Scroll"/>.
+/// 
+/// Values here don&apos;t work as bitmasks -- only one can be chosen at a time.</summary>
+public enum Mode
+{
+/// <summary>The list won&apos;t set any of its size hints to inform how a possible container should resize it. Then, if it&apos;s not created as a &quot;resize object&quot;, it might end with zeroed dimensions. The list will respect the container&apos;s geometry and, if any of its items won&apos;t fit into its transverse axis, one won&apos;t be able to scroll it in that direction.</summary>
+Compress = 0,
+/// <summary>Default value. This is the same as #ELM_LIST_COMPRESS, with the exception that if any of its items won&apos;t fit into its transverse axis, one will be able to scroll it in that direction.</summary>
+Scroll = 1,
+/// <summary>Sets a minimum size hint on the list object, so that containers may respect it (and resize itself to fit the child properly). More specifically, a minimum size hint will be set for its transverse axis, so that the largest item in that direction fits well. This is naturally bound by the list object&apos;s maximum size hints, set externally.</summary>
+Limit = 2,
+/// <summary>Besides setting a minimum size on the transverse axis, just like on <see cref="Elm.List.Mode.Limit"/>, the list will set a minimum size on the longitudinal axis, trying to reserve space to all its children to be visible at a time. . This is naturally bound by the list object&apos;s maximum size hints, set externally.</summary>
+Expand = 3,
+/// <summary>Indicates error if returned by elm_list_mode_get().</summary>
+Last = 4,
+}
+} } 
+namespace Elm { namespace Event { 
+/// <summary>Data on the event when an Elementary policy has changed</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct PolicyChanged
+{
+   /// <summary>the policy identifier</summary>
+   public  uint Policy;
+   /// <summary>value the policy had before the change</summary>
+   public  int New_value;
+   /// <summary>new value the policy got</summary>
+   public  int Old_value;
+   ///<summary>Constructor for PolicyChanged.</summary>
+   public PolicyChanged(
+       uint Policy=default( uint),
+       int New_value=default( int),
+       int Old_value=default( int)   )
+   {
+      this.Policy = Policy;
+      this.New_value = New_value;
+      this.Old_value = Old_value;
+   }
+public static implicit operator PolicyChanged(IntPtr ptr)
+   {
+      var tmp = (PolicyChanged_StructInternal)Marshal.PtrToStructure(ptr, typeof(PolicyChanged_StructInternal));
+      return PolicyChanged_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct PolicyChanged.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct PolicyChanged_StructInternal
+{
+   
+   public  uint Policy;
+   
+   public  int New_value;
+   
+   public  int Old_value;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator PolicyChanged(PolicyChanged_StructInternal struct_)
+   {
+      return PolicyChanged_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator PolicyChanged_StructInternal(PolicyChanged struct_)
+   {
+      return PolicyChanged_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct PolicyChanged</summary>
+public static class PolicyChanged_StructConversion
+{
+   internal static PolicyChanged_StructInternal ToInternal(PolicyChanged _external_struct)
+   {
+      var _internal_struct = new PolicyChanged_StructInternal();
+
+      _internal_struct.Policy = _external_struct.Policy;
+      _internal_struct.New_value = _external_struct.New_value;
+      _internal_struct.Old_value = _external_struct.Old_value;
+
+      return _internal_struct;
+   }
+
+   internal static PolicyChanged ToManaged(PolicyChanged_StructInternal _internal_struct)
+   {
+      var _external_struct = new PolicyChanged();
+
+      _external_struct.Policy = _internal_struct.Policy;
+      _external_struct.New_value = _internal_struct.New_value;
+      _external_struct.Old_value = _internal_struct.Old_value;
+
+      return _external_struct;
+   }
+
+}
+} } 
+
+/// <summary>Elementary gen item</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ElmGenItem
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator ElmGenItem(IntPtr ptr)
+   {
+      var tmp = (ElmGenItem_StructInternal)Marshal.PtrToStructure(ptr, typeof(ElmGenItem_StructInternal));
+      return ElmGenItem_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ElmGenItem.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ElmGenItem_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ElmGenItem(ElmGenItem_StructInternal struct_)
+   {
+      return ElmGenItem_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ElmGenItem_StructInternal(ElmGenItem struct_)
+   {
+      return ElmGenItem_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ElmGenItem</summary>
+public static class ElmGenItem_StructConversion
+{
+   internal static ElmGenItem_StructInternal ToInternal(ElmGenItem _external_struct)
+   {
+      var _internal_struct = new ElmGenItem_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static ElmGenItem ToManaged(ElmGenItem_StructInternal _internal_struct)
+   {
+      var _external_struct = new ElmGenItem();
+
+
+      return _external_struct;
+   }
+
+}
+
+
+/// <summary>Efl access action data</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EflAccessActionData
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator EflAccessActionData(IntPtr ptr)
+   {
+      var tmp = (EflAccessActionData_StructInternal)Marshal.PtrToStructure(ptr, typeof(EflAccessActionData_StructInternal));
+      return EflAccessActionData_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct EflAccessActionData.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EflAccessActionData_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator EflAccessActionData(EflAccessActionData_StructInternal struct_)
+   {
+      return EflAccessActionData_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator EflAccessActionData_StructInternal(EflAccessActionData struct_)
+   {
+      return EflAccessActionData_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct EflAccessActionData</summary>
+public static class EflAccessActionData_StructConversion
+{
+   internal static EflAccessActionData_StructInternal ToInternal(EflAccessActionData _external_struct)
+   {
+      var _internal_struct = new EflAccessActionData_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static EflAccessActionData ToManaged(EflAccessActionData_StructInternal _internal_struct)
+   {
+      var _external_struct = new EflAccessActionData();
+
+
+      return _external_struct;
+   }
+
+}
+
+namespace Elm { 
+/// <summary>Data for the elm_validator_regexp_helper()</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ValidateContent
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator ValidateContent(IntPtr ptr)
+   {
+      var tmp = (ValidateContent_StructInternal)Marshal.PtrToStructure(ptr, typeof(ValidateContent_StructInternal));
+      return ValidateContent_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct ValidateContent.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct ValidateContent_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator ValidateContent(ValidateContent_StructInternal struct_)
+   {
+      return ValidateContent_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator ValidateContent_StructInternal(ValidateContent struct_)
+   {
+      return ValidateContent_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct ValidateContent</summary>
+public static class ValidateContent_StructConversion
+{
+   internal static ValidateContent_StructInternal ToInternal(ValidateContent _external_struct)
+   {
+      var _internal_struct = new ValidateContent_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static ValidateContent ToManaged(ValidateContent_StructInternal _internal_struct)
+   {
+      var _external_struct = new ValidateContent();
+
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Elm { 
+/// <summary>The info sent in the callback for the &quot;anchor,clicked&quot; signals emitted by entries.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EntryAnchorInfo
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator EntryAnchorInfo(IntPtr ptr)
+   {
+      var tmp = (EntryAnchorInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(EntryAnchorInfo_StructInternal));
+      return EntryAnchorInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct EntryAnchorInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EntryAnchorInfo_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator EntryAnchorInfo(EntryAnchorInfo_StructInternal struct_)
+   {
+      return EntryAnchorInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator EntryAnchorInfo_StructInternal(EntryAnchorInfo struct_)
+   {
+      return EntryAnchorInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct EntryAnchorInfo</summary>
+public static class EntryAnchorInfo_StructConversion
+{
+   internal static EntryAnchorInfo_StructInternal ToInternal(EntryAnchorInfo _external_struct)
+   {
+      var _internal_struct = new EntryAnchorInfo_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static EntryAnchorInfo ToManaged(EntryAnchorInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new EntryAnchorInfo();
+
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Elm { 
+/// <summary>The info sent in the callback for &quot;anchor,hover&quot; signals emitted by the Anchor_Hover widget</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EntryAnchorHoverInfo
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator EntryAnchorHoverInfo(IntPtr ptr)
+   {
+      var tmp = (EntryAnchorHoverInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(EntryAnchorHoverInfo_StructInternal));
+      return EntryAnchorHoverInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct EntryAnchorHoverInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EntryAnchorHoverInfo_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator EntryAnchorHoverInfo(EntryAnchorHoverInfo_StructInternal struct_)
+   {
+      return EntryAnchorHoverInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator EntryAnchorHoverInfo_StructInternal(EntryAnchorHoverInfo struct_)
+   {
+      return EntryAnchorHoverInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct EntryAnchorHoverInfo</summary>
+public static class EntryAnchorHoverInfo_StructConversion
+{
+   internal static EntryAnchorHoverInfo_StructInternal ToInternal(EntryAnchorHoverInfo _external_struct)
+   {
+      var _internal_struct = new EntryAnchorHoverInfo_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static EntryAnchorHoverInfo ToManaged(EntryAnchorHoverInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new EntryAnchorHoverInfo();
+
+
+      return _external_struct;
+   }
+
+}
+} 
+namespace Elm { 
+/// <summary>This corresponds to Edje_Entry_Change_Info. Includes information about a change in the entry</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EntryChangeInfo
+{
+///<summary>Placeholder field</summary>
+public IntPtr field;
+public static implicit operator EntryChangeInfo(IntPtr ptr)
+   {
+      var tmp = (EntryChangeInfo_StructInternal)Marshal.PtrToStructure(ptr, typeof(EntryChangeInfo_StructInternal));
+      return EntryChangeInfo_StructConversion.ToManaged(tmp);
+   }
+}
+///<summary>Internal wrapper for struct EntryChangeInfo.</summary>
+[StructLayout(LayoutKind.Sequential)]
+public struct EntryChangeInfo_StructInternal
+{
+internal IntPtr field;
+   ///<summary>Implicit conversion to the internal/marshalling representation.</summary>
+   public static implicit operator EntryChangeInfo(EntryChangeInfo_StructInternal struct_)
+   {
+      return EntryChangeInfo_StructConversion.ToManaged(struct_);
+   }
+   ///<summary>Implicit conversion to the managed representation.</summary>
+   public static implicit operator EntryChangeInfo_StructInternal(EntryChangeInfo struct_)
+   {
+      return EntryChangeInfo_StructConversion.ToInternal(struct_);
+   }
+}
+/// <summary>Conversion class for struct EntryChangeInfo</summary>
+public static class EntryChangeInfo_StructConversion
+{
+   internal static EntryChangeInfo_StructInternal ToInternal(EntryChangeInfo _external_struct)
+   {
+      var _internal_struct = new EntryChangeInfo_StructInternal();
+
+
+      return _internal_struct;
+   }
+
+   internal static EntryChangeInfo ToManaged(EntryChangeInfo_StructInternal _internal_struct)
+   {
+      var _external_struct = new EntryChangeInfo();
+
+
+      return _external_struct;
+   }
+
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/elm_interface_scrollable.eo.cs b/internals/src/EflSharp/EflSharp/elm_interface_scrollable.eo.cs
new file mode 100755 (executable)
index 0000000..4d7b040
--- /dev/null
@@ -0,0 +1,5454 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Elm { 
+/// <summary>Elm scrollable mixin</summary>
+[InterfaceScrollableNativeInherit]
+public interface InterfaceScrollable : 
+   Efl.Ui.Scrollable ,
+   Efl.Ui.WidgetFocusManager ,
+   Efl.Ui.Focus.ManagerSub ,
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Control scrolling gravity on the scrollable
+/// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+/// 
+/// The scroller will adjust the view to glue itself as follows.
+/// 
+/// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+/// 
+/// Default values for x and y are 0.0</summary>
+/// <param name="x">Horizontal scrolling gravity</param>
+/// <param name="y">Vertical scrolling gravity</param>
+/// <returns></returns>
+ void GetGravity( out double x,  out double y);
+   /// <summary>Control scrolling gravity on the scrollable
+/// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+/// 
+/// The scroller will adjust the view to glue itself as follows.
+/// 
+/// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+/// 
+/// Default values for x and y are 0.0</summary>
+/// <param name="x">Horizontal scrolling gravity</param>
+/// <param name="y">Vertical scrolling gravity</param>
+/// <returns></returns>
+ void SetGravity( double x,  double y);
+   /// <summary>Bouncing behavior
+/// When scrolling, the scroller may &quot;bounce&quot; when reaching an edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axis. This API will set if it is enabled for the given axis with the boolean parameters for each axis.</summary>
+/// <param name="horiz">Horizontal bounce policy.</param>
+/// <param name="vert">Vertical bounce policy.</param>
+/// <returns></returns>
+ void GetBounceAllow( out bool horiz,  out bool vert);
+   /// <summary>Bouncing behavior
+/// When scrolling, the scroller may &quot;bounce&quot; when reaching an edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axis. This API will set if it is enabled for the given axis with the boolean parameters for each axis.</summary>
+/// <param name="horiz">Horizontal bounce policy.</param>
+/// <param name="vert">Vertical bounce policy.</param>
+/// <returns></returns>
+ void SetBounceAllow( bool horiz,  bool vert);
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+/// <returns><c>true</c> if wheel is disabled, <c>false</c> otherwise</returns>
+bool GetWheelDisabled();
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+/// <param name="disabled"><c>true</c> if wheel is disabled, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetWheelDisabled( bool disabled);
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+/// 
+/// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+/// <returns>Which axis (or axes) to block</returns>
+Efl.Ui.ScrollBlock GetMovementBlock();
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+/// 
+/// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+/// <param name="block">Which axis (or axes) to block</param>
+/// <returns></returns>
+ void SetMovementBlock( Efl.Ui.ScrollBlock block);
+   /// <summary>Momentum animator</summary>
+/// <returns><c>true</c> if disabled, <c>false</c> otherwise</returns>
+bool GetMomentumAnimatorDisabled();
+   /// <summary>Momentum animator</summary>
+/// <param name="disabled"><c>true</c> if disabled, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetMomentumAnimatorDisabled( bool disabled);
+   /// <summary>Scrollbar visibility policy
+/// #ELM_SCROLLER_POLICY_AUTO means the scrollbar is made visible if it is needed, and otherwise kept hidden. #ELM_SCROLLER_POLICY_ON turns it on all the time, and #ELM_SCROLLER_POLICY_OFF always keeps it off. This applies respectively for the horizontal and vertical scrollbars.</summary>
+/// <param name="hbar">Horizontal scrollbar policy</param>
+/// <param name="vbar">Vertical scrollbar policy</param>
+/// <returns></returns>
+ void GetPolicy( out Elm.Scroller.Policy hbar,  out Elm.Scroller.Policy vbar);
+   /// <summary>Scrollbar visibility policy
+/// #ELM_SCROLLER_POLICY_AUTO means the scrollbar is made visible if it is needed, and otherwise kept hidden. #ELM_SCROLLER_POLICY_ON turns it on all the time, and #ELM_SCROLLER_POLICY_OFF always keeps it off. This applies respectively for the horizontal and vertical scrollbars.</summary>
+/// <param name="hbar">Horizontal scrollbar policy</param>
+/// <param name="vbar">Vertical scrollbar policy</param>
+/// <returns></returns>
+ void SetPolicy( Elm.Scroller.Policy hbar,  Elm.Scroller.Policy vbar);
+   /// <summary>Currently visible content region
+/// This gets the current region in the content object that is visible through the scroller. The region co-ordinates are returned in the <c>x</c>, <c>y</c>, <c>w</c>, <c>h</c> values pointed to.
+/// 
+/// Note: All coordinates are relative to the content.
+/// 
+/// See: <see cref="Elm.InterfaceScrollable.ShowContentRegion"/>.</summary>
+/// <param name="x">X coordinate of the region</param>
+/// <param name="y">Y coordinate of the region</param>
+/// <param name="w">Width of the region</param>
+/// <param name="h">Height of the region</param>
+/// <returns></returns>
+ void GetContentRegion( out  int x,  out  int y,  out  int w,  out  int h);
+   /// <summary>Currently visible content region
+/// This gets the current region in the content object that is visible through the scroller. The region co-ordinates are returned in the <c>x</c>, <c>y</c>, <c>w</c>, <c>h</c> values pointed to.
+/// 
+/// Note: All coordinates are relative to the content.
+/// 
+/// See: <see cref="Elm.InterfaceScrollable.ShowContentRegion"/>.</summary>
+/// <param name="x">X coordinate of the region</param>
+/// <param name="y">Y coordinate of the region</param>
+/// <param name="w">Width of the region</param>
+/// <param name="h">Height of the region</param>
+/// <returns></returns>
+ void SetContentRegion(  int x,   int y,   int w,   int h);
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+/// <returns><c>true</c> if events are propagated, <c>false</c> otherwise</returns>
+bool GetContentEvents();
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+/// <param name="repeat_events"><c>true</c> if events are propagated, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetContentEvents( bool repeat_events);
+   /// <summary>Scroll page size relative to viewport size.
+/// The scroller is capable of limiting scrolling by the user to &quot;pages&quot;. That is to jump by and only show a &quot;whole page&quot; at a time as if the continuous area of the scroller content is split into page sized pieces. This sets the size of a page relative to the viewport of the scroller. 1.0 is &quot;1 viewport&quot; is size (horizontally or vertically). 0.0 turns it off in that axis. This is mutually exclusive with page size (see <see cref="Elm.InterfaceScrollable.GetPageSize"/> for more information). Likewise 0.5 is &quot;half a viewport&quot;. Sane usable values are normally between 0.0 and 1.0 including 1.0. If you only want 1 axis to be page &quot;limited&quot;, use 0.0 for the other axis.</summary>
+/// <param name="x">The horizontal page relative size</param>
+/// <param name="y">The vertical page relative size</param>
+/// <returns></returns>
+ void GetPageSize( out  int x,  out  int y);
+   /// <summary>Scroll page size relative to viewport size.
+/// The scroller is capable of limiting scrolling by the user to &quot;pages&quot;. That is to jump by and only show a &quot;whole page&quot; at a time as if the continuous area of the scroller content is split into page sized pieces. This sets the size of a page relative to the viewport of the scroller. 1.0 is &quot;1 viewport&quot; is size (horizontally or vertically). 0.0 turns it off in that axis. This is mutually exclusive with page size (see <see cref="Elm.InterfaceScrollable.GetPageSize"/> for more information). Likewise 0.5 is &quot;half a viewport&quot;. Sane usable values are normally between 0.0 and 1.0 including 1.0. If you only want 1 axis to be page &quot;limited&quot;, use 0.0 for the other axis.</summary>
+/// <param name="x">The horizontal page relative size</param>
+/// <param name="y">The vertical page relative size</param>
+/// <returns></returns>
+ void SetPageSize(  int x,   int y);
+   /// <summary>Bounce animator</summary>
+/// <returns><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</returns>
+bool GetBounceAnimatorDisabled();
+   /// <summary>Bounce animator</summary>
+/// <param name="disabled"><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetBounceAnimatorDisabled( bool disabled);
+   /// <summary>Page scroll limit</summary>
+/// <param name="page_limit_h">Page limit horizontal</param>
+/// <param name="page_limit_v">Page limit vertical</param>
+/// <returns></returns>
+ void GetPageScrollLimit( out  int page_limit_h,  out  int page_limit_v);
+   /// <summary>Page scroll limit</summary>
+/// <param name="page_limit_h">Page limit horizontal</param>
+/// <param name="page_limit_v">Page limit vertical</param>
+/// <returns></returns>
+ void SetPageScrollLimit(  int page_limit_h,   int page_limit_v);
+   /// <summary>Page snapping behavior
+/// When scrolling, if a scroller is paged (see elm_scroller_page_size_set() and elm_scroller_page_relative_set()), the scroller may snap to pages when being scrolled, i.e., even if it had momentum to scroll further, it will stop at the next page boundaries. This is disabled, by default, for both axis. This function will set if it that is enabled or not, for each axis.
+/// 
+/// Note: If <c>obj</c> is not set to have pages, nothing will happen after this call.
+/// 1.8</summary>
+/// <param name="horiz">Allow snap horizontally</param>
+/// <param name="vert">Allow snap vertically</param>
+/// <returns></returns>
+ void GetPageSnapAllow( out bool horiz,  out bool vert);
+   /// <summary>Page snapping behavior
+/// When scrolling, if a scroller is paged (see elm_scroller_page_size_set() and elm_scroller_page_relative_set()), the scroller may snap to pages when being scrolled, i.e., even if it had momentum to scroll further, it will stop at the next page boundaries. This is disabled, by default, for both axis. This function will set if it that is enabled or not, for each axis.
+/// 
+/// Note: If <c>obj</c> is not set to have pages, nothing will happen after this call.
+/// 1.8</summary>
+/// <param name="horiz">Allow snap horizontally</param>
+/// <param name="vert">Allow snap vertically</param>
+/// <returns></returns>
+ void SetPageSnapAllow( bool horiz,  bool vert);
+   /// <summary>Pagin property</summary>
+/// <param name="pagerel_h">Page relation horizontal</param>
+/// <param name="pagerel_v">Page relation vertical</param>
+/// <param name="pagesize_h">Page size horizontal</param>
+/// <param name="pagesize_v">Page size vertical</param>
+/// <returns></returns>
+ void GetPaging( out double pagerel_h,  out double pagerel_v,  out  int pagesize_h,  out  int pagesize_v);
+   /// <summary>Pagin property</summary>
+/// <param name="pagerel_h">Page relation horizontal</param>
+/// <param name="pagerel_v">Page relation vertical</param>
+/// <param name="pagesize_h">Page size horizontal</param>
+/// <param name="pagesize_v">Page size vertical</param>
+/// <returns></returns>
+ void SetPaging( double pagerel_h,  double pagerel_v,   int pagesize_h,   int pagesize_v);
+   /// <summary>Single direction scroll configuration
+/// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+/// 
+/// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+/// 1.8</summary>
+/// <returns>The single direction scroll policy</returns>
+Elm.Scroller.SingleDirection GetSingleDirection();
+   /// <summary>Single direction scroll configuration
+/// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+/// 
+/// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+/// 1.8</summary>
+/// <param name="single_dir">The single direction scroll policy</param>
+/// <returns></returns>
+ void SetSingleDirection( Elm.Scroller.SingleDirection single_dir);
+   /// <summary>Step size</summary>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns></returns>
+ void GetStepSize( out  int x,  out  int y);
+   /// <summary>Step size</summary>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns></returns>
+ void SetStepSize(  int x,   int y);
+   /// <summary>Controls an infinite loop for a scroller.
+/// 1.14</summary>
+/// <param name="loop_h">The scrolling horizontal loop</param>
+/// <param name="loop_v">The scrolling vertical loop</param>
+/// <returns></returns>
+ void GetContentLoop( out bool loop_h,  out bool loop_v);
+   /// <summary>Controls an infinite loop for a scroller.
+/// 1.14</summary>
+/// <param name="loop_h">The scrolling horizontal loop</param>
+/// <param name="loop_v">The scrolling vertical loop</param>
+/// <returns></returns>
+ void SetContentLoop( bool loop_h,  bool loop_v);
+   /// <summary>Set the callback to run when the content has been moved up.</summary>
+/// <param name="scroll_up_cb">The callback</param>
+/// <returns></returns>
+ void SetScrollUpCb( ElmInterfaceScrollableCb scroll_up_cb);
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <param name="hbar_drag_cb">The callback</param>
+/// <returns></returns>
+ void SetHbarDragCb( ElmInterfaceScrollableCb hbar_drag_cb);
+   /// <summary>Set the callback to run when dragging of the contents has started.</summary>
+/// <param name="drag_start_cb">The callback</param>
+/// <returns></returns>
+ void SetDragStartCb( ElmInterfaceScrollableCb drag_start_cb);
+   /// <summary>Set the callback to run when scrolling of the contents has started.</summary>
+/// <param name="scroll_start_cb">The callback</param>
+/// <returns></returns>
+ void SetScrollStartCb( ElmInterfaceScrollableCb scroll_start_cb);
+   /// <summary>Freeze property</summary>
+/// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetFreeze( bool freeze);
+   /// <summary>When the viewport is resized, the callback is called.</summary>
+/// <param name="viewport_resize_cb">The callback</param>
+/// <returns></returns>
+ void SetContentViewportResizeCb( ElmInterfaceScrollableResizeCb viewport_resize_cb);
+   /// <summary>Set the callback to run when the content has been moved to the left</summary>
+/// <param name="scroll_left_cb">The callback</param>
+/// <returns></returns>
+ void SetScrollLeftCb( ElmInterfaceScrollableCb scroll_left_cb);
+   /// <summary>Set the callback to run when the vertical scrollbar is pressed.</summary>
+/// <param name="vbar_press_cb">The callback</param>
+/// <returns></returns>
+ void SetVbarPressCb( ElmInterfaceScrollableCb vbar_press_cb);
+   /// <summary>Set the callback to run when the horizontal scrollbar is pressed.</summary>
+/// <param name="hbar_press_cb">The callback</param>
+/// <returns></returns>
+ void SetHbarPressCb( ElmInterfaceScrollableCb hbar_press_cb);
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <param name="hbar_unpress_cb">The callback</param>
+/// <returns></returns>
+ void SetHbarUnpressCb( ElmInterfaceScrollableCb hbar_unpress_cb);
+   /// <summary>Set the callback to run when dragging of the contents has stopped.</summary>
+/// <param name="drag_stop_cb">The callback</param>
+/// <returns></returns>
+ void SetDragStopCb( ElmInterfaceScrollableCb drag_stop_cb);
+   /// <summary>Set the callback to run when scrolling of the contents has stopped.</summary>
+/// <param name="scroll_stop_cb">The callback</param>
+/// <returns></returns>
+ void SetScrollStopCb( ElmInterfaceScrollableCb scroll_stop_cb);
+   /// <summary>Extern pan</summary>
+/// <param name="pan">Pan object</param>
+/// <returns></returns>
+ void SetExternPan( Efl.Canvas.Object pan);
+   /// <summary>Set the callback to run when the visible page changes.</summary>
+/// <param name="page_change_cb">The callback</param>
+/// <returns></returns>
+ void SetPageChangeCb( ElmInterfaceScrollableCb page_change_cb);
+   /// <summary>Hold property</summary>
+/// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+/// <returns></returns>
+ void SetHold( bool hold);
+   /// <summary>Set the callback to run when the scrolling animation has started.</summary>
+/// <param name="animate_start_cb">The callback</param>
+/// <returns></returns>
+ void SetAnimateStartCb( ElmInterfaceScrollableCb animate_start_cb);
+   /// <summary>Set the callback to run when the content has been moved down.</summary>
+/// <param name="scroll_down_cb">The callback</param>
+/// <returns></returns>
+ void SetScrollDownCb( ElmInterfaceScrollableCb scroll_down_cb);
+   /// <summary>Set scroll page size relative to viewport size.</summary>
+/// <param name="h_pagerel">Page relation horizontal</param>
+/// <param name="v_pagerel">Page relation vertical</param>
+/// <returns></returns>
+ void SetPageRelative( double h_pagerel,  double v_pagerel);
+   /// <summary>Set the callback to run when the content has been moved.</summary>
+/// <param name="scroll_cb">The callback</param>
+/// <returns></returns>
+ void SetScrollCb( ElmInterfaceScrollableCb scroll_cb);
+   /// <summary>Set the callback to run when the scrolling animation has stopped.</summary>
+/// <param name="animate_stop_cb">The callback</param>
+/// <returns></returns>
+ void SetAnimateStopCb( ElmInterfaceScrollableCb animate_stop_cb);
+   /// <summary>set the callback to run on minimal limit content</summary>
+/// <param name="min_limit_cb">The callback</param>
+/// <returns></returns>
+ void SetContentMinLimitCb( ElmInterfaceScrollableMinLimitCb min_limit_cb);
+   /// <summary>Set the callback to run when the content has been moved to the right.</summary>
+/// <param name="scroll_right_cb">The callback</param>
+/// <returns></returns>
+ void SetScrollRightCb( ElmInterfaceScrollableCb scroll_right_cb);
+   /// <summary>Content property</summary>
+/// <param name="content">Content object</param>
+/// <returns></returns>
+ void SetScrollableContent( Efl.Canvas.Object content);
+   /// <summary>Set the callback to run when the left edge of the content has been reached.</summary>
+/// <param name="edge_left_cb">The callback</param>
+/// <returns></returns>
+ void SetEdgeLeftCb( ElmInterfaceScrollableCb edge_left_cb);
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <param name="vbar_drag_cb">The callback</param>
+/// <returns></returns>
+ void SetVbarDragCb( ElmInterfaceScrollableCb vbar_drag_cb);
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <param name="vbar_unpress_cb">The callback</param>
+/// <returns></returns>
+ void SetVbarUnpressCb( ElmInterfaceScrollableCb vbar_unpress_cb);
+   /// <summary>Set the callback to run when the bottom edge of the content has been reached.</summary>
+/// <param name="edge_bottom_cb">The callback</param>
+/// <returns></returns>
+ void SetEdgeBottomCb( ElmInterfaceScrollableCb edge_bottom_cb);
+   /// <summary>Set the callback to run when the right edge of the content has been reached.</summary>
+/// <param name="edge_right_cb">The callback</param>
+/// <returns></returns>
+ void SetEdgeRightCb( ElmInterfaceScrollableCb edge_right_cb);
+   /// <summary>Set the callback to run when the top edge of the content has been reached.</summary>
+/// <param name="edge_top_cb">The callback</param>
+/// <returns></returns>
+ void SetEdgeTopCb( ElmInterfaceScrollableCb edge_top_cb);
+   /// <summary>Object property</summary>
+/// <param name="edje_object">Edje object</param>
+/// <param name="hit_rectangle">Evas object</param>
+/// <returns></returns>
+ void SetObjects( Efl.Canvas.Object edje_object,  Efl.Canvas.Object hit_rectangle);
+   /// <summary>Get scroll last page number.
+/// The page number starts from 0. 0 is the first page. This returns the last page number among the pages.
+/// 
+/// See: <see cref="Elm.InterfaceScrollable.GetCurrentPage"/>, <see cref="Elm.InterfaceScrollable.ShowPage"/> and <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+/// <param name="pagenumber_h">The horizontal page number</param>
+/// <param name="pagenumber_v">The vertical page number</param>
+/// <returns></returns>
+ void GetLastPage( out  int pagenumber_h,  out  int pagenumber_v);
+   /// <summary>Get scroll current page number.
+/// The page number starts from 0. 0 is the first page. Current page means the page which meets the top-left of the viewport. If there are two or more pages in the viewport, it returns the number of the page which meets the top-left of the viewport.
+/// 
+/// See: <see cref="Elm.InterfaceScrollable.GetLastPage"/>, <see cref="Elm.InterfaceScrollable.ShowPage"/> and <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+/// <param name="pagenumber_h">The horizontal page number</param>
+/// <param name="pagenumber_v">The vertical page number</param>
+/// <returns></returns>
+ void GetCurrentPage( out  int pagenumber_h,  out  int pagenumber_v);
+   /// <summary>Content viewport geometry</summary>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <param name="w">Width</param>
+/// <param name="h">Height</param>
+/// <returns></returns>
+ void GetContentViewportGeometry( out  int x,  out  int y,  out  int w,  out  int h);
+   /// <summary>Get the size of the content object
+/// This gets the size of the content object of the scroller.</summary>
+/// <param name="w">Width of the content object.</param>
+/// <param name="h">Height of the content object.</param>
+/// <returns></returns>
+ void GetContentSize( out  int w,  out  int h);
+   /// <summary>Whether scrolling should loop around.</summary>
+/// <returns>True to enable looping.</returns>
+bool GetItemLoopEnabled();
+   /// <summary>Whether scrolling should loop around.</summary>
+/// <param name="enable">True to enable looping.</param>
+/// <returns></returns>
+ void SetItemLoopEnabled( bool enable);
+   /// <summary>Set the content position</summary>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <param name="sig">Send signals to the theme corresponding to the scroll direction, or if an edge was reached.</param>
+/// <returns></returns>
+ void SetContentPos(  int x,   int y,  bool sig);
+   /// <summary>Get content position</summary>
+/// <param name="x">X coordinate</param>
+/// <param name="y">Y coordinate</param>
+/// <returns></returns>
+ void GetContentPos( out  int x,  out  int y);
+   /// <summary>Show a specific virtual region within the scroller content object by page number.
+/// 0, 0 of the indicated page is located at the top-left of the viewport. This will jump to the page directly without animation.
+/// 
+/// See <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+/// <param name="pagenumber_h">The horizontal page number</param>
+/// <param name="pagenumber_v">The vertical page number</param>
+/// <returns></returns>
+ void ShowPage(  int pagenumber_h,   int pagenumber_v);
+   /// <summary>Show a specific virtual region within the scroller content object.
+/// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. Unlike elm_scroller_region_show(), this allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.
+/// 
+/// See <see cref="Elm.InterfaceScrollable.ShowContentRegion"/></summary>
+/// <param name="x">X coordinate of the region</param>
+/// <param name="y">Y coordinate of the region</param>
+/// <param name="w">Width of the region</param>
+/// <param name="h">Height of the region</param>
+/// <returns></returns>
+ void RegionBringIn(  int x,   int y,   int w,   int h);
+   /// <summary>Show a specific virtual region within the scroller content object by page number.
+/// 0, 0 of the indicated page is located at the top-left of the viewport. This will slide to the page with animation.
+/// 
+/// <see cref="Elm.InterfaceScrollable.ShowPage"/></summary>
+/// <param name="pagenumber_h">The horizontal page number</param>
+/// <param name="pagenumber_v">The vertical page number</param>
+/// <returns></returns>
+ void PageBringIn(  int pagenumber_h,   int pagenumber_v);
+   /// <summary>Show a specific virtual region within the scroller content object
+/// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller.</summary>
+/// <param name="x">X coordinate of the region</param>
+/// <param name="y">Y coordinate of the region</param>
+/// <param name="w">Width of the region</param>
+/// <param name="h">Height of the region</param>
+/// <returns></returns>
+ void ShowContentRegion(  int x,   int y,   int w,   int h);
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+/// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+/// <param name="w">Whether to limit the minimum horizontal size</param>
+/// <param name="h">Whether to limit the minimum vertical size</param>
+/// <returns></returns>
+ void ContentMinLimit( bool w,  bool h);
+   /// <summary></summary>
+/// <param name="x"></param>
+/// <param name="y"></param>
+/// <returns></returns>
+ void SetWantedRegion(  int x,   int y);
+   /// <summary></summary>
+/// <param name="x"></param>
+/// <param name="y"></param>
+/// <returns></returns>
+ void CustomPanPosAdjust(  int x,   int y);
+                                                                                                                                                                                                                                          /// <summary>Called when content changed</summary>
+   event EventHandler ChangedEvt;
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+/// <value><c>true</c> if wheel is disabled, <c>false</c> otherwise</value>
+   bool WheelDisabled {
+      get ;
+      set ;
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+/// 
+/// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+/// <value>Which axis (or axes) to block</value>
+   Efl.Ui.ScrollBlock MovementBlock {
+      get ;
+      set ;
+   }
+   /// <summary>Momentum animator</summary>
+/// <value><c>true</c> if disabled, <c>false</c> otherwise</value>
+   bool MomentumAnimatorDisabled {
+      get ;
+      set ;
+   }
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+/// <value><c>true</c> if events are propagated, <c>false</c> otherwise</value>
+   bool ContentEvents {
+      get ;
+      set ;
+   }
+   /// <summary>Bounce animator</summary>
+/// <value><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</value>
+   bool BounceAnimatorDisabled {
+      get ;
+      set ;
+   }
+   /// <summary>Single direction scroll configuration
+/// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+/// 
+/// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+/// 1.8</summary>
+/// <value>The single direction scroll policy</value>
+   Elm.Scroller.SingleDirection SingleDirection {
+      get ;
+      set ;
+   }
+   /// <summary>Set the callback to run when the content has been moved up.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb ScrollUpCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb HbarDragCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when dragging of the contents has started.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb DragStartCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when scrolling of the contents has started.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb ScrollStartCb {
+      set ;
+   }
+   /// <summary>Freeze property</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   bool Freeze {
+      set ;
+   }
+   /// <summary>When the viewport is resized, the callback is called.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableResizeCb ContentViewportResizeCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the content has been moved to the left</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb ScrollLeftCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the vertical scrollbar is pressed.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb VbarPressCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is pressed.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb HbarPressCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb HbarUnpressCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when dragging of the contents has stopped.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb DragStopCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when scrolling of the contents has stopped.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb ScrollStopCb {
+      set ;
+   }
+   /// <summary>Extern pan</summary>
+/// <value>Pan object</value>
+   Efl.Canvas.Object ExternPan {
+      set ;
+   }
+   /// <summary>Set the callback to run when the visible page changes.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb PageChangeCb {
+      set ;
+   }
+   /// <summary>Hold property</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   bool Hold {
+      set ;
+   }
+   /// <summary>Set the callback to run when the scrolling animation has started.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb AnimateStartCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the content has been moved down.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb ScrollDownCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the content has been moved.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb ScrollCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the scrolling animation has stopped.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb AnimateStopCb {
+      set ;
+   }
+   /// <summary>set the callback to run on minimal limit content</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableMinLimitCb ContentMinLimitCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the content has been moved to the right.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb ScrollRightCb {
+      set ;
+   }
+   /// <summary>Content property</summary>
+/// <value>Content object</value>
+   Efl.Canvas.Object ScrollableContent {
+      set ;
+   }
+   /// <summary>Set the callback to run when the left edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb EdgeLeftCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb VbarDragCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb VbarUnpressCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the bottom edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb EdgeBottomCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the right edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb EdgeRightCb {
+      set ;
+   }
+   /// <summary>Set the callback to run when the top edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   ElmInterfaceScrollableCb EdgeTopCb {
+      set ;
+   }
+   /// <summary>Whether scrolling should loop around.</summary>
+/// <value>True to enable looping.</value>
+   bool ItemLoopEnabled {
+      get ;
+      set ;
+   }
+}
+/// <summary>Elm scrollable mixin</summary>
+sealed public class InterfaceScrollableConcrete : 
+
+InterfaceScrollable
+   , Efl.Ui.Scrollable, Efl.Ui.WidgetFocusManager, Efl.Ui.Focus.Manager, Efl.Ui.Focus.ManagerSub
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (InterfaceScrollableConcrete))
+            return Elm.InterfaceScrollableNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private EventHandlerList eventHandlers = new EventHandlerList();
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      elm_interface_scrollable_mixin_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public InterfaceScrollableConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~InterfaceScrollableConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static InterfaceScrollableConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new InterfaceScrollableConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+   private readonly object eventLock = new object();
+   private Dictionary<string, int> event_cb_count = new Dictionary<string, int>();
+   private bool add_cpp_event_handler(string lib, string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 0) {
+         IntPtr desc = Efl.EventDescription.GetNative(lib, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+          bool result = Efl.Eo.Globals.efl_event_callback_priority_add(handle, desc, 0, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to add event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } 
+      event_cb_count[key]++;
+      return true;
+   }
+   private bool remove_cpp_event_handler(string key, Efl.EventCb evt_delegate) {
+      int event_count = 0;
+      if (!event_cb_count.TryGetValue(key, out event_count))
+         event_cb_count[key] = event_count;
+      if (event_count == 1) {
+         IntPtr desc = Efl.EventDescription.GetNative(efl.Libs.Elementary, key);
+         if (desc == IntPtr.Zero) {
+            Eina.Log.Error($"Failed to get native event {key}");
+            return false;
+         }
+         bool result = Efl.Eo.Globals.efl_event_callback_del(handle, desc, evt_delegate, System.IntPtr.Zero);
+         if (!result) {
+            Eina.Log.Error($"Failed to remove event proxy for event {key}");
+            return false;
+         }
+         Eina.Error.RaiseIfUnhandledException();
+      } else if (event_count == 0) {
+         Eina.Log.Error($"Trying to remove proxy for event {key} when there is nothing registered.");
+         return false;
+      } 
+      event_cb_count[key]--;
+      return true;
+   }
+private static object ChangedEvtKey = new object();
+   /// <summary>Called when content changed</summary>
+   public event EventHandler ChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_ELM_INTERFACE_SCROLLABLE_EVENT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_ELM_INTERFACE_SCROLLABLE_EVENT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChangedEvt.</summary>
+   public void On_ChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChangedEvt_delegate;
+   private void on_ChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStartEvtKey = new object();
+   /// <summary>Called when scroll operation starts</summary>
+   public event EventHandler ScrollStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStartEvt.</summary>
+   public void On_ScrollStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStartEvt_delegate;
+   private void on_ScrollStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollEvtKey = new object();
+   /// <summary>Called when scrolling</summary>
+   public event EventHandler ScrollEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL";
+            if (remove_cpp_event_handler(key, this.evt_ScrollEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollEvt.</summary>
+   public void On_ScrollEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollEvt_delegate;
+   private void on_ScrollEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollStopEvtKey = new object();
+   /// <summary>Called when scroll operation stops</summary>
+   public event EventHandler ScrollStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollStopEvt.</summary>
+   public void On_ScrollStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollStopEvt_delegate;
+   private void on_ScrollStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollUpEvtKey = new object();
+   /// <summary>Called when scrolling upwards</summary>
+   public event EventHandler ScrollUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollUpEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_UP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollUpEvt.</summary>
+   public void On_ScrollUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollUpEvt_delegate;
+   private void on_ScrollUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDownEvtKey = new object();
+   /// <summary>Called when scrolling downwards</summary>
+   public event EventHandler ScrollDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDownEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDownEvt.</summary>
+   public void On_ScrollDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDownEvt_delegate;
+   private void on_ScrollDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollLeftEvtKey = new object();
+   /// <summary>Called when scrolling left</summary>
+   public event EventHandler ScrollLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollLeftEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollLeftEvt.</summary>
+   public void On_ScrollLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollLeftEvt_delegate;
+   private void on_ScrollLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollRightEvtKey = new object();
+   /// <summary>Called when scrolling right</summary>
+   public event EventHandler ScrollRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollRightEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_ScrollRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollRightEvt.</summary>
+   public void On_ScrollRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollRightEvt_delegate;
+   private void on_ScrollRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeUpEvtKey = new object();
+   /// <summary>Called when hitting the top edge</summary>
+   public event EventHandler EdgeUpEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeUpEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_UP";
+            if (remove_cpp_event_handler(key, this.evt_EdgeUpEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeUpEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeUpEvt.</summary>
+   public void On_EdgeUpEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeUpEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeUpEvt_delegate;
+   private void on_EdgeUpEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeUpEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeDownEvtKey = new object();
+   /// <summary>Called when hitting the bottom edge</summary>
+   public event EventHandler EdgeDownEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeDownEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_DOWN";
+            if (remove_cpp_event_handler(key, this.evt_EdgeDownEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeDownEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeDownEvt.</summary>
+   public void On_EdgeDownEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeDownEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeDownEvt_delegate;
+   private void on_EdgeDownEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeDownEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeLeftEvtKey = new object();
+   /// <summary>Called when hitting the left edge</summary>
+   public event EventHandler EdgeLeftEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeLeftEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_LEFT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeLeftEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeLeftEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeLeftEvt.</summary>
+   public void On_EdgeLeftEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeLeftEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeLeftEvt_delegate;
+   private void on_EdgeLeftEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeLeftEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object EdgeRightEvtKey = new object();
+   /// <summary>Called when hitting the right edge</summary>
+   public event EventHandler EdgeRightEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_EdgeRightEvt_delegate)) {
+               eventHandlers.AddHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_EDGE_RIGHT";
+            if (remove_cpp_event_handler(key, this.evt_EdgeRightEvt_delegate)) { 
+               eventHandlers.RemoveHandler(EdgeRightEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event EdgeRightEvt.</summary>
+   public void On_EdgeRightEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[EdgeRightEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_EdgeRightEvt_delegate;
+   private void on_EdgeRightEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_EdgeRightEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStartEvtKey = new object();
+   /// <summary>Called when scroll animation starts</summary>
+   public event EventHandler ScrollAnimStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStartEvt.</summary>
+   public void On_ScrollAnimStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStartEvt_delegate;
+   private void on_ScrollAnimStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollAnimStopEvtKey = new object();
+   /// <summary>Called when scroll animation stopps</summary>
+   public event EventHandler ScrollAnimStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollAnimStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_ANIM_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollAnimStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollAnimStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollAnimStopEvt.</summary>
+   public void On_ScrollAnimStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollAnimStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollAnimStopEvt_delegate;
+   private void on_ScrollAnimStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollAnimStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStartEvtKey = new object();
+   /// <summary>Called when scroll drag starts</summary>
+   public event EventHandler ScrollDragStartEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStartEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_START";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStartEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStartEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStartEvt.</summary>
+   public void On_ScrollDragStartEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStartEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStartEvt_delegate;
+   private void on_ScrollDragStartEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStartEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ScrollDragStopEvtKey = new object();
+   /// <summary>Called when scroll drag stops</summary>
+   public event EventHandler ScrollDragStopEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_ScrollDragStopEvt_delegate)) {
+               eventHandlers.AddHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_EVENT_SCROLL_DRAG_STOP";
+            if (remove_cpp_event_handler(key, this.evt_ScrollDragStopEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ScrollDragStopEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ScrollDragStopEvt.</summary>
+   public void On_ScrollDragStopEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ScrollDragStopEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ScrollDragStopEvt_delegate;
+   private void on_ScrollDragStopEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ScrollDragStopEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RedirectChangedEvtKey = new object();
+   /// <summary>Redirect object has changed, the old manager is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> RedirectChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RedirectChangedEvt_delegate)) {
+               eventHandlers.AddHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_REDIRECT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_RedirectChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RedirectChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RedirectChangedEvt.</summary>
+   public void On_RedirectChangedEvt(Efl.Ui.Focus.ManagerRedirectChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerRedirectChangedEvt_Args>)eventHandlers[RedirectChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RedirectChangedEvt_delegate;
+   private void on_RedirectChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerRedirectChangedEvt_Args args = new Efl.Ui.Focus.ManagerRedirectChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ManagerConcrete(evt.Info);
+      try {
+         On_RedirectChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object FlushPreEvtKey = new object();
+   /// <summary>After this event, the manager object will calculate relations in the graph. Can be used to add / remove children in a lazy fashion.
+   /// 1.20</summary>
+   public event EventHandler FlushPreEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_FlushPreEvt_delegate)) {
+               eventHandlers.AddHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_FLUSH_PRE";
+            if (remove_cpp_event_handler(key, this.evt_FlushPreEvt_delegate)) { 
+               eventHandlers.RemoveHandler(FlushPreEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event FlushPreEvt.</summary>
+   public void On_FlushPreEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[FlushPreEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_FlushPreEvt_delegate;
+   private void on_FlushPreEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_FlushPreEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object CoordsDirtyEvtKey = new object();
+   /// <summary>Cached relationship calculation results have been invalidated.
+   /// 1.20</summary>
+   public event EventHandler CoordsDirtyEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_CoordsDirtyEvt_delegate)) {
+               eventHandlers.AddHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_COORDS_DIRTY";
+            if (remove_cpp_event_handler(key, this.evt_CoordsDirtyEvt_delegate)) { 
+               eventHandlers.RemoveHandler(CoordsDirtyEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event CoordsDirtyEvt.</summary>
+   public void On_CoordsDirtyEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[CoordsDirtyEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_CoordsDirtyEvt_delegate;
+   private void on_CoordsDirtyEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_CoordsDirtyEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Manager_focusChangedEvtKey = new object();
+   /// <summary>The manager_focus property has changed. The previously focused object is passed as an event argument.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> Manager_focusChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Manager_focusChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_MANAGER_FOCUS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Manager_focusChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Manager_focusChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Manager_focusChangedEvt.</summary>
+   public void On_Manager_focusChangedEvt(Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args>)eventHandlers[Manager_focusChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Manager_focusChangedEvt_delegate;
+   private void on_Manager_focusChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args args = new Efl.Ui.Focus.ManagerManager_focusChangedEvt_Args();
+      args.arg = new Efl.Ui.Focus.ObjectConcrete(evt.Info);
+      try {
+         On_Manager_focusChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object Dirty_logic_freezeChangedEvtKey = new object();
+   /// <summary>Called when this focus manager is frozen or thawed, even_info beeing <c>true</c> indicates that it is now frozen, <c>false</c> indicates that it is thawed.
+   /// 1.20</summary>
+   public event EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> Dirty_logic_freezeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_UI_FOCUS_MANAGER_EVENT_DIRTY_LOGIC_FREEZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_Dirty_logic_freezeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(Dirty_logic_freezeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event Dirty_logic_freezeChangedEvt.</summary>
+   public void On_Dirty_logic_freezeChangedEvt(Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args>)eventHandlers[Dirty_logic_freezeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_Dirty_logic_freezeChangedEvt_delegate;
+   private void on_Dirty_logic_freezeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args args = new Efl.Ui.Focus.ManagerDirty_logic_freezeChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_Dirty_logic_freezeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+    void register_event_proxies()
+   {
+      evt_ChangedEvt_delegate = new Efl.EventCb(on_ChangedEvt_NativeCallback);
+      evt_ScrollStartEvt_delegate = new Efl.EventCb(on_ScrollStartEvt_NativeCallback);
+      evt_ScrollEvt_delegate = new Efl.EventCb(on_ScrollEvt_NativeCallback);
+      evt_ScrollStopEvt_delegate = new Efl.EventCb(on_ScrollStopEvt_NativeCallback);
+      evt_ScrollUpEvt_delegate = new Efl.EventCb(on_ScrollUpEvt_NativeCallback);
+      evt_ScrollDownEvt_delegate = new Efl.EventCb(on_ScrollDownEvt_NativeCallback);
+      evt_ScrollLeftEvt_delegate = new Efl.EventCb(on_ScrollLeftEvt_NativeCallback);
+      evt_ScrollRightEvt_delegate = new Efl.EventCb(on_ScrollRightEvt_NativeCallback);
+      evt_EdgeUpEvt_delegate = new Efl.EventCb(on_EdgeUpEvt_NativeCallback);
+      evt_EdgeDownEvt_delegate = new Efl.EventCb(on_EdgeDownEvt_NativeCallback);
+      evt_EdgeLeftEvt_delegate = new Efl.EventCb(on_EdgeLeftEvt_NativeCallback);
+      evt_EdgeRightEvt_delegate = new Efl.EventCb(on_EdgeRightEvt_NativeCallback);
+      evt_ScrollAnimStartEvt_delegate = new Efl.EventCb(on_ScrollAnimStartEvt_NativeCallback);
+      evt_ScrollAnimStopEvt_delegate = new Efl.EventCb(on_ScrollAnimStopEvt_NativeCallback);
+      evt_ScrollDragStartEvt_delegate = new Efl.EventCb(on_ScrollDragStartEvt_NativeCallback);
+      evt_ScrollDragStopEvt_delegate = new Efl.EventCb(on_ScrollDragStopEvt_NativeCallback);
+      evt_RedirectChangedEvt_delegate = new Efl.EventCb(on_RedirectChangedEvt_NativeCallback);
+      evt_FlushPreEvt_delegate = new Efl.EventCb(on_FlushPreEvt_NativeCallback);
+      evt_CoordsDirtyEvt_delegate = new Efl.EventCb(on_CoordsDirtyEvt_NativeCallback);
+      evt_Manager_focusChangedEvt_delegate = new Efl.EventCb(on_Manager_focusChangedEvt_NativeCallback);
+      evt_Dirty_logic_freezeChangedEvt_delegate = new Efl.EventCb(on_Dirty_logic_freezeChangedEvt_NativeCallback);
+   }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   public  void GetGravity( out double x,  out double y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_gravity_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control scrolling gravity on the scrollable
+   /// The gravity defines how the scroller will adjust its view when the size of the scroller contents increases.
+   /// 
+   /// The scroller will adjust the view to glue itself as follows.
+   /// 
+   /// x=0.0, for staying where it is relative to the left edge of the content x=1.0, for staying where it is relative to the right edge of the content y=0.0, for staying where it is relative to the top edge of the content y=1.0, for staying where it is relative to the bottom edge of the content
+   /// 
+   /// Default values for x and y are 0.0</summary>
+   /// <param name="x">Horizontal scrolling gravity</param>
+   /// <param name="y">Vertical scrolling gravity</param>
+   /// <returns></returns>
+   public  void SetGravity( double x,  double y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_gravity_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching an edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axis. This API will set if it is enabled for the given axis with the boolean parameters for each axis.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   public  void GetBounceAllow( out bool horiz,  out bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_allow_get_ptr.Value.Delegate(this.NativeHandle, out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bouncing behavior
+   /// When scrolling, the scroller may &quot;bounce&quot; when reaching an edge of the content object. This is a visual way to indicate the end has been reached. This is enabled by default for both axis. This API will set if it is enabled for the given axis with the boolean parameters for each axis.</summary>
+   /// <param name="horiz">Horizontal bounce policy.</param>
+   /// <param name="vert">Vertical bounce policy.</param>
+   /// <returns></returns>
+   public  void SetBounceAllow( bool horiz,  bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_allow_set_ptr.Value.Delegate(this.NativeHandle, horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+   /// <returns><c>true</c> if wheel is disabled, <c>false</c> otherwise</returns>
+   public bool GetWheelDisabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_wheel_disabled_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+   /// <param name="disabled"><c>true</c> if wheel is disabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetWheelDisabled( bool disabled) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_wheel_disabled_set_ptr.Value.Delegate(this.NativeHandle, disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+   /// 
+   /// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+   /// <returns>Which axis (or axes) to block</returns>
+   public Efl.Ui.ScrollBlock GetMovementBlock() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_movement_block_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Blocking of scrolling (per axis)
+   /// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+   /// 
+   /// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+   /// <param name="block">Which axis (or axes) to block</param>
+   /// <returns></returns>
+   public  void SetMovementBlock( Efl.Ui.ScrollBlock block) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_movement_block_set_ptr.Value.Delegate(this.NativeHandle, block);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Momentum animator</summary>
+   /// <returns><c>true</c> if disabled, <c>false</c> otherwise</returns>
+   public bool GetMomentumAnimatorDisabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_momentum_animator_disabled_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Momentum animator</summary>
+   /// <param name="disabled"><c>true</c> if disabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetMomentumAnimatorDisabled( bool disabled) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_momentum_animator_disabled_set_ptr.Value.Delegate(this.NativeHandle, disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Scrollbar visibility policy
+   /// #ELM_SCROLLER_POLICY_AUTO means the scrollbar is made visible if it is needed, and otherwise kept hidden. #ELM_SCROLLER_POLICY_ON turns it on all the time, and #ELM_SCROLLER_POLICY_OFF always keeps it off. This applies respectively for the horizontal and vertical scrollbars.</summary>
+   /// <param name="hbar">Horizontal scrollbar policy</param>
+   /// <param name="vbar">Vertical scrollbar policy</param>
+   /// <returns></returns>
+   public  void GetPolicy( out Elm.Scroller.Policy hbar,  out Elm.Scroller.Policy vbar) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_policy_get_ptr.Value.Delegate(this.NativeHandle, out hbar,  out vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scrollbar visibility policy
+   /// #ELM_SCROLLER_POLICY_AUTO means the scrollbar is made visible if it is needed, and otherwise kept hidden. #ELM_SCROLLER_POLICY_ON turns it on all the time, and #ELM_SCROLLER_POLICY_OFF always keeps it off. This applies respectively for the horizontal and vertical scrollbars.</summary>
+   /// <param name="hbar">Horizontal scrollbar policy</param>
+   /// <param name="vbar">Vertical scrollbar policy</param>
+   /// <returns></returns>
+   public  void SetPolicy( Elm.Scroller.Policy hbar,  Elm.Scroller.Policy vbar) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_policy_set_ptr.Value.Delegate(this.NativeHandle, hbar,  vbar);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Currently visible content region
+   /// This gets the current region in the content object that is visible through the scroller. The region co-ordinates are returned in the <c>x</c>, <c>y</c>, <c>w</c>, <c>h</c> values pointed to.
+   /// 
+   /// Note: All coordinates are relative to the content.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.ShowContentRegion"/>.</summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   public  void GetContentRegion( out  int x,  out  int y,  out  int w,  out  int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_region_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y,  out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Currently visible content region
+   /// This gets the current region in the content object that is visible through the scroller. The region co-ordinates are returned in the <c>x</c>, <c>y</c>, <c>w</c>, <c>h</c> values pointed to.
+   /// 
+   /// Note: All coordinates are relative to the content.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.ShowContentRegion"/>.</summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   public  void SetContentRegion(  int x,   int y,   int w,   int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_region_set_ptr.Value.Delegate(this.NativeHandle, x,  y,  w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+   /// <returns><c>true</c> if events are propagated, <c>false</c> otherwise</returns>
+   public bool GetContentEvents() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_events_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+   /// <param name="repeat_events"><c>true</c> if events are propagated, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetContentEvents( bool repeat_events) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_events_set_ptr.Value.Delegate(this.NativeHandle, repeat_events);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Scroll page size relative to viewport size.
+   /// The scroller is capable of limiting scrolling by the user to &quot;pages&quot;. That is to jump by and only show a &quot;whole page&quot; at a time as if the continuous area of the scroller content is split into page sized pieces. This sets the size of a page relative to the viewport of the scroller. 1.0 is &quot;1 viewport&quot; is size (horizontally or vertically). 0.0 turns it off in that axis. This is mutually exclusive with page size (see <see cref="Elm.InterfaceScrollable.GetPageSize"/> for more information). Likewise 0.5 is &quot;half a viewport&quot;. Sane usable values are normally between 0.0 and 1.0 including 1.0. If you only want 1 axis to be page &quot;limited&quot;, use 0.0 for the other axis.</summary>
+   /// <param name="x">The horizontal page relative size</param>
+   /// <param name="y">The vertical page relative size</param>
+   /// <returns></returns>
+   public  void GetPageSize( out  int x,  out  int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_size_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Scroll page size relative to viewport size.
+   /// The scroller is capable of limiting scrolling by the user to &quot;pages&quot;. That is to jump by and only show a &quot;whole page&quot; at a time as if the continuous area of the scroller content is split into page sized pieces. This sets the size of a page relative to the viewport of the scroller. 1.0 is &quot;1 viewport&quot; is size (horizontally or vertically). 0.0 turns it off in that axis. This is mutually exclusive with page size (see <see cref="Elm.InterfaceScrollable.GetPageSize"/> for more information). Likewise 0.5 is &quot;half a viewport&quot;. Sane usable values are normally between 0.0 and 1.0 including 1.0. If you only want 1 axis to be page &quot;limited&quot;, use 0.0 for the other axis.</summary>
+   /// <param name="x">The horizontal page relative size</param>
+   /// <param name="y">The vertical page relative size</param>
+   /// <returns></returns>
+   public  void SetPageSize(  int x,   int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_size_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Bounce animator</summary>
+   /// <returns><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</returns>
+   public bool GetBounceAnimatorDisabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_animator_disabled_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Bounce animator</summary>
+   /// <param name="disabled"><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetBounceAnimatorDisabled( bool disabled) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_bounce_animator_disabled_set_ptr.Value.Delegate(this.NativeHandle, disabled);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Page scroll limit</summary>
+   /// <param name="page_limit_h">Page limit horizontal</param>
+   /// <param name="page_limit_v">Page limit vertical</param>
+   /// <returns></returns>
+   public  void GetPageScrollLimit( out  int page_limit_h,  out  int page_limit_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_scroll_limit_get_ptr.Value.Delegate(this.NativeHandle, out page_limit_h,  out page_limit_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Page scroll limit</summary>
+   /// <param name="page_limit_h">Page limit horizontal</param>
+   /// <param name="page_limit_v">Page limit vertical</param>
+   /// <returns></returns>
+   public  void SetPageScrollLimit(  int page_limit_h,   int page_limit_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_scroll_limit_set_ptr.Value.Delegate(this.NativeHandle, page_limit_h,  page_limit_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Page snapping behavior
+   /// When scrolling, if a scroller is paged (see elm_scroller_page_size_set() and elm_scroller_page_relative_set()), the scroller may snap to pages when being scrolled, i.e., even if it had momentum to scroll further, it will stop at the next page boundaries. This is disabled, by default, for both axis. This function will set if it that is enabled or not, for each axis.
+   /// 
+   /// Note: If <c>obj</c> is not set to have pages, nothing will happen after this call.
+   /// 1.8</summary>
+   /// <param name="horiz">Allow snap horizontally</param>
+   /// <param name="vert">Allow snap vertically</param>
+   /// <returns></returns>
+   public  void GetPageSnapAllow( out bool horiz,  out bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_snap_allow_get_ptr.Value.Delegate(this.NativeHandle, out horiz,  out vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Page snapping behavior
+   /// When scrolling, if a scroller is paged (see elm_scroller_page_size_set() and elm_scroller_page_relative_set()), the scroller may snap to pages when being scrolled, i.e., even if it had momentum to scroll further, it will stop at the next page boundaries. This is disabled, by default, for both axis. This function will set if it that is enabled or not, for each axis.
+   /// 
+   /// Note: If <c>obj</c> is not set to have pages, nothing will happen after this call.
+   /// 1.8</summary>
+   /// <param name="horiz">Allow snap horizontally</param>
+   /// <param name="vert">Allow snap vertically</param>
+   /// <returns></returns>
+   public  void SetPageSnapAllow( bool horiz,  bool vert) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_snap_allow_set_ptr.Value.Delegate(this.NativeHandle, horiz,  vert);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Pagin property</summary>
+   /// <param name="pagerel_h">Page relation horizontal</param>
+   /// <param name="pagerel_v">Page relation vertical</param>
+   /// <param name="pagesize_h">Page size horizontal</param>
+   /// <param name="pagesize_v">Page size vertical</param>
+   /// <returns></returns>
+   public  void GetPaging( out double pagerel_h,  out double pagerel_v,  out  int pagesize_h,  out  int pagesize_v) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_paging_get_ptr.Value.Delegate(this.NativeHandle, out pagerel_h,  out pagerel_v,  out pagesize_h,  out pagesize_v);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Pagin property</summary>
+   /// <param name="pagerel_h">Page relation horizontal</param>
+   /// <param name="pagerel_v">Page relation vertical</param>
+   /// <param name="pagesize_h">Page size horizontal</param>
+   /// <param name="pagesize_v">Page size vertical</param>
+   /// <returns></returns>
+   public  void SetPaging( double pagerel_h,  double pagerel_v,   int pagesize_h,   int pagesize_v) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_paging_set_ptr.Value.Delegate(this.NativeHandle, pagerel_h,  pagerel_v,  pagesize_h,  pagesize_v);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Single direction scroll configuration
+   /// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+   /// 
+   /// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+   /// 1.8</summary>
+   /// <returns>The single direction scroll policy</returns>
+   public Elm.Scroller.SingleDirection GetSingleDirection() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_single_direction_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Single direction scroll configuration
+   /// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+   /// 
+   /// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+   /// 1.8</summary>
+   /// <param name="single_dir">The single direction scroll policy</param>
+   /// <returns></returns>
+   public  void SetSingleDirection( Elm.Scroller.SingleDirection single_dir) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_single_direction_set_ptr.Value.Delegate(this.NativeHandle, single_dir);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Step size</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   public  void GetStepSize( out  int x,  out  int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_step_size_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Step size</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   public  void SetStepSize(  int x,   int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_step_size_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.
+   /// 1.14</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The scrolling vertical loop</param>
+   /// <returns></returns>
+   public  void GetContentLoop( out bool loop_h,  out bool loop_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_loop_get_ptr.Value.Delegate(this.NativeHandle, out loop_h,  out loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Controls an infinite loop for a scroller.
+   /// 1.14</summary>
+   /// <param name="loop_h">The scrolling horizontal loop</param>
+   /// <param name="loop_v">The scrolling vertical loop</param>
+   /// <returns></returns>
+   public  void SetContentLoop( bool loop_h,  bool loop_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_loop_set_ptr.Value.Delegate(this.NativeHandle, loop_h,  loop_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the callback to run when the content has been moved up.</summary>
+   /// <param name="scroll_up_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetScrollUpCb( ElmInterfaceScrollableCb scroll_up_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_up_cb_set_ptr.Value.Delegate(this.NativeHandle, scroll_up_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+   /// <param name="hbar_drag_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetHbarDragCb( ElmInterfaceScrollableCb hbar_drag_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hbar_drag_cb_set_ptr.Value.Delegate(this.NativeHandle, hbar_drag_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when dragging of the contents has started.</summary>
+   /// <param name="drag_start_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetDragStartCb( ElmInterfaceScrollableCb drag_start_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_drag_start_cb_set_ptr.Value.Delegate(this.NativeHandle, drag_start_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when scrolling of the contents has started.</summary>
+   /// <param name="scroll_start_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetScrollStartCb( ElmInterfaceScrollableCb scroll_start_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_start_cb_set_ptr.Value.Delegate(this.NativeHandle, scroll_start_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Freeze property</summary>
+   /// <param name="freeze"><c>true</c> if freeze, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetFreeze( bool freeze) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_freeze_set_ptr.Value.Delegate(this.NativeHandle, freeze);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>When the viewport is resized, the callback is called.</summary>
+   /// <param name="viewport_resize_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetContentViewportResizeCb( ElmInterfaceScrollableResizeCb viewport_resize_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_viewport_resize_cb_set_ptr.Value.Delegate(this.NativeHandle, viewport_resize_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the content has been moved to the left</summary>
+   /// <param name="scroll_left_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetScrollLeftCb( ElmInterfaceScrollableCb scroll_left_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_left_cb_set_ptr.Value.Delegate(this.NativeHandle, scroll_left_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the vertical scrollbar is pressed.</summary>
+   /// <param name="vbar_press_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetVbarPressCb( ElmInterfaceScrollableCb vbar_press_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_vbar_press_cb_set_ptr.Value.Delegate(this.NativeHandle, vbar_press_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is pressed.</summary>
+   /// <param name="hbar_press_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetHbarPressCb( ElmInterfaceScrollableCb hbar_press_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hbar_press_cb_set_ptr.Value.Delegate(this.NativeHandle, hbar_press_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+   /// <param name="hbar_unpress_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetHbarUnpressCb( ElmInterfaceScrollableCb hbar_unpress_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hbar_unpress_cb_set_ptr.Value.Delegate(this.NativeHandle, hbar_unpress_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when dragging of the contents has stopped.</summary>
+   /// <param name="drag_stop_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetDragStopCb( ElmInterfaceScrollableCb drag_stop_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_drag_stop_cb_set_ptr.Value.Delegate(this.NativeHandle, drag_stop_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when scrolling of the contents has stopped.</summary>
+   /// <param name="scroll_stop_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetScrollStopCb( ElmInterfaceScrollableCb scroll_stop_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_stop_cb_set_ptr.Value.Delegate(this.NativeHandle, scroll_stop_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Extern pan</summary>
+   /// <param name="pan">Pan object</param>
+   /// <returns></returns>
+   public  void SetExternPan( Efl.Canvas.Object pan) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_extern_pan_set_ptr.Value.Delegate(this.NativeHandle, pan);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the visible page changes.</summary>
+   /// <param name="page_change_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetPageChangeCb( ElmInterfaceScrollableCb page_change_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_change_cb_set_ptr.Value.Delegate(this.NativeHandle, page_change_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Hold property</summary>
+   /// <param name="hold"><c>true</c> if hold, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   public  void SetHold( bool hold) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_hold_set_ptr.Value.Delegate(this.NativeHandle, hold);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the scrolling animation has started.</summary>
+   /// <param name="animate_start_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetAnimateStartCb( ElmInterfaceScrollableCb animate_start_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_animate_start_cb_set_ptr.Value.Delegate(this.NativeHandle, animate_start_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the content has been moved down.</summary>
+   /// <param name="scroll_down_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetScrollDownCb( ElmInterfaceScrollableCb scroll_down_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_down_cb_set_ptr.Value.Delegate(this.NativeHandle, scroll_down_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set scroll page size relative to viewport size.</summary>
+   /// <param name="h_pagerel">Page relation horizontal</param>
+   /// <param name="v_pagerel">Page relation vertical</param>
+   /// <returns></returns>
+   public  void SetPageRelative( double h_pagerel,  double v_pagerel) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_relative_set_ptr.Value.Delegate(this.NativeHandle, h_pagerel,  v_pagerel);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the callback to run when the content has been moved.</summary>
+   /// <param name="scroll_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetScrollCb( ElmInterfaceScrollableCb scroll_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_cb_set_ptr.Value.Delegate(this.NativeHandle, scroll_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the scrolling animation has stopped.</summary>
+   /// <param name="animate_stop_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetAnimateStopCb( ElmInterfaceScrollableCb animate_stop_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_animate_stop_cb_set_ptr.Value.Delegate(this.NativeHandle, animate_stop_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>set the callback to run on minimal limit content</summary>
+   /// <param name="min_limit_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetContentMinLimitCb( ElmInterfaceScrollableMinLimitCb min_limit_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_min_limit_cb_set_ptr.Value.Delegate(this.NativeHandle, min_limit_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the content has been moved to the right.</summary>
+   /// <param name="scroll_right_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetScrollRightCb( ElmInterfaceScrollableCb scroll_right_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_scroll_right_cb_set_ptr.Value.Delegate(this.NativeHandle, scroll_right_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Content property</summary>
+   /// <param name="content">Content object</param>
+   /// <returns></returns>
+   public  void SetScrollableContent( Efl.Canvas.Object content) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_set_ptr.Value.Delegate(this.NativeHandle, content);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the left edge of the content has been reached.</summary>
+   /// <param name="edge_left_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetEdgeLeftCb( ElmInterfaceScrollableCb edge_left_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_left_cb_set_ptr.Value.Delegate(this.NativeHandle, edge_left_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+   /// <param name="vbar_drag_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetVbarDragCb( ElmInterfaceScrollableCb vbar_drag_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_vbar_drag_cb_set_ptr.Value.Delegate(this.NativeHandle, vbar_drag_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+   /// <param name="vbar_unpress_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetVbarUnpressCb( ElmInterfaceScrollableCb vbar_unpress_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_vbar_unpress_cb_set_ptr.Value.Delegate(this.NativeHandle, vbar_unpress_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the bottom edge of the content has been reached.</summary>
+   /// <param name="edge_bottom_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetEdgeBottomCb( ElmInterfaceScrollableCb edge_bottom_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_bottom_cb_set_ptr.Value.Delegate(this.NativeHandle, edge_bottom_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the right edge of the content has been reached.</summary>
+   /// <param name="edge_right_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetEdgeRightCb( ElmInterfaceScrollableCb edge_right_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_right_cb_set_ptr.Value.Delegate(this.NativeHandle, edge_right_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the callback to run when the top edge of the content has been reached.</summary>
+   /// <param name="edge_top_cb">The callback</param>
+   /// <returns></returns>
+   public  void SetEdgeTopCb( ElmInterfaceScrollableCb edge_top_cb) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_edge_top_cb_set_ptr.Value.Delegate(this.NativeHandle, edge_top_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Object property</summary>
+   /// <param name="edje_object">Edje object</param>
+   /// <param name="hit_rectangle">Evas object</param>
+   /// <returns></returns>
+   public  void SetObjects( Efl.Canvas.Object edje_object,  Efl.Canvas.Object hit_rectangle) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_objects_set_ptr.Value.Delegate(this.NativeHandle, edje_object,  hit_rectangle);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get scroll last page number.
+   /// The page number starts from 0. 0 is the first page. This returns the last page number among the pages.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.GetCurrentPage"/>, <see cref="Elm.InterfaceScrollable.ShowPage"/> and <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   public  void GetLastPage( out  int pagenumber_h,  out  int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_last_page_get_ptr.Value.Delegate(this.NativeHandle, out pagenumber_h,  out pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get scroll current page number.
+   /// The page number starts from 0. 0 is the first page. Current page means the page which meets the top-left of the viewport. If there are two or more pages in the viewport, it returns the number of the page which meets the top-left of the viewport.
+   /// 
+   /// See: <see cref="Elm.InterfaceScrollable.GetLastPage"/>, <see cref="Elm.InterfaceScrollable.ShowPage"/> and <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   public  void GetCurrentPage( out  int pagenumber_h,  out  int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_current_page_get_ptr.Value.Delegate(this.NativeHandle, out pagenumber_h,  out pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Content viewport geometry</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <param name="w">Width</param>
+   /// <param name="h">Height</param>
+   /// <returns></returns>
+   public  void GetContentViewportGeometry( out  int x,  out  int y,  out  int w,  out  int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_viewport_geometry_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y,  out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Get the size of the content object
+   /// This gets the size of the content object of the scroller.</summary>
+   /// <param name="w">Width of the content object.</param>
+   /// <param name="h">Height of the content object.</param>
+   /// <returns></returns>
+   public  void GetContentSize( out  int w,  out  int h) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_size_get_ptr.Value.Delegate(this.NativeHandle, out w,  out h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Whether scrolling should loop around.</summary>
+   /// <returns>True to enable looping.</returns>
+   public bool GetItemLoopEnabled() {
+       var _ret_var = Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_item_loop_enabled_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Whether scrolling should loop around.</summary>
+   /// <param name="enable">True to enable looping.</param>
+   /// <returns></returns>
+   public  void SetItemLoopEnabled( bool enable) {
+                         Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_item_loop_enabled_set_ptr.Value.Delegate(this.NativeHandle, enable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the content position</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <param name="sig">Send signals to the theme corresponding to the scroll direction, or if an edge was reached.</param>
+   /// <returns></returns>
+   public  void SetContentPos(  int x,   int y,  bool sig) {
+                                                             Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_pos_set_ptr.Value.Delegate(this.NativeHandle, x,  y,  sig);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Get content position</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   public  void GetContentPos( out  int x,  out  int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_pos_get_ptr.Value.Delegate(this.NativeHandle, out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Show a specific virtual region within the scroller content object by page number.
+   /// 0, 0 of the indicated page is located at the top-left of the viewport. This will jump to the page directly without animation.
+   /// 
+   /// See <see cref="Elm.InterfaceScrollable.PageBringIn"/>.</summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   public  void ShowPage(  int pagenumber_h,   int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_show_ptr.Value.Delegate(this.NativeHandle, pagenumber_h,  pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Show a specific virtual region within the scroller content object.
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller. Unlike elm_scroller_region_show(), this allows the scroller to &quot;smoothly slide&quot; to this location (if configuration in general calls for transitions). It may not jump immediately to the new location and make take a while and show other content along the way.
+   /// 
+   /// See <see cref="Elm.InterfaceScrollable.ShowContentRegion"/></summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   public  void RegionBringIn(  int x,   int y,   int w,   int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_region_bring_in_ptr.Value.Delegate(this.NativeHandle, x,  y,  w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Show a specific virtual region within the scroller content object by page number.
+   /// 0, 0 of the indicated page is located at the top-left of the viewport. This will slide to the page with animation.
+   /// 
+   /// <see cref="Elm.InterfaceScrollable.ShowPage"/></summary>
+   /// <param name="pagenumber_h">The horizontal page number</param>
+   /// <param name="pagenumber_v">The vertical page number</param>
+   /// <returns></returns>
+   public  void PageBringIn(  int pagenumber_h,   int pagenumber_v) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_page_bring_in_ptr.Value.Delegate(this.NativeHandle, pagenumber_h,  pagenumber_v);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Show a specific virtual region within the scroller content object
+   /// This will ensure all (or part if it does not fit) of the designated region in the virtual content object (0, 0 starting at the top-left of the virtual content object) is shown within the scroller.</summary>
+   /// <param name="x">X coordinate of the region</param>
+   /// <param name="y">Y coordinate of the region</param>
+   /// <param name="w">Width of the region</param>
+   /// <param name="h">Height of the region</param>
+   /// <returns></returns>
+   public  void ShowContentRegion(  int x,   int y,   int w,   int h) {
+                                                                               Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_region_show_ptr.Value.Delegate(this.NativeHandle, x,  y,  w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Prevent the scrollable from being smaller than the minimum size of the content.
+   /// By default the scroller will be as small as its design allows, irrespective of its content. This will make the scroller minimum size the right size horizontally and/or vertically to perfectly fit its content in that direction.</summary>
+   /// <param name="w">Whether to limit the minimum horizontal size</param>
+   /// <param name="h">Whether to limit the minimum vertical size</param>
+   /// <returns></returns>
+   public  void ContentMinLimit( bool w,  bool h) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_content_min_limit_ptr.Value.Delegate(this.NativeHandle, w,  h);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   public  void SetWantedRegion(  int x,   int y) {
+                                           Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_wanted_region_set_ptr.Value.Delegate(this.NativeHandle, x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary></summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   public  void CustomPanPosAdjust(  int x,   int y) {
+       var _in_x = Eina.PrimitiveConversion.ManagedToPointerAlloc(x);
+      var _in_y = Eina.PrimitiveConversion.ManagedToPointerAlloc(y);
+                              Elm.InterfaceScrollableNativeInherit.elm_interface_scrollable_custom_pan_pos_adjust_ptr.Value.Delegate(this.NativeHandle, _in_x,  _in_y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>If the widget needs a focus manager, this function will be called.
+   /// It can be used and overriden to inject your own manager or set custom options on the focus manager.</summary>
+   /// <param name="root">The logical root object for focus.</param>
+   /// <returns>The focus manager.</returns>
+   public Efl.Ui.Focus.Manager FocusManagerCreate( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.WidgetFocusManagerNativeInherit.efl_ui_widget_focus_manager_create_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <returns>Currently focused element.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetManagerFocus() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The element which is currently focused by this manager
+   /// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+   /// 1.20</summary>
+   /// <param name="focus">Currently focused element.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetManagerFocus( Efl.Ui.Focus.Object focus) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_focus_set_ptr.Value.Delegate(this.NativeHandle, focus);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <returns>The redirect manager.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Manager GetRedirect() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Add another manager to serve the move requests.
+   /// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+   /// 1.20</summary>
+   /// <param name="redirect">The redirect manager.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetRedirect( Efl.Ui.Focus.Manager redirect) {
+                         Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(this.NativeHandle, redirect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The list of elements which are at the border of the graph.
+   /// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+   /// 1.20</summary>
+   /// <returns>An iterator over the border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetBorderElements() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Get all elements that are at the border of the viewport
+   /// Every element returned by this is located inside the viewport rectangle, but has a right, left, down or up neighbor outside the viewport.
+   /// 1.20</summary>
+   /// <param name="viewport">The rectangle defining the viewport.
+   /// 1.20</param>
+   /// <returns>The list of border objects.
+   /// 1.20</returns>
+   public Eina.Iterator<Efl.Ui.Focus.Object> GetViewportElements( Eina.Rect viewport) {
+       var _in_viewport = Eina.Rect_StructConversion.ToInternal(viewport);
+                  var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(this.NativeHandle, _in_viewport);
+      Eina.Error.RaiseIfUnhandledException();
+                  return new Eina.Iterator<Efl.Ui.Focus.Object>(_ret_var, false, false);
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <returns>Will be registered into this manager object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object GetRoot() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Root node for all logical subtrees.
+   /// This property can only be set once.
+   /// 1.20</summary>
+   /// <param name="root">Will be registered into this manager object.
+   /// 1.20</param>
+   /// <returns>If <c>true</c>, this is the root node
+   /// 1.20</returns>
+   public bool SetRoot( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_root_set_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Move the focus in the given direction.
+   /// This call flushes all changes. This means all changes between the last flush and now are computed.
+   /// 1.20</summary>
+   /// <param name="direction">The direction to move to.
+   /// 1.20</param>
+   /// <returns>The element which is now focused.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object Move( Efl.Ui.Focus.Direction direction) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_move_ptr.Value.Delegate(this.NativeHandle, direction);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Return the object in the <c>direction</c> from <c>child</c>.
+   /// 1.20</summary>
+   /// <param name="direction">Direction to move focus.
+   /// 1.20</param>
+   /// <param name="child">The child to move from. Pass <c>null</c> to indicate the currently focused child.
+   /// 1.20</param>
+   /// <param name="logical">Wether you want to have a logical node as result or a non-logical. Note, in a <see cref="Efl.Ui.Focus.Manager.Move"/> call no logical node will get focus.
+   /// 1.20</param>
+   /// <returns>Object that would receive focus if moved in the given direction.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object MoveRequest( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical) {
+                                                             var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_move_ptr.Value.Delegate(this.NativeHandle, direction,  child,  logical);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Return the widget in the direction next.
+   /// The returned widget is a child of <c>root</c>. It&apos;s guaranteed that child will not be prepared once again, so you can call this function inside a <see cref="Efl.Ui.Focus.Object.SetupOrder"/> call.
+   /// 1.20</summary>
+   /// <param name="root">Parent for returned child.
+   /// 1.20</param>
+   /// <returns>Child of passed parameter.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Object RequestSubchild( Efl.Ui.Focus.Object root) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(this.NativeHandle, root);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>This will fetch the data from a registered node.
+   /// Be aware this function will trigger a computation of all dirty nodes.
+   /// 1.20</summary>
+   /// <param name="child">The child object to inspect.
+   /// 1.20</param>
+   /// <returns>The list of relations starting from <c>child</c>.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.Relations Fetch( Efl.Ui.Focus.Object child) {
+                         var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_fetch_ptr.Value.Delegate(this.NativeHandle, child);
+      Eina.Error.RaiseIfUnhandledException();
+                  var __ret_tmp = Eina.PrimitiveConversion.PointerToManaged<Efl.Ui.Focus.Relations>(_ret_var);
+      Marshal.FreeHGlobal(_ret_var);
+      return __ret_tmp;
+ }
+   /// <summary>Return the last logical object.
+   /// The returned object is the last object that would be returned if you start at the root and move the direction into next.
+   /// 1.20</summary>
+   /// <returns>Last object.
+   /// 1.20</returns>
+   public Efl.Ui.Focus.ManagerLogicalEndDetail LogicalEnd() {
+       var _ret_var = Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_logical_end_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Reset the history stack of this manager object. This means the uppermost element will be unfocused, and all other elements will be removed from the remembered list.
+   /// You should focus another element immediately after calling this, in order to always have a focused object.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void ResetHistory() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_reset_history_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Remove the uppermost history element, and focus the previous one.
+   /// If there is an element that was focused before, it will be used. Otherwise, the best fitting element from the registered elements will be focused.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void PopHistoryStack() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Called when this manager is set as redirect.
+   /// In case that this is called as an result of a move call, <c>direction</c> and <c>entry</c> will be set to the direction of the move call, and the <c>entry</c> object will be set to the object that had this manager as redirect property.
+   /// 1.20</summary>
+   /// <param name="direction">The direction in which this should be setup.
+   /// 1.20</param>
+   /// <param name="entry">The object that caused this manager to be redirect.
+   /// 1.20</param>
+   /// <returns></returns>
+   public  void SetupOnFirstTouch( Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry) {
+                                           Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(this.NativeHandle, direction,  entry);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>This disables the cache invalidation when an object is moved.
+   /// Even if an object is moved, the focus manager will not recalculate its relations. This can be used when you know that the set of widgets in the focus manager is moved the same way, so the relations between the widets in the set do not change and the complex calculations can be avoided. Use <see cref="Efl.Ui.Focus.Manager.DirtyLogicUnfreeze"/> to re-enable relationship calculation.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void FreezeDirtyLogic() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>This enables the cache invalidation when an object is moved.
+   /// This is the counterpart to <see cref="Efl.Ui.Focus.Manager.FreezeDirtyLogic"/>.
+   /// 1.20</summary>
+   /// <returns></returns>
+   public  void DirtyLogicUnfreeze() {
+       Efl.Ui.Focus.ManagerNativeInherit.efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Control Wheel disable Enable or disable mouse wheel to be used to scroll the scroller content. heel is enabled by default.</summary>
+/// <value><c>true</c> if wheel is disabled, <c>false</c> otherwise</value>
+   public bool WheelDisabled {
+      get { return GetWheelDisabled(); }
+      set { SetWheelDisabled( value); }
+   }
+   /// <summary>Blocking of scrolling (per axis)
+/// This function will block scrolling movement (by input of a user) in a given direction. One can disable movements in the X axis, the Y axis or both. The default value is <c>none</c>, where movements are allowed in both directions.
+/// 
+/// What makes this function different from freeze_push(), hold_push() and lock_x_set() (or lock_y_set()) is that it doesn&apos;t propagate its effects to any parent or child widget of <c>obj</c>. Only the target scrollable widget will be locked with regard to scrolling.</summary>
+/// <value>Which axis (or axes) to block</value>
+   public Efl.Ui.ScrollBlock MovementBlock {
+      get { return GetMovementBlock(); }
+      set { SetMovementBlock( value); }
+   }
+   /// <summary>Momentum animator</summary>
+/// <value><c>true</c> if disabled, <c>false</c> otherwise</value>
+   public bool MomentumAnimatorDisabled {
+      get { return GetMomentumAnimatorDisabled(); }
+      set { SetMomentumAnimatorDisabled( value); }
+   }
+   /// <summary>It decides whether the scrollable object propagates the events to content object or not.</summary>
+/// <value><c>true</c> if events are propagated, <c>false</c> otherwise</value>
+   public bool ContentEvents {
+      get { return GetContentEvents(); }
+      set { SetContentEvents( value); }
+   }
+   /// <summary>Bounce animator</summary>
+/// <value><c>true</c> if bounce animation is disabled, <c>false</c> otherwise</value>
+   public bool BounceAnimatorDisabled {
+      get { return GetBounceAnimatorDisabled(); }
+      set { SetBounceAnimatorDisabled( value); }
+   }
+   /// <summary>Single direction scroll configuration
+/// This makes it possible to restrict scrolling to a single direction, with a &quot;soft&quot; or &quot;hard&quot; behavior.
+/// 
+/// The hard behavior restricts the scrolling to a single direction all of the time while the soft one will restrict depending on factors such as the movement angle. If the user scrolls roughly in one direction only, it will only move according to it while if the move was clearly wanted on both axes, it will happen on both of them.
+/// 1.8</summary>
+/// <value>The single direction scroll policy</value>
+   public Elm.Scroller.SingleDirection SingleDirection {
+      get { return GetSingleDirection(); }
+      set { SetSingleDirection( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved up.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollUpCb {
+      set { SetScrollUpCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb HbarDragCb {
+      set { SetHbarDragCb( value); }
+   }
+   /// <summary>Set the callback to run when dragging of the contents has started.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb DragStartCb {
+      set { SetDragStartCb( value); }
+   }
+   /// <summary>Set the callback to run when scrolling of the contents has started.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollStartCb {
+      set { SetScrollStartCb( value); }
+   }
+   /// <summary>Freeze property</summary>
+/// <value><c>true</c> if freeze, <c>false</c> otherwise</value>
+   public bool Freeze {
+      set { SetFreeze( value); }
+   }
+   /// <summary>When the viewport is resized, the callback is called.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableResizeCb ContentViewportResizeCb {
+      set { SetContentViewportResizeCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved to the left</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollLeftCb {
+      set { SetScrollLeftCb( value); }
+   }
+   /// <summary>Set the callback to run when the vertical scrollbar is pressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb VbarPressCb {
+      set { SetVbarPressCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is pressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb HbarPressCb {
+      set { SetHbarPressCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb HbarUnpressCb {
+      set { SetHbarUnpressCb( value); }
+   }
+   /// <summary>Set the callback to run when dragging of the contents has stopped.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb DragStopCb {
+      set { SetDragStopCb( value); }
+   }
+   /// <summary>Set the callback to run when scrolling of the contents has stopped.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollStopCb {
+      set { SetScrollStopCb( value); }
+   }
+   /// <summary>Extern pan</summary>
+/// <value>Pan object</value>
+   public Efl.Canvas.Object ExternPan {
+      set { SetExternPan( value); }
+   }
+   /// <summary>Set the callback to run when the visible page changes.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb PageChangeCb {
+      set { SetPageChangeCb( value); }
+   }
+   /// <summary>Hold property</summary>
+/// <value><c>true</c> if hold, <c>false</c> otherwise</value>
+   public bool Hold {
+      set { SetHold( value); }
+   }
+   /// <summary>Set the callback to run when the scrolling animation has started.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb AnimateStartCb {
+      set { SetAnimateStartCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved down.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollDownCb {
+      set { SetScrollDownCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollCb {
+      set { SetScrollCb( value); }
+   }
+   /// <summary>Set the callback to run when the scrolling animation has stopped.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb AnimateStopCb {
+      set { SetAnimateStopCb( value); }
+   }
+   /// <summary>set the callback to run on minimal limit content</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableMinLimitCb ContentMinLimitCb {
+      set { SetContentMinLimitCb( value); }
+   }
+   /// <summary>Set the callback to run when the content has been moved to the right.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb ScrollRightCb {
+      set { SetScrollRightCb( value); }
+   }
+   /// <summary>Content property</summary>
+/// <value>Content object</value>
+   public Efl.Canvas.Object ScrollableContent {
+      set { SetScrollableContent( value); }
+   }
+   /// <summary>Set the callback to run when the left edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeLeftCb {
+      set { SetEdgeLeftCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is dragged.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb VbarDragCb {
+      set { SetVbarDragCb( value); }
+   }
+   /// <summary>Set the callback to run when the horizontal scrollbar is unpressed.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb VbarUnpressCb {
+      set { SetVbarUnpressCb( value); }
+   }
+   /// <summary>Set the callback to run when the bottom edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeBottomCb {
+      set { SetEdgeBottomCb( value); }
+   }
+   /// <summary>Set the callback to run when the right edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeRightCb {
+      set { SetEdgeRightCb( value); }
+   }
+   /// <summary>Set the callback to run when the top edge of the content has been reached.</summary>
+/// <value>The callback</value>
+   public ElmInterfaceScrollableCb EdgeTopCb {
+      set { SetEdgeTopCb( value); }
+   }
+   /// <summary>Whether scrolling should loop around.</summary>
+/// <value>True to enable looping.</value>
+   public bool ItemLoopEnabled {
+      get { return GetItemLoopEnabled(); }
+      set { SetItemLoopEnabled( value); }
+   }
+   /// <summary>The element which is currently focused by this manager
+/// Use this property to retrieve the object currently being focused, or to set the focus to a new one. When <c>focus</c> is a logical child (which cannot receive focus), the next non-logical object is selected instead. If there is no such object, focus does not change.
+/// 1.20</summary>
+/// <value>Currently focused element.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object ManagerFocus {
+      get { return GetManagerFocus(); }
+      set { SetManagerFocus( value); }
+   }
+   /// <summary>Add another manager to serve the move requests.
+/// If this value is set, all move requests are redirected to this manager object. Set it to <c>null</c> once nothing should be redirected anymore.
+/// 1.20</summary>
+/// <value>The redirect manager.
+/// 1.20</value>
+   public Efl.Ui.Focus.Manager Redirect {
+      get { return GetRedirect(); }
+      set { SetRedirect( value); }
+   }
+   /// <summary>The list of elements which are at the border of the graph.
+/// This means one of the relations right,left or down,up are not set. This call flushes all changes. See <see cref="Efl.Ui.Focus.Manager.Move"/>
+/// 1.20</summary>
+/// <value>An iterator over the border objects.
+/// 1.20</value>
+   public Eina.Iterator<Efl.Ui.Focus.Object> BorderElements {
+      get { return GetBorderElements(); }
+   }
+   /// <summary>Root node for all logical subtrees.
+/// This property can only be set once.
+/// 1.20</summary>
+/// <value>Will be registered into this manager object.
+/// 1.20</value>
+   public Efl.Ui.Focus.Object Root {
+      get { return GetRoot(); }
+      set { SetRoot( value); }
+   }
+}
+public class InterfaceScrollableNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (elm_interface_scrollable_gravity_get_static_delegate == null)
+      elm_interface_scrollable_gravity_get_static_delegate = new elm_interface_scrollable_gravity_get_delegate(gravity_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_gravity_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_gravity_get_static_delegate)});
+      if (elm_interface_scrollable_gravity_set_static_delegate == null)
+      elm_interface_scrollable_gravity_set_static_delegate = new elm_interface_scrollable_gravity_set_delegate(gravity_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_gravity_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_gravity_set_static_delegate)});
+      if (elm_interface_scrollable_bounce_allow_get_static_delegate == null)
+      elm_interface_scrollable_bounce_allow_get_static_delegate = new elm_interface_scrollable_bounce_allow_get_delegate(bounce_allow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_allow_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_allow_get_static_delegate)});
+      if (elm_interface_scrollable_bounce_allow_set_static_delegate == null)
+      elm_interface_scrollable_bounce_allow_set_static_delegate = new elm_interface_scrollable_bounce_allow_set_delegate(bounce_allow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_allow_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_allow_set_static_delegate)});
+      if (elm_interface_scrollable_wheel_disabled_get_static_delegate == null)
+      elm_interface_scrollable_wheel_disabled_get_static_delegate = new elm_interface_scrollable_wheel_disabled_get_delegate(wheel_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_wheel_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_wheel_disabled_get_static_delegate)});
+      if (elm_interface_scrollable_wheel_disabled_set_static_delegate == null)
+      elm_interface_scrollable_wheel_disabled_set_static_delegate = new elm_interface_scrollable_wheel_disabled_set_delegate(wheel_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_wheel_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_wheel_disabled_set_static_delegate)});
+      if (elm_interface_scrollable_movement_block_get_static_delegate == null)
+      elm_interface_scrollable_movement_block_get_static_delegate = new elm_interface_scrollable_movement_block_get_delegate(movement_block_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_movement_block_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_movement_block_get_static_delegate)});
+      if (elm_interface_scrollable_movement_block_set_static_delegate == null)
+      elm_interface_scrollable_movement_block_set_static_delegate = new elm_interface_scrollable_movement_block_set_delegate(movement_block_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_movement_block_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_movement_block_set_static_delegate)});
+      if (elm_interface_scrollable_momentum_animator_disabled_get_static_delegate == null)
+      elm_interface_scrollable_momentum_animator_disabled_get_static_delegate = new elm_interface_scrollable_momentum_animator_disabled_get_delegate(momentum_animator_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_momentum_animator_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_momentum_animator_disabled_get_static_delegate)});
+      if (elm_interface_scrollable_momentum_animator_disabled_set_static_delegate == null)
+      elm_interface_scrollable_momentum_animator_disabled_set_static_delegate = new elm_interface_scrollable_momentum_animator_disabled_set_delegate(momentum_animator_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_momentum_animator_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_momentum_animator_disabled_set_static_delegate)});
+      if (elm_interface_scrollable_policy_get_static_delegate == null)
+      elm_interface_scrollable_policy_get_static_delegate = new elm_interface_scrollable_policy_get_delegate(policy_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_policy_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_policy_get_static_delegate)});
+      if (elm_interface_scrollable_policy_set_static_delegate == null)
+      elm_interface_scrollable_policy_set_static_delegate = new elm_interface_scrollable_policy_set_delegate(policy_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_policy_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_policy_set_static_delegate)});
+      if (elm_interface_scrollable_content_region_get_static_delegate == null)
+      elm_interface_scrollable_content_region_get_static_delegate = new elm_interface_scrollable_content_region_get_delegate(content_region_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_region_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_region_get_static_delegate)});
+      if (elm_interface_scrollable_content_region_set_static_delegate == null)
+      elm_interface_scrollable_content_region_set_static_delegate = new elm_interface_scrollable_content_region_set_delegate(content_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_region_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_region_set_static_delegate)});
+      if (elm_interface_scrollable_content_events_get_static_delegate == null)
+      elm_interface_scrollable_content_events_get_static_delegate = new elm_interface_scrollable_content_events_get_delegate(content_events_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_events_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_events_get_static_delegate)});
+      if (elm_interface_scrollable_content_events_set_static_delegate == null)
+      elm_interface_scrollable_content_events_set_static_delegate = new elm_interface_scrollable_content_events_set_delegate(content_events_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_events_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_events_set_static_delegate)});
+      if (elm_interface_scrollable_page_size_get_static_delegate == null)
+      elm_interface_scrollable_page_size_get_static_delegate = new elm_interface_scrollable_page_size_get_delegate(page_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_size_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_size_get_static_delegate)});
+      if (elm_interface_scrollable_page_size_set_static_delegate == null)
+      elm_interface_scrollable_page_size_set_static_delegate = new elm_interface_scrollable_page_size_set_delegate(page_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_size_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_size_set_static_delegate)});
+      if (elm_interface_scrollable_bounce_animator_disabled_get_static_delegate == null)
+      elm_interface_scrollable_bounce_animator_disabled_get_static_delegate = new elm_interface_scrollable_bounce_animator_disabled_get_delegate(bounce_animator_disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_animator_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_animator_disabled_get_static_delegate)});
+      if (elm_interface_scrollable_bounce_animator_disabled_set_static_delegate == null)
+      elm_interface_scrollable_bounce_animator_disabled_set_static_delegate = new elm_interface_scrollable_bounce_animator_disabled_set_delegate(bounce_animator_disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_bounce_animator_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_bounce_animator_disabled_set_static_delegate)});
+      if (elm_interface_scrollable_page_scroll_limit_get_static_delegate == null)
+      elm_interface_scrollable_page_scroll_limit_get_static_delegate = new elm_interface_scrollable_page_scroll_limit_get_delegate(page_scroll_limit_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_scroll_limit_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_scroll_limit_get_static_delegate)});
+      if (elm_interface_scrollable_page_scroll_limit_set_static_delegate == null)
+      elm_interface_scrollable_page_scroll_limit_set_static_delegate = new elm_interface_scrollable_page_scroll_limit_set_delegate(page_scroll_limit_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_scroll_limit_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_scroll_limit_set_static_delegate)});
+      if (elm_interface_scrollable_page_snap_allow_get_static_delegate == null)
+      elm_interface_scrollable_page_snap_allow_get_static_delegate = new elm_interface_scrollable_page_snap_allow_get_delegate(page_snap_allow_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_snap_allow_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_snap_allow_get_static_delegate)});
+      if (elm_interface_scrollable_page_snap_allow_set_static_delegate == null)
+      elm_interface_scrollable_page_snap_allow_set_static_delegate = new elm_interface_scrollable_page_snap_allow_set_delegate(page_snap_allow_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_snap_allow_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_snap_allow_set_static_delegate)});
+      if (elm_interface_scrollable_paging_get_static_delegate == null)
+      elm_interface_scrollable_paging_get_static_delegate = new elm_interface_scrollable_paging_get_delegate(paging_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_paging_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_paging_get_static_delegate)});
+      if (elm_interface_scrollable_paging_set_static_delegate == null)
+      elm_interface_scrollable_paging_set_static_delegate = new elm_interface_scrollable_paging_set_delegate(paging_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_paging_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_paging_set_static_delegate)});
+      if (elm_interface_scrollable_single_direction_get_static_delegate == null)
+      elm_interface_scrollable_single_direction_get_static_delegate = new elm_interface_scrollable_single_direction_get_delegate(single_direction_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_single_direction_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_single_direction_get_static_delegate)});
+      if (elm_interface_scrollable_single_direction_set_static_delegate == null)
+      elm_interface_scrollable_single_direction_set_static_delegate = new elm_interface_scrollable_single_direction_set_delegate(single_direction_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_single_direction_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_single_direction_set_static_delegate)});
+      if (elm_interface_scrollable_step_size_get_static_delegate == null)
+      elm_interface_scrollable_step_size_get_static_delegate = new elm_interface_scrollable_step_size_get_delegate(step_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_step_size_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_step_size_get_static_delegate)});
+      if (elm_interface_scrollable_step_size_set_static_delegate == null)
+      elm_interface_scrollable_step_size_set_static_delegate = new elm_interface_scrollable_step_size_set_delegate(step_size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_step_size_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_step_size_set_static_delegate)});
+      if (elm_interface_scrollable_content_loop_get_static_delegate == null)
+      elm_interface_scrollable_content_loop_get_static_delegate = new elm_interface_scrollable_content_loop_get_delegate(content_loop_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_loop_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_loop_get_static_delegate)});
+      if (elm_interface_scrollable_content_loop_set_static_delegate == null)
+      elm_interface_scrollable_content_loop_set_static_delegate = new elm_interface_scrollable_content_loop_set_delegate(content_loop_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_loop_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_loop_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_up_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_up_cb_set_static_delegate = new elm_interface_scrollable_scroll_up_cb_set_delegate(scroll_up_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_up_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_up_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hbar_drag_cb_set_static_delegate == null)
+      elm_interface_scrollable_hbar_drag_cb_set_static_delegate = new elm_interface_scrollable_hbar_drag_cb_set_delegate(hbar_drag_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hbar_drag_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hbar_drag_cb_set_static_delegate)});
+      if (elm_interface_scrollable_drag_start_cb_set_static_delegate == null)
+      elm_interface_scrollable_drag_start_cb_set_static_delegate = new elm_interface_scrollable_drag_start_cb_set_delegate(drag_start_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_drag_start_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_drag_start_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_start_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_start_cb_set_static_delegate = new elm_interface_scrollable_scroll_start_cb_set_delegate(scroll_start_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_start_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_start_cb_set_static_delegate)});
+      if (elm_interface_scrollable_freeze_set_static_delegate == null)
+      elm_interface_scrollable_freeze_set_static_delegate = new elm_interface_scrollable_freeze_set_delegate(freeze_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_freeze_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_freeze_set_static_delegate)});
+      if (elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate == null)
+      elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate = new elm_interface_scrollable_content_viewport_resize_cb_set_delegate(content_viewport_resize_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_viewport_resize_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_left_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_left_cb_set_static_delegate = new elm_interface_scrollable_scroll_left_cb_set_delegate(scroll_left_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_left_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_left_cb_set_static_delegate)});
+      if (elm_interface_scrollable_vbar_press_cb_set_static_delegate == null)
+      elm_interface_scrollable_vbar_press_cb_set_static_delegate = new elm_interface_scrollable_vbar_press_cb_set_delegate(vbar_press_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_vbar_press_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_vbar_press_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hbar_press_cb_set_static_delegate == null)
+      elm_interface_scrollable_hbar_press_cb_set_static_delegate = new elm_interface_scrollable_hbar_press_cb_set_delegate(hbar_press_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hbar_press_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hbar_press_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hbar_unpress_cb_set_static_delegate == null)
+      elm_interface_scrollable_hbar_unpress_cb_set_static_delegate = new elm_interface_scrollable_hbar_unpress_cb_set_delegate(hbar_unpress_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hbar_unpress_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hbar_unpress_cb_set_static_delegate)});
+      if (elm_interface_scrollable_drag_stop_cb_set_static_delegate == null)
+      elm_interface_scrollable_drag_stop_cb_set_static_delegate = new elm_interface_scrollable_drag_stop_cb_set_delegate(drag_stop_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_drag_stop_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_drag_stop_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_stop_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_stop_cb_set_static_delegate = new elm_interface_scrollable_scroll_stop_cb_set_delegate(scroll_stop_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_stop_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_stop_cb_set_static_delegate)});
+      if (elm_interface_scrollable_extern_pan_set_static_delegate == null)
+      elm_interface_scrollable_extern_pan_set_static_delegate = new elm_interface_scrollable_extern_pan_set_delegate(extern_pan_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_extern_pan_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_extern_pan_set_static_delegate)});
+      if (elm_interface_scrollable_page_change_cb_set_static_delegate == null)
+      elm_interface_scrollable_page_change_cb_set_static_delegate = new elm_interface_scrollable_page_change_cb_set_delegate(page_change_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_change_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_change_cb_set_static_delegate)});
+      if (elm_interface_scrollable_hold_set_static_delegate == null)
+      elm_interface_scrollable_hold_set_static_delegate = new elm_interface_scrollable_hold_set_delegate(hold_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_hold_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_hold_set_static_delegate)});
+      if (elm_interface_scrollable_animate_start_cb_set_static_delegate == null)
+      elm_interface_scrollable_animate_start_cb_set_static_delegate = new elm_interface_scrollable_animate_start_cb_set_delegate(animate_start_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_animate_start_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_animate_start_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_down_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_down_cb_set_static_delegate = new elm_interface_scrollable_scroll_down_cb_set_delegate(scroll_down_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_down_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_down_cb_set_static_delegate)});
+      if (elm_interface_scrollable_page_relative_set_static_delegate == null)
+      elm_interface_scrollable_page_relative_set_static_delegate = new elm_interface_scrollable_page_relative_set_delegate(page_relative_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_relative_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_relative_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_cb_set_static_delegate = new elm_interface_scrollable_scroll_cb_set_delegate(scroll_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_cb_set_static_delegate)});
+      if (elm_interface_scrollable_animate_stop_cb_set_static_delegate == null)
+      elm_interface_scrollable_animate_stop_cb_set_static_delegate = new elm_interface_scrollable_animate_stop_cb_set_delegate(animate_stop_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_animate_stop_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_animate_stop_cb_set_static_delegate)});
+      if (elm_interface_scrollable_content_min_limit_cb_set_static_delegate == null)
+      elm_interface_scrollable_content_min_limit_cb_set_static_delegate = new elm_interface_scrollable_content_min_limit_cb_set_delegate(content_min_limit_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_min_limit_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_min_limit_cb_set_static_delegate)});
+      if (elm_interface_scrollable_scroll_right_cb_set_static_delegate == null)
+      elm_interface_scrollable_scroll_right_cb_set_static_delegate = new elm_interface_scrollable_scroll_right_cb_set_delegate(scroll_right_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_scroll_right_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_scroll_right_cb_set_static_delegate)});
+      if (elm_interface_scrollable_content_set_static_delegate == null)
+      elm_interface_scrollable_content_set_static_delegate = new elm_interface_scrollable_content_set_delegate(scrollable_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_set_static_delegate)});
+      if (elm_interface_scrollable_edge_left_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_left_cb_set_static_delegate = new elm_interface_scrollable_edge_left_cb_set_delegate(edge_left_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_left_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_left_cb_set_static_delegate)});
+      if (elm_interface_scrollable_vbar_drag_cb_set_static_delegate == null)
+      elm_interface_scrollable_vbar_drag_cb_set_static_delegate = new elm_interface_scrollable_vbar_drag_cb_set_delegate(vbar_drag_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_vbar_drag_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_vbar_drag_cb_set_static_delegate)});
+      if (elm_interface_scrollable_vbar_unpress_cb_set_static_delegate == null)
+      elm_interface_scrollable_vbar_unpress_cb_set_static_delegate = new elm_interface_scrollable_vbar_unpress_cb_set_delegate(vbar_unpress_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_vbar_unpress_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_vbar_unpress_cb_set_static_delegate)});
+      if (elm_interface_scrollable_edge_bottom_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_bottom_cb_set_static_delegate = new elm_interface_scrollable_edge_bottom_cb_set_delegate(edge_bottom_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_bottom_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_bottom_cb_set_static_delegate)});
+      if (elm_interface_scrollable_edge_right_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_right_cb_set_static_delegate = new elm_interface_scrollable_edge_right_cb_set_delegate(edge_right_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_right_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_right_cb_set_static_delegate)});
+      if (elm_interface_scrollable_edge_top_cb_set_static_delegate == null)
+      elm_interface_scrollable_edge_top_cb_set_static_delegate = new elm_interface_scrollable_edge_top_cb_set_delegate(edge_top_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_edge_top_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_edge_top_cb_set_static_delegate)});
+      if (elm_interface_scrollable_objects_set_static_delegate == null)
+      elm_interface_scrollable_objects_set_static_delegate = new elm_interface_scrollable_objects_set_delegate(objects_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_objects_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_objects_set_static_delegate)});
+      if (elm_interface_scrollable_last_page_get_static_delegate == null)
+      elm_interface_scrollable_last_page_get_static_delegate = new elm_interface_scrollable_last_page_get_delegate(last_page_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_last_page_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_last_page_get_static_delegate)});
+      if (elm_interface_scrollable_current_page_get_static_delegate == null)
+      elm_interface_scrollable_current_page_get_static_delegate = new elm_interface_scrollable_current_page_get_delegate(current_page_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_current_page_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_current_page_get_static_delegate)});
+      if (elm_interface_scrollable_content_viewport_geometry_get_static_delegate == null)
+      elm_interface_scrollable_content_viewport_geometry_get_static_delegate = new elm_interface_scrollable_content_viewport_geometry_get_delegate(content_viewport_geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_viewport_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_viewport_geometry_get_static_delegate)});
+      if (elm_interface_scrollable_content_size_get_static_delegate == null)
+      elm_interface_scrollable_content_size_get_static_delegate = new elm_interface_scrollable_content_size_get_delegate(content_size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_size_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_size_get_static_delegate)});
+      if (elm_interface_scrollable_item_loop_enabled_get_static_delegate == null)
+      elm_interface_scrollable_item_loop_enabled_get_static_delegate = new elm_interface_scrollable_item_loop_enabled_get_delegate(item_loop_enabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_item_loop_enabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_item_loop_enabled_get_static_delegate)});
+      if (elm_interface_scrollable_item_loop_enabled_set_static_delegate == null)
+      elm_interface_scrollable_item_loop_enabled_set_static_delegate = new elm_interface_scrollable_item_loop_enabled_set_delegate(item_loop_enabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_item_loop_enabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_item_loop_enabled_set_static_delegate)});
+      if (elm_interface_scrollable_content_pos_set_static_delegate == null)
+      elm_interface_scrollable_content_pos_set_static_delegate = new elm_interface_scrollable_content_pos_set_delegate(content_pos_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_pos_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_pos_set_static_delegate)});
+      if (elm_interface_scrollable_content_pos_get_static_delegate == null)
+      elm_interface_scrollable_content_pos_get_static_delegate = new elm_interface_scrollable_content_pos_get_delegate(content_pos_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_pos_get"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_pos_get_static_delegate)});
+      if (elm_interface_scrollable_page_show_static_delegate == null)
+      elm_interface_scrollable_page_show_static_delegate = new elm_interface_scrollable_page_show_delegate(page_show);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_show"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_show_static_delegate)});
+      if (elm_interface_scrollable_region_bring_in_static_delegate == null)
+      elm_interface_scrollable_region_bring_in_static_delegate = new elm_interface_scrollable_region_bring_in_delegate(region_bring_in);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_region_bring_in"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_region_bring_in_static_delegate)});
+      if (elm_interface_scrollable_page_bring_in_static_delegate == null)
+      elm_interface_scrollable_page_bring_in_static_delegate = new elm_interface_scrollable_page_bring_in_delegate(page_bring_in);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_page_bring_in"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_page_bring_in_static_delegate)});
+      if (elm_interface_scrollable_content_region_show_static_delegate == null)
+      elm_interface_scrollable_content_region_show_static_delegate = new elm_interface_scrollable_content_region_show_delegate(content_region_show);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_region_show"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_region_show_static_delegate)});
+      if (elm_interface_scrollable_content_min_limit_static_delegate == null)
+      elm_interface_scrollable_content_min_limit_static_delegate = new elm_interface_scrollable_content_min_limit_delegate(content_min_limit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_content_min_limit"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_content_min_limit_static_delegate)});
+      if (elm_interface_scrollable_wanted_region_set_static_delegate == null)
+      elm_interface_scrollable_wanted_region_set_static_delegate = new elm_interface_scrollable_wanted_region_set_delegate(wanted_region_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_wanted_region_set"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_wanted_region_set_static_delegate)});
+      if (elm_interface_scrollable_custom_pan_pos_adjust_static_delegate == null)
+      elm_interface_scrollable_custom_pan_pos_adjust_static_delegate = new elm_interface_scrollable_custom_pan_pos_adjust_delegate(custom_pan_pos_adjust);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_interface_scrollable_custom_pan_pos_adjust"), func = Marshal.GetFunctionPointerForDelegate(elm_interface_scrollable_custom_pan_pos_adjust_static_delegate)});
+      if (efl_ui_widget_focus_manager_create_static_delegate == null)
+      efl_ui_widget_focus_manager_create_static_delegate = new efl_ui_widget_focus_manager_create_delegate(focus_manager_create);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_widget_focus_manager_create"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_widget_focus_manager_create_static_delegate)});
+      if (efl_ui_focus_manager_focus_get_static_delegate == null)
+      efl_ui_focus_manager_focus_get_static_delegate = new efl_ui_focus_manager_focus_get_delegate(manager_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_get_static_delegate)});
+      if (efl_ui_focus_manager_focus_set_static_delegate == null)
+      efl_ui_focus_manager_focus_set_static_delegate = new efl_ui_focus_manager_focus_set_delegate(manager_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_focus_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_focus_set_static_delegate)});
+      if (efl_ui_focus_manager_redirect_get_static_delegate == null)
+      efl_ui_focus_manager_redirect_get_static_delegate = new efl_ui_focus_manager_redirect_get_delegate(redirect_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_get_static_delegate)});
+      if (efl_ui_focus_manager_redirect_set_static_delegate == null)
+      efl_ui_focus_manager_redirect_set_static_delegate = new efl_ui_focus_manager_redirect_set_delegate(redirect_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_redirect_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_redirect_set_static_delegate)});
+      if (efl_ui_focus_manager_border_elements_get_static_delegate == null)
+      efl_ui_focus_manager_border_elements_get_static_delegate = new efl_ui_focus_manager_border_elements_get_delegate(border_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_border_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_border_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_viewport_elements_get_static_delegate == null)
+      efl_ui_focus_manager_viewport_elements_get_static_delegate = new efl_ui_focus_manager_viewport_elements_get_delegate(viewport_elements_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_viewport_elements_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_viewport_elements_get_static_delegate)});
+      if (efl_ui_focus_manager_root_get_static_delegate == null)
+      efl_ui_focus_manager_root_get_static_delegate = new efl_ui_focus_manager_root_get_delegate(root_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_get"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_get_static_delegate)});
+      if (efl_ui_focus_manager_root_set_static_delegate == null)
+      efl_ui_focus_manager_root_set_static_delegate = new efl_ui_focus_manager_root_set_delegate(root_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_root_set"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_root_set_static_delegate)});
+      if (efl_ui_focus_manager_move_static_delegate == null)
+      efl_ui_focus_manager_move_static_delegate = new efl_ui_focus_manager_move_delegate(move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_move_static_delegate)});
+      if (efl_ui_focus_manager_request_move_static_delegate == null)
+      efl_ui_focus_manager_request_move_static_delegate = new efl_ui_focus_manager_request_move_delegate(request_move);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_move"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_move_static_delegate)});
+      if (efl_ui_focus_manager_request_subchild_static_delegate == null)
+      efl_ui_focus_manager_request_subchild_static_delegate = new efl_ui_focus_manager_request_subchild_delegate(request_subchild);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_request_subchild"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_request_subchild_static_delegate)});
+      if (efl_ui_focus_manager_fetch_static_delegate == null)
+      efl_ui_focus_manager_fetch_static_delegate = new efl_ui_focus_manager_fetch_delegate(fetch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_fetch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_fetch_static_delegate)});
+      if (efl_ui_focus_manager_logical_end_static_delegate == null)
+      efl_ui_focus_manager_logical_end_static_delegate = new efl_ui_focus_manager_logical_end_delegate(logical_end);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_logical_end"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_logical_end_static_delegate)});
+      if (efl_ui_focus_manager_reset_history_static_delegate == null)
+      efl_ui_focus_manager_reset_history_static_delegate = new efl_ui_focus_manager_reset_history_delegate(reset_history);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_reset_history"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_reset_history_static_delegate)});
+      if (efl_ui_focus_manager_pop_history_stack_static_delegate == null)
+      efl_ui_focus_manager_pop_history_stack_static_delegate = new efl_ui_focus_manager_pop_history_stack_delegate(pop_history_stack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_pop_history_stack"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_pop_history_stack_static_delegate)});
+      if (efl_ui_focus_manager_setup_on_first_touch_static_delegate == null)
+      efl_ui_focus_manager_setup_on_first_touch_static_delegate = new efl_ui_focus_manager_setup_on_first_touch_delegate(setup_on_first_touch);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_setup_on_first_touch"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_setup_on_first_touch_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_freeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_freeze_static_delegate = new efl_ui_focus_manager_dirty_logic_freeze_delegate(dirty_logic_freeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_freeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_freeze_static_delegate)});
+      if (efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate == null)
+      efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate = new efl_ui_focus_manager_dirty_logic_unfreeze_delegate(dirty_logic_unfreeze);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_ui_focus_manager_dirty_logic_unfreeze"), func = Marshal.GetFunctionPointerForDelegate(efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Elm.InterfaceScrollableConcrete.elm_interface_scrollable_mixin_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Elm.InterfaceScrollableConcrete.elm_interface_scrollable_mixin_get();
+   }
+
+
+    private delegate  void elm_interface_scrollable_gravity_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double x,   out double y);
+
+
+    public delegate  void elm_interface_scrollable_gravity_get_api_delegate(System.IntPtr obj,   out double x,   out double y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_get_api_delegate> elm_interface_scrollable_gravity_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_get_api_delegate>(_Module, "elm_interface_scrollable_gravity_get");
+    private static  void gravity_get(System.IntPtr obj, System.IntPtr pd,  out double x,  out double y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_gravity_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default(double);      y = default(double);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetGravity( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_gravity_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_gravity_get_delegate elm_interface_scrollable_gravity_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_gravity_set_delegate(System.IntPtr obj, System.IntPtr pd,   double x,   double y);
+
+
+    public delegate  void elm_interface_scrollable_gravity_set_api_delegate(System.IntPtr obj,   double x,   double y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_set_api_delegate> elm_interface_scrollable_gravity_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_gravity_set_api_delegate>(_Module, "elm_interface_scrollable_gravity_set");
+    private static  void gravity_set(System.IntPtr obj, System.IntPtr pd,  double x,  double y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_gravity_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetGravity( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_gravity_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_gravity_set_delegate elm_interface_scrollable_gravity_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_bounce_allow_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void elm_interface_scrollable_bounce_allow_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_get_api_delegate> elm_interface_scrollable_bounce_allow_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_get_api_delegate>(_Module, "elm_interface_scrollable_bounce_allow_get");
+    private static  void bounce_allow_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_allow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetBounceAllow( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_bounce_allow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static elm_interface_scrollable_bounce_allow_get_delegate elm_interface_scrollable_bounce_allow_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_bounce_allow_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void elm_interface_scrollable_bounce_allow_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_set_api_delegate> elm_interface_scrollable_bounce_allow_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_allow_set_api_delegate>(_Module, "elm_interface_scrollable_bounce_allow_set");
+    private static  void bounce_allow_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_allow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetBounceAllow( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_bounce_allow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static elm_interface_scrollable_bounce_allow_set_delegate elm_interface_scrollable_bounce_allow_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_wheel_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_wheel_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_get_api_delegate> elm_interface_scrollable_wheel_disabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_get_api_delegate>(_Module, "elm_interface_scrollable_wheel_disabled_get");
+    private static bool wheel_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_wheel_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetWheelDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_wheel_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_wheel_disabled_get_delegate elm_interface_scrollable_wheel_disabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_wheel_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void elm_interface_scrollable_wheel_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_set_api_delegate> elm_interface_scrollable_wheel_disabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_wheel_disabled_set_api_delegate>(_Module, "elm_interface_scrollable_wheel_disabled_set");
+    private static  void wheel_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_wheel_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetWheelDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_wheel_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static elm_interface_scrollable_wheel_disabled_set_delegate elm_interface_scrollable_wheel_disabled_set_static_delegate;
+
+
+    private delegate Efl.Ui.ScrollBlock elm_interface_scrollable_movement_block_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.ScrollBlock elm_interface_scrollable_movement_block_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_get_api_delegate> elm_interface_scrollable_movement_block_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_get_api_delegate>(_Module, "elm_interface_scrollable_movement_block_get");
+    private static Efl.Ui.ScrollBlock movement_block_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_movement_block_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.ScrollBlock _ret_var = default(Efl.Ui.ScrollBlock);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetMovementBlock();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_movement_block_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_movement_block_get_delegate elm_interface_scrollable_movement_block_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_movement_block_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.ScrollBlock block);
+
+
+    public delegate  void elm_interface_scrollable_movement_block_set_api_delegate(System.IntPtr obj,   Efl.Ui.ScrollBlock block);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_set_api_delegate> elm_interface_scrollable_movement_block_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_movement_block_set_api_delegate>(_Module, "elm_interface_scrollable_movement_block_set");
+    private static  void movement_block_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.ScrollBlock block)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_movement_block_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetMovementBlock( block);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_movement_block_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  block);
+      }
+   }
+   private static elm_interface_scrollable_movement_block_set_delegate elm_interface_scrollable_movement_block_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_momentum_animator_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_momentum_animator_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_get_api_delegate> elm_interface_scrollable_momentum_animator_disabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_get_api_delegate>(_Module, "elm_interface_scrollable_momentum_animator_disabled_get");
+    private static bool momentum_animator_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_momentum_animator_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetMomentumAnimatorDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_momentum_animator_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_momentum_animator_disabled_get_delegate elm_interface_scrollable_momentum_animator_disabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_momentum_animator_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void elm_interface_scrollable_momentum_animator_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_set_api_delegate> elm_interface_scrollable_momentum_animator_disabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_momentum_animator_disabled_set_api_delegate>(_Module, "elm_interface_scrollable_momentum_animator_disabled_set");
+    private static  void momentum_animator_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_momentum_animator_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetMomentumAnimatorDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_momentum_animator_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static elm_interface_scrollable_momentum_animator_disabled_set_delegate elm_interface_scrollable_momentum_animator_disabled_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_policy_get_delegate(System.IntPtr obj, System.IntPtr pd,   out Elm.Scroller.Policy hbar,   out Elm.Scroller.Policy vbar);
+
+
+    public delegate  void elm_interface_scrollable_policy_get_api_delegate(System.IntPtr obj,   out Elm.Scroller.Policy hbar,   out Elm.Scroller.Policy vbar);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_get_api_delegate> elm_interface_scrollable_policy_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_get_api_delegate>(_Module, "elm_interface_scrollable_policy_get");
+    private static  void policy_get(System.IntPtr obj, System.IntPtr pd,  out Elm.Scroller.Policy hbar,  out Elm.Scroller.Policy vbar)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_policy_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           hbar = default(Elm.Scroller.Policy);      vbar = default(Elm.Scroller.Policy);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetPolicy( out hbar,  out vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_policy_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out hbar,  out vbar);
+      }
+   }
+   private static elm_interface_scrollable_policy_get_delegate elm_interface_scrollable_policy_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_policy_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Scroller.Policy hbar,   Elm.Scroller.Policy vbar);
+
+
+    public delegate  void elm_interface_scrollable_policy_set_api_delegate(System.IntPtr obj,   Elm.Scroller.Policy hbar,   Elm.Scroller.Policy vbar);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_set_api_delegate> elm_interface_scrollable_policy_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_policy_set_api_delegate>(_Module, "elm_interface_scrollable_policy_set");
+    private static  void policy_set(System.IntPtr obj, System.IntPtr pd,  Elm.Scroller.Policy hbar,  Elm.Scroller.Policy vbar)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_policy_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetPolicy( hbar,  vbar);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_policy_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar,  vbar);
+      }
+   }
+   private static elm_interface_scrollable_policy_set_delegate elm_interface_scrollable_policy_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_region_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y,   out  int w,   out  int h);
+
+
+    public delegate  void elm_interface_scrollable_content_region_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_get_api_delegate> elm_interface_scrollable_content_region_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_get_api_delegate>(_Module, "elm_interface_scrollable_content_region_get");
+    private static  void content_region_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_region_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       x = default( int);      y = default( int);      w = default( int);      h = default( int);                                 
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetContentRegion( out x,  out y,  out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_region_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y,  out w,  out h);
+      }
+   }
+   private static elm_interface_scrollable_content_region_get_delegate elm_interface_scrollable_content_region_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_region_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,    int w,    int h);
+
+
+    public delegate  void elm_interface_scrollable_content_region_set_api_delegate(System.IntPtr obj,    int x,    int y,    int w,    int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_set_api_delegate> elm_interface_scrollable_content_region_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_set_api_delegate>(_Module, "elm_interface_scrollable_content_region_set");
+    private static  void content_region_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y,   int w,   int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetContentRegion( x,  y,  w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_content_region_set_delegate elm_interface_scrollable_content_region_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_content_events_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_content_events_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_get_api_delegate> elm_interface_scrollable_content_events_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_get_api_delegate>(_Module, "elm_interface_scrollable_content_events_get");
+    private static bool content_events_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_events_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetContentEvents();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_content_events_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_content_events_get_delegate elm_interface_scrollable_content_events_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_events_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool repeat_events);
+
+
+    public delegate  void elm_interface_scrollable_content_events_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool repeat_events);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_set_api_delegate> elm_interface_scrollable_content_events_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_events_set_api_delegate>(_Module, "elm_interface_scrollable_content_events_set");
+    private static  void content_events_set(System.IntPtr obj, System.IntPtr pd,  bool repeat_events)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_events_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetContentEvents( repeat_events);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_events_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  repeat_events);
+      }
+   }
+   private static elm_interface_scrollable_content_events_set_delegate elm_interface_scrollable_content_events_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void elm_interface_scrollable_page_size_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_get_api_delegate> elm_interface_scrollable_page_size_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_get_api_delegate>(_Module, "elm_interface_scrollable_page_size_get");
+    private static  void page_size_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetPageSize( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_page_size_get_delegate elm_interface_scrollable_page_size_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void elm_interface_scrollable_page_size_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_set_api_delegate> elm_interface_scrollable_page_size_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_size_set_api_delegate>(_Module, "elm_interface_scrollable_page_size_set");
+    private static  void page_size_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetPageSize( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_page_size_set_delegate elm_interface_scrollable_page_size_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_bounce_animator_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_bounce_animator_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_get_api_delegate> elm_interface_scrollable_bounce_animator_disabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_get_api_delegate>(_Module, "elm_interface_scrollable_bounce_animator_disabled_get");
+    private static bool bounce_animator_disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_animator_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetBounceAnimatorDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_bounce_animator_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_bounce_animator_disabled_get_delegate elm_interface_scrollable_bounce_animator_disabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_bounce_animator_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+
+
+    public delegate  void elm_interface_scrollable_bounce_animator_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disabled);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_set_api_delegate> elm_interface_scrollable_bounce_animator_disabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_bounce_animator_disabled_set_api_delegate>(_Module, "elm_interface_scrollable_bounce_animator_disabled_set");
+    private static  void bounce_animator_disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disabled)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_bounce_animator_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetBounceAnimatorDisabled( disabled);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_bounce_animator_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disabled);
+      }
+   }
+   private static elm_interface_scrollable_bounce_animator_disabled_set_delegate elm_interface_scrollable_bounce_animator_disabled_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_scroll_limit_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int page_limit_h,   out  int page_limit_v);
+
+
+    public delegate  void elm_interface_scrollable_page_scroll_limit_get_api_delegate(System.IntPtr obj,   out  int page_limit_h,   out  int page_limit_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_get_api_delegate> elm_interface_scrollable_page_scroll_limit_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_get_api_delegate>(_Module, "elm_interface_scrollable_page_scroll_limit_get");
+    private static  void page_scroll_limit_get(System.IntPtr obj, System.IntPtr pd,  out  int page_limit_h,  out  int page_limit_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_scroll_limit_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           page_limit_h = default( int);      page_limit_v = default( int);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetPageScrollLimit( out page_limit_h,  out page_limit_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_scroll_limit_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out page_limit_h,  out page_limit_v);
+      }
+   }
+   private static elm_interface_scrollable_page_scroll_limit_get_delegate elm_interface_scrollable_page_scroll_limit_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_scroll_limit_set_delegate(System.IntPtr obj, System.IntPtr pd,    int page_limit_h,    int page_limit_v);
+
+
+    public delegate  void elm_interface_scrollable_page_scroll_limit_set_api_delegate(System.IntPtr obj,    int page_limit_h,    int page_limit_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_set_api_delegate> elm_interface_scrollable_page_scroll_limit_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_scroll_limit_set_api_delegate>(_Module, "elm_interface_scrollable_page_scroll_limit_set");
+    private static  void page_scroll_limit_set(System.IntPtr obj, System.IntPtr pd,   int page_limit_h,   int page_limit_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_scroll_limit_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetPageScrollLimit( page_limit_h,  page_limit_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_scroll_limit_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  page_limit_h,  page_limit_v);
+      }
+   }
+   private static elm_interface_scrollable_page_scroll_limit_set_delegate elm_interface_scrollable_page_scroll_limit_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_snap_allow_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+
+
+    public delegate  void elm_interface_scrollable_page_snap_allow_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool horiz,  [MarshalAs(UnmanagedType.U1)]  out bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_get_api_delegate> elm_interface_scrollable_page_snap_allow_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_get_api_delegate>(_Module, "elm_interface_scrollable_page_snap_allow_get");
+    private static  void page_snap_allow_get(System.IntPtr obj, System.IntPtr pd,  out bool horiz,  out bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_snap_allow_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           horiz = default(bool);      vert = default(bool);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetPageSnapAllow( out horiz,  out vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_snap_allow_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out horiz,  out vert);
+      }
+   }
+   private static elm_interface_scrollable_page_snap_allow_get_delegate elm_interface_scrollable_page_snap_allow_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_snap_allow_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+
+
+    public delegate  void elm_interface_scrollable_page_snap_allow_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool horiz,  [MarshalAs(UnmanagedType.U1)]  bool vert);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_set_api_delegate> elm_interface_scrollable_page_snap_allow_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_snap_allow_set_api_delegate>(_Module, "elm_interface_scrollable_page_snap_allow_set");
+    private static  void page_snap_allow_set(System.IntPtr obj, System.IntPtr pd,  bool horiz,  bool vert)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_snap_allow_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetPageSnapAllow( horiz,  vert);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_snap_allow_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  horiz,  vert);
+      }
+   }
+   private static elm_interface_scrollable_page_snap_allow_set_delegate elm_interface_scrollable_page_snap_allow_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_paging_get_delegate(System.IntPtr obj, System.IntPtr pd,   out double pagerel_h,   out double pagerel_v,   out  int pagesize_h,   out  int pagesize_v);
+
+
+    public delegate  void elm_interface_scrollable_paging_get_api_delegate(System.IntPtr obj,   out double pagerel_h,   out double pagerel_v,   out  int pagesize_h,   out  int pagesize_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_get_api_delegate> elm_interface_scrollable_paging_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_get_api_delegate>(_Module, "elm_interface_scrollable_paging_get");
+    private static  void paging_get(System.IntPtr obj, System.IntPtr pd,  out double pagerel_h,  out double pagerel_v,  out  int pagesize_h,  out  int pagesize_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_paging_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       pagerel_h = default(double);      pagerel_v = default(double);      pagesize_h = default( int);      pagesize_v = default( int);                                 
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetPaging( out pagerel_h,  out pagerel_v,  out pagesize_h,  out pagesize_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_paging_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pagerel_h,  out pagerel_v,  out pagesize_h,  out pagesize_v);
+      }
+   }
+   private static elm_interface_scrollable_paging_get_delegate elm_interface_scrollable_paging_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_paging_set_delegate(System.IntPtr obj, System.IntPtr pd,   double pagerel_h,   double pagerel_v,    int pagesize_h,    int pagesize_v);
+
+
+    public delegate  void elm_interface_scrollable_paging_set_api_delegate(System.IntPtr obj,   double pagerel_h,   double pagerel_v,    int pagesize_h,    int pagesize_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_set_api_delegate> elm_interface_scrollable_paging_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_paging_set_api_delegate>(_Module, "elm_interface_scrollable_paging_set");
+    private static  void paging_set(System.IntPtr obj, System.IntPtr pd,  double pagerel_h,  double pagerel_v,   int pagesize_h,   int pagesize_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_paging_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetPaging( pagerel_h,  pagerel_v,  pagesize_h,  pagesize_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_paging_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pagerel_h,  pagerel_v,  pagesize_h,  pagesize_v);
+      }
+   }
+   private static elm_interface_scrollable_paging_set_delegate elm_interface_scrollable_paging_set_static_delegate;
+
+
+    private delegate Elm.Scroller.SingleDirection elm_interface_scrollable_single_direction_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Elm.Scroller.SingleDirection elm_interface_scrollable_single_direction_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_get_api_delegate> elm_interface_scrollable_single_direction_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_get_api_delegate>(_Module, "elm_interface_scrollable_single_direction_get");
+    private static Elm.Scroller.SingleDirection single_direction_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_single_direction_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Scroller.SingleDirection _ret_var = default(Elm.Scroller.SingleDirection);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetSingleDirection();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_single_direction_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_single_direction_get_delegate elm_interface_scrollable_single_direction_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_single_direction_set_delegate(System.IntPtr obj, System.IntPtr pd,   Elm.Scroller.SingleDirection single_dir);
+
+
+    public delegate  void elm_interface_scrollable_single_direction_set_api_delegate(System.IntPtr obj,   Elm.Scroller.SingleDirection single_dir);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_set_api_delegate> elm_interface_scrollable_single_direction_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_single_direction_set_api_delegate>(_Module, "elm_interface_scrollable_single_direction_set");
+    private static  void single_direction_set(System.IntPtr obj, System.IntPtr pd,  Elm.Scroller.SingleDirection single_dir)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_single_direction_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetSingleDirection( single_dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_single_direction_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  single_dir);
+      }
+   }
+   private static elm_interface_scrollable_single_direction_set_delegate elm_interface_scrollable_single_direction_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_step_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void elm_interface_scrollable_step_size_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_get_api_delegate> elm_interface_scrollable_step_size_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_get_api_delegate>(_Module, "elm_interface_scrollable_step_size_get");
+    private static  void step_size_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_step_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetStepSize( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_step_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_step_size_get_delegate elm_interface_scrollable_step_size_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_step_size_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void elm_interface_scrollable_step_size_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_set_api_delegate> elm_interface_scrollable_step_size_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_step_size_set_api_delegate>(_Module, "elm_interface_scrollable_step_size_set");
+    private static  void step_size_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_step_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetStepSize( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_step_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_step_size_set_delegate elm_interface_scrollable_step_size_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_loop_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+
+
+    public delegate  void elm_interface_scrollable_content_loop_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  out bool loop_h,  [MarshalAs(UnmanagedType.U1)]  out bool loop_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_get_api_delegate> elm_interface_scrollable_content_loop_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_get_api_delegate>(_Module, "elm_interface_scrollable_content_loop_get");
+    private static  void content_loop_get(System.IntPtr obj, System.IntPtr pd,  out bool loop_h,  out bool loop_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_loop_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           loop_h = default(bool);      loop_v = default(bool);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetContentLoop( out loop_h,  out loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_loop_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out loop_h,  out loop_v);
+      }
+   }
+   private static elm_interface_scrollable_content_loop_get_delegate elm_interface_scrollable_content_loop_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_loop_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+
+
+    public delegate  void elm_interface_scrollable_content_loop_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool loop_h,  [MarshalAs(UnmanagedType.U1)]  bool loop_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_set_api_delegate> elm_interface_scrollable_content_loop_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_loop_set_api_delegate>(_Module, "elm_interface_scrollable_content_loop_set");
+    private static  void content_loop_set(System.IntPtr obj, System.IntPtr pd,  bool loop_h,  bool loop_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_loop_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetContentLoop( loop_h,  loop_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_loop_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  loop_h,  loop_v);
+      }
+   }
+   private static elm_interface_scrollable_content_loop_set_delegate elm_interface_scrollable_content_loop_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_up_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_up_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_up_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_up_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_up_cb_set_api_delegate> elm_interface_scrollable_scroll_up_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_up_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_up_cb_set");
+    private static  void scroll_up_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_up_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_up_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollUpCb( scroll_up_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_up_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_up_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_up_cb_set_delegate elm_interface_scrollable_scroll_up_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hbar_drag_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb hbar_drag_cb);
+
+
+    public delegate  void elm_interface_scrollable_hbar_drag_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb hbar_drag_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_drag_cb_set_api_delegate> elm_interface_scrollable_hbar_drag_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_drag_cb_set_api_delegate>(_Module, "elm_interface_scrollable_hbar_drag_cb_set");
+    private static  void hbar_drag_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb hbar_drag_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hbar_drag_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetHbarDragCb( hbar_drag_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hbar_drag_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar_drag_cb);
+      }
+   }
+   private static elm_interface_scrollable_hbar_drag_cb_set_delegate elm_interface_scrollable_hbar_drag_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_drag_start_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb drag_start_cb);
+
+
+    public delegate  void elm_interface_scrollable_drag_start_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb drag_start_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_start_cb_set_api_delegate> elm_interface_scrollable_drag_start_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_start_cb_set_api_delegate>(_Module, "elm_interface_scrollable_drag_start_cb_set");
+    private static  void drag_start_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb drag_start_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_drag_start_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetDragStartCb( drag_start_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_drag_start_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  drag_start_cb);
+      }
+   }
+   private static elm_interface_scrollable_drag_start_cb_set_delegate elm_interface_scrollable_drag_start_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_start_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_start_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_start_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_start_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_start_cb_set_api_delegate> elm_interface_scrollable_scroll_start_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_start_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_start_cb_set");
+    private static  void scroll_start_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_start_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_start_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollStartCb( scroll_start_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_start_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_start_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_start_cb_set_delegate elm_interface_scrollable_scroll_start_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_freeze_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+
+
+    public delegate  void elm_interface_scrollable_freeze_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool freeze);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_freeze_set_api_delegate> elm_interface_scrollable_freeze_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_freeze_set_api_delegate>(_Module, "elm_interface_scrollable_freeze_set");
+    private static  void freeze_set(System.IntPtr obj, System.IntPtr pd,  bool freeze)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_freeze_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetFreeze( freeze);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_freeze_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  freeze);
+      }
+   }
+   private static elm_interface_scrollable_freeze_set_delegate elm_interface_scrollable_freeze_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_viewport_resize_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableResizeCb viewport_resize_cb);
+
+
+    public delegate  void elm_interface_scrollable_content_viewport_resize_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableResizeCb viewport_resize_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_resize_cb_set_api_delegate> elm_interface_scrollable_content_viewport_resize_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_resize_cb_set_api_delegate>(_Module, "elm_interface_scrollable_content_viewport_resize_cb_set");
+    private static  void content_viewport_resize_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableResizeCb viewport_resize_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_viewport_resize_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetContentViewportResizeCb( viewport_resize_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_viewport_resize_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport_resize_cb);
+      }
+   }
+   private static elm_interface_scrollable_content_viewport_resize_cb_set_delegate elm_interface_scrollable_content_viewport_resize_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_left_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_left_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_left_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_left_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_left_cb_set_api_delegate> elm_interface_scrollable_scroll_left_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_left_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_left_cb_set");
+    private static  void scroll_left_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_left_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_left_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollLeftCb( scroll_left_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_left_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_left_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_left_cb_set_delegate elm_interface_scrollable_scroll_left_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_vbar_press_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb vbar_press_cb);
+
+
+    public delegate  void elm_interface_scrollable_vbar_press_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb vbar_press_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_press_cb_set_api_delegate> elm_interface_scrollable_vbar_press_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_press_cb_set_api_delegate>(_Module, "elm_interface_scrollable_vbar_press_cb_set");
+    private static  void vbar_press_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb vbar_press_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_vbar_press_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetVbarPressCb( vbar_press_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_vbar_press_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  vbar_press_cb);
+      }
+   }
+   private static elm_interface_scrollable_vbar_press_cb_set_delegate elm_interface_scrollable_vbar_press_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hbar_press_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb hbar_press_cb);
+
+
+    public delegate  void elm_interface_scrollable_hbar_press_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb hbar_press_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_press_cb_set_api_delegate> elm_interface_scrollable_hbar_press_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_press_cb_set_api_delegate>(_Module, "elm_interface_scrollable_hbar_press_cb_set");
+    private static  void hbar_press_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb hbar_press_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hbar_press_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetHbarPressCb( hbar_press_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hbar_press_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar_press_cb);
+      }
+   }
+   private static elm_interface_scrollable_hbar_press_cb_set_delegate elm_interface_scrollable_hbar_press_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hbar_unpress_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb hbar_unpress_cb);
+
+
+    public delegate  void elm_interface_scrollable_hbar_unpress_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb hbar_unpress_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_unpress_cb_set_api_delegate> elm_interface_scrollable_hbar_unpress_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hbar_unpress_cb_set_api_delegate>(_Module, "elm_interface_scrollable_hbar_unpress_cb_set");
+    private static  void hbar_unpress_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb hbar_unpress_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hbar_unpress_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetHbarUnpressCb( hbar_unpress_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hbar_unpress_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hbar_unpress_cb);
+      }
+   }
+   private static elm_interface_scrollable_hbar_unpress_cb_set_delegate elm_interface_scrollable_hbar_unpress_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_drag_stop_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb drag_stop_cb);
+
+
+    public delegate  void elm_interface_scrollable_drag_stop_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb drag_stop_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_stop_cb_set_api_delegate> elm_interface_scrollable_drag_stop_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_drag_stop_cb_set_api_delegate>(_Module, "elm_interface_scrollable_drag_stop_cb_set");
+    private static  void drag_stop_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb drag_stop_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_drag_stop_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetDragStopCb( drag_stop_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_drag_stop_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  drag_stop_cb);
+      }
+   }
+   private static elm_interface_scrollable_drag_stop_cb_set_delegate elm_interface_scrollable_drag_stop_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_stop_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_stop_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_stop_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_stop_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_stop_cb_set_api_delegate> elm_interface_scrollable_scroll_stop_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_stop_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_stop_cb_set");
+    private static  void scroll_stop_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_stop_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_stop_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollStopCb( scroll_stop_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_stop_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_stop_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_stop_cb_set_delegate elm_interface_scrollable_scroll_stop_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_extern_pan_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pan);
+
+
+    public delegate  void elm_interface_scrollable_extern_pan_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object pan);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_extern_pan_set_api_delegate> elm_interface_scrollable_extern_pan_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_extern_pan_set_api_delegate>(_Module, "elm_interface_scrollable_extern_pan_set");
+    private static  void extern_pan_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object pan)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_extern_pan_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetExternPan( pan);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_extern_pan_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pan);
+      }
+   }
+   private static elm_interface_scrollable_extern_pan_set_delegate elm_interface_scrollable_extern_pan_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_change_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb page_change_cb);
+
+
+    public delegate  void elm_interface_scrollable_page_change_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb page_change_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_change_cb_set_api_delegate> elm_interface_scrollable_page_change_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_change_cb_set_api_delegate>(_Module, "elm_interface_scrollable_page_change_cb_set");
+    private static  void page_change_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb page_change_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_change_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetPageChangeCb( page_change_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_page_change_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  page_change_cb);
+      }
+   }
+   private static elm_interface_scrollable_page_change_cb_set_delegate elm_interface_scrollable_page_change_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_hold_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+
+
+    public delegate  void elm_interface_scrollable_hold_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool hold);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_hold_set_api_delegate> elm_interface_scrollable_hold_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_hold_set_api_delegate>(_Module, "elm_interface_scrollable_hold_set");
+    private static  void hold_set(System.IntPtr obj, System.IntPtr pd,  bool hold)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_hold_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetHold( hold);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_hold_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  hold);
+      }
+   }
+   private static elm_interface_scrollable_hold_set_delegate elm_interface_scrollable_hold_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_animate_start_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb animate_start_cb);
+
+
+    public delegate  void elm_interface_scrollable_animate_start_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb animate_start_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_start_cb_set_api_delegate> elm_interface_scrollable_animate_start_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_start_cb_set_api_delegate>(_Module, "elm_interface_scrollable_animate_start_cb_set");
+    private static  void animate_start_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb animate_start_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_animate_start_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetAnimateStartCb( animate_start_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_animate_start_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animate_start_cb);
+      }
+   }
+   private static elm_interface_scrollable_animate_start_cb_set_delegate elm_interface_scrollable_animate_start_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_down_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_down_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_down_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_down_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_down_cb_set_api_delegate> elm_interface_scrollable_scroll_down_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_down_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_down_cb_set");
+    private static  void scroll_down_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_down_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_down_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollDownCb( scroll_down_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_down_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_down_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_down_cb_set_delegate elm_interface_scrollable_scroll_down_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_relative_set_delegate(System.IntPtr obj, System.IntPtr pd,   double h_pagerel,   double v_pagerel);
+
+
+    public delegate  void elm_interface_scrollable_page_relative_set_api_delegate(System.IntPtr obj,   double h_pagerel,   double v_pagerel);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_relative_set_api_delegate> elm_interface_scrollable_page_relative_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_relative_set_api_delegate>(_Module, "elm_interface_scrollable_page_relative_set");
+    private static  void page_relative_set(System.IntPtr obj, System.IntPtr pd,  double h_pagerel,  double v_pagerel)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_relative_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetPageRelative( h_pagerel,  v_pagerel);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_relative_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  h_pagerel,  v_pagerel);
+      }
+   }
+   private static elm_interface_scrollable_page_relative_set_delegate elm_interface_scrollable_page_relative_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_cb_set_api_delegate> elm_interface_scrollable_scroll_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_cb_set");
+    private static  void scroll_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollCb( scroll_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_cb_set_delegate elm_interface_scrollable_scroll_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_animate_stop_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb animate_stop_cb);
+
+
+    public delegate  void elm_interface_scrollable_animate_stop_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb animate_stop_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_stop_cb_set_api_delegate> elm_interface_scrollable_animate_stop_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_animate_stop_cb_set_api_delegate>(_Module, "elm_interface_scrollable_animate_stop_cb_set");
+    private static  void animate_stop_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb animate_stop_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_animate_stop_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetAnimateStopCb( animate_stop_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_animate_stop_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  animate_stop_cb);
+      }
+   }
+   private static elm_interface_scrollable_animate_stop_cb_set_delegate elm_interface_scrollable_animate_stop_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_min_limit_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableMinLimitCb min_limit_cb);
+
+
+    public delegate  void elm_interface_scrollable_content_min_limit_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableMinLimitCb min_limit_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_cb_set_api_delegate> elm_interface_scrollable_content_min_limit_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_cb_set_api_delegate>(_Module, "elm_interface_scrollable_content_min_limit_cb_set");
+    private static  void content_min_limit_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableMinLimitCb min_limit_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_min_limit_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetContentMinLimitCb( min_limit_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_min_limit_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  min_limit_cb);
+      }
+   }
+   private static elm_interface_scrollable_content_min_limit_cb_set_delegate elm_interface_scrollable_content_min_limit_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_scroll_right_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb scroll_right_cb);
+
+
+    public delegate  void elm_interface_scrollable_scroll_right_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb scroll_right_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_right_cb_set_api_delegate> elm_interface_scrollable_scroll_right_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_scroll_right_cb_set_api_delegate>(_Module, "elm_interface_scrollable_scroll_right_cb_set");
+    private static  void scroll_right_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb scroll_right_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_scroll_right_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollRightCb( scroll_right_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_scroll_right_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scroll_right_cb);
+      }
+   }
+   private static elm_interface_scrollable_scroll_right_cb_set_delegate elm_interface_scrollable_scroll_right_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void elm_interface_scrollable_content_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_set_api_delegate> elm_interface_scrollable_content_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_set_api_delegate>(_Module, "elm_interface_scrollable_content_set");
+    private static  void scrollable_content_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetScrollableContent( content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  content);
+      }
+   }
+   private static elm_interface_scrollable_content_set_delegate elm_interface_scrollable_content_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_left_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_left_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_left_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_left_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_left_cb_set_api_delegate> elm_interface_scrollable_edge_left_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_left_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_left_cb_set");
+    private static  void edge_left_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_left_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_left_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetEdgeLeftCb( edge_left_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_left_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_left_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_left_cb_set_delegate elm_interface_scrollable_edge_left_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_vbar_drag_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb vbar_drag_cb);
+
+
+    public delegate  void elm_interface_scrollable_vbar_drag_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb vbar_drag_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_drag_cb_set_api_delegate> elm_interface_scrollable_vbar_drag_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_drag_cb_set_api_delegate>(_Module, "elm_interface_scrollable_vbar_drag_cb_set");
+    private static  void vbar_drag_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb vbar_drag_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_vbar_drag_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetVbarDragCb( vbar_drag_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_vbar_drag_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  vbar_drag_cb);
+      }
+   }
+   private static elm_interface_scrollable_vbar_drag_cb_set_delegate elm_interface_scrollable_vbar_drag_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_vbar_unpress_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb vbar_unpress_cb);
+
+
+    public delegate  void elm_interface_scrollable_vbar_unpress_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb vbar_unpress_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_unpress_cb_set_api_delegate> elm_interface_scrollable_vbar_unpress_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_vbar_unpress_cb_set_api_delegate>(_Module, "elm_interface_scrollable_vbar_unpress_cb_set");
+    private static  void vbar_unpress_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb vbar_unpress_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_vbar_unpress_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetVbarUnpressCb( vbar_unpress_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_vbar_unpress_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  vbar_unpress_cb);
+      }
+   }
+   private static elm_interface_scrollable_vbar_unpress_cb_set_delegate elm_interface_scrollable_vbar_unpress_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_bottom_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_bottom_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_bottom_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_bottom_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_bottom_cb_set_api_delegate> elm_interface_scrollable_edge_bottom_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_bottom_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_bottom_cb_set");
+    private static  void edge_bottom_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_bottom_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_bottom_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetEdgeBottomCb( edge_bottom_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_bottom_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_bottom_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_bottom_cb_set_delegate elm_interface_scrollable_edge_bottom_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_right_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_right_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_right_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_right_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_right_cb_set_api_delegate> elm_interface_scrollable_edge_right_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_right_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_right_cb_set");
+    private static  void edge_right_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_right_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_right_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetEdgeRightCb( edge_right_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_right_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_right_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_right_cb_set_delegate elm_interface_scrollable_edge_right_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_edge_top_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmInterfaceScrollableCb edge_top_cb);
+
+
+    public delegate  void elm_interface_scrollable_edge_top_cb_set_api_delegate(System.IntPtr obj,   ElmInterfaceScrollableCb edge_top_cb);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_top_cb_set_api_delegate> elm_interface_scrollable_edge_top_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_edge_top_cb_set_api_delegate>(_Module, "elm_interface_scrollable_edge_top_cb_set");
+    private static  void edge_top_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmInterfaceScrollableCb edge_top_cb)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_edge_top_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetEdgeTopCb( edge_top_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_edge_top_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edge_top_cb);
+      }
+   }
+   private static elm_interface_scrollable_edge_top_cb_set_delegate elm_interface_scrollable_edge_top_cb_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_objects_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object edje_object, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object hit_rectangle);
+
+
+    public delegate  void elm_interface_scrollable_objects_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object edje_object, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object hit_rectangle);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_objects_set_api_delegate> elm_interface_scrollable_objects_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_objects_set_api_delegate>(_Module, "elm_interface_scrollable_objects_set");
+    private static  void objects_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object edje_object,  Efl.Canvas.Object hit_rectangle)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_objects_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetObjects( edje_object,  hit_rectangle);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_objects_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  edje_object,  hit_rectangle);
+      }
+   }
+   private static elm_interface_scrollable_objects_set_delegate elm_interface_scrollable_objects_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_last_page_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int pagenumber_h,   out  int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_last_page_get_api_delegate(System.IntPtr obj,   out  int pagenumber_h,   out  int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_last_page_get_api_delegate> elm_interface_scrollable_last_page_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_last_page_get_api_delegate>(_Module, "elm_interface_scrollable_last_page_get");
+    private static  void last_page_get(System.IntPtr obj, System.IntPtr pd,  out  int pagenumber_h,  out  int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_last_page_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           pagenumber_h = default( int);      pagenumber_v = default( int);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetLastPage( out pagenumber_h,  out pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_last_page_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pagenumber_h,  out pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_last_page_get_delegate elm_interface_scrollable_last_page_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_current_page_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int pagenumber_h,   out  int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_current_page_get_api_delegate(System.IntPtr obj,   out  int pagenumber_h,   out  int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_current_page_get_api_delegate> elm_interface_scrollable_current_page_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_current_page_get_api_delegate>(_Module, "elm_interface_scrollable_current_page_get");
+    private static  void current_page_get(System.IntPtr obj, System.IntPtr pd,  out  int pagenumber_h,  out  int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_current_page_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           pagenumber_h = default( int);      pagenumber_v = default( int);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetCurrentPage( out pagenumber_h,  out pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_current_page_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out pagenumber_h,  out pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_current_page_get_delegate elm_interface_scrollable_current_page_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_viewport_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y,   out  int w,   out  int h);
+
+
+    public delegate  void elm_interface_scrollable_content_viewport_geometry_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_geometry_get_api_delegate> elm_interface_scrollable_content_viewport_geometry_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_viewport_geometry_get_api_delegate>(_Module, "elm_interface_scrollable_content_viewport_geometry_get");
+    private static  void content_viewport_geometry_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_viewport_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                       x = default( int);      y = default( int);      w = default( int);      h = default( int);                                 
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetContentViewportGeometry( out x,  out y,  out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_viewport_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y,  out w,  out h);
+      }
+   }
+   private static elm_interface_scrollable_content_viewport_geometry_get_delegate elm_interface_scrollable_content_viewport_geometry_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_size_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int w,   out  int h);
+
+
+    public delegate  void elm_interface_scrollable_content_size_get_api_delegate(System.IntPtr obj,   out  int w,   out  int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_size_get_api_delegate> elm_interface_scrollable_content_size_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_size_get_api_delegate>(_Module, "elm_interface_scrollable_content_size_get");
+    private static  void content_size_get(System.IntPtr obj, System.IntPtr pd,  out  int w,  out  int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           w = default( int);      h = default( int);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetContentSize( out w,  out h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out w,  out h);
+      }
+   }
+   private static elm_interface_scrollable_content_size_get_delegate elm_interface_scrollable_content_size_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_interface_scrollable_item_loop_enabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_interface_scrollable_item_loop_enabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_get_api_delegate> elm_interface_scrollable_item_loop_enabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_get_api_delegate>(_Module, "elm_interface_scrollable_item_loop_enabled_get");
+    private static bool item_loop_enabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_item_loop_enabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetItemLoopEnabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_interface_scrollable_item_loop_enabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_interface_scrollable_item_loop_enabled_get_delegate elm_interface_scrollable_item_loop_enabled_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_item_loop_enabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+
+
+    public delegate  void elm_interface_scrollable_item_loop_enabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool enable);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_set_api_delegate> elm_interface_scrollable_item_loop_enabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_item_loop_enabled_set_api_delegate>(_Module, "elm_interface_scrollable_item_loop_enabled_set");
+    private static  void item_loop_enabled_set(System.IntPtr obj, System.IntPtr pd,  bool enable)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_item_loop_enabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetItemLoopEnabled( enable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_interface_scrollable_item_loop_enabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  enable);
+      }
+   }
+   private static elm_interface_scrollable_item_loop_enabled_set_delegate elm_interface_scrollable_item_loop_enabled_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_pos_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool sig);
+
+
+    public delegate  void elm_interface_scrollable_content_pos_set_api_delegate(System.IntPtr obj,    int x,    int y,  [MarshalAs(UnmanagedType.U1)]  bool sig);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_set_api_delegate> elm_interface_scrollable_content_pos_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_set_api_delegate>(_Module, "elm_interface_scrollable_content_pos_set");
+    private static  void content_pos_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y,  bool sig)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_pos_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetContentPos( x,  y,  sig);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         elm_interface_scrollable_content_pos_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  sig);
+      }
+   }
+   private static elm_interface_scrollable_content_pos_set_delegate elm_interface_scrollable_content_pos_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_pos_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void elm_interface_scrollable_content_pos_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_get_api_delegate> elm_interface_scrollable_content_pos_get_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_pos_get_api_delegate>(_Module, "elm_interface_scrollable_content_pos_get");
+    private static  void content_pos_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_pos_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((InterfaceScrollableConcrete)wrapper).GetContentPos( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_pos_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static elm_interface_scrollable_content_pos_get_delegate elm_interface_scrollable_content_pos_get_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_show_delegate(System.IntPtr obj, System.IntPtr pd,    int pagenumber_h,    int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_page_show_api_delegate(System.IntPtr obj,    int pagenumber_h,    int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_show_api_delegate> elm_interface_scrollable_page_show_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_show_api_delegate>(_Module, "elm_interface_scrollable_page_show");
+    private static  void page_show(System.IntPtr obj, System.IntPtr pd,   int pagenumber_h,   int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_show was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).ShowPage( pagenumber_h,  pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_show_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pagenumber_h,  pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_page_show_delegate elm_interface_scrollable_page_show_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_region_bring_in_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,    int w,    int h);
+
+
+    public delegate  void elm_interface_scrollable_region_bring_in_api_delegate(System.IntPtr obj,    int x,    int y,    int w,    int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_region_bring_in_api_delegate> elm_interface_scrollable_region_bring_in_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_region_bring_in_api_delegate>(_Module, "elm_interface_scrollable_region_bring_in");
+    private static  void region_bring_in(System.IntPtr obj, System.IntPtr pd,   int x,   int y,   int w,   int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_region_bring_in was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((InterfaceScrollableConcrete)wrapper).RegionBringIn( x,  y,  w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_region_bring_in_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_region_bring_in_delegate elm_interface_scrollable_region_bring_in_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_page_bring_in_delegate(System.IntPtr obj, System.IntPtr pd,    int pagenumber_h,    int pagenumber_v);
+
+
+    public delegate  void elm_interface_scrollable_page_bring_in_api_delegate(System.IntPtr obj,    int pagenumber_h,    int pagenumber_v);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_bring_in_api_delegate> elm_interface_scrollable_page_bring_in_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_page_bring_in_api_delegate>(_Module, "elm_interface_scrollable_page_bring_in");
+    private static  void page_bring_in(System.IntPtr obj, System.IntPtr pd,   int pagenumber_h,   int pagenumber_v)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_page_bring_in was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).PageBringIn( pagenumber_h,  pagenumber_v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_page_bring_in_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pagenumber_h,  pagenumber_v);
+      }
+   }
+   private static elm_interface_scrollable_page_bring_in_delegate elm_interface_scrollable_page_bring_in_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_region_show_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y,    int w,    int h);
+
+
+    public delegate  void elm_interface_scrollable_content_region_show_api_delegate(System.IntPtr obj,    int x,    int y,    int w,    int h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_show_api_delegate> elm_interface_scrollable_content_region_show_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_region_show_api_delegate>(_Module, "elm_interface_scrollable_content_region_show");
+    private static  void content_region_show(System.IntPtr obj, System.IntPtr pd,   int x,   int y,   int w,   int h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_region_show was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((InterfaceScrollableConcrete)wrapper).ShowContentRegion( x,  y,  w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_interface_scrollable_content_region_show_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y,  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_content_region_show_delegate elm_interface_scrollable_content_region_show_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_content_min_limit_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+
+
+    public delegate  void elm_interface_scrollable_content_min_limit_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool w,  [MarshalAs(UnmanagedType.U1)]  bool h);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_api_delegate> elm_interface_scrollable_content_min_limit_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_content_min_limit_api_delegate>(_Module, "elm_interface_scrollable_content_min_limit");
+    private static  void content_min_limit(System.IntPtr obj, System.IntPtr pd,  bool w,  bool h)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_content_min_limit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).ContentMinLimit( w,  h);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_content_min_limit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  w,  h);
+      }
+   }
+   private static elm_interface_scrollable_content_min_limit_delegate elm_interface_scrollable_content_min_limit_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_wanted_region_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void elm_interface_scrollable_wanted_region_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_wanted_region_set_api_delegate> elm_interface_scrollable_wanted_region_set_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_wanted_region_set_api_delegate>(_Module, "elm_interface_scrollable_wanted_region_set");
+    private static  void wanted_region_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_wanted_region_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetWantedRegion( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_wanted_region_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_wanted_region_set_delegate elm_interface_scrollable_wanted_region_set_static_delegate;
+
+
+    private delegate  void elm_interface_scrollable_custom_pan_pos_adjust_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr x,    System.IntPtr y);
+
+
+    public delegate  void elm_interface_scrollable_custom_pan_pos_adjust_api_delegate(System.IntPtr obj,    System.IntPtr x,    System.IntPtr y);
+    public static Efl.Eo.FunctionWrapper<elm_interface_scrollable_custom_pan_pos_adjust_api_delegate> elm_interface_scrollable_custom_pan_pos_adjust_ptr = new Efl.Eo.FunctionWrapper<elm_interface_scrollable_custom_pan_pos_adjust_api_delegate>(_Module, "elm_interface_scrollable_custom_pan_pos_adjust");
+    private static  void custom_pan_pos_adjust(System.IntPtr obj, System.IntPtr pd,   System.IntPtr x,   System.IntPtr y)
+   {
+      Eina.Log.Debug("function elm_interface_scrollable_custom_pan_pos_adjust was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_x = Eina.PrimitiveConversion.PointerToManaged< int>(x);
+      var _in_y = Eina.PrimitiveConversion.PointerToManaged< int>(y);
+                                 
+         try {
+            ((InterfaceScrollableConcrete)wrapper).CustomPanPosAdjust( _in_x,  _in_y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_interface_scrollable_custom_pan_pos_adjust_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static elm_interface_scrollable_custom_pan_pos_adjust_delegate elm_interface_scrollable_custom_pan_pos_adjust_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_widget_focus_manager_create_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate> efl_ui_widget_focus_manager_create_ptr = new Efl.Eo.FunctionWrapper<efl_ui_widget_focus_manager_create_api_delegate>(_Module, "efl_ui_widget_focus_manager_create");
+    private static Efl.Ui.Focus.Manager focus_manager_create(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_widget_focus_manager_create was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).FocusManagerCreate( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_widget_focus_manager_create_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_widget_focus_manager_create_delegate efl_ui_widget_focus_manager_create_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate> efl_ui_focus_manager_focus_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_get_api_delegate>(_Module, "efl_ui_focus_manager_focus_get");
+    private static Efl.Ui.Focus.Object manager_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetManagerFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_focus_get_delegate efl_ui_focus_manager_focus_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_focus_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+
+
+    public delegate  void efl_ui_focus_manager_focus_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object focus);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate> efl_ui_focus_manager_focus_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_focus_set_api_delegate>(_Module, "efl_ui_focus_manager_focus_set");
+    private static  void manager_focus_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object focus)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetManagerFocus( focus);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focus);
+      }
+   }
+   private static efl_ui_focus_manager_focus_set_delegate efl_ui_focus_manager_focus_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Manager efl_ui_focus_manager_redirect_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate> efl_ui_focus_manager_redirect_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_get_api_delegate>(_Module, "efl_ui_focus_manager_redirect_get");
+    private static Efl.Ui.Focus.Manager redirect_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Manager _ret_var = default(Efl.Ui.Focus.Manager);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetRedirect();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_redirect_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_redirect_get_delegate efl_ui_focus_manager_redirect_get_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_redirect_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+
+
+    public delegate  void efl_ui_focus_manager_redirect_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ManagerConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Manager redirect);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate> efl_ui_focus_manager_redirect_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_redirect_set_api_delegate>(_Module, "efl_ui_focus_manager_redirect_set");
+    private static  void redirect_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Manager redirect)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_redirect_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetRedirect( redirect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_ui_focus_manager_redirect_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  redirect);
+      }
+   }
+   private static efl_ui_focus_manager_redirect_set_delegate efl_ui_focus_manager_redirect_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_border_elements_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate> efl_ui_focus_manager_border_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_border_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_border_elements_get");
+    private static  System.IntPtr border_elements_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_border_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetBorderElements();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_border_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_border_elements_get_delegate efl_ui_focus_manager_border_elements_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal viewport);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_viewport_elements_get_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal viewport);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate> efl_ui_focus_manager_viewport_elements_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_viewport_elements_get_api_delegate>(_Module, "efl_ui_focus_manager_viewport_elements_get");
+    private static  System.IntPtr viewport_elements_get(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal viewport)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_viewport_elements_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_viewport = Eina.Rect_StructConversion.ToManaged(viewport);
+                     Eina.Iterator<Efl.Ui.Focus.Object> _ret_var = default(Eina.Iterator<Efl.Ui.Focus.Object>);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetViewportElements( _in_viewport);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var.Handle;
+      } else {
+         return efl_ui_focus_manager_viewport_elements_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  viewport);
+      }
+   }
+   private static efl_ui_focus_manager_viewport_elements_get_delegate efl_ui_focus_manager_viewport_elements_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_root_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate> efl_ui_focus_manager_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_get_api_delegate>(_Module, "efl_ui_focus_manager_root_get");
+    private static Efl.Ui.Focus.Object root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).GetRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_root_get_delegate efl_ui_focus_manager_root_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_ui_focus_manager_root_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_ui_focus_manager_root_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate> efl_ui_focus_manager_root_set_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_root_set_api_delegate>(_Module, "efl_ui_focus_manager_root_set");
+    private static bool root_set(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_root_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).SetRoot( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_root_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_root_set_delegate efl_ui_focus_manager_root_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate> efl_ui_focus_manager_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_move_api_delegate>(_Module, "efl_ui_focus_manager_move");
+    private static Efl.Ui.Focus.Object move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).Move( direction);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction);
+      }
+   }
+   private static efl_ui_focus_manager_move_delegate efl_ui_focus_manager_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_move_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child,  [MarshalAs(UnmanagedType.U1)]  bool logical);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate> efl_ui_focus_manager_request_move_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_move_api_delegate>(_Module, "efl_ui_focus_manager_request_move");
+    private static Efl.Ui.Focus.Object request_move(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object child,  bool logical)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_move was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).MoveRequest( direction,  child,  logical);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_move_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  child,  logical);
+      }
+   }
+   private static efl_ui_focus_manager_request_move_delegate efl_ui_focus_manager_request_move_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Ui.Focus.Object efl_ui_focus_manager_request_subchild_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object root);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate> efl_ui_focus_manager_request_subchild_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_request_subchild_api_delegate>(_Module, "efl_ui_focus_manager_request_subchild");
+    private static Efl.Ui.Focus.Object request_subchild(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object root)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_request_subchild was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Object _ret_var = default(Efl.Ui.Focus.Object);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).RequestSubchild( root);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_ui_focus_manager_request_subchild_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  root);
+      }
+   }
+   private static efl_ui_focus_manager_request_subchild_delegate efl_ui_focus_manager_request_subchild_static_delegate;
+
+
+    private delegate  System.IntPtr efl_ui_focus_manager_fetch_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+
+
+    public delegate  System.IntPtr efl_ui_focus_manager_fetch_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object child);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate> efl_ui_focus_manager_fetch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_fetch_api_delegate>(_Module, "efl_ui_focus_manager_fetch");
+    private static  System.IntPtr fetch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Object child)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_fetch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Ui.Focus.Relations _ret_var = default(Efl.Ui.Focus.Relations);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).Fetch( child);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.PrimitiveConversion.ManagedToPointerAlloc(_ret_var);
+      } else {
+         return efl_ui_focus_manager_fetch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  child);
+      }
+   }
+   private static efl_ui_focus_manager_fetch_delegate efl_ui_focus_manager_fetch_static_delegate;
+
+
+    private delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal efl_ui_focus_manager_logical_end_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate> efl_ui_focus_manager_logical_end_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_logical_end_api_delegate>(_Module, "efl_ui_focus_manager_logical_end");
+    private static Efl.Ui.Focus.ManagerLogicalEndDetail_StructInternal logical_end(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_logical_end was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Ui.Focus.ManagerLogicalEndDetail _ret_var = default(Efl.Ui.Focus.ManagerLogicalEndDetail);
+         try {
+            _ret_var = ((InterfaceScrollableConcrete)wrapper).LogicalEnd();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Efl.Ui.Focus.ManagerLogicalEndDetail_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_ui_focus_manager_logical_end_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_logical_end_delegate efl_ui_focus_manager_logical_end_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_reset_history_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_reset_history_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate> efl_ui_focus_manager_reset_history_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_reset_history_api_delegate>(_Module, "efl_ui_focus_manager_reset_history");
+    private static  void reset_history(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_reset_history was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((InterfaceScrollableConcrete)wrapper).ResetHistory();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_reset_history_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_reset_history_delegate efl_ui_focus_manager_reset_history_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_pop_history_stack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_pop_history_stack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate> efl_ui_focus_manager_pop_history_stack_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_pop_history_stack_api_delegate>(_Module, "efl_ui_focus_manager_pop_history_stack");
+    private static  void pop_history_stack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_pop_history_stack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((InterfaceScrollableConcrete)wrapper).PopHistoryStack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_pop_history_stack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_pop_history_stack_delegate efl_ui_focus_manager_pop_history_stack_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_setup_on_first_touch_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+
+
+    public delegate  void efl_ui_focus_manager_setup_on_first_touch_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction direction, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Ui.Focus.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Ui.Focus.Object entry);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate> efl_ui_focus_manager_setup_on_first_touch_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_setup_on_first_touch_api_delegate>(_Module, "efl_ui_focus_manager_setup_on_first_touch");
+    private static  void setup_on_first_touch(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction direction,  Efl.Ui.Focus.Object entry)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_setup_on_first_touch was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((InterfaceScrollableConcrete)wrapper).SetupOnFirstTouch( direction,  entry);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_ui_focus_manager_setup_on_first_touch_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  direction,  entry);
+      }
+   }
+   private static efl_ui_focus_manager_setup_on_first_touch_delegate efl_ui_focus_manager_setup_on_first_touch_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_freeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_freeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate> efl_ui_focus_manager_dirty_logic_freeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_freeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_freeze");
+    private static  void dirty_logic_freeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_freeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((InterfaceScrollableConcrete)wrapper).FreezeDirtyLogic();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_freeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_freeze_delegate efl_ui_focus_manager_dirty_logic_freeze_static_delegate;
+
+
+    private delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate> efl_ui_focus_manager_dirty_logic_unfreeze_ptr = new Efl.Eo.FunctionWrapper<efl_ui_focus_manager_dirty_logic_unfreeze_api_delegate>(_Module, "efl_ui_focus_manager_dirty_logic_unfreeze");
+    private static  void dirty_logic_unfreeze(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_ui_focus_manager_dirty_logic_unfreeze was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((InterfaceScrollableConcrete)wrapper).DirtyLogicUnfreeze();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_ui_focus_manager_dirty_logic_unfreeze_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_ui_focus_manager_dirty_logic_unfreeze_delegate efl_ui_focus_manager_dirty_logic_unfreeze_static_delegate;
+}
+} 
+namespace Elm { namespace Scroller { 
+/// <summary>Type that controls when scrollbars should appear.
+/// See also <see cref="Elm.InterfaceScrollable.GetPolicy"/>.</summary>
+public enum Policy
+{
+/// <summary>Show scrollbars as needed</summary>
+Auto = 0,
+/// <summary>Always show scrollbars</summary>
+On = 1,
+/// <summary>Never show scrollbars</summary>
+Off = 2,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 3,
+}
+} } 
+namespace Elm { namespace Scroller { 
+/// <summary>Type that controls how the content is scrolled.
+/// See also <see cref="Elm.InterfaceScrollable.SetSingleDirection"/>.</summary>
+public enum SingleDirection
+{
+/// <summary>Scroll every direction</summary>
+None = 0,
+/// <summary>Scroll single direction if the direction is certain</summary>
+Soft = 1,
+/// <summary>Scroll only single direction</summary>
+Hard = 2,
+/// <summary>Sentinel value to indicate last enum field during iteration</summary>
+Last = 3,
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/elm_widget_item.eo.cs b/internals/src/EflSharp/EflSharp/elm_widget_item.eo.cs
new file mode 100755 (executable)
index 0000000..1ac5b21
--- /dev/null
@@ -0,0 +1,5546 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Elm { namespace Widget { 
+/// <summary>Elementary widget item class</summary>
+[ItemNativeInherit]
+public class Item : Efl.Object, Efl.Eo.IWrapper,Efl.Access.Action,Efl.Access.Component,Efl.Access.Object,Efl.Access.Widget.Action,Efl.Gfx.Entity,Efl.Gfx.Stack
+{
+   public new static System.IntPtr klass = System.IntPtr.Zero;
+   public new static Elm.Widget.ItemNativeInherit nativeInherit = new Elm.Widget.ItemNativeInherit();
+   ///<summary>Pointer to the native class description.</summary>
+   public override System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (Item))
+            return Elm.Widget.ItemNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      elm_widget_item_class_get();
+   ///<summary>Creates a new instance.</summary>
+   ///<param name="parent">Parent instance.</param>
+   public Item(Efl.Object parent= null
+         ) :
+      base(elm_widget_item_class_get(), typeof(Item), parent)
+   {
+      FinishInstantiation();
+   }
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public Item(System.IntPtr raw) : base(raw)
+   {
+            register_event_proxies();
+   }
+   ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
+   protected Item(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public new static Item static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new Item(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+private static object PropertyChangedEvtKey = new object();
+   /// <summary>Called when property has changed</summary>
+   public event EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args> PropertyChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_PROPERTY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_PropertyChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PropertyChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_PROPERTY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PropertyChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PropertyChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PropertyChangedEvt.</summary>
+   public void On_PropertyChangedEvt(Efl.Access.ObjectPropertyChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectPropertyChangedEvt_Args>)eventHandlers[PropertyChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PropertyChangedEvt_delegate;
+   private void on_PropertyChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectPropertyChangedEvt_Args args = new Efl.Access.ObjectPropertyChangedEvt_Args();
+      args.arg = Eina.StringConversion.NativeUtf8ToManagedString(evt.Info);
+      try {
+         On_PropertyChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ChildrenChangedEvtKey = new object();
+   /// <summary>Called when children have changed</summary>
+   public event EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args> ChildrenChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_CHILDREN_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ChildrenChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ChildrenChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_CHILDREN_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ChildrenChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ChildrenChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ChildrenChangedEvt.</summary>
+   public void On_ChildrenChangedEvt(Efl.Access.ObjectChildrenChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectChildrenChangedEvt_Args>)eventHandlers[ChildrenChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ChildrenChangedEvt_delegate;
+   private void on_ChildrenChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectChildrenChangedEvt_Args args = new Efl.Access.ObjectChildrenChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_ChildrenChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StateChangedEvtKey = new object();
+   /// <summary>Called when state has changed</summary>
+   public event EventHandler<Efl.Access.ObjectStateChangedEvt_Args> StateChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_STATE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_StateChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_STATE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StateChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StateChangedEvt.</summary>
+   public void On_StateChangedEvt(Efl.Access.ObjectStateChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectStateChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectStateChangedEvt_Args>)eventHandlers[StateChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StateChangedEvt_delegate;
+   private void on_StateChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectStateChangedEvt_Args args = new Efl.Access.ObjectStateChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_StateChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object BoundsChangedEvtKey = new object();
+   /// <summary>Called when boundaries have changed</summary>
+   public event EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args> BoundsChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_BOUNDS_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_BoundsChangedEvt_delegate)) {
+               eventHandlers.AddHandler(BoundsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_BOUNDS_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_BoundsChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(BoundsChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event BoundsChangedEvt.</summary>
+   public void On_BoundsChangedEvt(Efl.Access.ObjectBoundsChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectBoundsChangedEvt_Args>)eventHandlers[BoundsChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_BoundsChangedEvt_delegate;
+   private void on_BoundsChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectBoundsChangedEvt_Args args = new Efl.Access.ObjectBoundsChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_BoundsChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object VisibleDataChangedEvtKey = new object();
+   /// <summary>Called when visibility has changed</summary>
+   public event EventHandler VisibleDataChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_VISIBLE_DATA_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_VisibleDataChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibleDataChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_VISIBLE_DATA_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibleDataChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibleDataChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibleDataChangedEvt.</summary>
+   public void On_VisibleDataChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[VisibleDataChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibleDataChangedEvt_delegate;
+   private void on_VisibleDataChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_VisibleDataChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ActiveDescendantChangedEvtKey = new object();
+   /// <summary>Called when active state of descendant has changed</summary>
+   public event EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args> ActiveDescendantChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ACTIVE_DESCENDANT_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ActiveDescendantChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ActiveDescendantChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ACTIVE_DESCENDANT_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ActiveDescendantChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ActiveDescendantChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ActiveDescendantChangedEvt.</summary>
+   public void On_ActiveDescendantChangedEvt(Efl.Access.ObjectActiveDescendantChangedEvt_Args e)
+   {
+      EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Access.ObjectActiveDescendantChangedEvt_Args>)eventHandlers[ActiveDescendantChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ActiveDescendantChangedEvt_delegate;
+   private void on_ActiveDescendantChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Access.ObjectActiveDescendantChangedEvt_Args args = new Efl.Access.ObjectActiveDescendantChangedEvt_Args();
+      args.arg = new Efl.Object(evt.Info);
+      try {
+         On_ActiveDescendantChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object AddedEvtKey = new object();
+   /// <summary>Called when item is added</summary>
+   public event EventHandler AddedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ADDED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_AddedEvt_delegate)) {
+               eventHandlers.AddHandler(AddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_ADDED";
+            if (remove_cpp_event_handler(key, this.evt_AddedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(AddedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event AddedEvt.</summary>
+   public void On_AddedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[AddedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_AddedEvt_delegate;
+   private void on_AddedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_AddedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object RemovedEvtKey = new object();
+   /// <summary>Called when item is removed</summary>
+   public event EventHandler RemovedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_REMOVED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_RemovedEvt_delegate)) {
+               eventHandlers.AddHandler(RemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_REMOVED";
+            if (remove_cpp_event_handler(key, this.evt_RemovedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(RemovedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event RemovedEvt.</summary>
+   public void On_RemovedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[RemovedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_RemovedEvt_delegate;
+   private void on_RemovedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_RemovedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object MoveOutedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler MoveOutedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_MOVE_OUTED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_MoveOutedEvt_delegate)) {
+               eventHandlers.AddHandler(MoveOutedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_OBJECT_EVENT_MOVE_OUTED";
+            if (remove_cpp_event_handler(key, this.evt_MoveOutedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(MoveOutedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event MoveOutedEvt.</summary>
+   public void On_MoveOutedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[MoveOutedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_MoveOutedEvt_delegate;
+   private void on_MoveOutedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_MoveOutedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object ReadingStateChangedEvtKey = new object();
+   /// <summary></summary>
+   public event EventHandler ReadingStateChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WIDGET_ACTION_EVENT_READING_STATE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Elementary, key, this.evt_ReadingStateChangedEvt_delegate)) {
+               eventHandlers.AddHandler(ReadingStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_ACCESS_WIDGET_ACTION_EVENT_READING_STATE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_ReadingStateChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(ReadingStateChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event ReadingStateChangedEvt.</summary>
+   public void On_ReadingStateChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[ReadingStateChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_ReadingStateChangedEvt_delegate;
+   private void on_ReadingStateChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_ReadingStateChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object VisibilityChangedEvtKey = new object();
+   /// <summary>Object&apos;s visibility state changed, the event value is the new state.</summary>
+   public event EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> VisibilityChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_VisibilityChangedEvt_delegate)) {
+               eventHandlers.AddHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_VISIBILITY_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_VisibilityChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(VisibilityChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event VisibilityChangedEvt.</summary>
+   public void On_VisibilityChangedEvt(Efl.Gfx.EntityVisibilityChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityVisibilityChangedEvt_Args>)eventHandlers[VisibilityChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_VisibilityChangedEvt_delegate;
+   private void on_VisibilityChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityVisibilityChangedEvt_Args args = new Efl.Gfx.EntityVisibilityChangedEvt_Args();
+      args.arg = evt.Info != IntPtr.Zero;
+      try {
+         On_VisibilityChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object PositionChangedEvtKey = new object();
+   /// <summary>Object was moved, its position during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> PositionChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_PositionChangedEvt_delegate)) {
+               eventHandlers.AddHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_POSITION_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_PositionChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(PositionChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event PositionChangedEvt.</summary>
+   public void On_PositionChangedEvt(Efl.Gfx.EntityPositionChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntityPositionChangedEvt_Args>)eventHandlers[PositionChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_PositionChangedEvt_delegate;
+   private void on_PositionChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntityPositionChangedEvt_Args args = new Efl.Gfx.EntityPositionChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_PositionChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object SizeChangedEvtKey = new object();
+   /// <summary>Object was resized, its size during the event is the new one.</summary>
+   public event EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> SizeChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_SizeChangedEvt_delegate)) {
+               eventHandlers.AddHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_SIZE_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_SizeChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(SizeChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event SizeChangedEvt.</summary>
+   public void On_SizeChangedEvt(Efl.Gfx.EntitySizeChangedEvt_Args e)
+   {
+      EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args> evt;
+      lock (eventLock) {
+      evt = (EventHandler<Efl.Gfx.EntitySizeChangedEvt_Args>)eventHandlers[SizeChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_SizeChangedEvt_delegate;
+   private void on_SizeChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      Efl.Gfx.EntitySizeChangedEvt_Args args = new Efl.Gfx.EntitySizeChangedEvt_Args();
+      args.arg =  evt.Info;;
+      try {
+         On_SizeChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+private static object StackingChangedEvtKey = new object();
+   /// <summary>Object stacking was changed.</summary>
+   public event EventHandler StackingChangedEvt
+   {
+      add {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (add_cpp_event_handler(efl.Libs.Efl, key, this.evt_StackingChangedEvt_delegate)) {
+               eventHandlers.AddHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error adding proxy for event {key}");
+         }
+      }
+      remove {
+         lock (eventLock) {
+            string key = "_EFL_GFX_ENTITY_EVENT_STACKING_CHANGED";
+            if (remove_cpp_event_handler(key, this.evt_StackingChangedEvt_delegate)) { 
+               eventHandlers.RemoveHandler(StackingChangedEvtKey , value);
+            } else
+               Eina.Log.Error($"Error removing proxy for event {key}");
+         }
+      }
+   }
+   ///<summary>Method to raise event StackingChangedEvt.</summary>
+   public void On_StackingChangedEvt(EventArgs e)
+   {
+      EventHandler evt;
+      lock (eventLock) {
+      evt = (EventHandler)eventHandlers[StackingChangedEvtKey];
+      }
+      evt?.Invoke(this, e);
+   }
+   Efl.EventCb evt_StackingChangedEvt_delegate;
+   private void on_StackingChangedEvt_NativeCallback(System.IntPtr data, ref Efl.Event_StructInternal evt)
+   {
+      EventArgs args = EventArgs.Empty;
+      try {
+         On_StackingChangedEvt(args);
+      } catch (Exception e) {
+         Eina.Log.Error(e.ToString());
+         Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+      }
+   }
+
+   protected override void register_event_proxies()
+   {
+      base.register_event_proxies();
+      evt_PropertyChangedEvt_delegate = new Efl.EventCb(on_PropertyChangedEvt_NativeCallback);
+      evt_ChildrenChangedEvt_delegate = new Efl.EventCb(on_ChildrenChangedEvt_NativeCallback);
+      evt_StateChangedEvt_delegate = new Efl.EventCb(on_StateChangedEvt_NativeCallback);
+      evt_BoundsChangedEvt_delegate = new Efl.EventCb(on_BoundsChangedEvt_NativeCallback);
+      evt_VisibleDataChangedEvt_delegate = new Efl.EventCb(on_VisibleDataChangedEvt_NativeCallback);
+      evt_ActiveDescendantChangedEvt_delegate = new Efl.EventCb(on_ActiveDescendantChangedEvt_NativeCallback);
+      evt_AddedEvt_delegate = new Efl.EventCb(on_AddedEvt_NativeCallback);
+      evt_RemovedEvt_delegate = new Efl.EventCb(on_RemovedEvt_NativeCallback);
+      evt_MoveOutedEvt_delegate = new Efl.EventCb(on_MoveOutedEvt_NativeCallback);
+      evt_ReadingStateChangedEvt_delegate = new Efl.EventCb(on_ReadingStateChangedEvt_NativeCallback);
+      evt_VisibilityChangedEvt_delegate = new Efl.EventCb(on_VisibilityChangedEvt_NativeCallback);
+      evt_PositionChangedEvt_delegate = new Efl.EventCb(on_PositionChangedEvt_NativeCallback);
+      evt_SizeChangedEvt_delegate = new Efl.EventCb(on_SizeChangedEvt_NativeCallback);
+      evt_StackingChangedEvt_delegate = new Efl.EventCb(on_StackingChangedEvt_NativeCallback);
+   }
+   /// <summary>Control size restriction state of an object&apos;s tooltip
+   /// This function returns whether a tooltip is allowed to expand beyond its parent window&apos;s canvas. It will instead be limited only by the size of the display.</summary>
+   /// <returns>If <c>true</c>, size restrictions are disabled</returns>
+   virtual public bool GetTooltipWindowMode() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_window_mode_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control size restriction state of an object&apos;s tooltip
+   /// This function returns whether a tooltip is allowed to expand beyond its parent window&apos;s canvas. It will instead be limited only by the size of the display.</summary>
+   /// <param name="disable">If <c>true</c>, size restrictions are disabled</param>
+   /// <returns><c>false</c> on failure, <c>true</c> on success</returns>
+   virtual public bool SetTooltipWindowMode( bool disable) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_window_mode_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disable);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Control a different style for this item tooltip.
+   /// Note: before you set a style you should define a tooltip with <see cref="Elm.Widget.Item.SetTooltipContentCb"/> or <see cref="Elm.Widget.Item.SetTooltipText"/>
+   /// 
+   /// See: elm_object_tooltip_style_set() for more details.</summary>
+   /// <returns>The theme style used/to use (default, transparent, ...)</returns>
+   virtual public  System.String GetTooltipStyle() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_style_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control a different style for this item tooltip.
+   /// Note: before you set a style you should define a tooltip with <see cref="Elm.Widget.Item.SetTooltipContentCb"/> or <see cref="Elm.Widget.Item.SetTooltipText"/>
+   /// 
+   /// See: elm_object_tooltip_style_set() for more details.</summary>
+   /// <param name="style">The theme style used/to use (default, transparent, ...)</param>
+   /// <returns></returns>
+   virtual public  void SetTooltipStyle(  System.String style) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_style_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the type of mouse pointer/cursor decoration to be shown, when the mouse pointer is over the given item
+   /// This function works analogously as elm_object_cursor_set(), but here the cursor&apos;s changing area is restricted to the item&apos;s area, and not the whole widget&apos;s. Note that that item cursors have precedence over widget cursors, so that a mouse over an item with custom cursor set will always show that cursor.
+   /// 
+   /// If this function is called twice for an object, a previously set cursor will be unset on the second call.</summary>
+   /// <returns>The cursor type&apos;s name</returns>
+   virtual public  System.String GetCursor() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_cursor_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the type of mouse pointer/cursor decoration to be shown, when the mouse pointer is over the given item
+   /// This function works analogously as elm_object_cursor_set(), but here the cursor&apos;s changing area is restricted to the item&apos;s area, and not the whole widget&apos;s. Note that that item cursors have precedence over widget cursors, so that a mouse over an item with custom cursor set will always show that cursor.
+   /// 
+   /// If this function is called twice for an object, a previously set cursor will be unset on the second call.</summary>
+   /// <param name="cursor">The cursor type&apos;s name</param>
+   /// <returns></returns>
+   virtual public  void SetCursor(  System.String cursor) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_cursor_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), cursor);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control a different <c>style</c> for a given custom cursor set for an item.
+   /// This function only makes sense when one is using custom mouse cursor decorations defined in a theme file, which can have, given a cursor name/type, alternate styles on it. It works analogously as elm_object_cursor_style_set(), but here applies only to item objects.
+   /// 
+   /// Warning: Before you set a cursor style you should have defined a custom cursor previously on the item, with <see cref="Elm.Widget.Item.SetCursor"/></summary>
+   /// <returns>The theme style to use/in use (e.g. $&quot;default&quot;, $&quot;transparent&quot;, etc)</returns>
+   virtual public  System.String GetCursorStyle() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_cursor_style_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control a different <c>style</c> for a given custom cursor set for an item.
+   /// This function only makes sense when one is using custom mouse cursor decorations defined in a theme file, which can have, given a cursor name/type, alternate styles on it. It works analogously as elm_object_cursor_style_set(), but here applies only to item objects.
+   /// 
+   /// Warning: Before you set a cursor style you should have defined a custom cursor previously on the item, with <see cref="Elm.Widget.Item.SetCursor"/></summary>
+   /// <param name="style">The theme style to use/in use (e.g. $&quot;default&quot;, $&quot;transparent&quot;, etc)</param>
+   /// <returns></returns>
+   virtual public  void SetCursorStyle(  System.String style) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_cursor_style_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control if the (custom)cursor for a given item should be searched in its theme, also, or should only rely on the rendering engine.
+   /// Note: This call is of use only if you&apos;ve set a custom cursor for items, with <see cref="Elm.Widget.Item.SetCursor"/>.
+   /// 
+   /// Note: By default, cursors will only be looked for between those provided by the rendering engine.</summary>
+   /// <returns>Use <c>true</c> to have cursors looked for only on those provided by the rendering engine, <c>false</c> to have them searched on the widget&apos;s theme, as well.</returns>
+   virtual public bool GetCursorEngineOnly() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_cursor_engine_only_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control if the (custom)cursor for a given item should be searched in its theme, also, or should only rely on the rendering engine.
+   /// Note: This call is of use only if you&apos;ve set a custom cursor for items, with <see cref="Elm.Widget.Item.SetCursor"/>.
+   /// 
+   /// Note: By default, cursors will only be looked for between those provided by the rendering engine.</summary>
+   /// <param name="engine_only">Use <c>true</c> to have cursors looked for only on those provided by the rendering engine, <c>false</c> to have them searched on the widget&apos;s theme, as well.</param>
+   /// <returns></returns>
+   virtual public  void SetCursorEngineOnly( bool engine_only) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_cursor_engine_only_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), engine_only);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control a content of an object item
+   /// This sets a new object to an item as a content object. If any object was already set as a content object in the same part, previous object will be deleted automatically.</summary>
+   /// <param name="part">The content part name  (NULL for the default content)</param>
+   /// <returns>The content of the object item</returns>
+   virtual public Efl.Canvas.Object GetPartContent(  System.String part) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_part_content_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Control a content of an object item
+   /// This sets a new object to an item as a content object. If any object was already set as a content object in the same part, previous object will be deleted automatically.</summary>
+   /// <param name="part">The content part name  (NULL for the default content)</param>
+   /// <param name="content">The content of the object item</param>
+   /// <returns></returns>
+   virtual public  void SetPartContent(  System.String part,  Efl.Canvas.Object content) {
+                                           Elm.Widget.ItemNativeInherit.elm_wdg_item_part_content_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  content);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control a label of an object item
+   /// Note: Elementary object items may have many labels</summary>
+   /// <param name="part">The text part name (NULL for the default label)</param>
+   /// <returns>Text of the label</returns>
+   virtual public  System.String GetPartText(  System.String part) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_part_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Control a label of an object item
+   /// Note: Elementary object items may have many labels</summary>
+   /// <param name="part">The text part name (NULL for the default label)</param>
+   /// <param name="label">Text of the label</param>
+   /// <returns></returns>
+   virtual public  void SetPartText(  System.String part,   System.String label) {
+                                           Elm.Widget.ItemNativeInherit.elm_wdg_item_part_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  label);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get additional text part content</summary>
+   /// <param name="part">Part name</param>
+   /// <returns>Label name</returns>
+   virtual public  System.String GetPartTextCustom(  System.String part) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_part_text_custom_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Save additional text part content</summary>
+   /// <param name="part">Part name</param>
+   /// <param name="label">Label name</param>
+   /// <returns></returns>
+   virtual public  void SetPartTextCustom(  System.String part,   System.String label) {
+                                           Elm.Widget.ItemNativeInherit.elm_wdg_item_part_text_custom_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  label);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Control the object item focused
+   /// 1.10</summary>
+   /// <returns>The focused state</returns>
+   virtual public bool GetItemFocus() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_focus_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the object item focused
+   /// 1.10</summary>
+   /// <param name="focused">The focused state</param>
+   /// <returns></returns>
+   virtual public  void SetItemFocus( bool focused) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_focus_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), focused);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the style of an object item
+   /// 1.9</summary>
+   /// <returns>The style of object item</returns>
+   virtual public  System.String GetStyle() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_style_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the style of an object item
+   /// 1.9</summary>
+   /// <param name="style">The style of object item</param>
+   /// <returns></returns>
+   virtual public  void SetStyle(  System.String style) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_style_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), style);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Control the disabled state of a widget item.
+   /// Elementary object item can be disabled, in which state they won&apos;t receive input and, in general, will be themed differently from their normal state, usually greyed out. Useful for contexts where you don&apos;t want your users to interact with some of the parts of you interface.
+   /// 
+   /// This sets the state for the widget item, either disabling it or enabling it back.</summary>
+   /// <returns><c>true</c>, if the widget item is disabled, <c>false</c> if it&apos;s enabled (or on errors)</returns>
+   virtual public bool GetDisabled() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_disabled_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Control the disabled state of a widget item.
+   /// Elementary object item can be disabled, in which state they won&apos;t receive input and, in general, will be themed differently from their normal state, usually greyed out. Useful for contexts where you don&apos;t want your users to interact with some of the parts of you interface.
+   /// 
+   /// This sets the state for the widget item, either disabling it or enabling it back.</summary>
+   /// <param name="disable"><c>true</c>, if the widget item is disabled, <c>false</c> if it&apos;s enabled (or on errors)</param>
+   /// <returns></returns>
+   virtual public  void SetDisabled( bool disable) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_disabled_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), disable);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get highlight order
+   /// 1.8</summary>
+   /// <returns>List of evas canvas objects</returns>
+   virtual public Eina.List<Efl.Canvas.Object> GetAccessOrder() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_access_order_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Canvas.Object>(_ret_var, false, false);
+ }
+   /// <summary>Set highlight order
+   /// 1.8</summary>
+   /// <param name="objs">Order of objects to pass highlight</param>
+   /// <returns></returns>
+   virtual public  void SetAccessOrder( Eina.List<Efl.Canvas.Object> objs) {
+       var _in_objs = objs.Handle;
+objs.Own = false;
+                  Elm.Widget.ItemNativeInherit.elm_wdg_item_access_order_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_objs);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the widget object&apos;s handle which contains a given item
+   /// Note: This returns the widget object itself that an item belongs to. Note: Every elm_object_item supports this API</summary>
+   /// <returns>The widget object</returns>
+   virtual public Efl.Canvas.Object GetWidget() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_widget_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>notify deletion of widget item</summary>
+   /// <returns></returns>
+   virtual public  void DelPreNotify() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_pre_notify_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Set the text to be shown in a given object item&apos;s tooltips.
+   /// Setup the text as tooltip to object. The item can have only one tooltip, so any previous tooltip data - set with this function or <see cref="Elm.Widget.Item.SetTooltipContentCb"/> - is removed.
+   /// 
+   /// See: elm_object_tooltip_text_set() for more details.</summary>
+   /// <param name="text">The text to set in the content.</param>
+   /// <returns></returns>
+   virtual public  void SetTooltipText(  System.String text) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set widget item tooltip as a text string</summary>
+   /// <param name="text">Tooltip text</param>
+   /// <returns></returns>
+   virtual public  void SetTooltipTranslatableText(  System.String text) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_translatable_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), text);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Unset tooltip from item.
+   /// Remove tooltip from item. The callback provided as del_cb to <see cref="Elm.Widget.Item.SetTooltipContentCb"/> will be called to notify it is not used anymore.
+   /// 
+   /// See: elm_object_tooltip_unset() for more details. See: <see cref="Elm.Widget.Item.SetTooltipContentCb"/></summary>
+   /// <returns></returns>
+   virtual public  void UnsetTooltip() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Unset any custom mouse pointer/cursor decoration set to be shown, when the mouse pointer is over the given item, thus making it show the default cursor again.
+   /// Use this call to undo any custom settings on this item&apos;s cursor decoration, bringing it back to defaults (no custom style set).
+   /// 
+   /// See: elm_object_cursor_unset() See: <see cref="Elm.Widget.Item.SetCursor"/></summary>
+   /// <returns></returns>
+   virtual public  void UnsetCursor() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_cursor_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Unset a content of an object item
+   /// Note: Elementary object items may have many contents</summary>
+   /// <param name="part">The content part name to unset (NULL for the default content)</param>
+   /// <returns>Content object</returns>
+   virtual public Efl.Canvas.Object UnsetPartContent(  System.String part) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_part_content_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Update additional text part content</summary>
+   /// <returns></returns>
+   virtual public  void UpdatePartTextCustom() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_part_text_custom_update_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Add a callback for a signal emitted by object item edje.
+   /// This function connects a callback function to a signal emitted by the edje object of the object item. Globs can occur in either the emission or source name.
+   /// 1.8</summary>
+   /// <param name="emission">The signal&apos;s name.</param>
+   /// <param name="source">The signal&apos;s source.</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.</param>
+   /// <param name="data">A pointer to data to pass to the callback function.</param>
+   /// <returns></returns>
+   virtual public  void AddSignalCallback(  System.String emission,   System.String source,  ElmObjectItemSignalCb func,   System.IntPtr data) {
+                                                                               Elm.Widget.ItemNativeInherit.elm_wdg_item_signal_callback_add_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source,  func,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                                                       }
+   /// <summary>Remove a signal-triggered callback from a object item edje object.
+   /// This function removes the last callback, previously attached to a signal emitted by an underlying Edje object of <c>it</c>, whose parameters <c>emission</c>, <c>source</c> and <c>func</c> match exactly with those passed to a previous call to <see cref="Elm.Widget.Item.AddSignalCallback"/>. The data pointer that was passed to this call will be returned.
+   /// 
+   /// See: <see cref="Elm.Widget.Item.AddSignalCallback"/>
+   /// 1.8</summary>
+   /// <param name="emission">The signal&apos;s name.</param>
+   /// <param name="source">The signal&apos;s source.</param>
+   /// <param name="func">The callback function to be executed when the signal is emitted.</param>
+   /// <returns>The data pointer of the signal callback or <c>NULL</c>, on errors.</returns>
+   virtual public  System.IntPtr DelSignalCallback(  System.String emission,   System.String source,  ElmObjectItemSignalCb func) {
+                                                             var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_signal_callback_del_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source,  func);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Send a signal to the edje object of the widget item.
+   /// This function sends a signal to the edje object of the obj item. An edje program can respond to a signal by specifying matching &apos;signal&apos; and &apos;source&apos; fields. Don&apos;t use this unless you want to also handle resetting of part states to default on every unrealize in case of genlist/gengrid.</summary>
+   /// <param name="emission">The signal&apos;s name.</param>
+   /// <param name="source">The signal&apos;s source.</param>
+   /// <returns></returns>
+   virtual public  void EmitSignal(  System.String emission,   System.String source) {
+                                           Elm.Widget.ItemNativeInherit.elm_wdg_item_signal_emit_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), emission,  source);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Set the text to read out when in accessibility mode</summary>
+   /// <param name="txt">The text that describes the widget to people with poor or no vision</param>
+   /// <returns></returns>
+   virtual public  void SetAccessInfo(  System.String txt) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_access_info_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), txt);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get an accessible object of the object item.
+   /// 1.8</summary>
+   /// <returns>Accessible object of the object item or NULL for any error</returns>
+   virtual public Efl.Canvas.Object GetAccessObject() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_access_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Set the text for an object item&apos;s part, marking it as translatable.
+   /// The string to set as <c>text</c> must be the original one. Do not pass the return of <c>gettext</c>() here. Elementary will translate the string internally and set it on the object item using <see cref="Elm.Widget.Item.GetPartText"/>, also storing the original string so that it can be automatically translated when the language is changed with elm_language_set(). The <c>domain</c> will be stored along to find the translation in the correct catalog. It can be NULL, in which case it will use whatever domain was set by the application with <c>textdomain</c>(). This is useful in case you are building a library on top of Elementary that will have its own translatable strings, that should not be mixed with those of programs using the library.
+   /// 1.8</summary>
+   /// <param name="part">The name of the part to set</param>
+   /// <param name="domain">The translation domain to use</param>
+   /// <param name="label">The original, non-translated text to set</param>
+   /// <returns></returns>
+   virtual public  void SetDomainTranslatablePartText(  System.String part,   System.String domain,   System.String label) {
+                                                             Elm.Widget.ItemNativeInherit.elm_wdg_item_domain_translatable_part_text_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  domain,  label);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Get the original string set as translatable for an object item.
+   /// When setting translated strings, the function <see cref="Elm.Widget.Item.GetPartText"/> will return the translation returned by <c>gettext</c>(). To get the original string use this function.
+   /// 1.8</summary>
+   /// <param name="part">The name of the part that was set</param>
+   /// <returns>The original, untranslated string</returns>
+   virtual public  System.String GetTranslatablePartText(  System.String part) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_translatable_part_text_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Query translate</summary>
+   /// <returns></returns>
+   virtual public  void Translate() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_translate_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Mark the part text to be translatable or not.
+   /// Once you mark the part text to be translatable, the text will be translated internally regardless of <see cref="Elm.Widget.Item.GetPartText"/> and <see cref="Elm.Widget.Item.SetDomainTranslatablePartText"/>. In other case, if you set the Elementary policy that all text will be translatable in default, you can set the part text to not be translated by calling this API.
+   /// 
+   /// See: <see cref="Elm.Widget.Item.SetDomainTranslatablePartText"/> See: <see cref="Elm.Widget.Item.GetPartText"/> See: elm_policy()
+   /// 1.8</summary>
+   /// <param name="part">The part name of the translatable text</param>
+   /// <param name="domain">The translation domain to use</param>
+   /// <param name="translatable"><c>true</c>, the part text will be translated internally. <c>false</c>, otherwise.</param>
+   /// <returns></returns>
+   virtual public  void SetDomainPartTextTranslatable(  System.String part,   System.String domain,  bool translatable) {
+                                                             Elm.Widget.ItemNativeInherit.elm_wdg_item_domain_part_text_translatable_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), part,  domain,  translatable);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>This returns track object of the item.
+   /// Note: This gets a rectangle object that represents the object item&apos;s internal object. If you want to check the geometry, visibility of the item, you can call the evas apis such as evas_object_geometry_get(), evas_object_visible_get() to the track object. Note that all of the widget items may/may not have the internal object so this api may return <c>NULL</c> if the widget item doesn&apos;t have it. Additionally, the widget item is managed/controlled by the widget, the widget item could be changed(moved, resized even deleted) anytime by it&apos;s own widget&apos;s decision. So please dont&apos; change the track object as well as don&apos;t keep the track object in your side as possible but get the track object at the moment you need to refer. Otherwise, you need to add some callbacks to the track object to track it&apos;s attributes changes.
+   /// 
+   /// Warning: After use the track object, please call the <see cref="Elm.Widget.Item.Untrack"/> paired to elm_object_item_track definitely to free the track object properly. Don&apos;t delete the track object.
+   /// 
+   /// See: <see cref="Elm.Widget.Item.Untrack"/> See: <see cref="Elm.Widget.Item.GetTrack"/>
+   /// 1.8</summary>
+   /// <returns>The track object</returns>
+   virtual public Efl.Canvas.Object Track() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_track_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>This retrieve the track object of the item.
+   /// Note: This retrieves the track object that was returned from <see cref="Elm.Widget.Item.Track"/>.
+   /// 
+   /// See: <see cref="Elm.Widget.Item.Track"/> See: <see cref="Elm.Widget.Item.GetTrack"/>
+   /// 1.8</summary>
+   /// <returns></returns>
+   virtual public  void Untrack() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_untrack_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the track object reference count.
+   /// Note: This gets the reference count for the track object. Whenever you call the <see cref="Elm.Widget.Item.Track"/>, the reference count will be increased by one. Likely the reference count will be decreased again when you call the <see cref="Elm.Widget.Item.Untrack"/>. Unless the reference count reaches to zero, the track object won&apos;t be deleted. So please be sure to call <see cref="Elm.Widget.Item.Untrack"/> paired to the elm_object_item_track call count.
+   /// 
+   /// See: <see cref="Elm.Widget.Item.Track"/> See: <see cref="Elm.Widget.Item.GetTrack"/>
+   /// 1.8</summary>
+   /// <returns>Track object reference count</returns>
+   virtual public  int GetTrack() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_track_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Query track_cancel</summary>
+   /// <returns></returns>
+   virtual public  void TrackCancel() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_track_cancel_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Set the function to be called when an item from the widget is freed.
+   /// Note: Every elm_object_item supports this API</summary>
+   /// <param name="del_cb">The function called</param>
+   /// <returns></returns>
+   virtual public  void SetDelCb( EvasSmartCb del_cb) {
+                         Elm.Widget.ItemNativeInherit.elm_wdg_item_del_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), del_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Set the content to be shown in the tooltip item.
+   /// Setup the tooltip to item. The item can have only one tooltip, so any previous tooltip data is removed. <c>func</c>(with <c>data</c>) will be called every time that need show the tooltip and it should return a valid Evas_Object. This object is then managed fully by tooltip system and is deleted when the tooltip is gone.
+   /// 
+   /// See: elm_object_tooltip_content_cb_set() for more details.</summary>
+   /// <param name="func">The function used to create the tooltip contents.</param>
+   /// <param name="data">What to provide to <c>func</c> as callback data/context.</param>
+   /// <param name="del_cb">Called when data is not needed anymore, either when another callback replaces <c>func</c>, the tooltip is unset with <see cref="Elm.Widget.Item.UnsetTooltip"/> or the owner <c>item</c> dies. This callback receives as the first parameter the given <c>data</c>, and <c>event_info</c> is the item.</param>
+   /// <returns></returns>
+   virtual public  void SetTooltipContentCb( ElmTooltipItemContentCb func,   System.IntPtr data,  EvasSmartCb del_cb) {
+                                                             Elm.Widget.ItemNativeInherit.elm_wdg_item_tooltip_content_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), func,  data,  del_cb);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Register object item as an accessible object.
+   /// 1.8</summary>
+   /// <returns>Accessible object of the object item or NULL for any error</returns>
+   virtual public Efl.Canvas.Object AccessRegister() {
+       var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_access_register_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Unregister accessible object of the object item.
+   /// 1.8</summary>
+   /// <returns></returns>
+   virtual public  void AccessUnregister() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_access_unregister_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Unset highlight order
+   /// 1.8</summary>
+   /// <returns></returns>
+   virtual public  void UnsetAccessOrder() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_access_order_unset_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Disable widget item</summary>
+   /// <returns></returns>
+   virtual public  void Disable() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_disable_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Delete pre widget item</summary>
+   /// <returns></returns>
+   virtual public  void DelPre() {
+       Elm.Widget.ItemNativeInherit.elm_wdg_item_del_pre_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Get the next object with specific focus direction.
+   /// 1.16</summary>
+   /// <param name="dir">Focus direction</param>
+   /// <returns>Focus next object</returns>
+   virtual public Efl.Canvas.Object GetFocusNextObject( Efl.Ui.Focus.Direction dir) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_focus_next_object_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set the next object with specific focus direction.
+   /// 1.16</summary>
+   /// <param name="next">Focus next object</param>
+   /// <param name="dir">Focus direction</param>
+   /// <returns></returns>
+   virtual public  void SetFocusNextObject( Efl.Canvas.Object next,  Efl.Ui.Focus.Direction dir) {
+                                           Elm.Widget.ItemNativeInherit.elm_wdg_item_focus_next_object_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), next,  dir);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Get the next object item with specific focus direction.
+   /// 1.16</summary>
+   /// <param name="dir">Focus direction</param>
+   /// <returns>Focus next object item</returns>
+   virtual public Elm.Widget.Item GetFocusNextItem( Efl.Ui.Focus.Direction dir) {
+                         var _ret_var = Elm.Widget.ItemNativeInherit.elm_wdg_item_focus_next_item_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), dir);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Set the next object item with specific focus direction.
+   /// 1.16</summary>
+   /// <param name="next_item">Focus next object item</param>
+   /// <param name="dir">Focus direction</param>
+   /// <returns></returns>
+   virtual public  void SetFocusNextItem( Elm.Widget.Item next_item,  Efl.Ui.Focus.Direction dir) {
+                                           Elm.Widget.ItemNativeInherit.elm_wdg_item_focus_next_item_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), next_item,  dir);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets action name for given id</summary>
+   /// <param name="id">ID to get action name for</param>
+   /// <returns>Action name</returns>
+   virtual public  System.String GetActionName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets localized action name for given id</summary>
+   /// <param name="id">ID to get localized name for</param>
+   /// <returns>Localized name</returns>
+   virtual public  System.String GetActionLocalizedName(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_localized_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Get list of available widget actions</summary>
+   /// <returns>Contains statically allocated strings.</returns>
+   virtual public Eina.List<Efl.Access.ActionData> GetActions() {
+       var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_actions_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.ActionData>(_ret_var, false, false);
+ }
+   /// <summary>Performs action on given widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns><c>true</c> if action was performed, <c>false</c> otherwise</returns>
+   virtual public bool ActionDo(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_do_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets configured keybinding for specific action and widget.</summary>
+   /// <param name="id">ID for widget</param>
+   /// <returns>Should be freed by the user.</returns>
+   virtual public  System.String GetActionKeybinding(  int id) {
+                         var _ret_var = Efl.Access.ActionNativeInherit.efl_access_action_keybinding_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), id);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+   /// <returns>Z order of component</returns>
+   virtual public  int GetZOrder() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_z_order_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Geometry of accessible widget.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <returns>The geometry.</returns>
+   virtual public Eina.Rect GetExtents( bool screen_coords) {
+                         var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_extents_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords);
+      Eina.Error.RaiseIfUnhandledException();
+                  return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Geometry of accessible widget.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="rect">The geometry.</param>
+   /// <returns><c>true</c> if geometry was set, <c>false</c> otherwise</returns>
+   virtual public bool SetExtents( bool screen_coords,  Eina.Rect rect) {
+             var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                              var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_extents_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Position of accessible widget.</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns></returns>
+   virtual public  void GetScreenPosition( out  int x,  out  int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_screen_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Position of accessible widget.</summary>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns><c>true</c> if position was set, <c>false</c> otherwise</returns>
+   virtual public bool SetScreenPosition(  int x,   int y) {
+                                           var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_screen_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Gets position of socket offset.</summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   virtual public  void GetSocketOffset( out  int x,  out  int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_socket_offset_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), out x,  out y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets position of socket offset.</summary>
+   /// <param name="x"></param>
+   /// <param name="y"></param>
+   /// <returns></returns>
+   virtual public  void SetSocketOffset(  int x,   int y) {
+                                           Efl.Access.ComponentNativeInherit.efl_access_component_socket_offset_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Contains accessible widget</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns><c>true</c> if params have been set, <c>false</c> otherwise</returns>
+   virtual public bool Contains( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_contains_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Focuses accessible widget.</summary>
+   /// <returns><c>true</c> if focus grab focus succeed, <c>false</c> otherwise.</returns>
+   virtual public bool GrabFocus() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_focus_grab_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets top component object occupying space at given coordinates.</summary>
+   /// <param name="screen_coords">If <c>true</c> x and y values will be relative to screen origin, otherwise relative to canvas</param>
+   /// <param name="x">X coordinate</param>
+   /// <param name="y">Y coordinate</param>
+   /// <returns>Top component object at given coordinate</returns>
+   virtual public Efl.Object GetAccessibleAtPoint( bool screen_coords,   int x,   int y) {
+                                                             var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_accessible_at_point_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), screen_coords,  x,  y);
+      Eina.Error.RaiseIfUnhandledException();
+                                          return _ret_var;
+ }
+   /// <summary>Highlights accessible widget. returns true if highlight grab has successed, false otherwise.
+   /// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns></returns>
+   virtual public bool GrabHighlight() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_highlight_grab_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Clears highlight of accessible widget. returns true if clear has successed, false otherwise.
+   /// @if MOBILE @since_tizen 4.0 @elseif WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns></returns>
+   virtual public bool ClearHighlight() {
+       var _ret_var = Efl.Access.ComponentNativeInherit.efl_access_component_highlight_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+   /// <returns>Localized accessible object role name</returns>
+   virtual public  System.String GetLocalizedRoleName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_localized_role_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessible name of the object.</summary>
+   /// <returns>Accessible name</returns>
+   virtual public  System.String GetI18nName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_i18n_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Accessible name of the object.</summary>
+   /// <param name="i18n_name">Accessible name</param>
+   /// <returns></returns>
+   virtual public  void SetI18nName(  System.String i18n_name) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_i18n_name_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), i18n_name);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Sets name information callback about widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="name_cb">reading information callback</param>
+   /// <param name="data"></param>
+   /// <returns></returns>
+   virtual public  void SetNameCb( Efl.Access.ReadingInfoCb name_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_name_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), name_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+   /// <returns>Accessible relation set</returns>
+   virtual public Efl.Access.RelationSet GetRelationSet() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_relation_set_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The role of the object in accessibility domain.</summary>
+   /// <returns>Accessible role</returns>
+   virtual public Efl.Access.Role GetRole() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_role_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the role of the object in accessibility domain.</summary>
+   /// <param name="role">Accessible role</param>
+   /// <returns></returns>
+   virtual public  void SetRole( Efl.Access.Role role) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_role_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), role);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+   /// <returns>Accessible parent</returns>
+   virtual public Efl.Access.Object GetAccessParent() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+   /// <param name="parent">Accessible parent</param>
+   /// <returns></returns>
+   virtual public  void SetAccessParent( Efl.Access.Object parent) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_access_parent_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), parent);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Sets contextual information callback about widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="description_cb">The function called to provide the accessible description.</param>
+   /// <param name="data">The data passed to @c description_cb.</param>
+   /// <returns></returns>
+   virtual public  void SetDescriptionCb( Efl.Access.ReadingInfoCb description_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_description_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), description_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Sets gesture callback to give widget.
+   /// Warning: Please do not abuse this API. The purpose of this API is to support special application such as screen-reader guidance. Before using this API, please check if there is another way.
+   /// 
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="gesture_cb"></param>
+   /// <param name="data"></param>
+   /// <returns></returns>
+   virtual public  void SetGestureCb( Efl.Access.GestureCb gesture_cb,   System.IntPtr data) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_gesture_cb_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), gesture_cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Gets object&apos;s accessible children.</summary>
+   /// <returns>List of widget&apos;s children</returns>
+   virtual public Eina.List<Efl.Access.Object> GetAccessChildren() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_children_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.Object>(_ret_var, true, false);
+ }
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+   /// <returns>Accessible role name</returns>
+   virtual public  System.String GetRoleName() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_role_name_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+   /// <returns>List of object attributes, Must be freed by the user</returns>
+   virtual public Eina.List<Efl.Access.Attribute> GetAttributes() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_attributes_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return new Eina.List<Efl.Access.Attribute>(_ret_var, true, true);
+ }
+   /// <summary>Gets reading information types of an accessible object.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns>Reading information types</returns>
+   virtual public Efl.Access.ReadingInfoTypeMask GetReadingInfoType() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_reading_info_type_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets reading information of an accessible object.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="reading_info">Reading information types</param>
+   /// <returns></returns>
+   virtual public  void SetReadingInfoType( Efl.Access.ReadingInfoTypeMask reading_info) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_reading_info_type_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), reading_info);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+   /// <returns>Index in children list</returns>
+   virtual public  int GetIndexInParent() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_index_in_parent_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets contextual information about object.</summary>
+   /// <returns>Accessible contextual information</returns>
+   virtual public  System.String GetDescription() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_description_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets widget contextual information.</summary>
+   /// <param name="description">Accessible contextual information</param>
+   /// <returns></returns>
+   virtual public  void SetDescription(  System.String description) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_description_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), description);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets set describing object accessible states.</summary>
+   /// <returns>Accessible state set</returns>
+   virtual public Efl.Access.StateSet GetStateSet() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_state_set_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Gets highlightable of given widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <returns>If @c true, the object is highlightable.</returns>
+   virtual public bool GetCanHighlight() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_can_highlight_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets highlightable to given widget.
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="can_highlight">If @c true, the object is highlightable.</param>
+   /// <returns></returns>
+   virtual public  void SetCanHighlight( bool can_highlight) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_can_highlight_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), can_highlight);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+   /// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+   /// 
+   /// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+   /// 
+   /// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+   /// <returns>Translation domain</returns>
+   virtual public  System.String GetTranslationDomain() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_translation_domain_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+   /// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+   /// 
+   /// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+   /// 
+   /// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+   /// <param name="domain">Translation domain</param>
+   /// <returns></returns>
+   virtual public  void SetTranslationDomain(  System.String domain) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_translation_domain_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), domain);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get root object of accessible object hierarchy</summary>
+   /// <returns>Root object</returns>
+   public static Efl.Object GetAccessRoot() {
+       var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_access_root_get_ptr.Value.Delegate();
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Handles gesture on given widget.</summary>
+   /// <param name="gesture_info"></param>
+   /// <returns></returns>
+   virtual public bool GestureDo( Efl.Access.GestureInfo gesture_info) {
+       var _in_gesture_info = Efl.Access.GestureInfo_StructConversion.ToInternal(gesture_info);
+                  var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_gesture_do_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_gesture_info);
+      Eina.Error.RaiseIfUnhandledException();
+                  return _ret_var;
+ }
+   /// <summary>Add key-value pair identifying object extra attribute
+   /// @if WEARABLE @since_tizen 3.0 @endif</summary>
+   /// <param name="key">The string key to give extra information</param>
+   /// <param name="value">The string value to give extra information</param>
+   /// <returns></returns>
+   virtual public  void AppendAttribute(  System.String key,   System.String value) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_attribute_append_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), key,  value);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Removes all attributes in accessible object.</summary>
+   /// <returns></returns>
+   virtual public  void ClearAttributes() {
+       Efl.Access.ObjectNativeInherit.efl_access_object_attributes_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Register accessibility event listener</summary>
+   /// <param name="cb">Callback</param>
+   /// <param name="data">Data</param>
+   /// <returns>Event handler</returns>
+   public static Efl.Access.Event.Handler AddEventHandler( Efl.EventCb cb,   System.IntPtr data) {
+                                           var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_event_handler_add_ptr.Value.Delegate( cb,  data);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Deregister accessibility event listener</summary>
+   /// <param name="handler">Event handler</param>
+   /// <returns></returns>
+   public static  void DelEventHandler( Efl.Access.Event.Handler handler) {
+                         Efl.Access.ObjectNativeInherit.efl_access_object_event_handler_del_ptr.Value.Delegate( handler);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Emit event</summary>
+   /// <param name="accessible">Accessibility object.</param>
+   /// <param name="kw_event">Accessibility event type.</param>
+   /// <param name="event_info">Accessibility event details.</param>
+   /// <returns></returns>
+   public static  void EmitEvent( Efl.Access.Object accessible,  Efl.EventDescription kw_event,   System.IntPtr event_info) {
+             var _in_kw_event = Eina.PrimitiveConversion.ManagedToPointerAlloc(kw_event);
+                                                Efl.Access.ObjectNativeInherit.efl_access_object_event_emit_ptr.Value.Delegate( accessible,  _in_kw_event,  event_info);
+      Eina.Error.RaiseIfUnhandledException();
+                                           }
+   /// <summary>Defines the relationship between two accessible objects.
+   /// Adds a unique relationship between source object and relation_object of a given type.
+   /// 
+   /// Relationships can be queried by Assistive Technology clients to provide customized feedback, improving overall user experience.
+   /// 
+   /// Relationship_append API is asymmetric, which means that appending, for example, relation EFL_ACCESS_RELATION_FLOWS_TO from object A to B, do NOT append relation EFL_ACCESS_RELATION_FLOWS_FROM from object B to object A.</summary>
+   /// <param name="type">Relation type</param>
+   /// <param name="relation_object">Object to relate to</param>
+   /// <returns><c>true</c> if relationship was successfully appended, <c>false</c> otherwise</returns>
+   virtual public bool AppendRelationship( Efl.Access.RelationType type,  Efl.Access.Object relation_object) {
+                                           var _ret_var = Efl.Access.ObjectNativeInherit.efl_access_object_relationship_append_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  relation_object);
+      Eina.Error.RaiseIfUnhandledException();
+                              return _ret_var;
+ }
+   /// <summary>Removes the relationship between two accessible objects.
+   /// If relation_object is NULL function removes all relations of the given type.</summary>
+   /// <param name="type">Relation type</param>
+   /// <param name="relation_object">Object to remove relation from</param>
+   /// <returns></returns>
+   virtual public  void RelationshipRemove( Efl.Access.RelationType type,  Efl.Access.Object relation_object) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_relationship_remove_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), type,  relation_object);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Removes all relationships in accessible object.</summary>
+   /// <returns></returns>
+   virtual public  void ClearRelationships() {
+       Efl.Access.ObjectNativeInherit.efl_access_object_relationships_clear_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Notifies accessibility clients about current state of the accessible object.
+   /// Function limits information broadcast to clients to types specified by state_types_mask parameter.
+   /// 
+   /// if recursive parameter is set, function will traverse all accessible children and call state_notify function on them.</summary>
+   /// <param name="state_types_mask"></param>
+   /// <param name="recursive"></param>
+   /// <returns></returns>
+   virtual public  void StateNotify( Efl.Access.StateSet state_types_mask,  bool recursive) {
+                                           Efl.Access.ObjectNativeInherit.efl_access_object_state_notify_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), state_types_mask,  recursive);
+      Eina.Error.RaiseIfUnhandledException();
+                               }
+   /// <summary>Elementary actions</summary>
+   /// <returns>NULL-terminated array of Efl.Access.Action_Data.</returns>
+   virtual public Efl.Access.ActionData GetElmActions() {
+       var _ret_var = Efl.Access.Widget.ActionNativeInherit.efl_access_widget_action_elm_actions_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Retrieves the position of the given canvas object.</summary>
+   /// <returns>A 2D coordinate in pixel units.</returns>
+   virtual public Eina.Position2D GetPosition() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Position2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Moves the given canvas object to the given location inside its canvas&apos; viewport. If unchanged this call may be entirely skipped, but if changed this will trigger move events, as well as potential pointer,in or pointer,out events.</summary>
+   /// <param name="pos">A 2D coordinate in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetPosition( Eina.Position2D pos) {
+       var _in_pos = Eina.Position2D_StructConversion.ToInternal(pos);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_position_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_pos);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the (rectangular) size of the given Evas object.</summary>
+   /// <returns>A 2D size in pixel units.</returns>
+   virtual public Eina.Size2D GetSize() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Size2D_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Changes the size of the given object.
+   /// Note that setting the actual size of an object might be the job of its container, so this function might have no effect. Look at <see cref="Efl.Gfx.Hint"/> instead, when manipulating widgets.</summary>
+   /// <param name="size">A 2D size in pixel units.</param>
+   /// <returns></returns>
+   virtual public  void SetSize( Eina.Size2D size) {
+       var _in_size = Eina.Size2D_StructConversion.ToInternal(size);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_size_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_size);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <returns>The X,Y position and W,H size, in pixels.</returns>
+   virtual public Eina.Rect GetGeometry() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return Eina.Rect_StructConversion.ToManaged(_ret_var);
+ }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+   /// <param name="rect">The X,Y position and W,H size, in pixels.</param>
+   /// <returns></returns>
+   virtual public  void SetGeometry( Eina.Rect rect) {
+       var _in_rect = Eina.Rect_StructConversion.ToInternal(rect);
+                  Efl.Gfx.EntityNativeInherit.efl_gfx_entity_geometry_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), _in_rect);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves whether or not the given canvas object is visible.</summary>
+   /// <returns><c>true</c> if to make the object visible, <c>false</c> otherwise</returns>
+   virtual public bool GetVisible() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Shows or hides this object.</summary>
+   /// <param name="v"><c>true</c> if to make the object visible, <c>false</c> otherwise</param>
+   /// <returns></returns>
+   virtual public  void SetVisible( bool v) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_visible_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), v);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Gets an object&apos;s scaling factor.</summary>
+   /// <returns>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</returns>
+   virtual public double GetScale() {
+       var _ret_var = Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the scaling factor of an object.</summary>
+   /// <param name="scale">The scaling factor (the default value is 0.0, meaning individual scaling is not set)</param>
+   /// <returns></returns>
+   virtual public  void SetScale( double scale) {
+                         Efl.Gfx.EntityNativeInherit.efl_gfx_entity_scale_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), scale);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+   /// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+   /// <returns>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</returns>
+   virtual public  short GetLayer() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Sets the layer of its canvas that the given object will be part of.
+   /// If you don&apos;t use this function, you&apos;ll be dealing with an unique layer of objects (the default one). Additional layers are handy when you don&apos;t want a set of objects to interfere with another set with regard to stacking. Two layers are completely disjoint in that matter.
+   /// 
+   /// This is a low-level function, which you&apos;d be using when something should be always on top, for example.
+   /// 
+   /// Warning: Don&apos;t change the layer of smart objects&apos; children. Smart objects have a layer of their own, which should contain all their child objects.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/></summary>
+   /// <param name="l">The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</param>
+   /// <returns></returns>
+   virtual public  void SetLayer(  short l) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_layer_set_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), l);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   virtual public Efl.Gfx.Stack GetBelow() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+   /// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+   /// <returns>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</returns>
+   virtual public Efl.Gfx.Stack GetAbove() {
+       var _ret_var = Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_get_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Stack <c>obj</c> immediately <c>below</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>below</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>below</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="below">The object below which to stack</param>
+   /// <returns></returns>
+   virtual public  void StackBelow( Efl.Gfx.Stack below) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_below_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), below);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Raise <c>obj</c> to the top of its layer.
+   /// <c>obj</c> will, then, be the highest one in the layer it belongs to. Object on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.LowerToBottom"/></summary>
+   /// <returns></returns>
+   virtual public  void RaiseToTop() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_raise_to_top_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Stack <c>obj</c> immediately <c>above</c>
+   /// Objects, in a given canvas, are stacked in the order they&apos;re added. This means that, if they overlap, the highest ones will cover the lowest ones, in that order. This function is a way to change the stacking order for the objects.
+   /// 
+   /// Its intended to be used with objects belonging to the same layer in a given canvas, otherwise it will fail (and accomplish nothing).
+   /// 
+   /// If you have smart objects on your canvas and <c>obj</c> is a member of one of them, then <c>above</c> must also be a member of the same smart object.
+   /// 
+   /// Similarly, if <c>obj</c> is not a member of a smart object, <c>above</c> must not be either.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.StackBelow"/></summary>
+   /// <param name="above">The object above which to stack</param>
+   /// <returns></returns>
+   virtual public  void StackAbove( Efl.Gfx.Stack above) {
+                         Efl.Gfx.StackNativeInherit.efl_gfx_stack_above_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle), above);
+      Eina.Error.RaiseIfUnhandledException();
+                   }
+   /// <summary>Lower <c>obj</c> to the bottom of its layer.
+   /// <c>obj</c> will, then, be the lowest one in the layer it belongs to. Objects on other layers won&apos;t get touched.
+   /// 
+   /// See also <see cref="Efl.Gfx.Stack.StackAbove"/>, <see cref="Efl.Gfx.Stack.StackBelow"/> and <see cref="Efl.Gfx.Stack.RaiseToTop"/></summary>
+   /// <returns></returns>
+   virtual public  void LowerToBottom() {
+       Efl.Gfx.StackNativeInherit.efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate((inherited ? Efl.Eo.Globals.efl_super(this.NativeHandle, this.NativeClass) : this.NativeHandle));
+      Eina.Error.RaiseIfUnhandledException();
+       }
+   /// <summary>Control size restriction state of an object&apos;s tooltip
+/// This function returns whether a tooltip is allowed to expand beyond its parent window&apos;s canvas. It will instead be limited only by the size of the display.</summary>
+/// <value>If <c>true</c>, size restrictions are disabled</value>
+   public bool TooltipWindowMode {
+      get { return GetTooltipWindowMode(); }
+      set { SetTooltipWindowMode( value); }
+   }
+   /// <summary>Control a different style for this item tooltip.
+/// Note: before you set a style you should define a tooltip with <see cref="Elm.Widget.Item.SetTooltipContentCb"/> or <see cref="Elm.Widget.Item.SetTooltipText"/>
+/// 
+/// See: elm_object_tooltip_style_set() for more details.</summary>
+/// <value>The theme style used/to use (default, transparent, ...)</value>
+   public  System.String TooltipStyle {
+      get { return GetTooltipStyle(); }
+      set { SetTooltipStyle( value); }
+   }
+   /// <summary>Control the type of mouse pointer/cursor decoration to be shown, when the mouse pointer is over the given item
+/// This function works analogously as elm_object_cursor_set(), but here the cursor&apos;s changing area is restricted to the item&apos;s area, and not the whole widget&apos;s. Note that that item cursors have precedence over widget cursors, so that a mouse over an item with custom cursor set will always show that cursor.
+/// 
+/// If this function is called twice for an object, a previously set cursor will be unset on the second call.</summary>
+/// <value>The cursor type&apos;s name</value>
+   public  System.String Cursor {
+      get { return GetCursor(); }
+      set { SetCursor( value); }
+   }
+   /// <summary>Control a different <c>style</c> for a given custom cursor set for an item.
+/// This function only makes sense when one is using custom mouse cursor decorations defined in a theme file, which can have, given a cursor name/type, alternate styles on it. It works analogously as elm_object_cursor_style_set(), but here applies only to item objects.
+/// 
+/// Warning: Before you set a cursor style you should have defined a custom cursor previously on the item, with <see cref="Elm.Widget.Item.SetCursor"/></summary>
+/// <value>The theme style to use/in use (e.g. $&quot;default&quot;, $&quot;transparent&quot;, etc)</value>
+   public  System.String CursorStyle {
+      get { return GetCursorStyle(); }
+      set { SetCursorStyle( value); }
+   }
+   /// <summary>Control if the (custom)cursor for a given item should be searched in its theme, also, or should only rely on the rendering engine.
+/// Note: This call is of use only if you&apos;ve set a custom cursor for items, with <see cref="Elm.Widget.Item.SetCursor"/>.
+/// 
+/// Note: By default, cursors will only be looked for between those provided by the rendering engine.</summary>
+/// <value>Use <c>true</c> to have cursors looked for only on those provided by the rendering engine, <c>false</c> to have them searched on the widget&apos;s theme, as well.</value>
+   public bool CursorEngineOnly {
+      get { return GetCursorEngineOnly(); }
+      set { SetCursorEngineOnly( value); }
+   }
+   /// <summary>Control the object item focused
+/// 1.10</summary>
+/// <value>The focused state</value>
+   public bool ItemFocus {
+      get { return GetItemFocus(); }
+      set { SetItemFocus( value); }
+   }
+   /// <summary>Control the style of an object item
+/// 1.9</summary>
+/// <value>The style of object item</value>
+   public  System.String Style {
+      get { return GetStyle(); }
+      set { SetStyle( value); }
+   }
+   /// <summary>Control the disabled state of a widget item.
+/// Elementary object item can be disabled, in which state they won&apos;t receive input and, in general, will be themed differently from their normal state, usually greyed out. Useful for contexts where you don&apos;t want your users to interact with some of the parts of you interface.
+/// 
+/// This sets the state for the widget item, either disabling it or enabling it back.</summary>
+/// <value><c>true</c>, if the widget item is disabled, <c>false</c> if it&apos;s enabled (or on errors)</value>
+   public bool Disabled {
+      get { return GetDisabled(); }
+      set { SetDisabled( value); }
+   }
+   /// <summary>Get list of available widget actions</summary>
+/// <value>Contains statically allocated strings.</value>
+   public Eina.List<Efl.Access.ActionData> Actions {
+      get { return GetActions(); }
+   }
+   /// <summary>Gets the depth at which the component is shown in relation to other components in the same container.</summary>
+/// <value>Z order of component</value>
+   public  int ZOrder {
+      get { return GetZOrder(); }
+   }
+   /// <summary>Gets an localized string describing accessible object role name.</summary>
+/// <value>Localized accessible object role name</value>
+   public  System.String LocalizedRoleName {
+      get { return GetLocalizedRoleName(); }
+   }
+   /// <summary>Accessible name of the object.</summary>
+/// <value>Accessible name</value>
+   public  System.String I18nName {
+      get { return GetI18nName(); }
+      set { SetI18nName( value); }
+   }
+   /// <summary>Gets an all relations between accessible object and other accessible objects.</summary>
+/// <value>Accessible relation set</value>
+   public Efl.Access.RelationSet RelationSet {
+      get { return GetRelationSet(); }
+   }
+   /// <summary>The role of the object in accessibility domain.</summary>
+/// <value>Accessible role</value>
+   public Efl.Access.Role Role {
+      get { return GetRole(); }
+      set { SetRole( value); }
+   }
+   /// <summary>Gets object&apos;s accessible parent.</summary>
+/// <value>Accessible parent</value>
+   public Efl.Access.Object AccessParent {
+      get { return GetAccessParent(); }
+      set { SetAccessParent( value); }
+   }
+   /// <summary>Gets object&apos;s accessible children.</summary>
+/// <value>List of widget&apos;s children</value>
+   public Eina.List<Efl.Access.Object> AccessChildren {
+      get { return GetAccessChildren(); }
+   }
+   /// <summary>Gets human-readable string indentifying object accessibility role.</summary>
+/// <value>Accessible role name</value>
+   public  System.String RoleName {
+      get { return GetRoleName(); }
+   }
+   /// <summary>Gets key-value pairs indentifying object extra attributes. Must be free by a user.</summary>
+/// <value>List of object attributes, Must be freed by the user</value>
+   public Eina.List<Efl.Access.Attribute> Attributes {
+      get { return GetAttributes(); }
+   }
+   /// <summary>Gets reading information types of an accessible object.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>Reading information types</value>
+   public Efl.Access.ReadingInfoTypeMask ReadingInfoType {
+      get { return GetReadingInfoType(); }
+      set { SetReadingInfoType( value); }
+   }
+   /// <summary>Gets index of the child in parent&apos;s children list.</summary>
+/// <value>Index in children list</value>
+   public  int IndexInParent {
+      get { return GetIndexInParent(); }
+   }
+   /// <summary>Gets contextual information about object.</summary>
+/// <value>Accessible contextual information</value>
+   public  System.String Description {
+      get { return GetDescription(); }
+      set { SetDescription( value); }
+   }
+   /// <summary>Gets set describing object accessible states.</summary>
+/// <value>Accessible state set</value>
+   public Efl.Access.StateSet StateSet {
+      get { return GetStateSet(); }
+   }
+   /// <summary>Gets highlightable of given widget.
+/// @if WEARABLE @since_tizen 3.0 @endif</summary>
+/// <value>If @c true, the object is highlightable.</value>
+   public bool CanHighlight {
+      get { return GetCanHighlight(); }
+      set { SetCanHighlight( value); }
+   }
+   /// <summary>The translation domain of &quot;name&quot; and &quot;description&quot; properties.
+/// Translation domain should be set if the application wants to support i18n for accessibility &quot;name&quot; and &quot;description&quot; properties.
+/// 
+/// When translation domain is set, values of &quot;name&quot; and &quot;description&quot; properties will be translated with the dgettext function using the current translation domain as the &quot;domainname&quot; parameter.
+/// 
+/// It is the application developer&apos;s responsibility to ensure that translation files are loaded and bound to the translation domain when accessibility is enabled.</summary>
+/// <value>Translation domain</value>
+   public  System.String TranslationDomain {
+      get { return GetTranslationDomain(); }
+      set { SetTranslationDomain( value); }
+   }
+   /// <summary>Get root object of accessible object hierarchy</summary>
+/// <value>Root object</value>
+   public static Efl.Object AccessRoot {
+      get { return GetAccessRoot(); }
+   }
+   /// <summary>Elementary actions</summary>
+/// <value>NULL-terminated array of Efl.Access.Action_Data.</value>
+   public Efl.Access.ActionData ElmActions {
+      get { return GetElmActions(); }
+   }
+   /// <summary>The 2D position of a canvas object.
+/// The position is absolute, in pixels, relative to the top-left corner of the window, within its border decorations (application space).</summary>
+/// <value>A 2D coordinate in pixel units.</value>
+   public Eina.Position2D Position {
+      get { return GetPosition(); }
+      set { SetPosition( value); }
+   }
+   /// <summary>The 2D size of a canvas object.</summary>
+/// <value>A 2D size in pixel units.</value>
+   public Eina.Size2D Size {
+      get { return GetSize(); }
+      set { SetSize( value); }
+   }
+   /// <summary>Rectangular geometry that combines both position and size.</summary>
+/// <value>The X,Y position and W,H size, in pixels.</value>
+   public Eina.Rect Geometry {
+      get { return GetGeometry(); }
+      set { SetGeometry( value); }
+   }
+   /// <summary>The visibility of a canvas object.
+/// All canvas objects will become visible by default just before render. This means that it is not required to call <see cref="Efl.Gfx.Entity.SetVisible"/> after creating an object unless you want to create it without showing it. Note that this behavior is new since 1.21, and only applies to canvas objects created with the EO API (i.e. not the legacy C-only API). Other types of Gfx objects may or may not be visible by default.
+/// 
+/// Note that many other parameters can prevent a visible object from actually being &quot;visible&quot; on screen. For instance if its color is fully transparent, or its parent is hidden, or it is clipped out, etc...</summary>
+/// <value><c>true</c> if to make the object visible, <c>false</c> otherwise</value>
+   public bool Visible {
+      get { return GetVisible(); }
+      set { SetVisible( value); }
+   }
+   /// <summary>The scaling factor of an object.
+/// This property is an individual scaling factor on the object (Edje or UI widget). This property (or Edje&apos;s global scaling factor, when applicable), will affect this object&apos;s part sizes. If scale is not zero, than the individual scaling will override any global scaling set, for the object obj&apos;s parts. Set it back to zero to get the effects of the global scaling again.
+/// 
+/// Warning: In Edje, only parts which, at EDC level, had the &quot;scale&quot; property set to 1, will be affected by this function. Check the complete &quot;syntax reference&quot; for EDC files.</summary>
+/// <value>The scaling factor (the default value is 0.0, meaning individual scaling is not set)</value>
+   public double Scale {
+      get { return GetScale(); }
+      set { SetScale( value); }
+   }
+   /// <summary>Retrieves the layer of its canvas that the given object is part of.
+/// See also <see cref="Efl.Gfx.Stack.SetLayer"/></summary>
+/// <value>The number of the layer to place the object on. Must be between <see cref="Efl.Gfx.Constants.StackLayerMin"/> and <see cref="Efl.Gfx.Constants.StackLayerMax"/>.</value>
+   public  short Layer {
+      get { return GetLayer(); }
+      set { SetLayer( value); }
+   }
+   /// <summary>Get the Evas object stacked right below <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers below the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Below {
+      get { return GetBelow(); }
+   }
+   /// <summary>Get the Evas object stacked right above <c>obj</c>
+/// This function will traverse layers in its search, if there are objects on layers above the one <c>obj</c> is placed at.
+/// 
+/// See also <see cref="Efl.Gfx.Stack.GetLayer"/>, <see cref="Efl.Gfx.Stack.SetLayer"/> and <see cref="Efl.Gfx.Stack.GetBelow"/></summary>
+/// <value>The <see cref="Efl.Gfx.Stack"/> object directly below <c>obj</c>, if any, or <c>null</c>, if none.</value>
+   public Efl.Gfx.Stack Above {
+      get { return GetAbove(); }
+   }
+   private static new  IntPtr GetEflClassStatic()
+   {
+      return Elm.Widget.Item.elm_widget_item_class_get();
+   }
+}
+public class ItemNativeInherit : Efl.ObjectNativeInherit{
+   public new  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (elm_wdg_item_tooltip_window_mode_get_static_delegate == null)
+      elm_wdg_item_tooltip_window_mode_get_static_delegate = new elm_wdg_item_tooltip_window_mode_get_delegate(tooltip_window_mode_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_window_mode_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_window_mode_get_static_delegate)});
+      if (elm_wdg_item_tooltip_window_mode_set_static_delegate == null)
+      elm_wdg_item_tooltip_window_mode_set_static_delegate = new elm_wdg_item_tooltip_window_mode_set_delegate(tooltip_window_mode_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_window_mode_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_window_mode_set_static_delegate)});
+      if (elm_wdg_item_tooltip_style_get_static_delegate == null)
+      elm_wdg_item_tooltip_style_get_static_delegate = new elm_wdg_item_tooltip_style_get_delegate(tooltip_style_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_style_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_style_get_static_delegate)});
+      if (elm_wdg_item_tooltip_style_set_static_delegate == null)
+      elm_wdg_item_tooltip_style_set_static_delegate = new elm_wdg_item_tooltip_style_set_delegate(tooltip_style_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_style_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_style_set_static_delegate)});
+      if (elm_wdg_item_cursor_get_static_delegate == null)
+      elm_wdg_item_cursor_get_static_delegate = new elm_wdg_item_cursor_get_delegate(cursor_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_cursor_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_cursor_get_static_delegate)});
+      if (elm_wdg_item_cursor_set_static_delegate == null)
+      elm_wdg_item_cursor_set_static_delegate = new elm_wdg_item_cursor_set_delegate(cursor_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_cursor_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_cursor_set_static_delegate)});
+      if (elm_wdg_item_cursor_style_get_static_delegate == null)
+      elm_wdg_item_cursor_style_get_static_delegate = new elm_wdg_item_cursor_style_get_delegate(cursor_style_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_cursor_style_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_cursor_style_get_static_delegate)});
+      if (elm_wdg_item_cursor_style_set_static_delegate == null)
+      elm_wdg_item_cursor_style_set_static_delegate = new elm_wdg_item_cursor_style_set_delegate(cursor_style_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_cursor_style_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_cursor_style_set_static_delegate)});
+      if (elm_wdg_item_cursor_engine_only_get_static_delegate == null)
+      elm_wdg_item_cursor_engine_only_get_static_delegate = new elm_wdg_item_cursor_engine_only_get_delegate(cursor_engine_only_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_cursor_engine_only_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_cursor_engine_only_get_static_delegate)});
+      if (elm_wdg_item_cursor_engine_only_set_static_delegate == null)
+      elm_wdg_item_cursor_engine_only_set_static_delegate = new elm_wdg_item_cursor_engine_only_set_delegate(cursor_engine_only_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_cursor_engine_only_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_cursor_engine_only_set_static_delegate)});
+      if (elm_wdg_item_part_content_get_static_delegate == null)
+      elm_wdg_item_part_content_get_static_delegate = new elm_wdg_item_part_content_get_delegate(part_content_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_content_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_content_get_static_delegate)});
+      if (elm_wdg_item_part_content_set_static_delegate == null)
+      elm_wdg_item_part_content_set_static_delegate = new elm_wdg_item_part_content_set_delegate(part_content_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_content_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_content_set_static_delegate)});
+      if (elm_wdg_item_part_text_get_static_delegate == null)
+      elm_wdg_item_part_text_get_static_delegate = new elm_wdg_item_part_text_get_delegate(part_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_text_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_text_get_static_delegate)});
+      if (elm_wdg_item_part_text_set_static_delegate == null)
+      elm_wdg_item_part_text_set_static_delegate = new elm_wdg_item_part_text_set_delegate(part_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_text_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_text_set_static_delegate)});
+      if (elm_wdg_item_part_text_custom_get_static_delegate == null)
+      elm_wdg_item_part_text_custom_get_static_delegate = new elm_wdg_item_part_text_custom_get_delegate(part_text_custom_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_text_custom_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_text_custom_get_static_delegate)});
+      if (elm_wdg_item_part_text_custom_set_static_delegate == null)
+      elm_wdg_item_part_text_custom_set_static_delegate = new elm_wdg_item_part_text_custom_set_delegate(part_text_custom_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_text_custom_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_text_custom_set_static_delegate)});
+      if (elm_wdg_item_focus_get_static_delegate == null)
+      elm_wdg_item_focus_get_static_delegate = new elm_wdg_item_focus_get_delegate(item_focus_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_focus_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_focus_get_static_delegate)});
+      if (elm_wdg_item_focus_set_static_delegate == null)
+      elm_wdg_item_focus_set_static_delegate = new elm_wdg_item_focus_set_delegate(item_focus_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_focus_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_focus_set_static_delegate)});
+      if (elm_wdg_item_style_get_static_delegate == null)
+      elm_wdg_item_style_get_static_delegate = new elm_wdg_item_style_get_delegate(style_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_style_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_style_get_static_delegate)});
+      if (elm_wdg_item_style_set_static_delegate == null)
+      elm_wdg_item_style_set_static_delegate = new elm_wdg_item_style_set_delegate(style_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_style_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_style_set_static_delegate)});
+      if (elm_wdg_item_disabled_get_static_delegate == null)
+      elm_wdg_item_disabled_get_static_delegate = new elm_wdg_item_disabled_get_delegate(disabled_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_disabled_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_disabled_get_static_delegate)});
+      if (elm_wdg_item_disabled_set_static_delegate == null)
+      elm_wdg_item_disabled_set_static_delegate = new elm_wdg_item_disabled_set_delegate(disabled_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_disabled_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_disabled_set_static_delegate)});
+      if (elm_wdg_item_access_order_get_static_delegate == null)
+      elm_wdg_item_access_order_get_static_delegate = new elm_wdg_item_access_order_get_delegate(access_order_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_access_order_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_access_order_get_static_delegate)});
+      if (elm_wdg_item_access_order_set_static_delegate == null)
+      elm_wdg_item_access_order_set_static_delegate = new elm_wdg_item_access_order_set_delegate(access_order_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_access_order_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_access_order_set_static_delegate)});
+      if (elm_wdg_item_widget_get_static_delegate == null)
+      elm_wdg_item_widget_get_static_delegate = new elm_wdg_item_widget_get_delegate(widget_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_widget_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_widget_get_static_delegate)});
+      if (elm_wdg_item_pre_notify_del_static_delegate == null)
+      elm_wdg_item_pre_notify_del_static_delegate = new elm_wdg_item_pre_notify_del_delegate(pre_notify_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_pre_notify_del"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_pre_notify_del_static_delegate)});
+      if (elm_wdg_item_tooltip_text_set_static_delegate == null)
+      elm_wdg_item_tooltip_text_set_static_delegate = new elm_wdg_item_tooltip_text_set_delegate(tooltip_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_text_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_text_set_static_delegate)});
+      if (elm_wdg_item_tooltip_translatable_text_set_static_delegate == null)
+      elm_wdg_item_tooltip_translatable_text_set_static_delegate = new elm_wdg_item_tooltip_translatable_text_set_delegate(tooltip_translatable_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_translatable_text_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_translatable_text_set_static_delegate)});
+      if (elm_wdg_item_tooltip_unset_static_delegate == null)
+      elm_wdg_item_tooltip_unset_static_delegate = new elm_wdg_item_tooltip_unset_delegate(tooltip_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_unset"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_unset_static_delegate)});
+      if (elm_wdg_item_cursor_unset_static_delegate == null)
+      elm_wdg_item_cursor_unset_static_delegate = new elm_wdg_item_cursor_unset_delegate(cursor_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_cursor_unset"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_cursor_unset_static_delegate)});
+      if (elm_wdg_item_part_content_unset_static_delegate == null)
+      elm_wdg_item_part_content_unset_static_delegate = new elm_wdg_item_part_content_unset_delegate(part_content_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_content_unset"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_content_unset_static_delegate)});
+      if (elm_wdg_item_part_text_custom_update_static_delegate == null)
+      elm_wdg_item_part_text_custom_update_static_delegate = new elm_wdg_item_part_text_custom_update_delegate(part_text_custom_update);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_part_text_custom_update"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_part_text_custom_update_static_delegate)});
+      if (elm_wdg_item_signal_callback_add_static_delegate == null)
+      elm_wdg_item_signal_callback_add_static_delegate = new elm_wdg_item_signal_callback_add_delegate(signal_callback_add);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_signal_callback_add"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_signal_callback_add_static_delegate)});
+      if (elm_wdg_item_signal_callback_del_static_delegate == null)
+      elm_wdg_item_signal_callback_del_static_delegate = new elm_wdg_item_signal_callback_del_delegate(signal_callback_del);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_signal_callback_del"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_signal_callback_del_static_delegate)});
+      if (elm_wdg_item_signal_emit_static_delegate == null)
+      elm_wdg_item_signal_emit_static_delegate = new elm_wdg_item_signal_emit_delegate(signal_emit);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_signal_emit"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_signal_emit_static_delegate)});
+      if (elm_wdg_item_access_info_set_static_delegate == null)
+      elm_wdg_item_access_info_set_static_delegate = new elm_wdg_item_access_info_set_delegate(access_info_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_access_info_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_access_info_set_static_delegate)});
+      if (elm_wdg_item_access_object_get_static_delegate == null)
+      elm_wdg_item_access_object_get_static_delegate = new elm_wdg_item_access_object_get_delegate(access_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_access_object_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_access_object_get_static_delegate)});
+      if (elm_wdg_item_domain_translatable_part_text_set_static_delegate == null)
+      elm_wdg_item_domain_translatable_part_text_set_static_delegate = new elm_wdg_item_domain_translatable_part_text_set_delegate(domain_translatable_part_text_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_domain_translatable_part_text_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_domain_translatable_part_text_set_static_delegate)});
+      if (elm_wdg_item_translatable_part_text_get_static_delegate == null)
+      elm_wdg_item_translatable_part_text_get_static_delegate = new elm_wdg_item_translatable_part_text_get_delegate(translatable_part_text_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_translatable_part_text_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_translatable_part_text_get_static_delegate)});
+      if (elm_wdg_item_translate_static_delegate == null)
+      elm_wdg_item_translate_static_delegate = new elm_wdg_item_translate_delegate(translate);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_translate"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_translate_static_delegate)});
+      if (elm_wdg_item_domain_part_text_translatable_set_static_delegate == null)
+      elm_wdg_item_domain_part_text_translatable_set_static_delegate = new elm_wdg_item_domain_part_text_translatable_set_delegate(domain_part_text_translatable_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_domain_part_text_translatable_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_domain_part_text_translatable_set_static_delegate)});
+      if (elm_wdg_item_track_static_delegate == null)
+      elm_wdg_item_track_static_delegate = new elm_wdg_item_track_delegate(track);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_track"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_track_static_delegate)});
+      if (elm_wdg_item_untrack_static_delegate == null)
+      elm_wdg_item_untrack_static_delegate = new elm_wdg_item_untrack_delegate(untrack);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_untrack"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_untrack_static_delegate)});
+      if (elm_wdg_item_track_get_static_delegate == null)
+      elm_wdg_item_track_get_static_delegate = new elm_wdg_item_track_get_delegate(track_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_track_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_track_get_static_delegate)});
+      if (elm_wdg_item_track_cancel_static_delegate == null)
+      elm_wdg_item_track_cancel_static_delegate = new elm_wdg_item_track_cancel_delegate(track_cancel);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_track_cancel"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_track_cancel_static_delegate)});
+      if (elm_wdg_item_del_cb_set_static_delegate == null)
+      elm_wdg_item_del_cb_set_static_delegate = new elm_wdg_item_del_cb_set_delegate(del_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_del_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_del_cb_set_static_delegate)});
+      if (elm_wdg_item_tooltip_content_cb_set_static_delegate == null)
+      elm_wdg_item_tooltip_content_cb_set_static_delegate = new elm_wdg_item_tooltip_content_cb_set_delegate(tooltip_content_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_tooltip_content_cb_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_tooltip_content_cb_set_static_delegate)});
+      if (elm_wdg_item_access_register_static_delegate == null)
+      elm_wdg_item_access_register_static_delegate = new elm_wdg_item_access_register_delegate(access_register);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_access_register"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_access_register_static_delegate)});
+      if (elm_wdg_item_access_unregister_static_delegate == null)
+      elm_wdg_item_access_unregister_static_delegate = new elm_wdg_item_access_unregister_delegate(access_unregister);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_access_unregister"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_access_unregister_static_delegate)});
+      if (elm_wdg_item_access_order_unset_static_delegate == null)
+      elm_wdg_item_access_order_unset_static_delegate = new elm_wdg_item_access_order_unset_delegate(access_order_unset);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_access_order_unset"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_access_order_unset_static_delegate)});
+      if (elm_wdg_item_disable_static_delegate == null)
+      elm_wdg_item_disable_static_delegate = new elm_wdg_item_disable_delegate(disable);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_disable"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_disable_static_delegate)});
+      if (elm_wdg_item_del_pre_static_delegate == null)
+      elm_wdg_item_del_pre_static_delegate = new elm_wdg_item_del_pre_delegate(del_pre);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_del_pre"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_del_pre_static_delegate)});
+      if (elm_wdg_item_focus_next_object_get_static_delegate == null)
+      elm_wdg_item_focus_next_object_get_static_delegate = new elm_wdg_item_focus_next_object_get_delegate(focus_next_object_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_focus_next_object_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_focus_next_object_get_static_delegate)});
+      if (elm_wdg_item_focus_next_object_set_static_delegate == null)
+      elm_wdg_item_focus_next_object_set_static_delegate = new elm_wdg_item_focus_next_object_set_delegate(focus_next_object_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_focus_next_object_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_focus_next_object_set_static_delegate)});
+      if (elm_wdg_item_focus_next_item_get_static_delegate == null)
+      elm_wdg_item_focus_next_item_get_static_delegate = new elm_wdg_item_focus_next_item_get_delegate(focus_next_item_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_focus_next_item_get"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_focus_next_item_get_static_delegate)});
+      if (elm_wdg_item_focus_next_item_set_static_delegate == null)
+      elm_wdg_item_focus_next_item_set_static_delegate = new elm_wdg_item_focus_next_item_set_delegate(focus_next_item_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_wdg_item_focus_next_item_set"), func = Marshal.GetFunctionPointerForDelegate(elm_wdg_item_focus_next_item_set_static_delegate)});
+      if (efl_access_action_name_get_static_delegate == null)
+      efl_access_action_name_get_static_delegate = new efl_access_action_name_get_delegate(action_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_name_get_static_delegate)});
+      if (efl_access_action_localized_name_get_static_delegate == null)
+      efl_access_action_localized_name_get_static_delegate = new efl_access_action_localized_name_get_delegate(action_localized_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_localized_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_localized_name_get_static_delegate)});
+      if (efl_access_action_actions_get_static_delegate == null)
+      efl_access_action_actions_get_static_delegate = new efl_access_action_actions_get_delegate(actions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_actions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_actions_get_static_delegate)});
+      if (efl_access_action_do_static_delegate == null)
+      efl_access_action_do_static_delegate = new efl_access_action_do_delegate(action_do);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_do"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_do_static_delegate)});
+      if (efl_access_action_keybinding_get_static_delegate == null)
+      efl_access_action_keybinding_get_static_delegate = new efl_access_action_keybinding_get_delegate(action_keybinding_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_action_keybinding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_action_keybinding_get_static_delegate)});
+      if (efl_access_component_z_order_get_static_delegate == null)
+      efl_access_component_z_order_get_static_delegate = new efl_access_component_z_order_get_delegate(z_order_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_z_order_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_z_order_get_static_delegate)});
+      if (efl_access_component_extents_get_static_delegate == null)
+      efl_access_component_extents_get_static_delegate = new efl_access_component_extents_get_delegate(extents_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_extents_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_extents_get_static_delegate)});
+      if (efl_access_component_extents_set_static_delegate == null)
+      efl_access_component_extents_set_static_delegate = new efl_access_component_extents_set_delegate(extents_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_extents_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_extents_set_static_delegate)});
+      if (efl_access_component_screen_position_get_static_delegate == null)
+      efl_access_component_screen_position_get_static_delegate = new efl_access_component_screen_position_get_delegate(screen_position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_screen_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_screen_position_get_static_delegate)});
+      if (efl_access_component_screen_position_set_static_delegate == null)
+      efl_access_component_screen_position_set_static_delegate = new efl_access_component_screen_position_set_delegate(screen_position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_screen_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_screen_position_set_static_delegate)});
+      if (efl_access_component_socket_offset_get_static_delegate == null)
+      efl_access_component_socket_offset_get_static_delegate = new efl_access_component_socket_offset_get_delegate(socket_offset_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_socket_offset_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_socket_offset_get_static_delegate)});
+      if (efl_access_component_socket_offset_set_static_delegate == null)
+      efl_access_component_socket_offset_set_static_delegate = new efl_access_component_socket_offset_set_delegate(socket_offset_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_socket_offset_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_socket_offset_set_static_delegate)});
+      if (efl_access_component_contains_static_delegate == null)
+      efl_access_component_contains_static_delegate = new efl_access_component_contains_delegate(contains);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_contains"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_contains_static_delegate)});
+      if (efl_access_component_focus_grab_static_delegate == null)
+      efl_access_component_focus_grab_static_delegate = new efl_access_component_focus_grab_delegate(focus_grab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_focus_grab"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_focus_grab_static_delegate)});
+      if (efl_access_component_accessible_at_point_get_static_delegate == null)
+      efl_access_component_accessible_at_point_get_static_delegate = new efl_access_component_accessible_at_point_get_delegate(accessible_at_point_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_accessible_at_point_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_accessible_at_point_get_static_delegate)});
+      if (efl_access_component_highlight_grab_static_delegate == null)
+      efl_access_component_highlight_grab_static_delegate = new efl_access_component_highlight_grab_delegate(highlight_grab);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_highlight_grab"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_highlight_grab_static_delegate)});
+      if (efl_access_component_highlight_clear_static_delegate == null)
+      efl_access_component_highlight_clear_static_delegate = new efl_access_component_highlight_clear_delegate(highlight_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_component_highlight_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_component_highlight_clear_static_delegate)});
+      if (efl_access_object_localized_role_name_get_static_delegate == null)
+      efl_access_object_localized_role_name_get_static_delegate = new efl_access_object_localized_role_name_get_delegate(localized_role_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_localized_role_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_localized_role_name_get_static_delegate)});
+      if (efl_access_object_i18n_name_get_static_delegate == null)
+      efl_access_object_i18n_name_get_static_delegate = new efl_access_object_i18n_name_get_delegate(i18n_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_i18n_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_i18n_name_get_static_delegate)});
+      if (efl_access_object_i18n_name_set_static_delegate == null)
+      efl_access_object_i18n_name_set_static_delegate = new efl_access_object_i18n_name_set_delegate(i18n_name_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_i18n_name_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_i18n_name_set_static_delegate)});
+      if (efl_access_object_name_cb_set_static_delegate == null)
+      efl_access_object_name_cb_set_static_delegate = new efl_access_object_name_cb_set_delegate(name_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_name_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_name_cb_set_static_delegate)});
+      if (efl_access_object_relation_set_get_static_delegate == null)
+      efl_access_object_relation_set_get_static_delegate = new efl_access_object_relation_set_get_delegate(relation_set_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relation_set_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relation_set_get_static_delegate)});
+      if (efl_access_object_role_get_static_delegate == null)
+      efl_access_object_role_get_static_delegate = new efl_access_object_role_get_delegate(role_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_get_static_delegate)});
+      if (efl_access_object_role_set_static_delegate == null)
+      efl_access_object_role_set_static_delegate = new efl_access_object_role_set_delegate(role_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_set_static_delegate)});
+      if (efl_access_object_access_parent_get_static_delegate == null)
+      efl_access_object_access_parent_get_static_delegate = new efl_access_object_access_parent_get_delegate(access_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_parent_get_static_delegate)});
+      if (efl_access_object_access_parent_set_static_delegate == null)
+      efl_access_object_access_parent_set_static_delegate = new efl_access_object_access_parent_set_delegate(access_parent_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_parent_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_parent_set_static_delegate)});
+      if (efl_access_object_description_cb_set_static_delegate == null)
+      efl_access_object_description_cb_set_static_delegate = new efl_access_object_description_cb_set_delegate(description_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_cb_set_static_delegate)});
+      if (efl_access_object_gesture_cb_set_static_delegate == null)
+      efl_access_object_gesture_cb_set_static_delegate = new efl_access_object_gesture_cb_set_delegate(gesture_cb_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_gesture_cb_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_gesture_cb_set_static_delegate)});
+      if (efl_access_object_access_children_get_static_delegate == null)
+      efl_access_object_access_children_get_static_delegate = new efl_access_object_access_children_get_delegate(access_children_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_access_children_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_access_children_get_static_delegate)});
+      if (efl_access_object_role_name_get_static_delegate == null)
+      efl_access_object_role_name_get_static_delegate = new efl_access_object_role_name_get_delegate(role_name_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_role_name_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_role_name_get_static_delegate)});
+      if (efl_access_object_attributes_get_static_delegate == null)
+      efl_access_object_attributes_get_static_delegate = new efl_access_object_attributes_get_delegate(attributes_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attributes_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attributes_get_static_delegate)});
+      if (efl_access_object_reading_info_type_get_static_delegate == null)
+      efl_access_object_reading_info_type_get_static_delegate = new efl_access_object_reading_info_type_get_delegate(reading_info_type_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_reading_info_type_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_reading_info_type_get_static_delegate)});
+      if (efl_access_object_reading_info_type_set_static_delegate == null)
+      efl_access_object_reading_info_type_set_static_delegate = new efl_access_object_reading_info_type_set_delegate(reading_info_type_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_reading_info_type_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_reading_info_type_set_static_delegate)});
+      if (efl_access_object_index_in_parent_get_static_delegate == null)
+      efl_access_object_index_in_parent_get_static_delegate = new efl_access_object_index_in_parent_get_delegate(index_in_parent_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_index_in_parent_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_index_in_parent_get_static_delegate)});
+      if (efl_access_object_description_get_static_delegate == null)
+      efl_access_object_description_get_static_delegate = new efl_access_object_description_get_delegate(description_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_get_static_delegate)});
+      if (efl_access_object_description_set_static_delegate == null)
+      efl_access_object_description_set_static_delegate = new efl_access_object_description_set_delegate(description_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_description_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_description_set_static_delegate)});
+      if (efl_access_object_state_set_get_static_delegate == null)
+      efl_access_object_state_set_get_static_delegate = new efl_access_object_state_set_get_delegate(state_set_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_state_set_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_state_set_get_static_delegate)});
+      if (efl_access_object_can_highlight_get_static_delegate == null)
+      efl_access_object_can_highlight_get_static_delegate = new efl_access_object_can_highlight_get_delegate(can_highlight_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_can_highlight_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_can_highlight_get_static_delegate)});
+      if (efl_access_object_can_highlight_set_static_delegate == null)
+      efl_access_object_can_highlight_set_static_delegate = new efl_access_object_can_highlight_set_delegate(can_highlight_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_can_highlight_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_can_highlight_set_static_delegate)});
+      if (efl_access_object_translation_domain_get_static_delegate == null)
+      efl_access_object_translation_domain_get_static_delegate = new efl_access_object_translation_domain_get_delegate(translation_domain_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_translation_domain_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_translation_domain_get_static_delegate)});
+      if (efl_access_object_translation_domain_set_static_delegate == null)
+      efl_access_object_translation_domain_set_static_delegate = new efl_access_object_translation_domain_set_delegate(translation_domain_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_translation_domain_set"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_translation_domain_set_static_delegate)});
+      if (efl_access_object_gesture_do_static_delegate == null)
+      efl_access_object_gesture_do_static_delegate = new efl_access_object_gesture_do_delegate(gesture_do);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_gesture_do"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_gesture_do_static_delegate)});
+      if (efl_access_object_attribute_append_static_delegate == null)
+      efl_access_object_attribute_append_static_delegate = new efl_access_object_attribute_append_delegate(attribute_append);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attribute_append"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attribute_append_static_delegate)});
+      if (efl_access_object_attributes_clear_static_delegate == null)
+      efl_access_object_attributes_clear_static_delegate = new efl_access_object_attributes_clear_delegate(attributes_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_attributes_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_attributes_clear_static_delegate)});
+      if (efl_access_object_relationship_append_static_delegate == null)
+      efl_access_object_relationship_append_static_delegate = new efl_access_object_relationship_append_delegate(relationship_append);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationship_append"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationship_append_static_delegate)});
+      if (efl_access_object_relationship_remove_static_delegate == null)
+      efl_access_object_relationship_remove_static_delegate = new efl_access_object_relationship_remove_delegate(relationship_remove);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationship_remove"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationship_remove_static_delegate)});
+      if (efl_access_object_relationships_clear_static_delegate == null)
+      efl_access_object_relationships_clear_static_delegate = new efl_access_object_relationships_clear_delegate(relationships_clear);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_relationships_clear"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_relationships_clear_static_delegate)});
+      if (efl_access_object_state_notify_static_delegate == null)
+      efl_access_object_state_notify_static_delegate = new efl_access_object_state_notify_delegate(state_notify);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_object_state_notify"), func = Marshal.GetFunctionPointerForDelegate(efl_access_object_state_notify_static_delegate)});
+      if (efl_access_widget_action_elm_actions_get_static_delegate == null)
+      efl_access_widget_action_elm_actions_get_static_delegate = new efl_access_widget_action_elm_actions_get_delegate(elm_actions_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_access_widget_action_elm_actions_get"), func = Marshal.GetFunctionPointerForDelegate(efl_access_widget_action_elm_actions_get_static_delegate)});
+      if (efl_gfx_entity_position_get_static_delegate == null)
+      efl_gfx_entity_position_get_static_delegate = new efl_gfx_entity_position_get_delegate(position_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_get_static_delegate)});
+      if (efl_gfx_entity_position_set_static_delegate == null)
+      efl_gfx_entity_position_set_static_delegate = new efl_gfx_entity_position_set_delegate(position_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_position_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_position_set_static_delegate)});
+      if (efl_gfx_entity_size_get_static_delegate == null)
+      efl_gfx_entity_size_get_static_delegate = new efl_gfx_entity_size_get_delegate(size_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_get_static_delegate)});
+      if (efl_gfx_entity_size_set_static_delegate == null)
+      efl_gfx_entity_size_set_static_delegate = new efl_gfx_entity_size_set_delegate(size_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_size_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_size_set_static_delegate)});
+      if (efl_gfx_entity_geometry_get_static_delegate == null)
+      efl_gfx_entity_geometry_get_static_delegate = new efl_gfx_entity_geometry_get_delegate(geometry_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_get_static_delegate)});
+      if (efl_gfx_entity_geometry_set_static_delegate == null)
+      efl_gfx_entity_geometry_set_static_delegate = new efl_gfx_entity_geometry_set_delegate(geometry_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_geometry_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_geometry_set_static_delegate)});
+      if (efl_gfx_entity_visible_get_static_delegate == null)
+      efl_gfx_entity_visible_get_static_delegate = new efl_gfx_entity_visible_get_delegate(visible_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_get_static_delegate)});
+      if (efl_gfx_entity_visible_set_static_delegate == null)
+      efl_gfx_entity_visible_set_static_delegate = new efl_gfx_entity_visible_set_delegate(visible_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_visible_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_visible_set_static_delegate)});
+      if (efl_gfx_entity_scale_get_static_delegate == null)
+      efl_gfx_entity_scale_get_static_delegate = new efl_gfx_entity_scale_get_delegate(scale_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_get_static_delegate)});
+      if (efl_gfx_entity_scale_set_static_delegate == null)
+      efl_gfx_entity_scale_set_static_delegate = new efl_gfx_entity_scale_set_delegate(scale_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_entity_scale_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_entity_scale_set_static_delegate)});
+      if (efl_gfx_stack_layer_get_static_delegate == null)
+      efl_gfx_stack_layer_get_static_delegate = new efl_gfx_stack_layer_get_delegate(layer_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_get_static_delegate)});
+      if (efl_gfx_stack_layer_set_static_delegate == null)
+      efl_gfx_stack_layer_set_static_delegate = new efl_gfx_stack_layer_set_delegate(layer_set);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_layer_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_layer_set_static_delegate)});
+      if (efl_gfx_stack_below_get_static_delegate == null)
+      efl_gfx_stack_below_get_static_delegate = new efl_gfx_stack_below_get_delegate(below_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_get_static_delegate)});
+      if (efl_gfx_stack_above_get_static_delegate == null)
+      efl_gfx_stack_above_get_static_delegate = new efl_gfx_stack_above_get_delegate(above_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_get_static_delegate)});
+      if (efl_gfx_stack_below_static_delegate == null)
+      efl_gfx_stack_below_static_delegate = new efl_gfx_stack_below_delegate(stack_below);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_below"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_below_static_delegate)});
+      if (efl_gfx_stack_raise_to_top_static_delegate == null)
+      efl_gfx_stack_raise_to_top_static_delegate = new efl_gfx_stack_raise_to_top_delegate(raise_to_top);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_raise_to_top"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_raise_to_top_static_delegate)});
+      if (efl_gfx_stack_above_static_delegate == null)
+      efl_gfx_stack_above_static_delegate = new efl_gfx_stack_above_delegate(stack_above);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_above"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_above_static_delegate)});
+      if (efl_gfx_stack_lower_to_bottom_static_delegate == null)
+      efl_gfx_stack_lower_to_bottom_static_delegate = new efl_gfx_stack_lower_to_bottom_delegate(lower_to_bottom);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "efl_gfx_stack_lower_to_bottom"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_stack_lower_to_bottom_static_delegate)});
+      descs.AddRange(base.GetEoOps(type));
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Elm.Widget.Item.elm_widget_item_class_get();
+   }
+   public static new  IntPtr GetEflClassStatic()
+   {
+      return Elm.Widget.Item.elm_widget_item_class_get();
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_wdg_item_tooltip_window_mode_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_wdg_item_tooltip_window_mode_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_window_mode_get_api_delegate> elm_wdg_item_tooltip_window_mode_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_window_mode_get_api_delegate>(_Module, "elm_wdg_item_tooltip_window_mode_get");
+    private static bool tooltip_window_mode_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_window_mode_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GetTooltipWindowMode();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_tooltip_window_mode_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_tooltip_window_mode_get_delegate elm_wdg_item_tooltip_window_mode_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_wdg_item_tooltip_window_mode_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disable);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_wdg_item_tooltip_window_mode_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disable);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_window_mode_set_api_delegate> elm_wdg_item_tooltip_window_mode_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_window_mode_set_api_delegate>(_Module, "elm_wdg_item_tooltip_window_mode_set");
+    private static bool tooltip_window_mode_set(System.IntPtr obj, System.IntPtr pd,  bool disable)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_window_mode_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).SetTooltipWindowMode( disable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_tooltip_window_mode_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disable);
+      }
+   }
+   private static elm_wdg_item_tooltip_window_mode_set_delegate elm_wdg_item_tooltip_window_mode_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String elm_wdg_item_tooltip_style_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String elm_wdg_item_tooltip_style_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_style_get_api_delegate> elm_wdg_item_tooltip_style_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_style_get_api_delegate>(_Module, "elm_wdg_item_tooltip_style_get");
+    private static  System.String tooltip_style_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_style_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetTooltipStyle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_tooltip_style_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_tooltip_style_get_delegate elm_wdg_item_tooltip_style_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_tooltip_style_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    public delegate  void elm_wdg_item_tooltip_style_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_style_set_api_delegate> elm_wdg_item_tooltip_style_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_style_set_api_delegate>(_Module, "elm_wdg_item_tooltip_style_set");
+    private static  void tooltip_style_set(System.IntPtr obj, System.IntPtr pd,   System.String style)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_style_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetTooltipStyle( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_tooltip_style_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static elm_wdg_item_tooltip_style_set_delegate elm_wdg_item_tooltip_style_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String elm_wdg_item_cursor_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String elm_wdg_item_cursor_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_get_api_delegate> elm_wdg_item_cursor_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_get_api_delegate>(_Module, "elm_wdg_item_cursor_get");
+    private static  System.String cursor_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_cursor_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetCursor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_cursor_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_cursor_get_delegate elm_wdg_item_cursor_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_cursor_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cursor);
+
+
+    public delegate  void elm_wdg_item_cursor_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String cursor);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_set_api_delegate> elm_wdg_item_cursor_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_set_api_delegate>(_Module, "elm_wdg_item_cursor_set");
+    private static  void cursor_set(System.IntPtr obj, System.IntPtr pd,   System.String cursor)
+   {
+      Eina.Log.Debug("function elm_wdg_item_cursor_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetCursor( cursor);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_cursor_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  cursor);
+      }
+   }
+   private static elm_wdg_item_cursor_set_delegate elm_wdg_item_cursor_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String elm_wdg_item_cursor_style_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String elm_wdg_item_cursor_style_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_style_get_api_delegate> elm_wdg_item_cursor_style_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_style_get_api_delegate>(_Module, "elm_wdg_item_cursor_style_get");
+    private static  System.String cursor_style_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_cursor_style_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetCursorStyle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_cursor_style_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_cursor_style_get_delegate elm_wdg_item_cursor_style_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_cursor_style_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    public delegate  void elm_wdg_item_cursor_style_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_style_set_api_delegate> elm_wdg_item_cursor_style_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_style_set_api_delegate>(_Module, "elm_wdg_item_cursor_style_set");
+    private static  void cursor_style_set(System.IntPtr obj, System.IntPtr pd,   System.String style)
+   {
+      Eina.Log.Debug("function elm_wdg_item_cursor_style_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetCursorStyle( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_cursor_style_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static elm_wdg_item_cursor_style_set_delegate elm_wdg_item_cursor_style_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_wdg_item_cursor_engine_only_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_wdg_item_cursor_engine_only_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_engine_only_get_api_delegate> elm_wdg_item_cursor_engine_only_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_engine_only_get_api_delegate>(_Module, "elm_wdg_item_cursor_engine_only_get");
+    private static bool cursor_engine_only_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_cursor_engine_only_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GetCursorEngineOnly();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_cursor_engine_only_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_cursor_engine_only_get_delegate elm_wdg_item_cursor_engine_only_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_cursor_engine_only_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool engine_only);
+
+
+    public delegate  void elm_wdg_item_cursor_engine_only_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool engine_only);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_engine_only_set_api_delegate> elm_wdg_item_cursor_engine_only_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_engine_only_set_api_delegate>(_Module, "elm_wdg_item_cursor_engine_only_set");
+    private static  void cursor_engine_only_set(System.IntPtr obj, System.IntPtr pd,  bool engine_only)
+   {
+      Eina.Log.Debug("function elm_wdg_item_cursor_engine_only_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetCursorEngineOnly( engine_only);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_cursor_engine_only_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  engine_only);
+      }
+   }
+   private static elm_wdg_item_cursor_engine_only_set_delegate elm_wdg_item_cursor_engine_only_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object elm_wdg_item_part_content_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object elm_wdg_item_part_content_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_content_get_api_delegate> elm_wdg_item_part_content_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_content_get_api_delegate>(_Module, "elm_wdg_item_part_content_get");
+    private static Efl.Canvas.Object part_content_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_content_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Item)wrapper).GetPartContent( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_part_content_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static elm_wdg_item_part_content_get_delegate elm_wdg_item_part_content_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_part_content_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+
+
+    public delegate  void elm_wdg_item_part_content_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object content);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_content_set_api_delegate> elm_wdg_item_part_content_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_content_set_api_delegate>(_Module, "elm_wdg_item_part_content_set");
+    private static  void part_content_set(System.IntPtr obj, System.IntPtr pd,   System.String part,  Efl.Canvas.Object content)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_content_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetPartContent( part,  content);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_wdg_item_part_content_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  content);
+      }
+   }
+   private static elm_wdg_item_part_content_set_delegate elm_wdg_item_part_content_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String elm_wdg_item_part_text_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String elm_wdg_item_part_text_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_get_api_delegate> elm_wdg_item_part_text_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_get_api_delegate>(_Module, "elm_wdg_item_part_text_get");
+    private static  System.String part_text_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetPartText( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_part_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static elm_wdg_item_part_text_get_delegate elm_wdg_item_part_text_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_part_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+
+
+    public delegate  void elm_wdg_item_part_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_set_api_delegate> elm_wdg_item_part_text_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_set_api_delegate>(_Module, "elm_wdg_item_part_text_set");
+    private static  void part_text_set(System.IntPtr obj, System.IntPtr pd,   System.String part,   System.String label)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetPartText( part,  label);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_wdg_item_part_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  label);
+      }
+   }
+   private static elm_wdg_item_part_text_set_delegate elm_wdg_item_part_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String elm_wdg_item_part_text_custom_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String elm_wdg_item_part_text_custom_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_custom_get_api_delegate> elm_wdg_item_part_text_custom_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_custom_get_api_delegate>(_Module, "elm_wdg_item_part_text_custom_get");
+    private static  System.String part_text_custom_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_text_custom_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetPartTextCustom( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_part_text_custom_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static elm_wdg_item_part_text_custom_get_delegate elm_wdg_item_part_text_custom_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_part_text_custom_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+
+
+    public delegate  void elm_wdg_item_part_text_custom_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_custom_set_api_delegate> elm_wdg_item_part_text_custom_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_custom_set_api_delegate>(_Module, "elm_wdg_item_part_text_custom_set");
+    private static  void part_text_custom_set(System.IntPtr obj, System.IntPtr pd,   System.String part,   System.String label)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_text_custom_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetPartTextCustom( part,  label);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_wdg_item_part_text_custom_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  label);
+      }
+   }
+   private static elm_wdg_item_part_text_custom_set_delegate elm_wdg_item_part_text_custom_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_wdg_item_focus_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_wdg_item_focus_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_focus_get_api_delegate> elm_wdg_item_focus_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_focus_get_api_delegate>(_Module, "elm_wdg_item_focus_get");
+    private static bool item_focus_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_focus_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GetItemFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_focus_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_focus_get_delegate elm_wdg_item_focus_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_focus_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool focused);
+
+
+    public delegate  void elm_wdg_item_focus_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool focused);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_focus_set_api_delegate> elm_wdg_item_focus_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_focus_set_api_delegate>(_Module, "elm_wdg_item_focus_set");
+    private static  void item_focus_set(System.IntPtr obj, System.IntPtr pd,  bool focused)
+   {
+      Eina.Log.Debug("function elm_wdg_item_focus_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetItemFocus( focused);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_focus_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  focused);
+      }
+   }
+   private static elm_wdg_item_focus_set_delegate elm_wdg_item_focus_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String elm_wdg_item_style_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String elm_wdg_item_style_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_style_get_api_delegate> elm_wdg_item_style_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_style_get_api_delegate>(_Module, "elm_wdg_item_style_get");
+    private static  System.String style_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_style_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetStyle();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_style_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_style_get_delegate elm_wdg_item_style_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_style_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+
+
+    public delegate  void elm_wdg_item_style_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String style);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_style_set_api_delegate> elm_wdg_item_style_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_style_set_api_delegate>(_Module, "elm_wdg_item_style_set");
+    private static  void style_set(System.IntPtr obj, System.IntPtr pd,   System.String style)
+   {
+      Eina.Log.Debug("function elm_wdg_item_style_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetStyle( style);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_style_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  style);
+      }
+   }
+   private static elm_wdg_item_style_set_delegate elm_wdg_item_style_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool elm_wdg_item_disabled_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool elm_wdg_item_disabled_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_disabled_get_api_delegate> elm_wdg_item_disabled_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_disabled_get_api_delegate>(_Module, "elm_wdg_item_disabled_get");
+    private static bool disabled_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_disabled_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GetDisabled();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_disabled_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_disabled_get_delegate elm_wdg_item_disabled_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_disabled_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool disable);
+
+
+    public delegate  void elm_wdg_item_disabled_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool disable);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_disabled_set_api_delegate> elm_wdg_item_disabled_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_disabled_set_api_delegate>(_Module, "elm_wdg_item_disabled_set");
+    private static  void disabled_set(System.IntPtr obj, System.IntPtr pd,  bool disable)
+   {
+      Eina.Log.Debug("function elm_wdg_item_disabled_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetDisabled( disable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_disabled_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  disable);
+      }
+   }
+   private static elm_wdg_item_disabled_set_delegate elm_wdg_item_disabled_set_static_delegate;
+
+
+    private delegate  System.IntPtr elm_wdg_item_access_order_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr elm_wdg_item_access_order_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_access_order_get_api_delegate> elm_wdg_item_access_order_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_access_order_get_api_delegate>(_Module, "elm_wdg_item_access_order_get");
+    private static  System.IntPtr access_order_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_access_order_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Canvas.Object> _ret_var = default(Eina.List<Efl.Canvas.Object>);
+         try {
+            _ret_var = ((Item)wrapper).GetAccessOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return elm_wdg_item_access_order_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_access_order_get_delegate elm_wdg_item_access_order_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_access_order_set_delegate(System.IntPtr obj, System.IntPtr pd,    System.IntPtr objs);
+
+
+    public delegate  void elm_wdg_item_access_order_set_api_delegate(System.IntPtr obj,    System.IntPtr objs);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_access_order_set_api_delegate> elm_wdg_item_access_order_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_access_order_set_api_delegate>(_Module, "elm_wdg_item_access_order_set");
+    private static  void access_order_set(System.IntPtr obj, System.IntPtr pd,   System.IntPtr objs)
+   {
+      Eina.Log.Debug("function elm_wdg_item_access_order_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_objs = new Eina.List<Efl.Canvas.Object>(objs, true, false);
+                     
+         try {
+            ((Item)wrapper).SetAccessOrder( _in_objs);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_access_order_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  objs);
+      }
+   }
+   private static elm_wdg_item_access_order_set_delegate elm_wdg_item_access_order_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object elm_wdg_item_widget_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object elm_wdg_item_widget_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_widget_get_api_delegate> elm_wdg_item_widget_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_widget_get_api_delegate>(_Module, "elm_wdg_item_widget_get");
+    private static Efl.Canvas.Object widget_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_widget_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Item)wrapper).GetWidget();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_widget_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_widget_get_delegate elm_wdg_item_widget_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_pre_notify_del_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_pre_notify_del_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_pre_notify_del_api_delegate> elm_wdg_item_pre_notify_del_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_pre_notify_del_api_delegate>(_Module, "elm_wdg_item_pre_notify_del");
+    private static  void pre_notify_del(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_pre_notify_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).DelPreNotify();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_pre_notify_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_pre_notify_del_delegate elm_wdg_item_pre_notify_del_static_delegate;
+
+
+    private delegate  void elm_wdg_item_tooltip_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void elm_wdg_item_tooltip_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_text_set_api_delegate> elm_wdg_item_tooltip_text_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_text_set_api_delegate>(_Module, "elm_wdg_item_tooltip_text_set");
+    private static  void tooltip_text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetTooltipText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_tooltip_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static elm_wdg_item_tooltip_text_set_delegate elm_wdg_item_tooltip_text_set_static_delegate;
+
+
+    private delegate  void elm_wdg_item_tooltip_translatable_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+
+
+    public delegate  void elm_wdg_item_tooltip_translatable_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String text);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_translatable_text_set_api_delegate> elm_wdg_item_tooltip_translatable_text_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_translatable_text_set_api_delegate>(_Module, "elm_wdg_item_tooltip_translatable_text_set");
+    private static  void tooltip_translatable_text_set(System.IntPtr obj, System.IntPtr pd,   System.String text)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_translatable_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetTooltipTranslatableText( text);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_tooltip_translatable_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  text);
+      }
+   }
+   private static elm_wdg_item_tooltip_translatable_text_set_delegate elm_wdg_item_tooltip_translatable_text_set_static_delegate;
+
+
+    private delegate  void elm_wdg_item_tooltip_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_tooltip_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_unset_api_delegate> elm_wdg_item_tooltip_unset_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_unset_api_delegate>(_Module, "elm_wdg_item_tooltip_unset");
+    private static  void tooltip_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).UnsetTooltip();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_tooltip_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_tooltip_unset_delegate elm_wdg_item_tooltip_unset_static_delegate;
+
+
+    private delegate  void elm_wdg_item_cursor_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_cursor_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_unset_api_delegate> elm_wdg_item_cursor_unset_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_cursor_unset_api_delegate>(_Module, "elm_wdg_item_cursor_unset");
+    private static  void cursor_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_cursor_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).UnsetCursor();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_cursor_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_cursor_unset_delegate elm_wdg_item_cursor_unset_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object elm_wdg_item_part_content_unset_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object elm_wdg_item_part_content_unset_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_content_unset_api_delegate> elm_wdg_item_part_content_unset_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_content_unset_api_delegate>(_Module, "elm_wdg_item_part_content_unset");
+    private static Efl.Canvas.Object part_content_unset(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_content_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Item)wrapper).UnsetPartContent( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_part_content_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static elm_wdg_item_part_content_unset_delegate elm_wdg_item_part_content_unset_static_delegate;
+
+
+    private delegate  void elm_wdg_item_part_text_custom_update_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_part_text_custom_update_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_custom_update_api_delegate> elm_wdg_item_part_text_custom_update_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_part_text_custom_update_api_delegate>(_Module, "elm_wdg_item_part_text_custom_update");
+    private static  void part_text_custom_update(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_part_text_custom_update was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).UpdatePartTextCustom();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_part_text_custom_update_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_part_text_custom_update_delegate elm_wdg_item_part_text_custom_update_static_delegate;
+
+
+    private delegate  void elm_wdg_item_signal_callback_add_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,   ElmObjectItemSignalCb func,    System.IntPtr data);
+
+
+    public delegate  void elm_wdg_item_signal_callback_add_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,   ElmObjectItemSignalCb func,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_signal_callback_add_api_delegate> elm_wdg_item_signal_callback_add_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_signal_callback_add_api_delegate>(_Module, "elm_wdg_item_signal_callback_add");
+    private static  void signal_callback_add(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source,  ElmObjectItemSignalCb func,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function elm_wdg_item_signal_callback_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                                          
+         try {
+            ((Item)wrapper).AddSignalCallback( emission,  source,  func,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                            } else {
+         elm_wdg_item_signal_callback_add_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source,  func,  data);
+      }
+   }
+   private static elm_wdg_item_signal_callback_add_delegate elm_wdg_item_signal_callback_add_static_delegate;
+
+
+    private delegate  System.IntPtr elm_wdg_item_signal_callback_del_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,   ElmObjectItemSignalCb func);
+
+
+    public delegate  System.IntPtr elm_wdg_item_signal_callback_del_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source,   ElmObjectItemSignalCb func);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_signal_callback_del_api_delegate> elm_wdg_item_signal_callback_del_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_signal_callback_del_api_delegate>(_Module, "elm_wdg_item_signal_callback_del");
+    private static  System.IntPtr signal_callback_del(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source,  ElmObjectItemSignalCb func)
+   {
+      Eina.Log.Debug("function elm_wdg_item_signal_callback_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                         System.IntPtr _ret_var = default( System.IntPtr);
+         try {
+            _ret_var = ((Item)wrapper).DelSignalCallback( emission,  source,  func);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return elm_wdg_item_signal_callback_del_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source,  func);
+      }
+   }
+   private static elm_wdg_item_signal_callback_del_delegate elm_wdg_item_signal_callback_del_static_delegate;
+
+
+    private delegate  void elm_wdg_item_signal_emit_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+
+
+    public delegate  void elm_wdg_item_signal_emit_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String emission,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String source);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_signal_emit_api_delegate> elm_wdg_item_signal_emit_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_signal_emit_api_delegate>(_Module, "elm_wdg_item_signal_emit");
+    private static  void signal_emit(System.IntPtr obj, System.IntPtr pd,   System.String emission,   System.String source)
+   {
+      Eina.Log.Debug("function elm_wdg_item_signal_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).EmitSignal( emission,  source);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_wdg_item_signal_emit_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  emission,  source);
+      }
+   }
+   private static elm_wdg_item_signal_emit_delegate elm_wdg_item_signal_emit_static_delegate;
+
+
+    private delegate  void elm_wdg_item_access_info_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String txt);
+
+
+    public delegate  void elm_wdg_item_access_info_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String txt);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_access_info_set_api_delegate> elm_wdg_item_access_info_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_access_info_set_api_delegate>(_Module, "elm_wdg_item_access_info_set");
+    private static  void access_info_set(System.IntPtr obj, System.IntPtr pd,   System.String txt)
+   {
+      Eina.Log.Debug("function elm_wdg_item_access_info_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetAccessInfo( txt);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_access_info_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  txt);
+      }
+   }
+   private static elm_wdg_item_access_info_set_delegate elm_wdg_item_access_info_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object elm_wdg_item_access_object_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object elm_wdg_item_access_object_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_access_object_get_api_delegate> elm_wdg_item_access_object_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_access_object_get_api_delegate>(_Module, "elm_wdg_item_access_object_get");
+    private static Efl.Canvas.Object access_object_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_access_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Item)wrapper).GetAccessObject();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_access_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_access_object_get_delegate elm_wdg_item_access_object_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_domain_translatable_part_text_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+
+
+    public delegate  void elm_wdg_item_domain_translatable_part_text_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String label);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_domain_translatable_part_text_set_api_delegate> elm_wdg_item_domain_translatable_part_text_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_domain_translatable_part_text_set_api_delegate>(_Module, "elm_wdg_item_domain_translatable_part_text_set");
+    private static  void domain_translatable_part_text_set(System.IntPtr obj, System.IntPtr pd,   System.String part,   System.String domain,   System.String label)
+   {
+      Eina.Log.Debug("function elm_wdg_item_domain_translatable_part_text_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Item)wrapper).SetDomainTranslatablePartText( part,  domain,  label);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         elm_wdg_item_domain_translatable_part_text_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  domain,  label);
+      }
+   }
+   private static elm_wdg_item_domain_translatable_part_text_set_delegate elm_wdg_item_domain_translatable_part_text_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String elm_wdg_item_translatable_part_text_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String elm_wdg_item_translatable_part_text_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_translatable_part_text_get_api_delegate> elm_wdg_item_translatable_part_text_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_translatable_part_text_get_api_delegate>(_Module, "elm_wdg_item_translatable_part_text_get");
+    private static  System.String translatable_part_text_get(System.IntPtr obj, System.IntPtr pd,   System.String part)
+   {
+      Eina.Log.Debug("function elm_wdg_item_translatable_part_text_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetTranslatablePartText( part);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_translatable_part_text_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part);
+      }
+   }
+   private static elm_wdg_item_translatable_part_text_get_delegate elm_wdg_item_translatable_part_text_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_translate_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_translate_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_translate_api_delegate> elm_wdg_item_translate_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_translate_api_delegate>(_Module, "elm_wdg_item_translate");
+    private static  void translate(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_translate was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).Translate();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_translate_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_translate_delegate elm_wdg_item_translate_static_delegate;
+
+
+    private delegate  void elm_wdg_item_domain_part_text_translatable_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain,  [MarshalAs(UnmanagedType.U1)]  bool translatable);
+
+
+    public delegate  void elm_wdg_item_domain_part_text_translatable_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String part,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain,  [MarshalAs(UnmanagedType.U1)]  bool translatable);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_domain_part_text_translatable_set_api_delegate> elm_wdg_item_domain_part_text_translatable_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_domain_part_text_translatable_set_api_delegate>(_Module, "elm_wdg_item_domain_part_text_translatable_set");
+    private static  void domain_part_text_translatable_set(System.IntPtr obj, System.IntPtr pd,   System.String part,   System.String domain,  bool translatable)
+   {
+      Eina.Log.Debug("function elm_wdg_item_domain_part_text_translatable_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Item)wrapper).SetDomainPartTextTranslatable( part,  domain,  translatable);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         elm_wdg_item_domain_part_text_translatable_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  part,  domain,  translatable);
+      }
+   }
+   private static elm_wdg_item_domain_part_text_translatable_set_delegate elm_wdg_item_domain_part_text_translatable_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object elm_wdg_item_track_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object elm_wdg_item_track_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_track_api_delegate> elm_wdg_item_track_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_track_api_delegate>(_Module, "elm_wdg_item_track");
+    private static Efl.Canvas.Object track(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_track was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Item)wrapper).Track();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_track_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_track_delegate elm_wdg_item_track_static_delegate;
+
+
+    private delegate  void elm_wdg_item_untrack_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_untrack_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_untrack_api_delegate> elm_wdg_item_untrack_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_untrack_api_delegate>(_Module, "elm_wdg_item_untrack");
+    private static  void untrack(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_untrack was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).Untrack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_untrack_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_untrack_delegate elm_wdg_item_untrack_static_delegate;
+
+
+    private delegate  int elm_wdg_item_track_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int elm_wdg_item_track_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_track_get_api_delegate> elm_wdg_item_track_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_track_get_api_delegate>(_Module, "elm_wdg_item_track_get");
+    private static  int track_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_track_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Item)wrapper).GetTrack();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_track_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_track_get_delegate elm_wdg_item_track_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_track_cancel_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_track_cancel_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_track_cancel_api_delegate> elm_wdg_item_track_cancel_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_track_cancel_api_delegate>(_Module, "elm_wdg_item_track_cancel");
+    private static  void track_cancel(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_track_cancel was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).TrackCancel();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_track_cancel_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_track_cancel_delegate elm_wdg_item_track_cancel_static_delegate;
+
+
+    private delegate  void elm_wdg_item_del_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   EvasSmartCb del_cb);
+
+
+    public delegate  void elm_wdg_item_del_cb_set_api_delegate(System.IntPtr obj,   EvasSmartCb del_cb);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_del_cb_set_api_delegate> elm_wdg_item_del_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_del_cb_set_api_delegate>(_Module, "elm_wdg_item_del_cb_set");
+    private static  void del_cb_set(System.IntPtr obj, System.IntPtr pd,  EvasSmartCb del_cb)
+   {
+      Eina.Log.Debug("function elm_wdg_item_del_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetDelCb( del_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         elm_wdg_item_del_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  del_cb);
+      }
+   }
+   private static elm_wdg_item_del_cb_set_delegate elm_wdg_item_del_cb_set_static_delegate;
+
+
+    private delegate  void elm_wdg_item_tooltip_content_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   ElmTooltipItemContentCb func,    System.IntPtr data,   EvasSmartCb del_cb);
+
+
+    public delegate  void elm_wdg_item_tooltip_content_cb_set_api_delegate(System.IntPtr obj,   ElmTooltipItemContentCb func,    System.IntPtr data,   EvasSmartCb del_cb);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_content_cb_set_api_delegate> elm_wdg_item_tooltip_content_cb_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_tooltip_content_cb_set_api_delegate>(_Module, "elm_wdg_item_tooltip_content_cb_set");
+    private static  void tooltip_content_cb_set(System.IntPtr obj, System.IntPtr pd,  ElmTooltipItemContentCb func,   System.IntPtr data,  EvasSmartCb del_cb)
+   {
+      Eina.Log.Debug("function elm_wdg_item_tooltip_content_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        
+         try {
+            ((Item)wrapper).SetTooltipContentCb( func,  data,  del_cb);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         elm_wdg_item_tooltip_content_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  func,  data,  del_cb);
+      }
+   }
+   private static elm_wdg_item_tooltip_content_cb_set_delegate elm_wdg_item_tooltip_content_cb_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object elm_wdg_item_access_register_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object elm_wdg_item_access_register_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_access_register_api_delegate> elm_wdg_item_access_register_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_access_register_api_delegate>(_Module, "elm_wdg_item_access_register");
+    private static Efl.Canvas.Object access_register(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_access_register was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Item)wrapper).AccessRegister();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_wdg_item_access_register_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_access_register_delegate elm_wdg_item_access_register_static_delegate;
+
+
+    private delegate  void elm_wdg_item_access_unregister_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_access_unregister_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_access_unregister_api_delegate> elm_wdg_item_access_unregister_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_access_unregister_api_delegate>(_Module, "elm_wdg_item_access_unregister");
+    private static  void access_unregister(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_access_unregister was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).AccessUnregister();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_access_unregister_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_access_unregister_delegate elm_wdg_item_access_unregister_static_delegate;
+
+
+    private delegate  void elm_wdg_item_access_order_unset_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_access_order_unset_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_access_order_unset_api_delegate> elm_wdg_item_access_order_unset_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_access_order_unset_api_delegate>(_Module, "elm_wdg_item_access_order_unset");
+    private static  void access_order_unset(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_access_order_unset was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).UnsetAccessOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_access_order_unset_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_access_order_unset_delegate elm_wdg_item_access_order_unset_static_delegate;
+
+
+    private delegate  void elm_wdg_item_disable_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_disable_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_disable_api_delegate> elm_wdg_item_disable_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_disable_api_delegate>(_Module, "elm_wdg_item_disable");
+    private static  void disable(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_disable was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).Disable();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_disable_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_disable_delegate elm_wdg_item_disable_static_delegate;
+
+
+    private delegate  void elm_wdg_item_del_pre_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void elm_wdg_item_del_pre_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_del_pre_api_delegate> elm_wdg_item_del_pre_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_del_pre_api_delegate>(_Module, "elm_wdg_item_del_pre");
+    private static  void del_pre(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_wdg_item_del_pre was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).DelPre();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         elm_wdg_item_del_pre_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_wdg_item_del_pre_delegate elm_wdg_item_del_pre_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Canvas.Object elm_wdg_item_focus_next_object_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction dir);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Canvas.Object elm_wdg_item_focus_next_object_get_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_object_get_api_delegate> elm_wdg_item_focus_next_object_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_object_get_api_delegate>(_Module, "elm_wdg_item_focus_next_object_get");
+    private static Efl.Canvas.Object focus_next_object_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function elm_wdg_item_focus_next_object_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Efl.Canvas.Object _ret_var = default(Efl.Canvas.Object);
+         try {
+            _ret_var = ((Item)wrapper).GetFocusNextObject( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_focus_next_object_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static elm_wdg_item_focus_next_object_get_delegate elm_wdg_item_focus_next_object_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_focus_next_object_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object next,   Efl.Ui.Focus.Direction dir);
+
+
+    public delegate  void elm_wdg_item_focus_next_object_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Canvas.Object, Efl.Eo.NonOwnTag>))]  Efl.Canvas.Object next,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_object_set_api_delegate> elm_wdg_item_focus_next_object_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_object_set_api_delegate>(_Module, "elm_wdg_item_focus_next_object_set");
+    private static  void focus_next_object_set(System.IntPtr obj, System.IntPtr pd,  Efl.Canvas.Object next,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function elm_wdg_item_focus_next_object_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetFocusNextObject( next,  dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_wdg_item_focus_next_object_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  next,  dir);
+      }
+   }
+   private static elm_wdg_item_focus_next_object_set_delegate elm_wdg_item_focus_next_object_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))] private delegate Elm.Widget.Item elm_wdg_item_focus_next_item_get_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Ui.Focus.Direction dir);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))] public delegate Elm.Widget.Item elm_wdg_item_focus_next_item_get_api_delegate(System.IntPtr obj,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_item_get_api_delegate> elm_wdg_item_focus_next_item_get_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_item_get_api_delegate>(_Module, "elm_wdg_item_focus_next_item_get");
+    private static Elm.Widget.Item focus_next_item_get(System.IntPtr obj, System.IntPtr pd,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function elm_wdg_item_focus_next_item_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Elm.Widget.Item _ret_var = default(Elm.Widget.Item);
+         try {
+            _ret_var = ((Item)wrapper).GetFocusNextItem( dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return elm_wdg_item_focus_next_item_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  dir);
+      }
+   }
+   private static elm_wdg_item_focus_next_item_get_delegate elm_wdg_item_focus_next_item_get_static_delegate;
+
+
+    private delegate  void elm_wdg_item_focus_next_item_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  Elm.Widget.Item next_item,   Efl.Ui.Focus.Direction dir);
+
+
+    public delegate  void elm_wdg_item_focus_next_item_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))]  Elm.Widget.Item next_item,   Efl.Ui.Focus.Direction dir);
+    public static Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_item_set_api_delegate> elm_wdg_item_focus_next_item_set_ptr = new Efl.Eo.FunctionWrapper<elm_wdg_item_focus_next_item_set_api_delegate>(_Module, "elm_wdg_item_focus_next_item_set");
+    private static  void focus_next_item_set(System.IntPtr obj, System.IntPtr pd,  Elm.Widget.Item next_item,  Efl.Ui.Focus.Direction dir)
+   {
+      Eina.Log.Debug("function elm_wdg_item_focus_next_item_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetFocusNextItem( next_item,  dir);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         elm_wdg_item_focus_next_item_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  next_item,  dir);
+      }
+   }
+   private static elm_wdg_item_focus_next_item_set_delegate elm_wdg_item_focus_next_item_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate> efl_access_action_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_name_get_api_delegate>(_Module, "efl_access_action_name_get");
+    private static  System.String action_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetActionName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_name_get_delegate efl_access_action_name_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_action_localized_name_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_action_localized_name_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate> efl_access_action_localized_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_localized_name_get_api_delegate>(_Module, "efl_access_action_localized_name_get");
+    private static  System.String action_localized_name_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_localized_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetActionLocalizedName( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_localized_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_localized_name_get_delegate efl_access_action_localized_name_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_action_actions_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_action_actions_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate> efl_access_action_actions_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_actions_get_api_delegate>(_Module, "efl_access_action_actions_get");
+    private static  System.IntPtr actions_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_action_actions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.ActionData> _ret_var = default(Eina.List<Efl.Access.ActionData>);
+         try {
+            _ret_var = ((Item)wrapper).GetActions();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var.Handle;
+      } else {
+         return efl_access_action_actions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_action_actions_get_delegate efl_access_action_actions_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_action_do_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_action_do_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate> efl_access_action_do_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_do_api_delegate>(_Module, "efl_access_action_do");
+    private static bool action_do(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_do was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).ActionDo( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_do_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_do_delegate efl_access_action_do_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] private delegate  System.String efl_access_action_keybinding_get_delegate(System.IntPtr obj, System.IntPtr pd,    int id);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringPassOwnershipMarshaler))] public delegate  System.String efl_access_action_keybinding_get_api_delegate(System.IntPtr obj,    int id);
+    public static Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate> efl_access_action_keybinding_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_action_keybinding_get_api_delegate>(_Module, "efl_access_action_keybinding_get");
+    private static  System.String action_keybinding_get(System.IntPtr obj, System.IntPtr pd,   int id)
+   {
+      Eina.Log.Debug("function efl_access_action_keybinding_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                     System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetActionKeybinding( id);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_action_keybinding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  id);
+      }
+   }
+   private static efl_access_action_keybinding_get_delegate efl_access_action_keybinding_get_static_delegate;
+
+
+    private delegate  int efl_access_component_z_order_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_component_z_order_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_z_order_get_api_delegate> efl_access_component_z_order_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_z_order_get_api_delegate>(_Module, "efl_access_component_z_order_get");
+    private static  int z_order_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_z_order_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Item)wrapper).GetZOrder();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_z_order_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_z_order_get_delegate efl_access_component_z_order_get_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_access_component_extents_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords);
+
+
+    public delegate Eina.Rect_StructInternal efl_access_component_extents_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_extents_get_api_delegate> efl_access_component_extents_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_extents_get_api_delegate>(_Module, "efl_access_component_extents_get");
+    private static Eina.Rect_StructInternal extents_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords)
+   {
+      Eina.Log.Debug("function efl_access_component_extents_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Item)wrapper).GetExtents( screen_coords);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_access_component_extents_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords);
+      }
+   }
+   private static efl_access_component_extents_get_delegate efl_access_component_extents_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_extents_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_extents_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_extents_set_api_delegate> efl_access_component_extents_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_extents_set_api_delegate>(_Module, "efl_access_component_extents_set");
+    private static bool extents_set(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_access_component_extents_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                                 bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).SetExtents( screen_coords,  _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_component_extents_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  rect);
+      }
+   }
+   private static efl_access_component_extents_set_delegate efl_access_component_extents_set_static_delegate;
+
+
+    private delegate  void efl_access_component_screen_position_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void efl_access_component_screen_position_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_screen_position_get_api_delegate> efl_access_component_screen_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_screen_position_get_api_delegate>(_Module, "efl_access_component_screen_position_get");
+    private static  void screen_position_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function efl_access_component_screen_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((Item)wrapper).GetScreenPosition( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_screen_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_access_component_screen_position_get_delegate efl_access_component_screen_position_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_screen_position_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_screen_position_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_screen_position_set_api_delegate> efl_access_component_screen_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_screen_position_set_api_delegate>(_Module, "efl_access_component_screen_position_set");
+    private static bool screen_position_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_screen_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).SetScreenPosition( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_component_screen_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_access_component_screen_position_set_delegate efl_access_component_screen_position_set_static_delegate;
+
+
+    private delegate  void efl_access_component_socket_offset_get_delegate(System.IntPtr obj, System.IntPtr pd,   out  int x,   out  int y);
+
+
+    public delegate  void efl_access_component_socket_offset_get_api_delegate(System.IntPtr obj,   out  int x,   out  int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_get_api_delegate> efl_access_component_socket_offset_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_get_api_delegate>(_Module, "efl_access_component_socket_offset_get");
+    private static  void socket_offset_get(System.IntPtr obj, System.IntPtr pd,  out  int x,  out  int y)
+   {
+      Eina.Log.Debug("function efl_access_component_socket_offset_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                           x = default( int);      y = default( int);                     
+         try {
+            ((Item)wrapper).GetSocketOffset( out x,  out y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_socket_offset_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  out x,  out y);
+      }
+   }
+   private static efl_access_component_socket_offset_get_delegate efl_access_component_socket_offset_get_static_delegate;
+
+
+    private delegate  void efl_access_component_socket_offset_set_delegate(System.IntPtr obj, System.IntPtr pd,    int x,    int y);
+
+
+    public delegate  void efl_access_component_socket_offset_set_api_delegate(System.IntPtr obj,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_set_api_delegate> efl_access_component_socket_offset_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_socket_offset_set_api_delegate>(_Module, "efl_access_component_socket_offset_set");
+    private static  void socket_offset_set(System.IntPtr obj, System.IntPtr pd,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_socket_offset_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetSocketOffset( x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_component_socket_offset_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  x,  y);
+      }
+   }
+   private static efl_access_component_socket_offset_set_delegate efl_access_component_socket_offset_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_contains_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_contains_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_contains_api_delegate> efl_access_component_contains_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_contains_api_delegate>(_Module, "efl_access_component_contains");
+    private static bool contains(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_contains was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).Contains( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_component_contains_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_component_contains_delegate efl_access_component_contains_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_focus_grab_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_focus_grab_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_focus_grab_api_delegate> efl_access_component_focus_grab_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_focus_grab_api_delegate>(_Module, "efl_access_component_focus_grab");
+    private static bool focus_grab(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_focus_grab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GrabFocus();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_focus_grab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_focus_grab_delegate efl_access_component_focus_grab_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_component_accessible_at_point_get_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_component_accessible_at_point_get_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool screen_coords,    int x,    int y);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_accessible_at_point_get_api_delegate> efl_access_component_accessible_at_point_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_accessible_at_point_get_api_delegate>(_Module, "efl_access_component_accessible_at_point_get");
+    private static Efl.Object accessible_at_point_get(System.IntPtr obj, System.IntPtr pd,  bool screen_coords,   int x,   int y)
+   {
+      Eina.Log.Debug("function efl_access_component_accessible_at_point_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                                        Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = ((Item)wrapper).GetAccessibleAtPoint( screen_coords,  x,  y);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                          return _ret_var;
+      } else {
+         return efl_access_component_accessible_at_point_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  screen_coords,  x,  y);
+      }
+   }
+   private static efl_access_component_accessible_at_point_get_delegate efl_access_component_accessible_at_point_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_highlight_grab_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_highlight_grab_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_highlight_grab_api_delegate> efl_access_component_highlight_grab_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_highlight_grab_api_delegate>(_Module, "efl_access_component_highlight_grab");
+    private static bool highlight_grab(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_highlight_grab was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GrabHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_highlight_grab_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_highlight_grab_delegate efl_access_component_highlight_grab_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_component_highlight_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_component_highlight_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_component_highlight_clear_api_delegate> efl_access_component_highlight_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_component_highlight_clear_api_delegate>(_Module, "efl_access_component_highlight_clear");
+    private static bool highlight_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_component_highlight_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).ClearHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_component_highlight_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_component_highlight_clear_delegate efl_access_component_highlight_clear_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_localized_role_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_localized_role_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_localized_role_name_get_api_delegate> efl_access_object_localized_role_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_localized_role_name_get_api_delegate>(_Module, "efl_access_object_localized_role_name_get");
+    private static  System.String localized_role_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_localized_role_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetLocalizedRoleName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_localized_role_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_localized_role_name_get_delegate efl_access_object_localized_role_name_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_i18n_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_i18n_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_get_api_delegate> efl_access_object_i18n_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_get_api_delegate>(_Module, "efl_access_object_i18n_name_get");
+    private static  System.String i18n_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_i18n_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetI18nName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_i18n_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_i18n_name_get_delegate efl_access_object_i18n_name_get_static_delegate;
+
+
+    private delegate  void efl_access_object_i18n_name_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String i18n_name);
+
+
+    public delegate  void efl_access_object_i18n_name_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String i18n_name);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_set_api_delegate> efl_access_object_i18n_name_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_i18n_name_set_api_delegate>(_Module, "efl_access_object_i18n_name_set");
+    private static  void i18n_name_set(System.IntPtr obj, System.IntPtr pd,   System.String i18n_name)
+   {
+      Eina.Log.Debug("function efl_access_object_i18n_name_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetI18nName( i18n_name);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_i18n_name_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  i18n_name);
+      }
+   }
+   private static efl_access_object_i18n_name_set_delegate efl_access_object_i18n_name_set_static_delegate;
+
+
+    private delegate  void efl_access_object_name_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoCb name_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_name_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoCb name_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_name_cb_set_api_delegate> efl_access_object_name_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_name_cb_set_api_delegate>(_Module, "efl_access_object_name_cb_set");
+    private static  void name_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoCb name_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_name_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetNameCb( name_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_name_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  name_cb,  data);
+      }
+   }
+   private static efl_access_object_name_cb_set_delegate efl_access_object_name_cb_set_static_delegate;
+
+
+    private delegate Efl.Access.RelationSet efl_access_object_relation_set_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.RelationSet efl_access_object_relation_set_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relation_set_get_api_delegate> efl_access_object_relation_set_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relation_set_get_api_delegate>(_Module, "efl_access_object_relation_set_get");
+    private static Efl.Access.RelationSet relation_set_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_relation_set_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.RelationSet _ret_var = default(Efl.Access.RelationSet);
+         try {
+            _ret_var = ((Item)wrapper).GetRelationSet();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_relation_set_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_relation_set_get_delegate efl_access_object_relation_set_get_static_delegate;
+
+
+    private delegate Efl.Access.Role efl_access_object_role_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.Role efl_access_object_role_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_get_api_delegate> efl_access_object_role_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_get_api_delegate>(_Module, "efl_access_object_role_get");
+    private static Efl.Access.Role role_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_role_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.Role _ret_var = default(Efl.Access.Role);
+         try {
+            _ret_var = ((Item)wrapper).GetRole();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_role_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_role_get_delegate efl_access_object_role_get_static_delegate;
+
+
+    private delegate  void efl_access_object_role_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.Role role);
+
+
+    public delegate  void efl_access_object_role_set_api_delegate(System.IntPtr obj,   Efl.Access.Role role);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_set_api_delegate> efl_access_object_role_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_set_api_delegate>(_Module, "efl_access_object_role_set");
+    private static  void role_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Role role)
+   {
+      Eina.Log.Debug("function efl_access_object_role_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetRole( role);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_role_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  role);
+      }
+   }
+   private static efl_access_object_role_set_delegate efl_access_object_role_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Access.Object efl_access_object_access_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Access.Object efl_access_object_access_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_parent_get_api_delegate> efl_access_object_access_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_parent_get_api_delegate>(_Module, "efl_access_object_access_parent_get");
+    private static Efl.Access.Object access_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.Object _ret_var = default(Efl.Access.Object);
+         try {
+            _ret_var = ((Item)wrapper).GetAccessParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_access_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_access_parent_get_delegate efl_access_object_access_parent_get_static_delegate;
+
+
+    private delegate  void efl_access_object_access_parent_set_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object parent);
+
+
+    public delegate  void efl_access_object_access_parent_set_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object parent);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_parent_set_api_delegate> efl_access_object_access_parent_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_parent_set_api_delegate>(_Module, "efl_access_object_access_parent_set");
+    private static  void access_parent_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Object parent)
+   {
+      Eina.Log.Debug("function efl_access_object_access_parent_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetAccessParent( parent);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_access_parent_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  parent);
+      }
+   }
+   private static efl_access_object_access_parent_set_delegate efl_access_object_access_parent_set_static_delegate;
+
+
+    private delegate  void efl_access_object_description_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoCb description_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_description_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoCb description_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_cb_set_api_delegate> efl_access_object_description_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_cb_set_api_delegate>(_Module, "efl_access_object_description_cb_set");
+    private static  void description_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoCb description_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_description_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetDescriptionCb( description_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_description_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  description_cb,  data);
+      }
+   }
+   private static efl_access_object_description_cb_set_delegate efl_access_object_description_cb_set_static_delegate;
+
+
+    private delegate  void efl_access_object_gesture_cb_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.GestureCb gesture_cb,    System.IntPtr data);
+
+
+    public delegate  void efl_access_object_gesture_cb_set_api_delegate(System.IntPtr obj,   Efl.Access.GestureCb gesture_cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_gesture_cb_set_api_delegate> efl_access_object_gesture_cb_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_gesture_cb_set_api_delegate>(_Module, "efl_access_object_gesture_cb_set");
+    private static  void gesture_cb_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.GestureCb gesture_cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_gesture_cb_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).SetGestureCb( gesture_cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_gesture_cb_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gesture_cb,  data);
+      }
+   }
+   private static efl_access_object_gesture_cb_set_delegate efl_access_object_gesture_cb_set_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_object_access_children_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_object_access_children_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_children_get_api_delegate> efl_access_object_access_children_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_children_get_api_delegate>(_Module, "efl_access_object_access_children_get");
+    private static  System.IntPtr access_children_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_children_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.Object> _ret_var = default(Eina.List<Efl.Access.Object>);
+         try {
+            _ret_var = ((Item)wrapper).GetAccessChildren();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; return _ret_var.Handle;
+      } else {
+         return efl_access_object_access_children_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_access_children_get_delegate efl_access_object_access_children_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_role_name_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_role_name_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_role_name_get_api_delegate> efl_access_object_role_name_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_role_name_get_api_delegate>(_Module, "efl_access_object_role_name_get");
+    private static  System.String role_name_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_role_name_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetRoleName();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_role_name_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_role_name_get_delegate efl_access_object_role_name_get_static_delegate;
+
+
+    private delegate  System.IntPtr efl_access_object_attributes_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  System.IntPtr efl_access_object_attributes_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attributes_get_api_delegate> efl_access_object_attributes_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attributes_get_api_delegate>(_Module, "efl_access_object_attributes_get");
+    private static  System.IntPtr attributes_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_attributes_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.List<Efl.Access.Attribute> _ret_var = default(Eina.List<Efl.Access.Attribute>);
+         try {
+            _ret_var = ((Item)wrapper).GetAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      _ret_var.Own = false; _ret_var.OwnContent = false; return _ret_var.Handle;
+      } else {
+         return efl_access_object_attributes_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_attributes_get_delegate efl_access_object_attributes_get_static_delegate;
+
+
+    private delegate Efl.Access.ReadingInfoTypeMask efl_access_object_reading_info_type_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.ReadingInfoTypeMask efl_access_object_reading_info_type_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_get_api_delegate> efl_access_object_reading_info_type_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_get_api_delegate>(_Module, "efl_access_object_reading_info_type_get");
+    private static Efl.Access.ReadingInfoTypeMask reading_info_type_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_reading_info_type_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.ReadingInfoTypeMask _ret_var = default(Efl.Access.ReadingInfoTypeMask);
+         try {
+            _ret_var = ((Item)wrapper).GetReadingInfoType();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_reading_info_type_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_reading_info_type_get_delegate efl_access_object_reading_info_type_get_static_delegate;
+
+
+    private delegate  void efl_access_object_reading_info_type_set_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.ReadingInfoTypeMask reading_info);
+
+
+    public delegate  void efl_access_object_reading_info_type_set_api_delegate(System.IntPtr obj,   Efl.Access.ReadingInfoTypeMask reading_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_set_api_delegate> efl_access_object_reading_info_type_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_reading_info_type_set_api_delegate>(_Module, "efl_access_object_reading_info_type_set");
+    private static  void reading_info_type_set(System.IntPtr obj, System.IntPtr pd,  Efl.Access.ReadingInfoTypeMask reading_info)
+   {
+      Eina.Log.Debug("function efl_access_object_reading_info_type_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetReadingInfoType( reading_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_reading_info_type_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  reading_info);
+      }
+   }
+   private static efl_access_object_reading_info_type_set_delegate efl_access_object_reading_info_type_set_static_delegate;
+
+
+    private delegate  int efl_access_object_index_in_parent_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  int efl_access_object_index_in_parent_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_index_in_parent_get_api_delegate> efl_access_object_index_in_parent_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_index_in_parent_get_api_delegate>(_Module, "efl_access_object_index_in_parent_get");
+    private static  int index_in_parent_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_index_in_parent_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   int _ret_var = default( int);
+         try {
+            _ret_var = ((Item)wrapper).GetIndexInParent();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_index_in_parent_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_index_in_parent_get_delegate efl_access_object_index_in_parent_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_description_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_description_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_get_api_delegate> efl_access_object_description_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_get_api_delegate>(_Module, "efl_access_object_description_get");
+    private static  System.String description_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_description_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetDescription();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_description_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_description_get_delegate efl_access_object_description_get_static_delegate;
+
+
+    private delegate  void efl_access_object_description_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String description);
+
+
+    public delegate  void efl_access_object_description_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String description);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_description_set_api_delegate> efl_access_object_description_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_description_set_api_delegate>(_Module, "efl_access_object_description_set");
+    private static  void description_set(System.IntPtr obj, System.IntPtr pd,   System.String description)
+   {
+      Eina.Log.Debug("function efl_access_object_description_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetDescription( description);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_description_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  description);
+      }
+   }
+   private static efl_access_object_description_set_delegate efl_access_object_description_set_static_delegate;
+
+
+    private delegate Efl.Access.StateSet efl_access_object_state_set_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.StateSet efl_access_object_state_set_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_state_set_get_api_delegate> efl_access_object_state_set_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_state_set_get_api_delegate>(_Module, "efl_access_object_state_set_get");
+    private static Efl.Access.StateSet state_set_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_state_set_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.StateSet _ret_var = default(Efl.Access.StateSet);
+         try {
+            _ret_var = ((Item)wrapper).GetStateSet();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_state_set_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_state_set_get_delegate efl_access_object_state_set_get_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_can_highlight_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_can_highlight_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_get_api_delegate> efl_access_object_can_highlight_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_get_api_delegate>(_Module, "efl_access_object_can_highlight_get");
+    private static bool can_highlight_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_can_highlight_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GetCanHighlight();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_can_highlight_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_can_highlight_get_delegate efl_access_object_can_highlight_get_static_delegate;
+
+
+    private delegate  void efl_access_object_can_highlight_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool can_highlight);
+
+
+    public delegate  void efl_access_object_can_highlight_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool can_highlight);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_set_api_delegate> efl_access_object_can_highlight_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_can_highlight_set_api_delegate>(_Module, "efl_access_object_can_highlight_set");
+    private static  void can_highlight_set(System.IntPtr obj, System.IntPtr pd,  bool can_highlight)
+   {
+      Eina.Log.Debug("function efl_access_object_can_highlight_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetCanHighlight( can_highlight);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_can_highlight_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  can_highlight);
+      }
+   }
+   private static efl_access_object_can_highlight_set_delegate efl_access_object_can_highlight_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] private delegate  System.String efl_access_object_translation_domain_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))] public delegate  System.String efl_access_object_translation_domain_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_get_api_delegate> efl_access_object_translation_domain_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_get_api_delegate>(_Module, "efl_access_object_translation_domain_get");
+    private static  System.String translation_domain_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_translation_domain_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   System.String _ret_var = default( System.String);
+         try {
+            _ret_var = ((Item)wrapper).GetTranslationDomain();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_translation_domain_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_translation_domain_get_delegate efl_access_object_translation_domain_get_static_delegate;
+
+
+    private delegate  void efl_access_object_translation_domain_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+
+
+    public delegate  void efl_access_object_translation_domain_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String domain);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_set_api_delegate> efl_access_object_translation_domain_set_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_translation_domain_set_api_delegate>(_Module, "efl_access_object_translation_domain_set");
+    private static  void translation_domain_set(System.IntPtr obj, System.IntPtr pd,   System.String domain)
+   {
+      Eina.Log.Debug("function efl_access_object_translation_domain_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetTranslationDomain( domain);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_translation_domain_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  domain);
+      }
+   }
+   private static efl_access_object_translation_domain_set_delegate efl_access_object_translation_domain_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] private delegate Efl.Object efl_access_object_access_root_get_delegate();
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Object, Efl.Eo.NonOwnTag>))] public delegate Efl.Object efl_access_object_access_root_get_api_delegate();
+    public static Efl.Eo.FunctionWrapper<efl_access_object_access_root_get_api_delegate> efl_access_object_access_root_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_access_root_get_api_delegate>(_Module, "efl_access_object_access_root_get");
+    private static Efl.Object access_root_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_access_root_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Object _ret_var = default(Efl.Object);
+         try {
+            _ret_var = Item.GetAccessRoot();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_object_access_root_get_ptr.Value.Delegate();
+      }
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_gesture_do_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.GestureInfo_StructInternal gesture_info);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_gesture_do_api_delegate(System.IntPtr obj,   Efl.Access.GestureInfo_StructInternal gesture_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_gesture_do_api_delegate> efl_access_object_gesture_do_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_gesture_do_api_delegate>(_Module, "efl_access_object_gesture_do");
+    private static bool gesture_do(System.IntPtr obj, System.IntPtr pd,  Efl.Access.GestureInfo_StructInternal gesture_info)
+   {
+      Eina.Log.Debug("function efl_access_object_gesture_do was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_gesture_info = Efl.Access.GestureInfo_StructConversion.ToManaged(gesture_info);
+                     bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GestureDo( _in_gesture_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                  return _ret_var;
+      } else {
+         return efl_access_object_gesture_do_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  gesture_info);
+      }
+   }
+   private static efl_access_object_gesture_do_delegate efl_access_object_gesture_do_static_delegate;
+
+
+    private delegate  void efl_access_object_attribute_append_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+
+
+    public delegate  void efl_access_object_attribute_append_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String key,  [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.StringKeepOwnershipMarshaler))]   System.String value);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attribute_append_api_delegate> efl_access_object_attribute_append_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attribute_append_api_delegate>(_Module, "efl_access_object_attribute_append");
+    private static  void attribute_append(System.IntPtr obj, System.IntPtr pd,   System.String key,   System.String value)
+   {
+      Eina.Log.Debug("function efl_access_object_attribute_append was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).AppendAttribute( key,  value);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_attribute_append_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  key,  value);
+      }
+   }
+   private static efl_access_object_attribute_append_delegate efl_access_object_attribute_append_static_delegate;
+
+
+    private delegate  void efl_access_object_attributes_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_access_object_attributes_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_attributes_clear_api_delegate> efl_access_object_attributes_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_attributes_clear_api_delegate>(_Module, "efl_access_object_attributes_clear");
+    private static  void attributes_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_attributes_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).ClearAttributes();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_access_object_attributes_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_attributes_clear_delegate efl_access_object_attributes_clear_static_delegate;
+
+
+    private delegate Efl.Access.Event.Handler efl_access_object_event_handler_add_delegate(  Efl.EventCb cb,    System.IntPtr data);
+
+
+    public delegate Efl.Access.Event.Handler efl_access_object_event_handler_add_api_delegate(  Efl.EventCb cb,    System.IntPtr data);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_handler_add_api_delegate> efl_access_object_event_handler_add_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_handler_add_api_delegate>(_Module, "efl_access_object_event_handler_add");
+    private static Efl.Access.Event.Handler event_handler_add(System.IntPtr obj, System.IntPtr pd,  Efl.EventCb cb,   System.IntPtr data)
+   {
+      Eina.Log.Debug("function efl_access_object_event_handler_add was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      Efl.Access.Event.Handler _ret_var = default(Efl.Access.Event.Handler);
+         try {
+            _ret_var = Item.AddEventHandler( cb,  data);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_object_event_handler_add_ptr.Value.Delegate( cb,  data);
+      }
+   }
+
+
+    private delegate  void efl_access_object_event_handler_del_delegate(  Efl.Access.Event.Handler handler);
+
+
+    public delegate  void efl_access_object_event_handler_del_api_delegate(  Efl.Access.Event.Handler handler);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_handler_del_api_delegate> efl_access_object_event_handler_del_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_handler_del_api_delegate>(_Module, "efl_access_object_event_handler_del");
+    private static  void event_handler_del(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Event.Handler handler)
+   {
+      Eina.Log.Debug("function efl_access_object_event_handler_del was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            Item.DelEventHandler( handler);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_access_object_event_handler_del_ptr.Value.Delegate( handler);
+      }
+   }
+
+
+    private delegate  void efl_access_object_event_emit_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object accessible,    System.IntPtr kw_event,    System.IntPtr event_info);
+
+
+    public delegate  void efl_access_object_event_emit_api_delegate([MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object accessible,    System.IntPtr kw_event,    System.IntPtr event_info);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_event_emit_api_delegate> efl_access_object_event_emit_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_event_emit_api_delegate>(_Module, "efl_access_object_event_emit");
+    private static  void event_emit(System.IntPtr obj, System.IntPtr pd,  Efl.Access.Object accessible,   System.IntPtr kw_event,   System.IntPtr event_info)
+   {
+      Eina.Log.Debug("function efl_access_object_event_emit was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                     var _in_kw_event = Eina.PrimitiveConversion.PointerToManaged<Efl.EventDescription>(kw_event);
+                                                   
+         try {
+            Item.EmitEvent( accessible,  _in_kw_event,  event_info);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                                } else {
+         efl_access_object_event_emit_ptr.Value.Delegate( accessible,  kw_event,  event_info);
+      }
+   }
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_access_object_relationship_append_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_access_object_relationship_append_api_delegate(System.IntPtr obj,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationship_append_api_delegate> efl_access_object_relationship_append_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationship_append_api_delegate>(_Module, "efl_access_object_relationship_append");
+    private static bool relationship_append(System.IntPtr obj, System.IntPtr pd,  Efl.Access.RelationType type,  Efl.Access.Object relation_object)
+   {
+      Eina.Log.Debug("function efl_access_object_relationship_append was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).AppendRelationship( type,  relation_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                              return _ret_var;
+      } else {
+         return efl_access_object_relationship_append_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  relation_object);
+      }
+   }
+   private static efl_access_object_relationship_append_delegate efl_access_object_relationship_append_static_delegate;
+
+
+    private delegate  void efl_access_object_relationship_remove_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+
+
+    public delegate  void efl_access_object_relationship_remove_api_delegate(System.IntPtr obj,   Efl.Access.RelationType type, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Access.ObjectConcrete, Efl.Eo.NonOwnTag>))]  Efl.Access.Object relation_object);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationship_remove_api_delegate> efl_access_object_relationship_remove_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationship_remove_api_delegate>(_Module, "efl_access_object_relationship_remove");
+    private static  void relationship_remove(System.IntPtr obj, System.IntPtr pd,  Efl.Access.RelationType type,  Efl.Access.Object relation_object)
+   {
+      Eina.Log.Debug("function efl_access_object_relationship_remove was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).RelationshipRemove( type,  relation_object);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_relationship_remove_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  type,  relation_object);
+      }
+   }
+   private static efl_access_object_relationship_remove_delegate efl_access_object_relationship_remove_static_delegate;
+
+
+    private delegate  void efl_access_object_relationships_clear_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_access_object_relationships_clear_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_relationships_clear_api_delegate> efl_access_object_relationships_clear_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_relationships_clear_api_delegate>(_Module, "efl_access_object_relationships_clear");
+    private static  void relationships_clear(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_object_relationships_clear was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).ClearRelationships();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_access_object_relationships_clear_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_object_relationships_clear_delegate efl_access_object_relationships_clear_static_delegate;
+
+
+    private delegate  void efl_access_object_state_notify_delegate(System.IntPtr obj, System.IntPtr pd,   Efl.Access.StateSet state_types_mask,  [MarshalAs(UnmanagedType.U1)]  bool recursive);
+
+
+    public delegate  void efl_access_object_state_notify_api_delegate(System.IntPtr obj,   Efl.Access.StateSet state_types_mask,  [MarshalAs(UnmanagedType.U1)]  bool recursive);
+    public static Efl.Eo.FunctionWrapper<efl_access_object_state_notify_api_delegate> efl_access_object_state_notify_ptr = new Efl.Eo.FunctionWrapper<efl_access_object_state_notify_api_delegate>(_Module, "efl_access_object_state_notify");
+    private static  void state_notify(System.IntPtr obj, System.IntPtr pd,  Efl.Access.StateSet state_types_mask,  bool recursive)
+   {
+      Eina.Log.Debug("function efl_access_object_state_notify was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                                      
+         try {
+            ((Item)wrapper).StateNotify( state_types_mask,  recursive);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                                    } else {
+         efl_access_object_state_notify_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  state_types_mask,  recursive);
+      }
+   }
+   private static efl_access_object_state_notify_delegate efl_access_object_state_notify_static_delegate;
+
+
+    private delegate Efl.Access.ActionData efl_access_widget_action_elm_actions_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Efl.Access.ActionData efl_access_widget_action_elm_actions_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_access_widget_action_elm_actions_get_api_delegate> efl_access_widget_action_elm_actions_get_ptr = new Efl.Eo.FunctionWrapper<efl_access_widget_action_elm_actions_get_api_delegate>(_Module, "efl_access_widget_action_elm_actions_get");
+    private static Efl.Access.ActionData elm_actions_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_access_widget_action_elm_actions_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Access.ActionData _ret_var = default(Efl.Access.ActionData);
+         try {
+            _ret_var = ((Item)wrapper).GetElmActions();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_access_widget_action_elm_actions_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_access_widget_action_elm_actions_get_delegate efl_access_widget_action_elm_actions_get_static_delegate;
+
+
+    private delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Position2D_StructInternal efl_gfx_entity_position_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate> efl_gfx_entity_position_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_get_api_delegate>(_Module, "efl_gfx_entity_position_get");
+    private static Eina.Position2D_StructInternal position_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Position2D _ret_var = default(Eina.Position2D);
+         try {
+            _ret_var = ((Item)wrapper).GetPosition();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Position2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_position_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_position_get_delegate efl_gfx_entity_position_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_position_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Position2D_StructInternal pos);
+
+
+    public delegate  void efl_gfx_entity_position_set_api_delegate(System.IntPtr obj,   Eina.Position2D_StructInternal pos);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate> efl_gfx_entity_position_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_position_set_api_delegate>(_Module, "efl_gfx_entity_position_set");
+    private static  void position_set(System.IntPtr obj, System.IntPtr pd,  Eina.Position2D_StructInternal pos)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_position_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_pos = Eina.Position2D_StructConversion.ToManaged(pos);
+                     
+         try {
+            ((Item)wrapper).SetPosition( _in_pos);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_position_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  pos);
+      }
+   }
+   private static efl_gfx_entity_position_set_delegate efl_gfx_entity_position_set_static_delegate;
+
+
+    private delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Size2D_StructInternal efl_gfx_entity_size_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate> efl_gfx_entity_size_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_get_api_delegate>(_Module, "efl_gfx_entity_size_get");
+    private static Eina.Size2D_StructInternal size_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Size2D _ret_var = default(Eina.Size2D);
+         try {
+            _ret_var = ((Item)wrapper).GetSize();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Size2D_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_size_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_size_get_delegate efl_gfx_entity_size_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_size_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Size2D_StructInternal size);
+
+
+    public delegate  void efl_gfx_entity_size_set_api_delegate(System.IntPtr obj,   Eina.Size2D_StructInternal size);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate> efl_gfx_entity_size_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_size_set_api_delegate>(_Module, "efl_gfx_entity_size_set");
+    private static  void size_set(System.IntPtr obj, System.IntPtr pd,  Eina.Size2D_StructInternal size)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_size_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_size = Eina.Size2D_StructConversion.ToManaged(size);
+                     
+         try {
+            ((Item)wrapper).SetSize( _in_size);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_size_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  size);
+      }
+   }
+   private static efl_gfx_entity_size_set_delegate efl_gfx_entity_size_set_static_delegate;
+
+
+    private delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate Eina.Rect_StructInternal efl_gfx_entity_geometry_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate> efl_gfx_entity_geometry_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_get_api_delegate>(_Module, "efl_gfx_entity_geometry_get");
+    private static Eina.Rect_StructInternal geometry_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Eina.Rect _ret_var = default(Eina.Rect);
+         try {
+            _ret_var = ((Item)wrapper).GetGeometry();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return Eina.Rect_StructConversion.ToInternal(_ret_var);
+      } else {
+         return efl_gfx_entity_geometry_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_geometry_get_delegate efl_gfx_entity_geometry_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_geometry_set_delegate(System.IntPtr obj, System.IntPtr pd,   Eina.Rect_StructInternal rect);
+
+
+    public delegate  void efl_gfx_entity_geometry_set_api_delegate(System.IntPtr obj,   Eina.Rect_StructInternal rect);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate> efl_gfx_entity_geometry_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_geometry_set_api_delegate>(_Module, "efl_gfx_entity_geometry_set");
+    private static  void geometry_set(System.IntPtr obj, System.IntPtr pd,  Eina.Rect_StructInternal rect)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_geometry_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+               var _in_rect = Eina.Rect_StructConversion.ToManaged(rect);
+                     
+         try {
+            ((Item)wrapper).SetGeometry( _in_rect);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_geometry_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  rect);
+      }
+   }
+   private static efl_gfx_entity_geometry_set_delegate efl_gfx_entity_geometry_set_static_delegate;
+
+
+    [return: MarshalAs(UnmanagedType.U1)] private delegate bool efl_gfx_entity_visible_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    [return: MarshalAs(UnmanagedType.U1)] public delegate bool efl_gfx_entity_visible_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate> efl_gfx_entity_visible_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_get_api_delegate>(_Module, "efl_gfx_entity_visible_get");
+    private static bool visible_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  bool _ret_var = default(bool);
+         try {
+            _ret_var = ((Item)wrapper).GetVisible();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_visible_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_visible_get_delegate efl_gfx_entity_visible_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_visible_set_delegate(System.IntPtr obj, System.IntPtr pd,  [MarshalAs(UnmanagedType.U1)]  bool v);
+
+
+    public delegate  void efl_gfx_entity_visible_set_api_delegate(System.IntPtr obj,  [MarshalAs(UnmanagedType.U1)]  bool v);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate> efl_gfx_entity_visible_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_visible_set_api_delegate>(_Module, "efl_gfx_entity_visible_set");
+    private static  void visible_set(System.IntPtr obj, System.IntPtr pd,  bool v)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_visible_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetVisible( v);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_visible_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  v);
+      }
+   }
+   private static efl_gfx_entity_visible_set_delegate efl_gfx_entity_visible_set_static_delegate;
+
+
+    private delegate double efl_gfx_entity_scale_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate double efl_gfx_entity_scale_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate> efl_gfx_entity_scale_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_get_api_delegate>(_Module, "efl_gfx_entity_scale_get");
+    private static double scale_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  double _ret_var = default(double);
+         try {
+            _ret_var = ((Item)wrapper).GetScale();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_entity_scale_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_entity_scale_get_delegate efl_gfx_entity_scale_get_static_delegate;
+
+
+    private delegate  void efl_gfx_entity_scale_set_delegate(System.IntPtr obj, System.IntPtr pd,   double scale);
+
+
+    public delegate  void efl_gfx_entity_scale_set_api_delegate(System.IntPtr obj,   double scale);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate> efl_gfx_entity_scale_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_entity_scale_set_api_delegate>(_Module, "efl_gfx_entity_scale_set");
+    private static  void scale_set(System.IntPtr obj, System.IntPtr pd,  double scale)
+   {
+      Eina.Log.Debug("function efl_gfx_entity_scale_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetScale( scale);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_entity_scale_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  scale);
+      }
+   }
+   private static efl_gfx_entity_scale_set_delegate efl_gfx_entity_scale_set_static_delegate;
+
+
+    private delegate  short efl_gfx_stack_layer_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  short efl_gfx_stack_layer_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate> efl_gfx_stack_layer_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_get_api_delegate>(_Module, "efl_gfx_stack_layer_get");
+    private static  short layer_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                   short _ret_var = default( short);
+         try {
+            _ret_var = ((Item)wrapper).GetLayer();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_layer_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_layer_get_delegate efl_gfx_stack_layer_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_layer_set_delegate(System.IntPtr obj, System.IntPtr pd,    short l);
+
+
+    public delegate  void efl_gfx_stack_layer_set_api_delegate(System.IntPtr obj,    short l);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate> efl_gfx_stack_layer_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_layer_set_api_delegate>(_Module, "efl_gfx_stack_layer_set");
+    private static  void layer_set(System.IntPtr obj, System.IntPtr pd,   short l)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_layer_set was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).SetLayer( l);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_layer_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  l);
+      }
+   }
+   private static efl_gfx_stack_layer_set_delegate efl_gfx_stack_layer_set_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_below_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_below_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate> efl_gfx_stack_below_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_get_api_delegate>(_Module, "efl_gfx_stack_below_get");
+    private static Efl.Gfx.Stack below_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Item)wrapper).GetBelow();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_below_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_below_get_delegate efl_gfx_stack_below_get_static_delegate;
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] private delegate Efl.Gfx.Stack efl_gfx_stack_above_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))] public delegate Efl.Gfx.Stack efl_gfx_stack_above_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate> efl_gfx_stack_above_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_get_api_delegate>(_Module, "efl_gfx_stack_above_get");
+    private static Efl.Gfx.Stack above_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Efl.Gfx.Stack _ret_var = default(Efl.Gfx.Stack);
+         try {
+            _ret_var = ((Item)wrapper).GetAbove();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return efl_gfx_stack_above_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_above_get_delegate efl_gfx_stack_above_get_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_below_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+
+
+    public delegate  void efl_gfx_stack_below_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack below);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate> efl_gfx_stack_below_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_below_api_delegate>(_Module, "efl_gfx_stack_below");
+    private static  void stack_below(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack below)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_below was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).StackBelow( below);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_below_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  below);
+      }
+   }
+   private static efl_gfx_stack_below_delegate efl_gfx_stack_below_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_raise_to_top_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_raise_to_top_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate> efl_gfx_stack_raise_to_top_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_raise_to_top_api_delegate>(_Module, "efl_gfx_stack_raise_to_top");
+    private static  void raise_to_top(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_raise_to_top was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).RaiseToTop();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_raise_to_top_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_raise_to_top_delegate efl_gfx_stack_raise_to_top_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_above_delegate(System.IntPtr obj, System.IntPtr pd, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+
+
+    public delegate  void efl_gfx_stack_above_api_delegate(System.IntPtr obj, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Efl.Gfx.StackConcrete, Efl.Eo.NonOwnTag>))]  Efl.Gfx.Stack above);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate> efl_gfx_stack_above_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_above_api_delegate>(_Module, "efl_gfx_stack_above");
+    private static  void stack_above(System.IntPtr obj, System.IntPtr pd,  Efl.Gfx.Stack above)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_above was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                                    
+         try {
+            ((Item)wrapper).StackAbove( above);
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+                        } else {
+         efl_gfx_stack_above_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)),  above);
+      }
+   }
+   private static efl_gfx_stack_above_delegate efl_gfx_stack_above_static_delegate;
+
+
+    private delegate  void efl_gfx_stack_lower_to_bottom_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+    public delegate  void efl_gfx_stack_lower_to_bottom_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate> efl_gfx_stack_lower_to_bottom_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_stack_lower_to_bottom_api_delegate>(_Module, "efl_gfx_stack_lower_to_bottom");
+    private static  void lower_to_bottom(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function efl_gfx_stack_lower_to_bottom was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  
+         try {
+            ((Item)wrapper).LowerToBottom();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+            } else {
+         efl_gfx_stack_lower_to_bottom_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static efl_gfx_stack_lower_to_bottom_delegate efl_gfx_stack_lower_to_bottom_static_delegate;
+}
+} } 
diff --git a/internals/src/EflSharp/EflSharp/elm_widget_item_container.eo.cs b/internals/src/EflSharp/EflSharp/elm_widget_item_container.eo.cs
new file mode 100755 (executable)
index 0000000..5661ce2
--- /dev/null
@@ -0,0 +1,154 @@
+#pragma warning disable CS1591
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Linq;
+using System.ComponentModel;
+namespace Elm { 
+/// <summary></summary>
+[WidgetItemContainerNativeInherit]
+public interface WidgetItemContainer : 
+   Efl.Eo.IWrapper, IDisposable
+{
+   /// <summary>Get the focused widget item.</summary>
+/// <returns>Focused item</returns>
+Elm.Widget.Item GetFocusedItem();
+      /// <summary>Get the focused widget item.</summary>
+/// <value>Focused item</value>
+   Elm.Widget.Item FocusedItem {
+      get ;
+   }
+}
+/// <summary></summary>
+sealed public class WidgetItemContainerConcrete : 
+
+WidgetItemContainer
+   
+{
+   ///<summary>Pointer to the native class description.</summary>
+   public System.IntPtr NativeClass {
+      get {
+         if (((object)this).GetType() == typeof (WidgetItemContainerConcrete))
+            return Elm.WidgetItemContainerNativeInherit.GetEflClassStatic();
+         else
+            return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
+      }
+   }
+   private  System.IntPtr handle;
+   ///<summary>Pointer to the native instance.</summary>
+   public System.IntPtr NativeHandle {
+      get { return handle; }
+   }
+   [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
+      elm_widget_item_container_interface_get();
+   ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
+   public WidgetItemContainerConcrete(System.IntPtr raw)
+   {
+      handle = raw;
+      register_event_proxies();
+   }
+   ///<summary>Destructor.</summary>
+   ~WidgetItemContainerConcrete()
+   {
+      Dispose(false);
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   void Dispose(bool disposing)
+   {
+      if (handle != System.IntPtr.Zero) {
+         Efl.Eo.Globals.efl_unref(handle);
+         handle = System.IntPtr.Zero;
+      }
+   }
+   ///<summary>Releases the underlying native instance.</summary>
+   public void Dispose()
+   {
+      Dispose(true);
+      GC.SuppressFinalize(this);
+   }
+   ///<summary>Casts obj into an instance of this type.</summary>
+   public static WidgetItemContainerConcrete static_cast(Efl.Object obj)
+   {
+      if (obj == null)
+         throw new System.ArgumentNullException("obj");
+      return new WidgetItemContainerConcrete(obj.NativeHandle);
+   }
+   ///<summary>Verifies if the given object is equal to this one.</summary>
+   public override bool Equals(object obj)
+   {
+      var other = obj as Efl.Object;
+      if (other == null)
+         return false;
+      return this.NativeHandle == other.NativeHandle;
+   }
+   ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
+   public override int GetHashCode()
+   {
+      return this.NativeHandle.ToInt32();
+   }
+   ///<summary>Turns the native pointer into a string representation.</summary>
+   public override String ToString()
+   {
+      return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
+   }
+    void register_event_proxies()
+   {
+   }
+   /// <summary>Get the focused widget item.</summary>
+   /// <returns>Focused item</returns>
+   public Elm.Widget.Item GetFocusedItem() {
+       var _ret_var = Elm.WidgetItemContainerNativeInherit.elm_widget_item_container_focused_item_get_ptr.Value.Delegate(this.NativeHandle);
+      Eina.Error.RaiseIfUnhandledException();
+      return _ret_var;
+ }
+   /// <summary>Get the focused widget item.</summary>
+/// <value>Focused item</value>
+   public Elm.Widget.Item FocusedItem {
+      get { return GetFocusedItem(); }
+   }
+}
+public class WidgetItemContainerNativeInherit  : Efl.Eo.NativeClass{
+   public  static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
+   public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
+   {
+      var descs = new System.Collections.Generic.List<Efl_Op_Description>();
+      if (elm_widget_item_container_focused_item_get_static_delegate == null)
+      elm_widget_item_container_focused_item_get_static_delegate = new elm_widget_item_container_focused_item_get_delegate(focused_item_get);
+      descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(_Module.Module, "elm_widget_item_container_focused_item_get"), func = Marshal.GetFunctionPointerForDelegate(elm_widget_item_container_focused_item_get_static_delegate)});
+      return descs;
+   }
+   public override IntPtr GetEflClass()
+   {
+      return Elm.WidgetItemContainerConcrete.elm_widget_item_container_interface_get();
+   }
+   public static  IntPtr GetEflClassStatic()
+   {
+      return Elm.WidgetItemContainerConcrete.elm_widget_item_container_interface_get();
+   }
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))] private delegate Elm.Widget.Item elm_widget_item_container_focused_item_get_delegate(System.IntPtr obj, System.IntPtr pd);
+
+
+   [return:MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef=typeof(Efl.Eo.MarshalTest<Elm.Widget.Item, Efl.Eo.NonOwnTag>))] public delegate Elm.Widget.Item elm_widget_item_container_focused_item_get_api_delegate(System.IntPtr obj);
+    public static Efl.Eo.FunctionWrapper<elm_widget_item_container_focused_item_get_api_delegate> elm_widget_item_container_focused_item_get_ptr = new Efl.Eo.FunctionWrapper<elm_widget_item_container_focused_item_get_api_delegate>(_Module, "elm_widget_item_container_focused_item_get");
+    private static Elm.Widget.Item focused_item_get(System.IntPtr obj, System.IntPtr pd)
+   {
+      Eina.Log.Debug("function elm_widget_item_container_focused_item_get was called");
+      Efl.Eo.IWrapper wrapper = Efl.Eo.Globals.data_get(pd);
+      if(wrapper != null) {
+                  Elm.Widget.Item _ret_var = default(Elm.Widget.Item);
+         try {
+            _ret_var = ((WidgetItemContainer)wrapper).GetFocusedItem();
+         } catch (Exception e) {
+            Eina.Log.Warning($"Callback error: {e.ToString()}");
+            Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
+         }
+      return _ret_var;
+      } else {
+         return elm_widget_item_container_focused_item_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)));
+      }
+   }
+   private static elm_widget_item_container_focused_item_get_delegate elm_widget_item_container_focused_item_get_static_delegate;
+}
+} 
diff --git a/internals/src/EflSharp/EflSharp/iwrapper.cs b/internals/src/EflSharp/EflSharp/iwrapper.cs
new file mode 100755 (executable)
index 0000000..7444215
--- /dev/null
@@ -0,0 +1,955 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Threading;
+
+using static Eina.NativeCustomExportFunctions;
+using EoG = Efl.Eo.Globals;
+
+namespace Efl { namespace Eo {
+
+public class Globals {
+    [return: MarshalAs(UnmanagedType.U1)]
+    public delegate bool efl_object_init_delegate();
+    public static FunctionWrapper<efl_object_init_delegate> efl_object_init_ptr =
+        new FunctionWrapper<efl_object_init_delegate>(efl.Libs.EoModule, "efl_object_init");
+    public static bool efl_object_init() => efl_object_init_ptr.Value.Delegate();
+
+    public delegate void efl_object_shutdown_delegate();
+    public static FunctionWrapper<efl_object_shutdown_delegate> efl_object_shutdown_ptr = new FunctionWrapper<efl_object_shutdown_delegate>(efl.Libs.EoModule, "efl_object_shutdown");
+    public static void efl_object_shutdown() => efl_object_shutdown_ptr.Value.Delegate();
+    // [DllImport(efl.Libs.Eo)] public static extern void efl_object_shutdown();
+    public static FunctionWrapper<_efl_add_internal_start_delegate> _efl_add_internal_start_ptr = new FunctionWrapper<_efl_add_internal_start_delegate>(efl.Libs.EoModule, "_efl_add_internal_start");
+    public delegate  IntPtr
+        _efl_add_internal_start_delegate([MarshalAs(UnmanagedType.LPStr)] String file, int line,
+                                IntPtr klass, IntPtr parent, byte is_ref, byte is_fallback);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        _efl_add_internal_start([MarshalAs(UnmanagedType.LPStr)] String file, int line,
+                                IntPtr klass, IntPtr parent, byte is_ref, byte is_fallback);
+    public delegate  IntPtr
+        _efl_add_end_delegate(IntPtr eo, byte is_ref, byte is_fallback);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        _efl_add_end(IntPtr eo, byte is_ref, byte is_fallback);
+    public delegate  IntPtr
+        efl_ref_delegate(IntPtr eo);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_ref(IntPtr eo);
+    public delegate  void
+        efl_unref_delegate(IntPtr eo);
+    [DllImport(efl.Libs.CustomExports)] public static extern void
+        efl_unref(IntPtr eo);
+    public delegate  int
+        efl_ref_count_delegate(IntPtr eo);
+    [DllImport(efl.Libs.Eo)] public static extern int
+        efl_ref_count(IntPtr eo);
+
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_name_get(IntPtr eo);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr extn42, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr extn42, IntPtr extn43, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr extn42, IntPtr extn43, IntPtr extn44, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr extn42, IntPtr extn43, IntPtr extn44, IntPtr extn45, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr extn42, IntPtr extn43, IntPtr extn44, IntPtr extn45, IntPtr extn46, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr extn42, IntPtr extn43, IntPtr extn44, IntPtr extn45, IntPtr extn46, IntPtr extn47, IntPtr term);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_class_new(IntPtr class_description, IntPtr parent, IntPtr extn1, IntPtr extn2, IntPtr extn3, IntPtr extn4, IntPtr extn5, IntPtr extn6, IntPtr extn7, IntPtr extn8, IntPtr extn9, IntPtr extn10, IntPtr extn11, IntPtr extn12, IntPtr extn13, IntPtr extn14, IntPtr extn15, IntPtr extn16, IntPtr extn17, IntPtr extn18, IntPtr extn19, IntPtr extn20, IntPtr extn21, IntPtr extn22, IntPtr extn23, IntPtr extn24, IntPtr extn25, IntPtr extn26, IntPtr extn27, IntPtr extn28, IntPtr extn29, IntPtr extn30, IntPtr extn31, IntPtr extn32, IntPtr extn33, IntPtr extn34, IntPtr extn35, IntPtr extn36, IntPtr extn37, IntPtr extn38, IntPtr extn39, IntPtr extn40, IntPtr extn41, IntPtr extn42, IntPtr extn43, IntPtr extn44, IntPtr extn45, IntPtr extn46, IntPtr extn47, IntPtr extn48, IntPtr term);
+
+    public delegate  byte efl_class_functions_set_delegate(IntPtr klass_id, IntPtr object_ops, IntPtr class_ops);
+    [DllImport(efl.Libs.Eo)] public static extern byte efl_class_functions_set(IntPtr klass_id, IntPtr object_ops, IntPtr class_ops);
+    public delegate  IntPtr efl_data_scope_get_delegate(IntPtr obj, IntPtr klass);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr efl_data_scope_get(IntPtr obj, IntPtr klass);
+    public delegate  IntPtr efl_super_delegate(IntPtr obj, IntPtr klass);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr efl_super(IntPtr obj, IntPtr klass);
+    public delegate  IntPtr efl_class_get_delegate(IntPtr obj);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr efl_class_get(IntPtr obj);
+    public delegate  IntPtr dlerror_delegate();
+    [DllImport(efl.Libs.Evil)] public static extern IntPtr dlerror();
+
+    public delegate  bool efl_event_callback_priority_add_delegate(
+              System.IntPtr obj,
+              IntPtr desc,
+              short priority,
+              Efl.EventCb cb,
+              System.IntPtr data);
+    [DllImport(efl.Libs.Eo)] public static extern bool efl_event_callback_priority_add(
+              System.IntPtr obj,
+              IntPtr desc,
+              short priority,
+              Efl.EventCb cb,
+              System.IntPtr data);
+    public delegate  bool efl_event_callback_del_delegate(
+              System.IntPtr obj,
+              IntPtr desc,
+              Efl.EventCb cb,
+              System.IntPtr data);
+    [DllImport(efl.Libs.Eo)] public static extern bool efl_event_callback_del(
+              System.IntPtr obj,
+              IntPtr desc,
+              Efl.EventCb cb,
+              System.IntPtr data);
+    public delegate  IntPtr
+        efl_object_legacy_only_event_description_get_delegate([MarshalAs(UnmanagedType.LPStr)] String name);
+    [DllImport(efl.Libs.Eo)] public static extern IntPtr
+        efl_object_legacy_only_event_description_get([MarshalAs(UnmanagedType.LPStr)] String name);
+
+    public const int RTLD_NOW = 2;
+
+    public delegate byte class_initializer(IntPtr klass);
+
+    public static T GetParamHelper<T>(Nullable<T> v) where T : struct
+    {
+        return v.Value;
+    }
+    public static U GetParamHelper<U>(U v)
+    {
+        return v;
+    }
+    public static bool ParamHelperCheck<T>(Nullable<T> v) where T : struct
+    {
+        return v.HasValue;
+    }
+    public static bool ParamHelperCheck<U>(U v)
+    {
+        return v != null;
+    }
+
+    public static IntPtr register_class(String class_name, IntPtr base_klass, System.Type type)
+    {
+        ClassDescription description;
+        description.version = 2; // EO_VERSION
+        description.name = class_name;
+        description.class_type = 0; // REGULAR
+        description.data_size = (UIntPtr)8;
+        description.class_initializer = IntPtr.Zero;
+        description.class_constructor = IntPtr.Zero;
+        description.class_destructor = IntPtr.Zero;
+
+        class_initializer init = (IntPtr kls) =>
+            {
+                return Globals.class_initializer_call(kls, type);
+            };
+
+        description.class_initializer = Marshal.GetFunctionPointerForDelegate(init);
+
+        IntPtr description_ptr = Eina.MemoryNative.Alloc(Marshal.SizeOf(description));
+        Marshal.StructureToPtr(description, description_ptr, false);
+
+        var interface_list = EoG.get_efl_interfaces(type);
+
+        Eina.Log.Debug($"Going to register new class named {class_name}");
+        IntPtr klass = EoG.call_efl_class_new(description_ptr, base_klass, interface_list);
+        if(klass == IntPtr.Zero)
+            Eina.Log.Error("klass was not registered");
+        else
+            Eina.Log.Debug("Registered class successfully");
+        return klass;
+    }
+    public static List<IntPtr> get_efl_interfaces(System.Type type)
+    {
+        System.Type base_type = type.BaseType;
+
+        var ifaces_lst = new List<IntPtr>();
+        var base_ifaces = base_type.GetInterfaces();
+        var ifaces = type.GetInterfaces();
+        foreach (var iface in ifaces)
+        {
+            if (!System.Array.Exists(base_ifaces, element => element == iface))
+            {
+               var attrs = System.Attribute.GetCustomAttributes(iface);
+               foreach (var attr in attrs)
+               {
+                  if (attr is Efl.Eo.NativeClass) {
+                    ifaces_lst.Add(((Efl.Eo.NativeClass)attr).GetEflClass());
+                    break;
+                  }
+               }
+            }
+        }
+        return ifaces_lst;
+    }
+    private static Efl.Eo.NativeClass get_native_class(System.Type type)
+    {
+        var attrs = System.Attribute.GetCustomAttributes(type);
+        foreach (var attr in attrs)
+        {
+            if (attr is Efl.Eo.NativeClass) {
+                return (Efl.Eo.NativeClass)attr;
+            }
+        }
+        return null;
+    }
+    public static byte class_initializer_call(IntPtr klass, System.Type type)
+    {
+        Eina.Log.Debug($"called with 0x{klass.ToInt64():x} {type}");
+        Efl.Eo.NativeClass nativeClass = get_native_class(type.BaseType);
+
+        if (nativeClass != null)
+        {
+            Eina.Log.Debug("nativeClass != null");
+            var descs = nativeClass.GetEoOps(type);
+            var count = descs.Count;
+
+            var all_interfaces = type.GetInterfaces();
+            var base_interfaces = type.BaseType.GetInterfaces();
+            foreach (var iface in all_interfaces)
+            {
+                if (!System.Array.Exists(base_interfaces, element => element == iface))
+                {
+                    var nc = get_native_class(iface);
+                    if(nc != null)
+                    {
+                        var moredescs = nc.GetEoOps(type);
+                        Eina.Log.Debug($"adding {moredescs.Count} more descs to registration");
+                        descs.AddRange(moredescs);
+                        count = descs.Count;
+                    }
+                }
+            }
+
+            IntPtr descs_ptr = Marshal.AllocHGlobal(Marshal.SizeOf(descs[0])*count);
+            IntPtr ptr = descs_ptr;
+            for(int i = 0; i != count; ++i)
+            {
+               Marshal.StructureToPtr(descs[i], ptr, false);
+               ptr = IntPtr.Add(ptr, Marshal.SizeOf(descs[0]));
+            }
+            Efl_Object_Ops ops;
+            ops.descs = descs_ptr;
+            ops.count = (UIntPtr)count;
+            IntPtr ops_ptr = Marshal.AllocHGlobal(Marshal.SizeOf(ops));
+            Marshal.StructureToPtr(ops, ops_ptr, false);
+            Efl.Eo.Globals.efl_class_functions_set(klass, ops_ptr, IntPtr.Zero);
+            //EoKlass = klass;
+        }
+        else
+            Eina.Log.Debug("nativeClass == null");
+
+       return 1;
+    }
+    public static IntPtr call_efl_class_new(IntPtr desc, IntPtr bk, List<IntPtr> il = null)
+    {
+        IntPtr nul = IntPtr.Zero;
+        int iface_list_count = (il == null ? 0 : il.Count);
+        switch(iface_list_count)
+        {
+        default: return nul;
+        case  0: return EoG.efl_class_new(desc, bk, nul);
+        case  1: return EoG.efl_class_new(desc, bk, il[0], nul);
+        case  2: return EoG.efl_class_new(desc, bk, il[0], il[1], nul);
+        case  3: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], nul);
+        case  4: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], nul);
+        case  5: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], nul);
+        case  6: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], nul);
+        case  7: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], nul);
+        case  8: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], nul);
+        case  9: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], nul);
+        case 10: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], nul);
+        case 11: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], nul);
+        case 12: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], nul);
+        case 13: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], nul);
+        case 14: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], nul);
+        case 15: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], nul);
+        case 16: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], nul);
+        case 17: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], nul);
+        case 18: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], nul);
+        case 19: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], nul);
+        case 20: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], nul);
+        case 21: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], nul);
+        case 22: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], nul);
+        case 23: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], nul);
+        case 24: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], nul);
+        case 25: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], nul);
+        case 26: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], nul);
+        case 27: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], nul);
+        case 28: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], nul);
+        case 29: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], nul);
+        case 30: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], nul);
+        case 31: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], nul);
+        case 32: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], nul);
+        case 33: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], nul);
+        case 34: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], nul);
+        case 35: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], nul);
+        case 36: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], nul);
+        case 37: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], nul);
+        case 38: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], nul);
+        case 39: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], nul);
+        case 40: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], nul);
+        case 41: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], nul);
+        case 42: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], il[41], nul);
+        case 43: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], il[41], il[42], nul);
+        case 44: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], il[41], il[42], il[43], nul);
+        case 45: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], il[41], il[42], il[43], il[44], nul);
+        case 46: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], il[41], il[42], il[43], il[44], il[45], nul);
+        case 47: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], il[41], il[42], il[43], il[44], il[45], il[46], nul);
+        case 48: return EoG.efl_class_new(desc, bk, il[0], il[1], il[2], il[3], il[4], il[5], il[6], il[7], il[8], il[9], il[10], il[11], il[12], il[13], il[14], il[15], il[16], il[17], il[18], il[19], il[20], il[21], il[22], il[23], il[24], il[25], il[26], il[27], il[28], il[29], il[30], il[31], il[32], il[33], il[34], il[35], il[36], il[37], il[38], il[39], il[40], il[41], il[42], il[43], il[44], il[45], il[46], il[47], nul);
+        }
+    }
+    public static IntPtr instantiate_start(IntPtr klass, Efl.Object parent)
+    {
+        Eina.Log.Debug($"Instantiating from klass 0x{klass.ToInt64():x}");
+        System.IntPtr parent_ptr = System.IntPtr.Zero;
+        if(parent != null)
+            parent_ptr = parent.NativeHandle;
+
+        System.IntPtr eo = Efl.Eo.Globals._efl_add_internal_start("file", 0, klass, parent_ptr, 1, 0);
+        if (eo == System.IntPtr.Zero)
+        {
+            throw new Exception("Instantiation failed");
+        }
+
+        Eina.Log.Debug($"Eo instance right after internal_start 0x{eo.ToInt64():x} with refcount {Efl.Eo.Globals.efl_ref_count(eo)}");
+        Eina.Log.Debug($"Parent was 0x{parent_ptr.ToInt64()}");
+        return eo;
+    }
+
+    public static IntPtr instantiate_end(IntPtr eo) {
+        Eina.Log.Debug("calling efl_add_internal_end");
+        eo = Efl.Eo.Globals._efl_add_end(eo, 1, 0);
+        Eina.Log.Debug($"efl_add_end returned eo 0x{eo.ToInt64():x}");
+        return eo;
+    }
+    public static void data_set(Efl.Eo.IWrapper obj)
+    {
+      Eina.Log.Debug($"Calling data_scope_get with obj {obj.NativeHandle.ToInt64():x} and klass {obj.NativeClass.ToInt64():x}");
+      IntPtr pd = Efl.Eo.Globals.efl_data_scope_get(obj.NativeHandle, obj.NativeClass);
+      {
+          GCHandle gch = GCHandle.Alloc(obj);
+          EolianPD epd;
+          epd.pointer = GCHandle.ToIntPtr(gch);
+          Marshal.StructureToPtr(epd, pd, false);
+      }
+    }
+    public static Efl.Eo.IWrapper data_get(IntPtr pd)
+    {
+        EolianPD epd = (EolianPD)Marshal.PtrToStructure(pd, typeof(EolianPD));
+        if(epd.pointer != IntPtr.Zero)
+        {
+            GCHandle gch = GCHandle.FromIntPtr(epd.pointer);
+            return (Efl.Eo.IWrapper)gch.Target;
+        }
+        else
+            return null;
+    }
+
+    public static void free_dict_values(Dictionary<String, IntPtr> dict)
+    {
+        foreach(IntPtr ptr in dict.Values)
+        {
+            Eina.MemoryNative.Free(ptr);
+        }
+    }
+
+    public static void free_stringshare_values(Dictionary<String, IntPtr> dict)
+    {
+        foreach(IntPtr ptr in dict.Values)
+        {
+            Eina.Stringshare.eina_stringshare_del(ptr);
+        }
+    }
+
+    public static void free_gchandle(IntPtr ptr)
+    {
+        GCHandle handle = GCHandle.FromIntPtr(ptr);
+        handle.Free();
+    }
+
+    public static System.Threading.Tasks.Task<Eina.Value> WrapAsync(Eina.Future future, CancellationToken token)
+    {
+        // Creates a task that will wait for SetResult for completion.
+        // TaskCompletionSource is used to create tasks for 'external' Task sources.
+        var tcs = new System.Threading.Tasks.TaskCompletionSource<Eina.Value>();
+
+        // Flag to be passed to the cancell callback
+        bool fulfilled = false;
+
+        future.Then((Eina.Value received) => {
+                lock (future)
+                {
+                    // Convert an failed Future to a failed Task.
+                    if (received.GetValueType() == Eina.ValueType.Error)
+                    {
+                        Eina.Error err;
+                        received.Get(out err);
+                        if (err == Eina.Error.ECANCELED)
+                            tcs.SetCanceled();
+                        else
+                            tcs.TrySetException(new Efl.FutureException(received));
+                    }
+                    else
+                    {
+                        // Will mark the returned task below as completed.
+                        tcs.SetResult(received);
+                    }
+                    fulfilled = true;
+                    return received;
+                }
+        });
+        // Callback to be called when the token is cancelled.
+        token.Register(() => {
+                lock (future)
+                {
+                    // Will trigger the Then callback above with an Eina.Error
+                    if (!fulfilled)
+                        future.Cancel();
+                }
+        });
+
+        return tcs.Task;
+    }
+} // Globals
+
+public static class Config
+{
+    public static void Init()
+    {
+        Globals.efl_object_init();
+    }
+
+    public static void Shutdown()
+    {
+        Globals.efl_object_shutdown();
+    }
+}
+
+[System.AttributeUsage(System.AttributeTargets.Class |
+                       System.AttributeTargets.Interface,
+                       AllowMultiple = false,
+                       Inherited = true)
+]
+public abstract class NativeClass : System.Attribute
+{
+    public abstract IntPtr GetEflClass();
+    public abstract System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type);
+}
+
+public interface IWrapper
+{
+    /// <summary>Pointer to internal Eo instance.</summary>
+    IntPtr NativeHandle
+    {
+        get;
+    }
+    /// <summary>Pointer to internal Eo class.</summary>
+    IntPtr NativeClass
+    {
+        get;
+    }
+}
+
+public static class ClassRegister
+{
+    public static System.Type GetManagedType(IntPtr klass)
+    {
+        System.Type t;
+        if (Efl.Eo.ClassRegister.typeFromKlass.TryGetValue(klass, out t))
+            return t;
+
+        // If it isn't on the dictionary then it is a Native binding class
+        IntPtr namePtr = Efl.Eo.Globals.efl_class_name_get(klass);
+        if (namePtr == IntPtr.Zero) {
+            throw new System.InvalidOperationException($"Could not get Native class name. Handle: {klass}");
+        }
+
+        string name = Eina.StringConversion.NativeUtf8ToManagedString(namePtr)
+                      .Replace("_", ""); // Convert Efl C name to C# name
+
+        var curr_asm = typeof(IWrapper).Assembly;
+        t = curr_asm.GetType(name);
+        if (t == null)
+        {
+            foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
+            {
+                if (assembly == curr_asm)
+                    continue;
+
+                t = assembly.GetType(name);
+                if (t != null)
+                    break;
+            }
+            if (t == null) {
+                throw new System.InvalidOperationException($"Could not find the C# binding class for the EFL class: {name}");
+            }
+        }
+        AddToKlassTypeBiDictionary(klass, t); // Cache it in the dictionary
+        return t;
+    }
+
+    public static IntPtr GetKlass(System.Type objectType)
+    {
+        IntPtr klass;
+        if (klassFromType.TryGetValue(objectType, out klass))
+            return klass;
+
+        // Check if it is a Native binding class
+        klass = GetNativeKlassPtr(objectType);
+        if (klass != IntPtr.Zero) {
+            // Add to the dictionary cache
+            AddToKlassTypeBiDictionary(klass, objectType);
+            return klass;
+        }
+
+        // Unregistered Inherited class, let's register it
+        IntPtr baseKlass = GetNativeBaseKlassPtr(objectType);
+        if (baseKlass == IntPtr.Zero)
+            throw new System.InvalidOperationException($"Could not get base C# binding class for Inherited type: {objectType.FullName}");
+        return RegisterKlass(baseKlass, objectType);
+    }
+
+    public static IntPtr GetInheritKlassOrRegister(IntPtr baseKlass, System.Type objectType)
+    {
+        IntPtr klass;
+        if (klassFromType.TryGetValue(objectType, out klass))
+            return klass;
+
+        return RegisterKlass(baseKlass, objectType);
+    }
+
+    private static IntPtr RegisterKlass(IntPtr baseKlass, System.Type objectType)
+    {
+        lock (klassAllocLock) {
+            IntPtr newKlass = Efl.Eo.Globals.register_class(objectType.FullName, baseKlass, objectType);
+            if (newKlass == IntPtr.Zero) {
+                throw new System.InvalidOperationException($"Failed to register class '{objectType.FullName}'");
+            }
+            AddToKlassTypeBiDictionary(newKlass, objectType);
+            return newKlass;
+        }
+    }
+
+    private static IntPtr GetNativeBaseKlassPtr(System.Type objectType)
+    {
+        for (System.Type t = objectType.BaseType; t != null; t = t.BaseType)
+        {
+            var method = t.GetMethod("GetEflClassStatic",
+                                     System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic);
+            if (method != null)
+                return (IntPtr) method.Invoke(null, null);
+        }
+        throw new System.InvalidOperationException($"Class '{objectType.FullName}' is not an Efl object");
+    }
+
+    private static IntPtr GetNativeKlassPtr(System.Type objectType)
+    {
+        var method = objectType.GetMethod("GetEflClassStatic",
+                                          System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic);
+        return (IntPtr) method?.Invoke(null, null);
+    }
+
+    public static void AddToKlassTypeBiDictionary(IntPtr klassPtr, System.Type objectType)
+    {
+        klassFromType[objectType] = klassPtr;
+        typeFromKlass[klassPtr] = objectType;
+    }
+
+    public static System.Collections.Concurrent.ConcurrentDictionary<System.Type, System.IntPtr> klassFromType
+        = new System.Collections.Concurrent.ConcurrentDictionary<System.Type, System.IntPtr>();
+
+    public static System.Collections.Concurrent.ConcurrentDictionary<System.IntPtr, System.Type> typeFromKlass
+        = new System.Collections.Concurrent.ConcurrentDictionary<System.IntPtr, System.Type>();
+
+    private static readonly object klassAllocLock = new object();
+}
+
+public interface IOwnershipTag
+{
+}
+
+public class OwnTag : IOwnershipTag
+{
+}
+
+public class NonOwnTag : IOwnershipTag
+{
+}
+
+public class MarshalTest<T, U> : ICustomMarshaler
+    where U : IOwnershipTag
+{
+    public static ICustomMarshaler GetInstance(string cookie)
+    {
+        Eina.Log.Debug("MarshalTest.GetInstace cookie " + cookie);
+        return new MarshalTest<T, U>();
+    }
+    public void CleanUpManagedData(object ManagedObj)
+    {
+        //Eina.Log.Warning("MarshalTest.CleanUpManagedData not implemented");
+        //throw new NotImplementedException();
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData)
+    {
+        //Eina.Log.Warning("MarshalTest.CleanUpNativeData not implemented");
+        //throw new NotImplementedException();
+    }
+
+    public int GetNativeDataSize()
+    {
+        Eina.Log.Debug("MarshalTest.GetNativeDataSize");
+        return 0;
+        //return 8;
+    }
+
+    public IntPtr MarshalManagedToNative(object ManagedObj)
+    {
+        Eina.Log.Debug("MarshalTest.MarshallManagedToNative");
+        var r = ((IWrapper)ManagedObj).NativeHandle;
+        if (typeof(U) == typeof(OwnTag))
+            Efl.Eo.Globals.efl_ref(r);
+        return r;
+    }
+
+    public object MarshalNativeToManaged(IntPtr pNativeData)
+    {
+        Eina.Log.Debug("MarshalTest.MarshalNativeToManaged");
+        if (typeof(U) != typeof(OwnTag))
+            Efl.Eo.Globals.efl_ref(pNativeData);
+        return Activator.CreateInstance(typeof(T), new System.Object[] {pNativeData});
+//        return null;
+    }
+}
+
+///<summary>Marshals between System.Type instances and Eo classes (IntPtrs).</summary>
+public class MarshalEflClass : ICustomMarshaler
+{
+    public static ICustomMarshaler GetInstance(string cookie)
+    {
+        Eina.Log.Debug("MarshalTest.GetInstance cookie " + cookie);
+        return new MarshalEflClass();
+    }
+    public void CleanUpManagedData(object ManagedObj)
+    {
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData)
+    {
+    }
+
+    public int GetNativeDataSize()
+    {
+        Eina.Log.Debug("MarshalTest.GetNativeDataSize");
+        return 0;
+    }
+
+    public IntPtr MarshalManagedToNative(object ManagedObj)
+    {
+        Eina.Log.Debug("MarshalTest.MarshallManagedToNative");
+        if (ManagedObj == null)
+            return IntPtr.Zero;
+        var t = (System.Type) ManagedObj;
+        return Efl.Eo.ClassRegister.GetKlass(t);
+    }
+
+    public object MarshalNativeToManaged(IntPtr pNativeData)
+    {
+        Eina.Log.Debug("MarshalTest.MarshalNativeToManaged");
+        if (pNativeData == IntPtr.Zero)
+            return null;
+        return Efl.Eo.ClassRegister.GetManagedType(pNativeData);
+    }
+}
+
+public class StringPassOwnershipMarshaler : ICustomMarshaler {
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        var ret = Eina.StringConversion.NativeUtf8ToManagedString(pNativeData);
+        Eina.MemoryNative.Free(pNativeData);
+        return ret;
+    }
+
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        return Eina.MemoryNative.StrDup((string)managedObj);
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+        // No need to cleanup. C will take care of it.
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new StringPassOwnershipMarshaler();
+        }
+        return marshaler;
+    }
+    static private StringPassOwnershipMarshaler marshaler;
+}
+
+public class StringKeepOwnershipMarshaler: ICustomMarshaler {
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        return Eina.StringConversion.NativeUtf8ToManagedString(pNativeData);
+    }
+
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        return Eina.StringConversion.ManagedStringToNativeUtf8Alloc((string)managedObj);
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+        // No need to free. The Native side will keep the ownership.
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new StringKeepOwnershipMarshaler();
+        }
+        return marshaler;
+    }
+    static private StringKeepOwnershipMarshaler marshaler;
+}
+
+public class StringsharePassOwnershipMarshaler : ICustomMarshaler {
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        var ret = Eina.StringConversion.NativeUtf8ToManagedString(pNativeData);
+        Eina.Stringshare.eina_stringshare_del(pNativeData);
+        return ret;
+    }
+
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        return Eina.Stringshare.eina_stringshare_add((string)managedObj);
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+        // No need to free as it's for own() parameters.
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new StringsharePassOwnershipMarshaler();
+        }
+        return marshaler;
+    }
+    static private StringsharePassOwnershipMarshaler marshaler;
+}
+
+public class StringshareKeepOwnershipMarshaler : ICustomMarshaler {
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        return Eina.StringConversion.NativeUtf8ToManagedString(pNativeData);
+    }
+
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        return Eina.Stringshare.eina_stringshare_add((string)managedObj);
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+        // No need to free, as the native side will keep ownership.
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new StringshareKeepOwnershipMarshaler();
+        }
+        return marshaler;
+    }
+    static private StringshareKeepOwnershipMarshaler marshaler;
+}
+
+public class StrbufPassOwnershipMarshaler : ICustomMarshaler {
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        return new Eina.Strbuf(pNativeData, Eina.Ownership.Managed);
+    }
+
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        Eina.Strbuf buf = managedObj as Eina.Strbuf;
+        buf.ReleaseOwnership();
+        return buf.Handle;
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+        // No need to cleanup. C will take care of it.
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new StrbufPassOwnershipMarshaler();
+        }
+        return marshaler;
+    }
+    static private StrbufPassOwnershipMarshaler marshaler;
+}
+
+public class StrbufKeepOwnershipMarshaler: ICustomMarshaler {
+    public object MarshalNativeToManaged(IntPtr pNativeData) {
+        return new Eina.Strbuf(pNativeData, Eina.Ownership.Unmanaged);
+    }
+
+    public IntPtr MarshalManagedToNative(object managedObj) {
+        Eina.Strbuf buf = managedObj as Eina.Strbuf;
+        return buf.Handle;
+    }
+
+    public void CleanUpNativeData(IntPtr pNativeData) {
+        // No need to free. The Native side will keep the ownership.
+    }
+
+    public void CleanUpManagedData(object managedObj) {
+    }
+
+    public int GetNativeDataSize() {
+        return -1;
+    }
+
+    public static ICustomMarshaler GetInstance(string cookie) {
+        if (marshaler == null) {
+            marshaler = new StrbufKeepOwnershipMarshaler();
+        }
+        return marshaler;
+    }
+    static private StrbufKeepOwnershipMarshaler marshaler;
+}
+
+
+
+} // namespace eo
+
+/// <summary>General exception for errors inside the binding.</summary>
+public class EflException : Exception
+{
+    /// <summary>Create a new EflException with the given message.</summary>
+    public EflException(string message) : base(message)
+    {
+    }
+}
+
+/// <summary>Exception to be raised when a Task fails due to a failed Eina.Future.</summary>
+public class FutureException : EflException
+{
+    /// <summary>The error code returned by the failed Eina.Future.</summary>
+    public Eina.Error Error { get; private set; }
+
+    /// <summary>Construct a new exception from the Eina.Error stored in the given Eina.Value.</summary>
+    public FutureException(Eina.Value value) : base("Future failed.")
+    {
+        if (value.GetValueType() != Eina.ValueType.Error)
+            throw new ArgumentException("FutureException must receive an Eina.Value with Eina.Error.");
+        Eina.Error err;
+        value.Get(out err);
+        Error = err;
+    }
+}
+
+} // namespace efl
diff --git a/internals/src/EflSharp/EflSharp/workaround.cs b/internals/src/EflSharp/EflSharp/workaround.cs
new file mode 100755 (executable)
index 0000000..c1eeef8
--- /dev/null
@@ -0,0 +1,230 @@
+#pragma warning disable 1591
+
+using System;
+using System.Runtime.InteropServices;
+using System.Collections.Generic;
+
+///<summary>Eo class description, passed to efl_class_new.</summary>
+[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Ansi)]
+public struct ClassDescription
+{
+    ///<summary>Current Eo version.</summary>
+    public uint version;
+    ///<summary>Name of the class.</summary>
+    [MarshalAs(UnmanagedType.LPStr)] public String name;
+    ///<summary>Class type.</summary>
+    public int class_type;
+    ///<summary>Size of data (private + protected + public) per instance.</summary>
+    public UIntPtr data_size;
+    ///<summary>Initializer for the class.</summary>
+    public IntPtr class_initializer;
+    ///<summary>Constructor of the class.</summary>
+    public IntPtr class_constructor;
+    ///<summary>Destructor of the class.</summary>
+    public IntPtr class_destructor;
+}
+
+///<summary>Description of an Eo API operation.</summary>
+[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Ansi)]
+public struct Efl_Op_Description
+{
+    ///<summary>The EAPI function offering this op. (String with the name of the function on Windows)</summary>
+    public IntPtr api_func;
+    ///<summary>The static function to be called for this op</summary>
+    public IntPtr func;
+}
+
+///<summary>List of operations on a given Object.</summary>
+[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Ansi)]
+public struct Efl_Object_Ops
+{
+    ///<summary>The op descriptions array of size count.</summary>
+    public IntPtr descs;
+    ///<summary>Number of op descriptions.</summary>
+    public UIntPtr count;
+};
+
+[StructLayout(LayoutKind.Sequential)]
+public struct EolianPD
+{
+    public IntPtr pointer;
+}
+
+#pragma warning disable 0169
+public struct EvasObjectBoxLayout
+{
+    IntPtr o;
+    IntPtr priv;
+    IntPtr user_data;
+};
+[StructLayout(LayoutKind.Sequential, CharSet=CharSet.Ansi)]
+public struct EvasObjectBoxData
+{
+}
+public struct EvasObjectBoxOption {
+    IntPtr obj;
+    [MarshalAsAttribute(UnmanagedType.U1)] bool max_reached;
+    [MarshalAsAttribute(UnmanagedType.U1)] bool min_reached;
+    Evas.Coord alloc_size;
+};
+#pragma warning restore 0169
+
+namespace Efl {
+
+[StructLayout(LayoutKind.Sequential)]
+public struct EventDescription {
+    public IntPtr Name;
+    [MarshalAs(UnmanagedType.U1)] public bool Unfreezable;
+    [MarshalAs(UnmanagedType.U1)] public bool Legacy_is;
+    [MarshalAs(UnmanagedType.U1)] public bool Restart;
+
+    private static Dictionary<string, IntPtr> descriptions = new Dictionary<string, IntPtr>();
+
+    public EventDescription(string module, string name)
+    {
+        this.Name = GetNative(module, name);
+        this.Unfreezable = false;
+        this.Legacy_is = false;
+        this.Restart = false;
+    }
+
+    public static IntPtr GetNative(string module, string name)
+    {
+        if (!descriptions.ContainsKey(name))
+        {
+            IntPtr data = Efl.Eo.FunctionInterop.LoadFunctionPointer(module, name);
+
+            if (data == IntPtr.Zero) {
+                string error = Eina.StringConversion.NativeUtf8ToManagedString(Efl.Eo.Globals.dlerror());
+                throw new Exception(error);
+            }
+            descriptions.Add(name, data);
+        }
+        return descriptions[name];
+    }
+};
+
+public delegate void EventCb(System.IntPtr data, ref Event_StructInternal evt);
+
+[StructLayout(LayoutKind.Sequential)]
+public struct TextCursorCursor {
+    IntPtr obj;
+    UIntPtr pos; // UIntPtr to automatically change size_t between 32/64
+    IntPtr node;
+    [MarshalAsAttribute(UnmanagedType.U1)]bool changed;
+}
+
+[StructLayout(LayoutKind.Sequential)]
+public struct TextAnnotateAnnotation {
+    IntPtr list;
+    IntPtr obj;
+    IntPtr start_node;
+    IntPtr end_node;
+    [MarshalAsAttribute(UnmanagedType.U1)]bool is_item;
+}
+
+public delegate void SignalCb(IntPtr data, IntPtr obj, IntPtr emission, IntPtr source);
+
+namespace Access {
+
+public delegate IntPtr ReadingInfoCb(System.IntPtr data, ref Efl.Canvas.Object obj);
+
+public delegate bool GestureCb(System.IntPtr data, ref Efl.Access.GestureInfo info, ref Efl.Canvas.Object obj);
+
+public struct ReadingInfoTypeMask {
+    private uint mask;
+
+    public static implicit operator ReadingInfoTypeMask(uint x)
+    {
+        return new ReadingInfoTypeMask{mask=x};
+    }
+    public static implicit operator uint(ReadingInfoTypeMask x)
+    {
+        return x.mask;
+    }
+}
+
+public struct ActionData {
+    public IntPtr name;
+    public IntPtr action;
+    public IntPtr param;
+    public IntPtr func;
+}
+
+} // namespace Access
+
+} // namespace Efl
+
+namespace Evas {
+
+public struct Coord {
+    int val;
+
+    public Coord(int value) { val = value; }
+    static public implicit operator Coord(int val) {
+        return new Coord(val);
+    }
+    static public implicit operator int(Coord coord) {
+        return coord.val;
+    }
+}
+
+/* Copied from Evas_Legacy.h */
+public enum TextStyleType
+{
+   ///<summary> plain, standard text.</summary>
+   Plain = 0,
+   ///<summary> text with shadow underneath.</summary>
+   Shadow,
+   ///<summary> text with an outline.</summary>
+   Outline,
+   ///<summary> text with a soft outline.</summary>
+   SoftOutline,
+   ///<summary> text with a glow effect.</summary>
+   Glow,
+   ///<summary> text with both outline and shadow effects.</summary>
+   OutlineShadow,
+   ///<summary> text with (far) shadow underneath.</summary>
+   FarShadow,
+   ///<summary> text with outline and soft shadow effects combined.</summary>
+   OutlineSoftShadow,
+   ///<summary> text with (soft) shadow underneath.</summary>
+   SoftShadow,
+   ///<summary> text with (far soft) shadow underneath.</summary>
+   FarSoftShadow,
+
+   // Shadow direction modifiers
+   ///<summary> shadow growing to bottom right.</summary>
+   ShadowDirectionBottomRight = 0 /* 0 >> 4 */,
+  ///<summary> shadow growing to the bottom.</summary>
+   ShadowDirectionBottom= 16 /* 1 >> 4 */,
+   ///<summary> shadow growing to bottom left.</summary>
+   ShadowDirectionBottomLeft = 32 /* 2 >> 4 */,
+   ///<summary> shadow growing to the left.</summary>
+   ShadowDirectionLeft = 48 /* 3 >> 4 */,
+   ///<summary> shadow growing to top left.</summary>
+   ShadowDirectionTopLeft = 64 /* 4 >> 4 */,
+   ///<summary> shadow growing to the top.</summary>
+   ShadowDirectionTop = 80 /* 5 >> 4 */,
+   ///<summary> shadow growing to top right.</summary>
+   ShadowDirectionTopRight = 96 /* 6 >> 4 */,
+   ///<summary> shadow growing to the right.</summary>
+   ShadowDirectionRight = 112 /* 7 >> 4 */
+};
+
+} // namespace Evas
+
+// Global delegates
+public delegate int Eina_Compare_Cb(IntPtr a, IntPtr b);
+public delegate void ElmInterfaceScrollableCb(IntPtr obj, IntPtr data);
+public delegate void ElmInterfaceScrollableMinLimitCb(IntPtr obj,
+                                                     [MarshalAsAttribute(UnmanagedType.U1)]bool w,
+                                                     [MarshalAsAttribute(UnmanagedType.U1)]bool h);
+public delegate void ElmInterfaceScrollableResizeCb(IntPtr obj, Evas.Coord w, Evas.Coord h);
+[return: MarshalAsAttribute(UnmanagedType.U1)]
+public delegate bool ElmMultibuttonentryItemFilterCb(IntPtr obj, IntPtr item_label, IntPtr item_data, IntPtr data);
+public delegate IntPtr ElmMultibuttonentryFormatCb(int count, IntPtr data);
+public delegate void EinaFreeCb(IntPtr data);
+public delegate void EvasSmartCb(IntPtr data, IntPtr obj, IntPtr event_info);
+public delegate void ElmObjectItemSignalCb(IntPtr data, IntPtr item, IntPtr emission, IntPtr source);
+public delegate void ElmTooltipItemContentCb(IntPtr data, IntPtr obj, IntPtr tooltip, IntPtr item);